43 virtual void compute()
override;
48 template <
typename Derived>
51 using ElementReducer::operator();
57 template <
typename Derived>
65 object.template execute<Derived>(datum);
Interface for objects that need parallel consistent random numbers without patterns over the course o...
The Kokkos object that holds thread-private data in the parallel operations of any Kokkos object...
virtual void compute() override
Compute this user object.
const unsigned int invalid_uint
KOKKOS_FUNCTION const Assembly & kokkosAssembly() const
Get the const reference of the Kokkos assembly.
const InputParameters & parameters() const
Get the parameters of the object.
Interface for objects that needs transient capabilities.
MOOSE_KOKKOS_INDEX_TYPE ThreadID
KOKKOS_FUNCTION ContiguousElementID kokkosBlockElementID(Moose::Kokkos::ThreadID tid) const
Get the contiguous element ID this Kokkos thread is operating on.
An interface for accessing Materials.
virtual ThreadID numUserObjectThreads() const override
Get the number of threads.
KOKKOS_FUNCTION dof_id_type numKokkosBlockElements() const
Get the number of elements this Kokkos object is operating on.
ElementUserObject(const InputParameters ¶meters)
KOKKOS_FUNCTION void operator()(DefaultLoop, const ThreadID tid, const Derived &object) const
The parallel computation entry function called by Kokkos.
KOKKOS_FUNCTION const Array< System > & kokkosSystems() const
Get the const reference of the Kokkos systems.
static InputParameters validParams()