30 #include "grins_config.h"
39 #include "libmesh/utility.h"
40 #include "libmesh/string_to_enum.h"
41 #include "libmesh/getpot.h"
42 #include "libmesh/fem_system.h"
48 const std::string& core_physics_name,
51 _flow_vars(input,
PhysicsNaming::incompressible_navier_stokes()),
52 _press_var(input,
PhysicsNaming::incompressible_navier_stokes(), true ),
80 this->_dim = system->get_mesh().mesh_dimension();
82 _flow_vars.init(system);
83 this->_press_var.init(system);
84 _temp_vars.init(system);
93 system->time_evolving(_temp_vars.T());
104 context.get_element_fe(_temp_vars.T())->get_JxW();
105 context.get_element_fe(_temp_vars.T())->get_phi();
106 context.get_element_fe(_temp_vars.T())->get_dphi();
107 context.get_element_fe(_temp_vars.T())->get_xyz();
109 context.get_side_fe(_temp_vars.T())->get_JxW();
110 context.get_side_fe(_temp_vars.T())->get_phi();
111 context.get_side_fe(_temp_vars.T())->get_dphi();
112 context.get_side_fe(_temp_vars.T())->get_xyz();
119 (
const std::string & param_name,
124 _k.register_parameter(param_name, param_pointer);
virtual void init_context(AssemblyContext &context)
Initialize context for added physics variables.
void register_variables()
Physics abstract base class. Defines API for physics to be added to MultiphysicsSystem.
static std::string temperature_section()
static void check_and_register_variable(const std::string &var_name, const FEVariablesBase &variable)
First check if var_name is registered and then register.
libMesh::Number _rho
Material parameters, read from input.
static void read_density(const std::string &core_physics_name, const GetPot &input, ParameterUser ¶ms, libMesh::Real &rho)
Helper function to reading density from input.
static void read_specific_heat(const std::string &core_physics_name, const GetPot &input, ParameterUser ¶ms, libMesh::Real &cp)
Helper function to reading scalar specific heat from input.
static std::string velocity_section()
Helper functions for parsing material properties.
static std::string pressure_section()
virtual void init_variables(libMesh::FEMSystem *system)
Initialization Heat Transfer variables.
virtual void set_time_evolving_vars(libMesh::FEMSystem *system)
Sets velocity variables to be time-evolving.
INSTANTIATE_HEAT_TRANSFER_SUBCLASS(HeatTransferBase)
virtual void register_parameter(const std::string ¶m_name, libMesh::ParameterMultiAccessor< libMesh::Number > ¶m_pointer) const
Each subclass will register its copy of an independent.
virtual void register_parameter(const std::string ¶m_name, libMesh::ParameterMultiAccessor< libMesh::Number > ¶m_pointer) const
Each subclass will register its copy of an independent.