23 "equations, added to the right hand side.");
25 params.
addRequiredParam<RealVectorValue>(
"gravity",
"Gravitational acceleration vector.");
26 params.
addParam<MooseFunctorName>(
"alpha_name",
28 "The name of the thermal expansion coefficient"
29 "this is of the form rho = rho_ref*(1-alpha (T-T_ref))");
30 params.
addRequiredParam<Real>(
"ref_temperature",
"The value for the reference temperature.");
32 MooseEnum momentum_component(
"x=0 y=1 z=2");
36 "The component of the momentum equation that this kernel applies to.");
42 _index(getParam<
MooseEnum>(
"momentum_component")),
43 _temperature_var(getTemperatureVariable(
NS::T_fluid)),
44 _gravity(getParam<RealVectorValue>(
"gravity")),
45 _alpha(getFunctor<Real>(
"alpha_name")),
46 _ref_temperature(getParam<Real>(
"ref_temperature")),
47 _rho(getFunctor<Real>(
NS::density))
49 if (!
_rho.isConstant())
61 "The fluid temperature variable should be of type MooseLinearVariableFVReal!");
registerMooseObject("NavierStokesApp", LinearFVMomentumBoussinesq)
const Elem * elem() const
virtual const MooseVariableFieldBase & getVariable(const THREAD_ID tid, const std::string &var_name, Moose::VarKindType expected_var_type=Moose::VarKindType::VAR_ANY, Moose::VarFieldType expected_var_field_type=Moose::VarFieldType::VAR_FIELD_ANY) const override
Moose::ElemArg makeElemArg(const Elem *elem, bool correct_skewnewss=false) const
const ElemInfo * _current_elem_info
static InputParameters validParams()
Real _current_elem_volume
Kernel that adds the component of the Boussinesq term in the momentum equations to the right hand sid...
const Moose::Functor< Real > & _alpha
The thermal expansion coefficient.
const Real _ref_temperature
Reference temperature at which the reference value of the density (_rho) was measured.
const MooseLinearVariableFV< Real > & _temperature_var
Pointer to the linear finite volume temperature variable.
const Moose::Functor< Real > & _rho
the density
static InputParameters validParams()
virtual Real computeMatrixContribution() override
const MooseLinearVariableFV< Real > & getTemperatureVariable(const std::string &vname)
Fluid Temperature.
LinearFVMomentumBoussinesq(const InputParameters ¶ms)
Class constructor.
const RealVectorValue _gravity
The gravity vector.
virtual Real computeRightHandSideContribution() override
const unsigned int _index
Index x|y|z of the momentum equation component.
FEProblemBase & _fe_problem
void paramError(const std::string ¶m, Args... args) const
Real getElemValue(const ElemInfo &elem_info, const StateArg &state) const
Moose::StateArg determineState() const
static const std::string density
static const std::string T_fluid
static const std::string alpha_boussinesq