13 using namespace Moose;
43 ret.derivatives() = grad(0) * p(0).derivatives()
45 + grad(1) * p(1).derivatives()
48 + grad(2) * p(2).derivatives()
71 mooseError(
"timeDerivative method not implemented");
84 mooseError(
"vectorValue method not implemented");
105 mooseError(
"Integral method not implemented for function ",
name());
112 mooseError(
"Average method not implemented for function ",
name());
116 template <
typename R>
143 static constexpr
Real offset_tolerance = 1e-8;
144 auto offset = offset_tolerance * face.
fi->
normal();
177 template <
typename R>
220 template <
typename R>
std::string name(const ElemQuality q)
FEProblemBase & _ti_feproblem
Base class template for functor objects.
virtual Real timeIntegral(Real t1, Real t2, const Point &p) const
Computes the time integral at a spatial point between two time values.
virtual Real div(Real t, const Point &p) const
Override this to evaluate the divergence of the vector function at a point (t,x,y,z), by default this returns zero, you must override it.
const libMesh::Elem * face_side
A member that can be used to indicate whether there is a sidedness to this face.
DotType evaluateDotHelper(const R &r, const Moose::StateArg &state) const
virtual RealVectorValue curl(Real t, const Point &p) const
Override this to evaluate the curl of the vector function at a point (t,x,y,z), by default this retur...
virtual Real timeDerivative(Real t, const Point &p) const
Get the time derivative of the function.
const Elem & elem() const
DualNumber< Real, Real > ChainedReal
A structure that is used to evaluate Moose functors at an arbitrary physical point contained within a...
void residualSetup() override final
DualNumber< Real, DNDerivativeType, true > ADReal
typename FunctorReturnType< Real, FunctorEvaluationKind::Gradient >::type GradientType
This rigmarole makes it so that a user can create functors that return containers (std::vector...
Function(const InputParameters ¶meters)
virtual Real average() const
Returns the average of the function over its domain.
const std::string & name() const
Get the name of the class.
const Elem * neighborPtr() const
A structure defining a "face" evaluation calling argument for Moose functors.
Real getTimeFromStateArg(const Moose::StateArg &state) const
Returns the time associated with the requested state.
const FaceInfo * fi
a face information object which defines our location in space
libMesh::Point getPoint() const
const Elem & neighbor() const
A structure that is used to evaluate Moose functors logically at an element/cell center.
Argument for requesting functor evaluation at a quadrature point location in an element.
const Point & normal() const
Returns the unit normal vector for the face oriented outward from the face's elem element...
void jacobianSetup() override final
void customSetup(const ExecFlagType &exec_type) override final
void timestepSetup() override
const Elem * elemPtr() const
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
GradientType evaluateGradientHelper(const R &r, const Moose::StateArg &state) const
ValueType evaluate(const ElemArg &elem, const Moose::StateArg &state) const override final
Evaluate the functor with a given element.
Class for containing MooseEnum item information.
virtual RealGradient gradient(Real t, const Point &p) const
Function objects can optionally provide a gradient at a point.
DotType evaluateDot(const ElemArg &elem, const Moose::StateArg &state) const override final
Evaluate the functor time derivative with a given element.
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type and optionally a file path to the top-level block p...
virtual RealVectorValue vectorValue(Real t, const Point &p) const
Override this to evaluate the vector function at a point (t,x,y,z), by default this returns a zero ve...
virtual Real integral() const
Returns the integral of the function over its domain.
State argument for evaluating functors.
virtual ~Function()
Function destructor.
static InputParameters validParams()
MOOSE now contains C++17 code, so give a reasonable error message stating what the user can do to add...
virtual Real value(Real t, const Point &p) const
Override this to evaluate the scalar function at point (t,x,y,z), by default this returns zero...
GradientType evaluateGradient(const ElemArg &elem, const Moose::StateArg &state) const override final
Evaluate the functor gradient with a given element.
static InputParameters validParams()
Class constructor.
Argument for requesting functor evaluation at quadrature point locations on an element side...
ValueType evaluateHelper(const R &r, const Moose::StateArg &state) const