108 KOKKOS_ASSERT(
false);
120 KOKKOS_ASSERT(
false);
129 KOKKOS_ASSERT(
false);
138 KOKKOS_ASSERT(
false);
156 Function(std::shared_ptr<FunctionWrapperHostBase> wrapper);
Base class for device function wrapper.
KOKKOS_FUNCTION Real3 vectorValue(Real t, Real3 p) const
static InputParameters validParams()
virtual KOKKOS_FUNCTION Real timeIntegral(Real t1, Real t2, Real3 p) const =0
virtual KOKKOS_FUNCTION Real3 gradient(Real t, Real3 p) const =0
KOKKOS_FUNCTION Real timeIntegral(Real, Real, Real3) const
Evaluate a time integral at point (x,y,z) between time t1 and t2.
KOKKOS_FUNCTION Real integral() const
Evaluate the integral over the domain.
const InputParameters & parameters() const
Get the parameters of the object.
KOKKOS_FUNCTION Real3 gradient(Real t, Real3 p) const
KOKKOS_FUNCTION Real3 gradient(Real, Real3) const
Evaluate a gradient at point (t,x,y,z)
The base class for a user to derive their own Kokkos functions.
KOKKOS_FUNCTION Real div(Real, Real3) const
Evaluate a divergence at point (t,x,y,z)
Function(std::shared_ptr< FunctionWrapperHostBase > wrapper)
Constructor.
virtual KOKKOS_FUNCTION Real3 vectorValue(Real t, Real3 p) const =0
KOKKOS_FUNCTION Real3 curl(Real, Real3) const
Evaluate a curl at point (t,x,y,z)
The abstract class that provides polymorphic interfaces for a function.
virtual KOKKOS_FUNCTION Real integral() const =0
FunctionWrapperDeviceBase * _wrapper_device
Pointer to the device function wrapper.
virtual KOKKOS_FUNCTION Real average() const =0
KOKKOS_FUNCTION Real timeDerivative(Real t, Real3 p) const
std::shared_ptr< FunctionWrapperHostBase > _wrapper_host
Pointer to the host function wrapper.
KOKKOS_FUNCTION Real timeIntegral(Real t1, Real t2, Real3 p) const
KOKKOS_FUNCTION Real3 curl(Real t, Real3 p) const
KOKKOS_FUNCTION Real average() const
Evaluate the average over the domain.
KOKKOS_FUNCTION Real3 vectorValue(Real, Real3) const
Evaluate a vector value at point (t,x,y,z)
virtual KOKKOS_FUNCTION Real timeDerivative(Real t, Real3 p) const =0
KOKKOS_FUNCTION Real integral() const
FunctionBase(const InputParameters ¶meters)
Constructor.
virtual KOKKOS_FUNCTION Real div(Real t, Real3 p) const =0
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
KOKKOS_FUNCTION Real average() const
KOKKOS_FUNCTION Real div(Real t, Real3 p) const
MOOSE now contains C++17 code, so give a reasonable error message stating what the user can do to add...
virtual KOKKOS_FUNCTION Real value(Real t, Real3 p) const =0
Virtual shims that calls the corresponding methods of the actual stored function. ...
virtual KOKKOS_FUNCTION Real3 curl(Real t, Real3 p) const =0
KOKKOS_FUNCTION Real value(Real, Real3) const
Evaluate a scalar value at point (t,x,y,z)
KOKKOS_FUNCTION Real timeDerivative(Real, Real3) const
Evaluate a time derivative at point (t,x,y,z)
KOKKOS_FUNCTION Real value(Real t, Real3 p) const