21 "Navier Stokes i-th momentum equation.");
22 params.
addParam<MooseFunctorName>(
"Darcy_name",
"Name of the Darcy coefficients property.");
25 MooseEnum momentum_component(
"x=0 y=1 z=2");
29 "The component of the momentum equation that this kernel applies to.");
36 _index(getParam<
MooseEnum>(
"momentum_component")),
37 _D(isParamValid(
"Darcy_name") ? &getFunctor<
RealVectorValue>(
"Darcy_name") : nullptr),
38 _mu(isParamValid(
NS::
mu) ? &getFunctor<
Real>(
NS::
mu) : nullptr)
60 return (*
_mu)(elem_arg, state) * (*
_D)(elem_arg, state)(
_index);
const ElemInfo * _current_elem_info
virtual Real computeRightHandSideContribution() override
Imposes a friction force on the momentum equation.
Moose::StateArg determineState() const
const Elem * elem() const
static InputParameters validParams()
const Moose::Functor< RealVectorValue > *const _D
Darcy coefficient.
Moose::ElemArg makeElemArg(const Elem *elem, bool correct_skewnewss=false) const
static InputParameters validParams()
const Moose::Functor< Real > *const _mu
Dynamic viscosity.
static const std::string mu
registerMooseObject("NavierStokesApp", LinearFVMomentumFriction)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
LinearFVMomentumFriction(const InputParameters ¶ms)
virtual Real computeMatrixContribution() override
Real computeFrictionWCoefficient(const Moose::ElemArg &elem_arg, const Moose::StateArg &state)
const unsigned int _index
Index x|y|z of the momentum equation component.
Real _current_elem_volume