22 template <
typename Derived>
66 template <
typename Derived>
78 template <
typename Derived>
80 :
Kernel<Derived>(parameters),
82 _du_dot_du(_var.sys().duDotDu(_var.number()))
86 template <
typename Derived>
90 ResidualObject::computeResidualInternal(
92 [&](
Real * local_re,
const unsigned int ib,
const unsigned int ie)
94 for (
unsigned int qp = 0; qp < datum.
n_qps(); ++qp)
98 for (
unsigned int i = ib; i < ie; ++i)
99 local_re[i] += datum.
JxW(qp) * kernel->computeQpResidual(i, qp, datum);
102 kernel->computeResidualAdditional(ib, ie, datum, local_re);
109 #define usingKokkosTimeKernelMembers(T) \ 110 usingKokkosKernelMembers(T); \ 113 using Moose::Kokkos::TimeKernel<T>::_u_dot; \ 114 using Moose::Kokkos::TimeKernel<T>::_du_dot_du const Scalar< const Real > _du_dot_du
Derivative of u_dot with respect to u.
static InputParameters validParams()
usingKokkosKernelMembers(Derived)
const InputParameters & parameters() const
Get the parameters of the object.
KOKKOS_FUNCTION void computeResidualAdditional(const unsigned int, const unsigned int, ResidualDatum &, Real *) const
Hook for additional computation for residual after the standard calls.
The base class for Kokkos time-derivative kernels.
const VariableValue _u_dot
Time derivative of the current solution at quadrature points.
KOKKOS_FUNCTION unsigned int n_qps() const
Get the number of local quadrature points.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
static InputParameters validParams()
KOKKOS_FUNCTION void computeResidualInternal(const Derived *kernel, ResidualDatum &datum) const
The parallel computation body that hides the base class method to allow additional computation for re...
KOKKOS_FUNCTION Real JxW(const unsigned int qp)
Get the transformed Jacobian weight.
MOOSE now contains C++17 code, so give a reasonable error message stating what the user can do to add...
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type...
The Kokkos wrapper classes for MOOSE-like variable value access.
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...
KOKKOS_FUNCTION void reinit()
Reset the reinit flag.
TimeKernel(const InputParameters ¶meters)
Constructor.
const TagName SOLUTION_DOT_TAG