14 template <
typename Derived>
25 const unsigned int qp,
36 template <
typename Derived>
41 params.
addParam<
Real>(
"value", 1.0,
"Coefficient to multiply by the body force term");
43 "postprocessor", 1,
"A postprocessor whose value is multiplied by the body force");
48 template <
typename Derived>
51 _scale(this->template getParam<
Real>(
"value")),
52 _postprocessor(getPostprocessorValue(
"postprocessor"))
56 template <
typename Derived>
59 const unsigned int qp,
62 return -_test(datum, i, qp) * _scale * _postprocessor;
static InputParameters validParams()
KOKKOS_FUNCTION Real computeQpResidual(const unsigned int i, const unsigned int qp, ResidualDatum &datum) const
const Moose::Kokkos::PostprocessorValue _postprocessor
Optional Postprocessor value.
const InputParameters & parameters() const
Get the parameters of the object.
KokkosBodyForceKernel(const InputParameters ¶meters)
const Moose::Kokkos::Scalar< const Real > _scale
Scale factor.
static InputParameters validParams()
usingKokkosKernelMembers(Derived)
static InputParameters validParams()
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
MOOSE now contains C++17 code, so give a reasonable error message stating what the user can do to add...
The base class for a user to derive their own Kokkos kernels.
The Kokkos object that holds thread-private data in the parallel operations of Kokkos residual object...
KokkosBodyForce(const InputParameters ¶meters)