26 #include "grins_config.h"
42 #include "libmesh/string_to_enum.h"
43 #include "libmesh/quadrature.h"
44 #include "libmesh/fem_system.h"
52 _flow_vars(input,
PhysicsNaming::reacting_low_mach_navier_stokes()),
53 _press_var(input,
PhysicsNaming::reacting_low_mach_navier_stokes(), true ),
54 _temp_vars(input,
PhysicsNaming::reacting_low_mach_navier_stokes()),
55 _species_vars(input,
PhysicsNaming::reacting_low_mach_navier_stokes()),
56 _n_species(_species_vars.n_species()),
57 _fixed_density( input(
"Physics/"+
PhysicsNaming::reacting_low_mach_navier_stokes()+
"/fixed_density", false ) ),
77 "ThermodynamicPressure",
111 this->
_dim = system->get_mesh().mesh_dimension();
126 const unsigned int dim = system->get_mesh().mesh_dimension();
128 for(
unsigned int i = 0; i < this->
_n_species; i++ )
143 system->time_evolving(
_p0_var->p0());
158 context.get_element_fe(
_flow_vars.
u())->get_dphi();
163 context.get_element_fe(
_temp_vars.
T())->get_dphi();
virtual void set_parameter(libMesh::Number ¶m_variable, const GetPot &input, const std::string ¶m_name, libMesh::Number param_default)
Each subclass can simultaneously read a parameter value from.
virtual void init(libMesh::FEMSystem *system)
Add variables to the system.
bool _enable_thermo_press_calc
Flag to enable thermodynamic pressure calculation.
PrimitiveTempFEVariables _temp_vars
VelocityFEVariables _flow_vars
static PhysicsName reacting_low_mach_navier_stokes()
Physics abstract base class. Defines API for physics to be added to MultiphysicsSystem.
unsigned int _n_species
Number of species.
static std::string temperature_section()
virtual void init(libMesh::FEMSystem *system)
Add variables to the system.
static void check_and_register_variable(const std::string &var_name, const FEVariablesBase &variable)
First check if var_name is registered and then register.
SpeciesMassFractionsFEVariables _species_vars
unsigned int _dim
Physical dimension of problem.
libMesh::UniquePtr< ThermoPressureFEVariable > _p0_var
void register_variables()
static std::string velocity_section()
virtual void init_context(AssemblyContext &context)
Initialize context for added physics variables.
static std::string species_mass_fractions_section()
void read_input_options(const GetPot &input)
Read options from GetPot input file.
static std::string thermo_pressure_section()
static std::string pressure_section()
PressureFEVariable _press_var
virtual void set_time_evolving_vars(libMesh::FEMSystem *system)
Sets velocity variables to be time-evolving.
static void read_property(const GetPot &input, const std::string &old_option, const std::string &property, const std::string &core_physics, ParameterUser ¶m_user, libMesh::Real &value)
Helper function for parsing/maintaing backward compatibility.
VariableIndex species(unsigned int species) const
virtual void init_variables(libMesh::FEMSystem *system)
Initialize variables for this physics.
libMesh::Real _fixed_rho_value
libMesh::Point _g
Gravity vector.
ReactingLowMachNavierStokesAbstract()