GRINS-0.8.0
reacting_low_mach_navier_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_REACTING_LOW_MACH_NAVIER_STOKES_H
27 #define GRINS_REACTING_LOW_MACH_NAVIER_STOKES_H
28 
29 // GRINS
31 
32 namespace GRINS
33 {
34  template<typename Mixture, typename Evaluator>
36  {
37  public:
38 
39  ReactingLowMachNavierStokes(const PhysicsName& physics_name, const GetPot& input,
40  libMesh::UniquePtr<Mixture> & gas_mix);
41 
43 
44  virtual void auxiliary_init( MultiphysicsSystem& system );
45 
47  virtual void register_postprocessing_vars( const GetPot& input,
49 
50  // Context initialization
51  virtual void init_context( AssemblyContext& context );
52 
53  // Time dependent part(s)
54  virtual void element_time_derivative( bool compute_jacobian,
55  AssemblyContext & context );
56 
57  virtual void element_constraint( bool compute_jacobian,
58  AssemblyContext & context );
59 
60  // Mass matrix part(s)
61  virtual void mass_residual( bool compute_jacobian,
62  AssemblyContext & context );
63 
65 
66  virtual void compute_postprocessed_quantity( unsigned int quantity_index,
67  const AssemblyContext& context,
68  const libMesh::Point& point,
69  libMesh::Real& value );
70 
71 
72 
73  protected:
74 
77 
79 
81  unsigned int _rho_index;
82 
84  std::vector<unsigned int> _species_viscosity;
85 
87  unsigned int _mu_index;
88 
90  unsigned int _k_index;
91 
93  unsigned int _cp_index;
94 
96  std::vector<unsigned int> _mole_fractions_index;
97 
99  std::vector<unsigned int> _h_s_index;
100 
102  std::vector<unsigned int> _omega_dot_index;
103 
105  std::vector<unsigned int> _Ds_index;
106 
107  private:
108 
110 
111  };
112 
113 } // namespace GRINS
114 
115 #endif //GRINS_REACTING_LOW_MACH_NAVIER_STOKES_H
virtual void register_postprocessing_vars(const GetPot &input, PostProcessedQuantities< libMesh::Real > &postprocessing)
Register postprocessing variables for ReactingLowMachNavierStokes.
std::vector< unsigned int > _species_viscosity
Index from registering this quantity. Each species will have it's own index.
std::vector< unsigned int > _mole_fractions_index
Index from registering this quantity. Each species will have it's own index.
virtual void element_time_derivative(bool compute_jacobian, AssemblyContext &context)
Time dependent part(s) of physics for element interiors.
unsigned int _k_index
Index from registering this quantity.
GRINS namespace.
virtual void element_constraint(bool compute_jacobian, AssemblyContext &context)
Constraint part(s) of physics for element interiors.
std::vector< unsigned int > _Ds_index
Index from registering this quantity. Each species will have it's own index.
std::string PhysicsName
Interface with libMesh for solving Multiphysics problems.
virtual void compute_element_time_derivative_cache(AssemblyContext &context)
unsigned int _mu_index
Index from registering this quantity.
std::vector< unsigned int > _omega_dot_index
Index from registering this quantity. Each species will have it's own index.
unsigned int _rho_index
Index from registering this quantity.
std::vector< unsigned int > _h_s_index
Index from registering this quantity. Each species will have it's own index.
virtual void auxiliary_init(MultiphysicsSystem &system)
Any auxillary initialization a Physics class may need.
virtual void compute_postprocessed_quantity(unsigned int quantity_index, const AssemblyContext &context, const libMesh::Point &point, libMesh::Real &value)
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...
Class to hold typical boundary condition methods.
unsigned int _cp_index
Index from registering this quantity.
virtual void init_context(AssemblyContext &context)
Initialize context for added physics variables.

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