23 "This class is used to enforce a min or max value for a finite volume variable");
26 MooseEnum type_options(
"lower_than=0 higher_than=1");
28 "bound_type", type_options,
"Whether a minimum or a maximum bound");
DualNumber< Real, DNDerivativeType, true > ADReal
registerMooseObject("MooseApp", FVBoundedValueConstraint)
This Kernel implements the residuals that enforce the constraint.
FVBoundedValueConstraint(const InputParameters ¶meters)
static InputParameters validParams()
const MooseEnum _bound_type
What type of bound (min or max) this kernel intends to apply.
ADReal computeQpResidual() override final
This is the primary function that must be implemented for flux kernel terms.
MooseVariableFV< Real > & _var
const Elem *const & _current_elem
const ADVariableValue & _u
Base class for implementing constraints on finite volume variable elemental values using scalar Lagra...
static InputParameters validParams()
const PostprocessorValue & _phi0
The value that we want the average of the primal variable to be equal to.
Moose::ElemArg makeElemArg(const Elem *elem, bool correct_skewnewss=false) const
Helper method to create an elemental argument for a functor that includes whether to perform skewness...
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type It sho...
Moose::StateArg determineState() const
Create a functor state argument that corresponds to the implicit state of this object.