20 params.
addClassDescription(
"This is the material class used to compute the interstitial velocity" 21 " norm for the incompressible and weakly compressible primitive " 22 "superficial finite-volume implementation of porous media equations.");
31 auto add_property = [¶ms](
const auto & property_name)
33 params.
addParam<MooseFunctorName>(property_name,
35 "The name to give the declared '" + property_name +
36 "' functor property");
43 params.
addParam<
bool>(
"define_interstitial_velocity_components",
45 "Whether to define the interstitial velocity functors");
58 const unsigned int num_components_specified =
64 num_components_specified,
65 " superficial velocity components were provided for a mesh of dimension ",
69 const auto & interstitial_velocity = addFunctorProperty<ADRealVectorValue>(
80 addFunctorProperty<ADReal>(getParam<MooseFunctorName>(
NS::speed),
81 [&interstitial_velocity](
const auto & r,
const auto & t) ->
ADReal 86 if (getParam<bool>(
"define_interstitial_velocity_components"))
88 addFunctorProperty<ADReal>(getParam<MooseFunctorName>(
NS::velocity_x),
89 [&interstitial_velocity](
const auto & r,
const auto & t) ->
ADReal 90 {
return interstitial_velocity(r, t)(0); });
91 addFunctorProperty<ADReal>(getParam<MooseFunctorName>(
NS::velocity_y),
92 [&interstitial_velocity](
const auto & r,
const auto & t) ->
ADReal 93 {
return interstitial_velocity(r, t)(1); });
94 addFunctorProperty<ADReal>(getParam<MooseFunctorName>(
NS::velocity_z),
95 [&interstitial_velocity](
const auto & r,
const auto & t) ->
ADReal 96 {
return interstitial_velocity(r, t)(2); });
unsigned int blocksMaxDimension() const
const Moose::Functor< ADReal > & _superficial_vel_z
static const std::string speed
static InputParameters validParams()
const Moose::Functor< ADReal > & _superficial_vel_y
static InputParameters validParams()
Material class used to compute the interstitial velocity norm for the incompressible and weakly compr...
static const std::string velocity_z
static const std::string velocity_x
DualNumber< Real, DNDerivativeType, true > ADReal
const Moose::Functor< ADReal > & _eps
Porosity.
static const std::string porosity
PINSFVSpeedFunctorMaterial(const InputParameters ¶meters)
static const std::string superficial_velocity_y
static const std::string velocity_y
registerMooseObject("NavierStokesApp", PINSFVSpeedFunctorMaterial)
void mooseError(Args &&... args) const
const InputParameters & parameters() const
static const std::string velocity
ADReal computeSpeed(const ADRealVectorValue &velocity)
Compute the speed (velocity norm) given the supplied velocity.
static const std::string superficial_velocity_z
const Moose::Functor< ADReal > & _superficial_vel_x
static const std::string superficial_velocity_x