The Kokkos object that holds thread-private data in the parallel operations of any Kokkos object. More...
#include <KokkosDatum.h>
Public Member Functions | |
| KOKKOS_FUNCTION | Datum (const ContiguousElementID elem, const unsigned int side, const Assembly &assembly, const Array< System > &systems) |
| Constructor for element and side data. More... | |
| KOKKOS_FUNCTION | Datum (const ContiguousNodeID node, const Assembly &assembly, const Array< System > &systems) |
| Constructor for node data. More... | |
| KOKKOS_FUNCTION const Assembly & | assembly () const |
| Get the Kokkos assembly. More... | |
| KOKKOS_FUNCTION const System & | system (unsigned int sys) const |
| Get the Kokkos system. More... | |
| KOKKOS_FUNCTION const ElementInfo & | elem () const |
| Get the element information object. More... | |
| KOKKOS_FUNCTION ContiguousSubdomainID | subdomain () const |
| Get the contiguous subdomain ID. More... | |
| KOKKOS_FUNCTION unsigned int | side () const |
| Get the side index. More... | |
| KOKKOS_FUNCTION ContiguousNodeID | node () const |
| Get the contiguous node ID. More... | |
| KOKKOS_FUNCTION unsigned int | n_qps () const |
| Get the number of local quadrature points. More... | |
| KOKKOS_FUNCTION dof_id_type | qpOffset () const |
| Get the starting offset into the global quadrature point index. More... | |
| KOKKOS_FUNCTION bool | hasNeighbor () const |
| Get whether the current side has a neighbor. More... | |
| KOKKOS_FUNCTION bool | isNodal () const |
| Get whether the current datum is on a node. More... | |
| KOKKOS_FUNCTION const Real33 & | J (const unsigned int qp) |
| Get the inverse of Jacobian matrix | dxi/dx deta/dx dzeta/dx | | dxi/dy deta/dy dzeta/dy | | dxi/dz deta/dz dzeta/dz |. More... | |
| KOKKOS_FUNCTION Real | JxW (const unsigned int qp) |
| Get the transformed Jacobian weight. More... | |
| KOKKOS_FUNCTION Real3 | q_point (const unsigned int qp) |
| Get the physical quadrature point coordinate. More... | |
| KOKKOS_FUNCTION void | reinit () |
| Reset the reinit flag. More... | |
Protected Attributes | |
| const Assembly & | _assembly |
| Reference of the Kokkos assembly. More... | |
| const Array< System > & | _systems |
| Reference of the Kokkos systems. More... | |
| const ElementInfo | _elem |
| Current element information object. More... | |
| const unsigned int | _side = libMesh::invalid_uint |
| Current side index. More... | |
| const ContiguousNodeID | _node = libMesh::DofObject::invalid_id |
| Current contiguous node ID. More... | |
| const ContiguousElementID | _neighbor = libMesh::DofObject::invalid_id |
| Current contiguous element ID of neighbor. More... | |
| const unsigned int | _n_qps = 1 |
| Number of local quadrature points. More... | |
| const dof_id_type | _qp_offset = libMesh::DofObject::invalid_id |
| Starting offset into the global quadrature point index. More... | |
Private Member Functions | |
| KOKKOS_FUNCTION void | reinitTransform (const unsigned int qp) |
| Compute and cache the physical transformation data. More... | |
Private Attributes | |
| bool | _transform_reinit = false |
| Flag whether the physical transformation data was cached. More... | |
| Real33 | _J |
| Cached physical transformation data. More... | |
| Real | _JxW |
| Real3 | _xyz |
The Kokkos object that holds thread-private data in the parallel operations of any Kokkos object.
Definition at line 25 of file KokkosDatum.h.
|
inline |
Constructor for element and side data.
| elem | The contiguous element ID of the current thread |
| side | The side index of the current thread |
| assembly | The Kokkos assembly |
| systems | The Kokkos systems |
Definition at line 36 of file KokkosDatum.h.
|
inline |
Constructor for node data.
| node | The contiguous node ID of the current thread |
| assembly | The Kokkos assembly |
| systems | The Kokkos systems |
Definition at line 59 of file KokkosDatum.h.
|
inline |
Get the Kokkos assembly.
Definition at line 68 of file KokkosDatum.h.
Referenced by Moose::Kokkos::VariablePhiValue::operator()(), Moose::Kokkos::VariablePhiGradient::operator()(), Moose::Kokkos::VariableTestValue::operator()(), and Moose::Kokkos::VariableTestGradient::operator()().
|
inline |
Get the element information object.
Definition at line 80 of file KokkosDatum.h.
Referenced by KokkosCopyValueAux::computeElementInternal(), KokkosTimeDerivative::computeJacobianInternal(), Moose::Kokkos::ResidualObject::computeJacobianInternal(), Moose::Kokkos::ResidualObject::computeResidualInternal(), Moose::Kokkos::VariablePhiValue::operator()(), Moose::Kokkos::VariablePhiGradient::operator()(), Moose::Kokkos::VariableTestValue::operator()(), Moose::Kokkos::VariableTestGradient::operator()(), Moose::Kokkos::VariableValue::operator()(), Moose::Kokkos::VariableGradient::operator()(), and Moose::Kokkos::AuxKernel::setElementSolution().
|
inline |
Get whether the current side has a neighbor.
Definition at line 110 of file KokkosDatum.h.
|
inline |
Get whether the current datum is on a node.
Definition at line 115 of file KokkosDatum.h.
Referenced by J(), JxW(), Moose::Kokkos::VariableValue::operator()(), Moose::Kokkos::VariableGradient::operator()(), and q_point().
Get the inverse of Jacobian matrix | dxi/dx deta/dx dzeta/dx | | dxi/dy deta/dy dzeta/dy | | dxi/dz deta/dz dzeta/dz |.
| qp | The local quadrature point index |
Definition at line 125 of file KokkosDatum.h.
Referenced by Moose::Kokkos::VariablePhiGradient::operator()(), Moose::Kokkos::VariableTestGradient::operator()(), and Moose::Kokkos::VariableGradient::operator()().
Get the transformed Jacobian weight.
| qp | The local quadrature point index |
Definition at line 139 of file KokkosDatum.h.
Referenced by Moose::Kokkos::AuxKernel::computeElementInternal(), KokkosTimeDerivative::computeJacobianInternal(), Moose::Kokkos::KernelValue::computeJacobianInternal(), Moose::Kokkos::KernelGrad::computeJacobianInternal(), Moose::Kokkos::IntegratedBC::computeJacobianInternal(), Moose::Kokkos::Kernel::computeJacobianInternal(), Moose::Kokkos::Kernel::computeOffDiagJacobianInternal(), Moose::Kokkos::IntegratedBC::computeOffDiagJacobianInternal(), Moose::Kokkos::TimeKernel::computeResidualInternal(), Moose::Kokkos::KernelValue::computeResidualInternal(), Moose::Kokkos::KernelGrad::computeResidualInternal(), Moose::Kokkos::IntegratedBC::computeResidualInternal(), and Moose::Kokkos::Kernel::computeResidualInternal().
|
inline |
Get the number of local quadrature points.
Definition at line 100 of file KokkosDatum.h.
Referenced by Moose::Kokkos::AuxKernel::computeElementInternal(), KokkosTimeDerivative::computeJacobianInternal(), Moose::Kokkos::KernelValue::computeJacobianInternal(), Moose::Kokkos::KernelGrad::computeJacobianInternal(), Moose::Kokkos::IntegratedBC::computeJacobianInternal(), Moose::Kokkos::Kernel::computeJacobianInternal(), Moose::Kokkos::Kernel::computeOffDiagJacobianInternal(), Moose::Kokkos::IntegratedBC::computeOffDiagJacobianInternal(), Moose::Kokkos::TimeKernel::computeResidualInternal(), Moose::Kokkos::KernelValue::computeResidualInternal(), Moose::Kokkos::KernelGrad::computeResidualInternal(), Moose::Kokkos::Kernel::computeResidualInternal(), Moose::Kokkos::IntegratedBC::computeResidualInternal(), and Moose::Kokkos::Material::operator()().
|
inline |
Get the contiguous node ID.
Definition at line 95 of file KokkosDatum.h.
Referenced by KokkosCopyValueAux::computeNodeInternal(), KokkosBoundNodalKernel< KokkosUpperBoundNodalKernel >::computeQpJacobian(), KokkosBoundNodalKernel< KokkosUpperBoundNodalKernel >::computeQpOffDiagJacobian(), KokkosBoundNodalKernel< KokkosUpperBoundNodalKernel >::computeQpResidual(), Moose::Kokkos::VariableValue::operator()(), and Moose::Kokkos::AuxKernel::setNodeSolution().
Get the physical quadrature point coordinate.
| qp | The local quadrature point index |
Definition at line 153 of file KokkosDatum.h.
|
inline |
Get the starting offset into the global quadrature point index.
Definition at line 105 of file KokkosDatum.h.
Referenced by Moose::Kokkos::VariableValue::operator()(), and Moose::Kokkos::VariableGradient::operator()().
|
inline |
Reset the reinit flag.
Definition at line 166 of file KokkosDatum.h.
Referenced by Moose::Kokkos::AuxKernel::computeElementInternal(), KokkosTimeDerivative::computeJacobianInternal(), Moose::Kokkos::KernelValue::computeJacobianInternal(), Moose::Kokkos::KernelGrad::computeJacobianInternal(), Moose::Kokkos::IntegratedBC::computeJacobianInternal(), Moose::Kokkos::Kernel::computeJacobianInternal(), Moose::Kokkos::Kernel::computeOffDiagJacobianInternal(), Moose::Kokkos::IntegratedBC::computeOffDiagJacobianInternal(), Moose::Kokkos::TimeKernel::computeResidualInternal(), Moose::Kokkos::KernelValue::computeResidualInternal(), Moose::Kokkos::KernelGrad::computeResidualInternal(), Moose::Kokkos::Kernel::computeResidualInternal(), Moose::Kokkos::IntegratedBC::computeResidualInternal(), and Moose::Kokkos::Material::operator()().
Compute and cache the physical transformation data.
| qp | The local quadrature point index |
Definition at line 224 of file KokkosDatum.h.
Referenced by J(), JxW(), and q_point().
|
inline |
Get the side index.
Definition at line 90 of file KokkosDatum.h.
Referenced by Moose::Kokkos::VariablePhiValue::operator()(), Moose::Kokkos::VariablePhiGradient::operator()(), Moose::Kokkos::VariableTestValue::operator()(), Moose::Kokkos::VariableTestGradient::operator()(), Moose::Kokkos::VariableValue::operator()(), and Moose::Kokkos::VariableGradient::operator()().
|
inline |
Get the contiguous subdomain ID.
Definition at line 85 of file KokkosDatum.h.
Get the Kokkos system.
| sys | The system number |
Definition at line 74 of file KokkosDatum.h.
Referenced by Moose::Kokkos::VariableValue::operator()(), and Moose::Kokkos::VariableGradient::operator()().
|
protected |
Reference of the Kokkos assembly.
Definition at line 172 of file KokkosDatum.h.
Referenced by assembly(), J(), q_point(), and reinitTransform().
|
protected |
Current element information object.
Definition at line 180 of file KokkosDatum.h.
Referenced by elem(), reinitTransform(), and subdomain().
|
private |
Cached physical transformation data.
Definition at line 217 of file KokkosDatum.h.
Referenced by J(), and reinitTransform().
|
private |
Definition at line 218 of file KokkosDatum.h.
Referenced by JxW(), and reinitTransform().
|
protected |
Number of local quadrature points.
Definition at line 196 of file KokkosDatum.h.
Referenced by n_qps().
|
protected |
Current contiguous element ID of neighbor.
Definition at line 192 of file KokkosDatum.h.
Referenced by hasNeighbor().
|
protected |
Current contiguous node ID.
Definition at line 188 of file KokkosDatum.h.
|
protected |
Starting offset into the global quadrature point index.
Definition at line 200 of file KokkosDatum.h.
Referenced by qpOffset().
|
protected |
Current side index.
Definition at line 184 of file KokkosDatum.h.
Referenced by reinitTransform(), and side().
Reference of the Kokkos systems.
Definition at line 176 of file KokkosDatum.h.
Referenced by system().
|
private |
Flag whether the physical transformation data was cached.
Definition at line 212 of file KokkosDatum.h.
Referenced by reinit(), and reinitTransform().
|
private |
Definition at line 219 of file KokkosDatum.h.
Referenced by q_point(), and reinitTransform().
1.8.14