GRINS-0.8.0
|
Physics abstract base class. Defines API for physics to be added to MultiphysicsSystem. More...
#include <physics.h>
Public Member Functions | |
Physics (const GRINS::PhysicsName &physics_name, const GetPot &input) | |
virtual | ~Physics () |
virtual void | init_variables (libMesh::FEMSystem *) |
Initialize variables for this physics. More... | |
virtual bool | enabled_on_elem (const libMesh::Elem *elem) |
Find if current physics is active on supplied element. More... | |
void | set_is_steady (bool is_steady) |
Sets whether this physics is to be solved with a steady solver or not. More... | |
bool | is_steady () const |
Returns whether or not this physics is being solved with a steady solver. More... | |
virtual void | set_time_evolving_vars (libMesh::FEMSystem *system) |
Set which variables are time evolving. More... | |
virtual void | auxiliary_init (MultiphysicsSystem &system) |
Any auxillary initialization a Physics class may need. More... | |
virtual void | register_postprocessing_vars (const GetPot &input, PostProcessedQuantities< libMesh::Real > &postprocessing) |
Register name of postprocessed quantity with PostProcessedQuantities. More... | |
virtual void | init_context (AssemblyContext &context) |
Initialize context for added physics variables. More... | |
virtual void | preassembly (MultiphysicsSystem &) |
Perform any necessary setup before element assembly begins. More... | |
virtual void | reinit (MultiphysicsSystem &) |
Any reinitialization that needs to be done. More... | |
virtual void | element_time_derivative (bool, AssemblyContext &) |
Time dependent part(s) of physics for element interiors. More... | |
virtual void | side_time_derivative (bool, AssemblyContext &) |
Time dependent part(s) of physics for boundaries of elements on the domain boundary. More... | |
virtual void | nonlocal_time_derivative (bool, AssemblyContext &) |
Time dependent part(s) of physics for scalar variables. More... | |
virtual void | element_constraint (bool, AssemblyContext &) |
Constraint part(s) of physics for element interiors. More... | |
virtual void | side_constraint (bool, AssemblyContext &) |
Constraint part(s) of physics for boundaries of elements on the domain boundary. More... | |
virtual void | nonlocal_constraint (bool, AssemblyContext &) |
Constraint part(s) of physics for scalar variables. More... | |
virtual void | damping_residual (bool, AssemblyContext &) |
Damping matrix part(s) for element interiors. All boundary terms lie within the time_derivative part. More... | |
virtual void | mass_residual (bool, AssemblyContext &) |
Mass matrix part(s) for element interiors. All boundary terms lie within the time_derivative part. More... | |
virtual void | nonlocal_mass_residual (bool, AssemblyContext &) |
Mass matrix part(s) for scalar variables. More... | |
void | init_ics (libMesh::FEMSystem *system, libMesh::CompositeFunction< libMesh::Number > &all_ics) |
virtual void | compute_element_time_derivative_cache (AssemblyContext &) |
virtual void | compute_side_time_derivative_cache (AssemblyContext &) |
virtual void | compute_nonlocal_time_derivative_cache (AssemblyContext &) |
virtual void | compute_element_constraint_cache (AssemblyContext &) |
virtual void | compute_side_constraint_cache (AssemblyContext &) |
virtual void | compute_nonlocal_constraint_cache (AssemblyContext &) |
virtual void | compute_damping_residual_cache (AssemblyContext &) |
virtual void | compute_mass_residual_cache (AssemblyContext &) |
virtual void | compute_nonlocal_mass_residual_cache (AssemblyContext &) |
virtual void | compute_postprocessed_quantity (unsigned int quantity_index, const AssemblyContext &context, const libMesh::Point &point, libMesh::Real &value) |
ICHandlingBase * | get_ic_handler () |
Public Member Functions inherited from GRINS::ParameterUser | |
ParameterUser (const std::string &user_name) | |
virtual | ~ParameterUser () |
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. More... | |
virtual void | set_parameter (libMesh::ParsedFunction< libMesh::Number, libMesh::Gradient > &func, const GetPot &input, const std::string &func_param_name, const std::string ¶m_default) |
Each subclass can simultaneously read a parsed function from. More... | |
virtual void | set_parameter (libMesh::ParsedFEMFunction< libMesh::Number > &func, const GetPot &input, const std::string &func_param_name, const std::string ¶m_default) |
Each subclass can simultaneously read a parsed function from. More... | |
virtual void | move_parameter (const libMesh::Number &old_parameter, libMesh::Number &new_parameter) |
When cloning an object, we need to update parameter pointers. More... | |
virtual void | move_parameter (const libMesh::ParsedFunction< libMesh::Number, libMesh::Gradient > &old_func, libMesh::ParsedFunction< libMesh::Number, libMesh::Gradient > &new_func) |
When cloning an object, we need to update parameter pointers. More... | |
virtual void | move_parameter (const libMesh::ParsedFEMFunction< libMesh::Number > &old_func, libMesh::ParsedFEMFunction< libMesh::Number > &new_func) |
When cloning an object, we need to update parameter pointers. More... | |
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. More... | |
Static Public Member Functions | |
static void | set_is_axisymmetric (bool is_axisymmetric) |
Set whether we should treat the problem as axisymmetric. More... | |
static bool | is_axisymmetric () |
Protected Member Functions | |
libMesh::UniquePtr< libMesh::FEGenericBase< libMesh::Real > > | build_new_fe (const libMesh::Elem *elem, const libMesh::FEGenericBase< libMesh::Real > *fe, const libMesh::Point p) |
void | parse_enabled_subdomains (const GetPot &input, const std::string &physics_name) |
void | check_var_subdomain_consistency (const FEVariablesBase &var) const |
Check that var is enabled on at least the subdomains this Physics is. More... | |
Protected Attributes | |
const PhysicsName | _physics_name |
Name of the physics object. Used for reading physics specific inputs. More... | |
GRINS::ICHandlingBase * | _ic_handler |
std::set< libMesh::subdomain_id_type > | _enabled_subdomains |
Subdomains on which the current Physics class is enabled. More... | |
Static Protected Attributes | |
static bool | _is_steady = false |
Caches whether or not the solver that's being used is steady or not. More... | |
static bool | _is_axisymmetric = false |
Caches whether we are solving an axisymmetric problem or not. More... | |
Private Member Functions | |
Physics () | |
Additional Inherited Members | |
Static Public Attributes inherited from GRINS::ParameterUser | |
static std::string | zero_vector_function = std::string("{0}") |
A parseable function string with LIBMESH_DIM components, all 0. More... | |
Physics abstract base class. Defines API for physics to be added to MultiphysicsSystem.
This abstract base class defines the API for use within the MultiphysicsSystem. Each physics instantiation must initialize its varaibles (and element orders and types), initialize the DiffContext for the added variables, and provide element and boundary routines for assembly (to be called by MultiphysicsSystem).
MultiphysicsSystem (through FEMSystem) solves the following equation:
M = mass matrix u = solution vector F = time derivative
Note that for the nonlinear system that is solved for implicit time stepping is:
GRINS::Physics::Physics | ( | const GRINS::PhysicsName & | physics_name, |
const GetPot & | input | ||
) |
Definition at line 44 of file physics.C.
References parse_enabled_subdomains(), and set_is_axisymmetric().
|
virtual |
|
private |
|
virtual |
Any auxillary initialization a Physics class may need.
This is called after all variables are added, so this method can safely query the MultiphysicsSystem about variable information.
Reimplemented in GRINS::IncompressibleNavierStokes< Viscosity >, GRINS::Stokes< Viscosity >, GRINS::LowMachNavierStokes< Viscosity, SpecificHeat, ThermalConductivity >, GRINS::VariablePinning, and GRINS::ReactingLowMachNavierStokes< Mixture, Evaluator >.
|
protected |
Definition at line 143 of file physics.C.
|
protected |
Check that var is enabled on at least the subdomains this Physics is.
Definition at line 174 of file physics.C.
References _enabled_subdomains, and GRINS::FEVariablesBase::subdomain_ids().
Referenced by GRINS::BoussinesqBuoyancyBase::BoussinesqBuoyancyBase(), GRINS::ConvectionDiffusion::ConvectionDiffusion(), GRINS::HeatConduction< Conductivity >::HeatConduction(), GRINS::HeatTransferBase< Conductivity >::HeatTransferBase(), GRINS::IncompressibleNavierStokesBase< Viscosity >::IncompressibleNavierStokesBase(), GRINS::LowMachNavierStokesBase< Viscosity, SpecificHeat, ThermalConductivity >::LowMachNavierStokesBase(), GRINS::ReactingLowMachNavierStokesAbstract::ReactingLowMachNavierStokesAbstract(), GRINS::SolidMechanicsAbstract::SolidMechanicsAbstract(), and GRINS::SpalartAllmaras< Viscosity >::SpalartAllmaras().
|
inlinevirtual |
Definition at line 224 of file physics.h.
Referenced by GRINS::MultiphysicsSystem::damping_residual().
|
inlinevirtual |
Definition at line 218 of file physics.h.
Referenced by GRINS::MultiphysicsSystem::element_constraint().
|
inlinevirtual |
Reimplemented in GRINS::LowMachNavierStokes< Viscosity, SpecificHeat, ThermalConductivity >, and GRINS::ReactingLowMachNavierStokes< Mixture, Evaluator >.
Definition at line 212 of file physics.h.
Referenced by GRINS::MultiphysicsSystem::element_time_derivative().
|
inlinevirtual |
Definition at line 226 of file physics.h.
Referenced by GRINS::MultiphysicsSystem::mass_residual().
|
inlinevirtual |
Definition at line 222 of file physics.h.
Referenced by GRINS::MultiphysicsSystem::nonlocal_constraint().
|
inlinevirtual |
Definition at line 228 of file physics.h.
Referenced by GRINS::MultiphysicsSystem::nonlocal_mass_residual().
|
inlinevirtual |
Definition at line 216 of file physics.h.
Referenced by GRINS::MultiphysicsSystem::nonlocal_time_derivative().
|
virtual |
Reimplemented in GRINS::AveragedFan< Viscosity >, GRINS::IncompressibleNavierStokes< Viscosity >, GRINS::LowMachNavierStokes< Viscosity, SpecificHeat, ThermalConductivity >, GRINS::ParsedVelocitySource< Viscosity >, GRINS::VelocityPenalty< Viscosity >, GRINS::ReactingLowMachNavierStokes< Mixture, Evaluator >, GRINS::HeatTransfer< Conductivity >, GRINS::ElasticMembrane< StressStrainLaw >, and GRINS::ElasticCable< StressStrainLaw >.
|
inlinevirtual |
Definition at line 220 of file physics.h.
Referenced by GRINS::MultiphysicsSystem::side_constraint().
|
inlinevirtual |
Definition at line 214 of file physics.h.
Referenced by GRINS::MultiphysicsSystem::side_time_derivative().
|
inlinevirtual |
Damping matrix part(s) for element interiors. All boundary terms lie within the time_derivative part.
Reimplemented in GRINS::ElasticCableRayleighDamping< StressStrainLaw >, and GRINS::ElasticMembraneRayleighDamping< StressStrainLaw >.
Definition at line 198 of file physics.h.
Referenced by GRINS::MultiphysicsSystem::damping_residual().
|
inlinevirtual |
Constraint part(s) of physics for element interiors.
Reimplemented in GRINS::IncompressibleNavierStokes< Viscosity >, GRINS::AveragedTurbineAdjointStabilization< Viscosity >, GRINS::LowMachNavierStokes< Viscosity, SpecificHeat, ThermalConductivity >, GRINS::VelocityDragAdjointStabilization< Viscosity >, GRINS::AveragedFanAdjointStabilization< Viscosity >, GRINS::Stokes< Viscosity >, GRINS::BoussinesqBuoyancySPGSMStabilization< Viscosity >, GRINS::ReactingLowMachNavierStokes< Mixture, Evaluator >, GRINS::BoussinesqBuoyancyAdjointStabilization< Viscosity >, GRINS::ParsedVelocitySourceAdjointStabilization< Viscosity >, GRINS::VelocityPenaltyAdjointStabilization< Viscosity >, GRINS::VariablePinning, GRINS::ElasticMembrane< StressStrainLaw >, GRINS::IncompressibleNavierStokesAdjointStabilization< Viscosity >, and GRINS::IncompressibleNavierStokesSPGSMStabilization< Viscosity >.
Definition at line 186 of file physics.h.
Referenced by GRINS::MultiphysicsSystem::element_constraint().
|
inlinevirtual |
Time dependent part(s) of physics for element interiors.
Reimplemented in GRINS::SpalartAllmaras< Viscosity >, GRINS::AxisymmetricBoussinesqBuoyancy, GRINS::AveragedFan< Viscosity >, GRINS::ParsedVelocitySource< Viscosity >, GRINS::VelocityPenalty< Viscosity >, GRINS::AveragedTurbine< Viscosity >, GRINS::AxisymmetricHeatTransfer< Conductivity >, GRINS::VelocityDrag< Viscosity >, GRINS::IncompressibleNavierStokes< Viscosity >, GRINS::BoussinesqBuoyancy, GRINS::AveragedTurbineAdjointStabilization< Viscosity >, GRINS::LowMachNavierStokes< Viscosity, SpecificHeat, ThermalConductivity >, GRINS::VelocityDragAdjointStabilization< Viscosity >, GRINS::AveragedFanAdjointStabilization< Viscosity >, GRINS::Stokes< Viscosity >, GRINS::HeatTransfer< Conductivity >, GRINS::BoussinesqBuoyancySPGSMStabilization< Viscosity >, GRINS::ReactingLowMachNavierStokes< Mixture, Evaluator >, GRINS::ConvectionDiffusion, GRINS::HeatConduction< Conductivity >, GRINS::BoussinesqBuoyancyAdjointStabilization< Viscosity >, GRINS::ParsedVelocitySourceAdjointStabilization< Viscosity >, GRINS::VelocityPenaltyAdjointStabilization< Viscosity >, GRINS::ElasticCable< StressStrainLaw >, GRINS::ElasticMembrane< StressStrainLaw >, GRINS::ParsedSourceTerm, GRINS::SpalartAllmarasSPGSMStabilization< Viscosity >, GRINS::HeatTransferAdjointStabilization< Conductivity >, GRINS::HeatTransferSPGSMStabilization< Conductivity >, GRINS::LowMachNavierStokesBraackStabilization< Viscosity, SpecificHeat, ThermalConductivity >, GRINS::LowMachNavierStokesVMSStabilization< Viscosity, SpecificHeat, ThermalConductivity >, GRINS::ConstantSourceTerm, GRINS::ElasticMembraneConstantPressure, GRINS::IncompressibleNavierStokesAdjointStabilization< Viscosity >, GRINS::IncompressibleNavierStokesSPGSMStabilization< Viscosity >, GRINS::LowMachNavierStokesSPGSMStabilization< Viscosity, SpecificHeat, ThermalConductivity >, and GRINS::ReactingLowMachNavierStokesSPGSMStabilization< Mixture, Evaluator >.
Definition at line 174 of file physics.h.
Referenced by GRINS::MultiphysicsSystem::element_time_derivative().
|
virtual |
Find if current physics is active on supplied element.
Definition at line 77 of file physics.C.
References _enabled_subdomains.
|
inline |
|
virtual |
Initialize context for added physics variables.
Reimplemented in GRINS::SpalartAllmaras< Viscosity >, GRINS::AxisymmetricBoussinesqBuoyancy, GRINS::AveragedFan< Viscosity >, GRINS::ScalarODE, GRINS::LowMachNavierStokesBase< Viscosity, SpecificHeat, ThermalConductivity >, GRINS::AveragedTurbine< Viscosity >, GRINS::AxisymmetricHeatTransfer< Conductivity >, GRINS::VelocityDrag< Viscosity >, GRINS::IncompressibleNavierStokesBase< Viscosity >, GRINS::ParsedVelocitySource< Viscosity >, GRINS::VelocityPenalty< Viscosity >, GRINS::AveragedTurbineAdjointStabilization< Viscosity >, GRINS::VelocityDragAdjointStabilization< Viscosity >, GRINS::AveragedFanAdjointStabilization< Viscosity >, GRINS::HeatTransferBase< Conductivity >, GRINS::LowMachNavierStokes< Viscosity, SpecificHeat, ThermalConductivity >, GRINS::ReactingLowMachNavierStokesAbstract, GRINS::ConvectionDiffusion, GRINS::ReactingLowMachNavierStokes< Mixture, Evaluator >, GRINS::BoussinesqBuoyancyAdjointStabilization< Viscosity >, GRINS::ParsedVelocitySourceAdjointStabilization< Viscosity >, GRINS::VelocityPenaltyAdjointStabilization< Viscosity >, GRINS::ReactingLowMachNavierStokesStabilizationBase< Mixture, Evaluator >, GRINS::HeatConduction< Conductivity >, GRINS::LowMachNavierStokesStabilizationBase< Viscosity, SpecificHeat, ThermalConductivity >, GRINS::ElasticCableAbstract, GRINS::ElasticMembraneAbstract, GRINS::HeatTransferStabilizationBase< Conductivity >, GRINS::IncompressibleNavierStokesStabilizationBase< Viscosity >, GRINS::SpalartAllmarasStabilizationBase< Viscosity >, GRINS::ParsedSourceTerm, and GRINS::VariablePinning.
void GRINS::Physics::init_ics | ( | libMesh::FEMSystem * | system, |
libMesh::CompositeFunction< libMesh::Number > & | all_ics | ||
) |
Definition at line 113 of file physics.C.
References _ic_handler, and GRINS::ICHandlingBase::init_ic_data().
|
inlinevirtual |
Initialize variables for this physics.
Reimplemented in GRINS::SpalartAllmaras< Viscosity >, GRINS::SourceTermBase, GRINS::ElasticMembraneBase< StressStrainLaw >, and GRINS::SpalartAllmarasSPGSMStabilization< Viscosity >.
Definition at line 115 of file physics.h.
Referenced by GRINS::ElasticMembraneBase< StressStrainLaw >::init_variables(), and GRINS::SpalartAllmaras< Viscosity >::init_variables().
|
inlinestatic |
Definition at line 132 of file physics.h.
References _is_axisymmetric.
Referenced by GRINS::GasRecombinationCatalyticWall< Chemistry >::apply_fluxes(), GRINS::GasSolidCatalyticWall< Chemistry >::apply_fluxes(), GRINS::MultiphysicsSystem::apply_neumann_bcs(), GRINS::DefaultBCBuilder::build_type_based_bcs(), GRINS::IncompressibleNavierStokes< Viscosity >::element_constraint(), GRINS::ReactingLowMachNavierStokes< Mixture, Evaluator >::element_time_derivative(), GRINS::HeatTransfer< Conductivity >::element_time_derivative(), GRINS::IncompressibleNavierStokes< Viscosity >::element_time_derivative(), GRINS::HeatTransfer< Conductivity >::mass_residual(), GRINS::IncompressibleNavierStokes< Viscosity >::mass_residual(), and set_is_axisymmetric().
bool GRINS::Physics::is_steady | ( | ) | const |
Returns whether or not this physics is being solved with a steady solver.
Definition at line 97 of file physics.C.
References _is_steady.
Referenced by set_is_steady().
|
inlinevirtual |
Mass matrix part(s) for element interiors. All boundary terms lie within the time_derivative part.
Reimplemented in GRINS::SpalartAllmaras< Viscosity >, GRINS::AxisymmetricHeatTransfer< Conductivity >, GRINS::IncompressibleNavierStokes< Viscosity >, GRINS::LowMachNavierStokes< Viscosity, SpecificHeat, ThermalConductivity >, GRINS::Stokes< Viscosity >, GRINS::BoussinesqBuoyancySPGSMStabilization< Viscosity >, GRINS::ReactingLowMachNavierStokes< Mixture, Evaluator >, GRINS::HeatTransfer< Conductivity >, GRINS::ConvectionDiffusion, GRINS::HeatConduction< Conductivity >, GRINS::ElasticMembrane< StressStrainLaw >, GRINS::ElasticCable< StressStrainLaw >, GRINS::IncompressibleNavierStokesAdjointStabilization< Viscosity >, GRINS::IncompressibleNavierStokesSPGSMStabilization< Viscosity >, GRINS::SpalartAllmarasSPGSMStabilization< Viscosity >, GRINS::HeatTransferAdjointStabilization< Conductivity >, GRINS::HeatTransferSPGSMStabilization< Conductivity >, GRINS::LowMachNavierStokesBraackStabilization< Viscosity, SpecificHeat, ThermalConductivity >, GRINS::LowMachNavierStokesVMSStabilization< Viscosity, SpecificHeat, ThermalConductivity >, GRINS::LowMachNavierStokesSPGSMStabilization< Viscosity, SpecificHeat, ThermalConductivity >, and GRINS::ReactingLowMachNavierStokesSPGSMStabilization< Mixture, Evaluator >.
Definition at line 202 of file physics.h.
Referenced by GRINS::MultiphysicsSystem::mass_residual().
|
inlinevirtual |
Constraint part(s) of physics for scalar variables.
Reimplemented in GRINS::ScalarODE.
Definition at line 194 of file physics.h.
Referenced by GRINS::MultiphysicsSystem::nonlocal_constraint().
|
inlinevirtual |
Mass matrix part(s) for scalar variables.
Reimplemented in GRINS::ScalarODE, and GRINS::AveragedTurbine< Viscosity >.
Definition at line 206 of file physics.h.
Referenced by GRINS::MultiphysicsSystem::nonlocal_mass_residual().
|
inlinevirtual |
Time dependent part(s) of physics for scalar variables.
Reimplemented in GRINS::AveragedTurbine< Viscosity >, and GRINS::ScalarODE.
Definition at line 182 of file physics.h.
Referenced by GRINS::MultiphysicsSystem::nonlocal_time_derivative().
|
protected |
Definition at line 65 of file physics.C.
References _enabled_subdomains.
Referenced by GRINS::ElasticCableRayleighDamping< StressStrainLaw >::ElasticCableRayleighDamping(), GRINS::ElasticMembraneConstantPressure::ElasticMembraneConstantPressure(), GRINS::ElasticMembraneRayleighDamping< StressStrainLaw >::ElasticMembraneRayleighDamping(), and Physics().
|
inlinevirtual |
|
virtual |
Register name of postprocessed quantity with PostProcessedQuantities.
Each Physics class will need to cache an unsigned int corresponding to each postprocessed quantity. This will be used in computing the values and putting them in the CachedVariables object.
Reimplemented in GRINS::ParsedVelocitySource< Viscosity >, GRINS::VelocityPenalty< Viscosity >, GRINS::AveragedFan< Viscosity >, GRINS::IncompressibleNavierStokes< Viscosity >, GRINS::LowMachNavierStokes< Viscosity, SpecificHeat, ThermalConductivity >, GRINS::HeatTransfer< Conductivity >, GRINS::ReactingLowMachNavierStokes< Mixture, Evaluator >, GRINS::ElasticCable< StressStrainLaw >, and GRINS::ElasticMembrane< StressStrainLaw >.
|
inlinevirtual |
|
inlinestatic |
Set whether we should treat the problem as axisymmetric.
Definition at line 129 of file physics.h.
References _is_axisymmetric, and is_axisymmetric().
Referenced by Physics().
void GRINS::Physics::set_is_steady | ( | bool | is_steady | ) |
Sets whether this physics is to be solved with a steady solver or not.
Since the member variable is static, only needs to be called on a single physics.
Definition at line 91 of file physics.C.
References _is_steady, and is_steady().
|
virtual |
Set which variables are time evolving.
Set those variables which evolve in time (as opposed to variables that behave like constraints). This is done separately from init_variables() because the MultiphysicsSystem must initialize its base class before time_evolving variables can be set. Default implementation is no time evolving variables.
Reimplemented in GRINS::SpalartAllmaras< Viscosity >, GRINS::ScalarODE, GRINS::LowMachNavierStokesBase< Viscosity, SpecificHeat, ThermalConductivity >, GRINS::AxisymmetricHeatTransfer< Conductivity >, GRINS::IncompressibleNavierStokesBase< Viscosity >, GRINS::AveragedTurbineBase< Viscosity >, GRINS::VelocityPenaltyBase< Viscosity >, GRINS::HeatTransferBase< Conductivity >, GRINS::ParsedVelocitySourceBase< Viscosity >, GRINS::ReactingLowMachNavierStokesAbstract, GRINS::ConvectionDiffusion, GRINS::SolidMechanicsAbstract, and GRINS::HeatConduction< Conductivity >.
|
inlinevirtual |
Constraint part(s) of physics for boundaries of elements on the domain boundary.
Definition at line 190 of file physics.h.
Referenced by GRINS::MultiphysicsSystem::side_constraint().
|
inlinevirtual |
Time dependent part(s) of physics for boundaries of elements on the domain boundary.
Definition at line 178 of file physics.h.
Referenced by GRINS::MultiphysicsSystem::side_time_derivative().
|
protected |
Subdomains on which the current Physics class is enabled.
Definition at line 261 of file physics.h.
Referenced by check_var_subdomain_consistency(), enabled_on_elem(), and parse_enabled_subdomains().
|
protected |
Definition at line 258 of file physics.h.
Referenced by GRINS::AveragedTurbine< Viscosity >::AveragedTurbine(), GRINS::AxisymmetricHeatTransfer< Conductivity >::AxisymmetricHeatTransfer(), GRINS::ConvectionDiffusion::ConvectionDiffusion(), GRINS::ElasticCable< StressStrainLaw >::ElasticCable(), GRINS::ElasticMembrane< StressStrainLaw >::ElasticMembrane(), get_ic_handler(), GRINS::HeatConduction< Conductivity >::HeatConduction(), GRINS::HeatTransfer< Conductivity >::HeatTransfer(), GRINS::IncompressibleNavierStokes< Viscosity >::IncompressibleNavierStokes(), init_ics(), GRINS::LowMachNavierStokes< Viscosity, SpecificHeat, ThermalConductivity >::LowMachNavierStokes(), GRINS::ReactingLowMachNavierStokes< Mixture, Evaluator >::ReactingLowMachNavierStokes(), GRINS::ScalarODE::ScalarODE(), GRINS::SpalartAllmaras< Viscosity >::SpalartAllmaras(), GRINS::Stokes< Viscosity >::Stokes(), and ~Physics().
|
staticprotected |
Caches whether we are solving an axisymmetric problem or not.
Definition at line 269 of file physics.h.
Referenced by is_axisymmetric(), and set_is_axisymmetric().
|
staticprotected |
Caches whether or not the solver that's being used is steady or not.
This is need, for example, in flow stabilization as the tau terms change depending on whether the solver is steady or unsteady.
Definition at line 266 of file physics.h.
Referenced by is_steady(), and set_is_steady().
|
protected |
Name of the physics object. Used for reading physics specific inputs.
We use a reference because the physics names are const global objects in GRINS namespace
No, we use a copy, because otherwise as soon as the memory in std::set<std::string> requested_physics gets overwritten we get in trouble.
Definition at line 256 of file physics.h.
Referenced by GRINS::SourceTermBase::parse_var_info(), and GRINS::VelocityPenaltyBase< Viscosity >::VelocityPenaltyBase().