53 template <
typename Derived>
67template <
typename Derived>
73 [&](Real * local_re,
const unsigned int ib,
const unsigned int ie)
75 for (
unsigned int qp = 0; qp < datum.
n_qps(); ++qp)
76 for (
unsigned int i = ib; i < ie; ++i)
77 local_re[i] += datum.
JxW(qp) * kernel.template computeQpResidual<Derived>(i, qp, datum);
79 kernel.computeResidualAdditional(ib, ie, datum, local_re);
const InputParameters & parameters() const
Get the parameters of the object.
The Kokkos object that holds thread-private data in the parallel operations of Kokkos kernels.
KOKKOS_FUNCTION Real JxW(const unsigned int qp)
Get the transformed Jacobian weight.
KOKKOS_FUNCTION unsigned int n_qps() const
Get the number of local quadrature points.
The base class for a user to derive their own Kokkos kernels.
KOKKOS_FUNCTION void computeResidualInternal(AssemblyDatum &datum, function body) const
The common loop structure template for computing elemental residual.
The base class for Kokkos time-derivative kernels.
KOKKOS_FUNCTION void computeResidualAdditional(const unsigned int, const unsigned int, AssemblyDatum &, Real *) const
Hook for additional computation for residual after the standard calls.
static InputParameters validParams()
KOKKOS_FUNCTION void computeResidualInternal(const Derived &kernel, AssemblyDatum &datum) const
The parallel computation body that hides the base class method to allow additional computation for re...
const VariableValue _u_dot
Time derivative of the current solution at quadrature points.
TimeKernel(const TimeKernel &object)
Copy constructor for parallel dispatch.
TimeKernel(const InputParameters ¶meters)
Constructor.
Array< Real > _du_dot_du
Derivative of u_dot with respect to u.
The Kokkos wrapper classes for MOOSE-like variable value access.