GRINS-0.8.0
stokes.h
Go to the documentation of this file.
1 //-----------------------------------------------------------------------bl-
2 //--------------------------------------------------------------------------
3 //
4 // GRINS - General Reacting Incompressible Navier-Stokes
5 //
6 // Copyright (C) 2014-2017 Paul T. Bauman, Roy H. Stogner
7 // Copyright (C) 2010-2013 The PECOS Development Team
8 //
9 // This library is free software; you can redistribute it and/or
10 // modify it under the terms of the Version 2.1 GNU Lesser General
11 // Public License as published by the Free Software Foundation.
12 //
13 // This library is distributed in the hope that it will be useful,
14 // but WITHOUT ANY WARRANTY; without even the implied warranty of
15 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 // Lesser General Public License for more details.
17 //
18 // You should have received a copy of the GNU Lesser General Public
19 // License along with this library; if not, write to the Free Software
20 // Foundation, Inc. 51 Franklin Street, Fifth Floor,
21 // Boston, MA 02110-1301 USA
22 //
23 //-----------------------------------------------------------------------el-
24 
25 
26 #ifndef GRINS_STOKES_H
27 #define GRINS_STOKES_H
28 
29 //GRINS
30 #include "grins/pressure_pinning.h"
32 
33 namespace GRINS
34 {
35  // Forward declarations
36  class MultiphysicsSystem;
37 
39 
42  template<class Viscosity>
43  class Stokes : public IncompressibleNavierStokesBase<Viscosity>
44  {
45  public:
46 
47  Stokes(const std::string& physics_name, const GetPot& input);
48 
49  ~Stokes();
50 
51  virtual void auxiliary_init( MultiphysicsSystem& system );
52 
53  // residual and jacobian calculations
54  // element_*, side_* as *time_derivative, *constraint, *mass_residual
55 
56  // Time dependent part(s)
57  virtual void element_time_derivative( bool compute_jacobian,
58  AssemblyContext& context );
59 
60  // Constraint part(s)
61  virtual void element_constraint( bool compute_jacobian,
62  AssemblyContext& context );
63 
64  // Mass matrix part(s)
65  virtual void mass_residual( bool compute_jacobian,
66  AssemblyContext & context );
67 
68  protected:
69 
71 
74 
75  private:
76 
77  Stokes();
78 
79  };
80 
81 } // end namespace block
82 
83 #endif // GRINS_STOKES_H
bool _pin_pressure
Enable pressure pinning.
Definition: stokes.h:73
Physics class for Incompressible Navier-Stokes.
virtual void mass_residual(bool compute_jacobian, AssemblyContext &context)
Mass matrix part(s) for element interiors. All boundary terms lie within the time_derivative part...
Definition: stokes.C:295
GRINS namespace.
virtual void auxiliary_init(MultiphysicsSystem &system)
Any auxillary initialization a Physics class may need.
Definition: stokes.C:61
Interface with libMesh for solving Multiphysics problems.
virtual void element_constraint(bool compute_jacobian, AssemblyContext &context)
Constraint part(s) of physics for element interiors.
Definition: stokes.C:211
PressurePinning _p_pinning
Definition: stokes.h:70
virtual void element_time_derivative(bool compute_jacobian, AssemblyContext &context)
Time dependent part(s) of physics for element interiors.
Definition: stokes.C:69
Class to hold typical boundary condition methods.
Physics class for Stokes.
Definition: stokes.h:43

Generated on Tue Dec 19 2017 12:47:28 for GRINS-0.8.0 by  doxygen 1.8.9.1