https://mooseframework.inl.gov
Public Member Functions | List of all members
Moose::Kokkos::VectorVariableShapeGradient< is_test > Class Template Reference

#include <KokkosVariableValue.h>

Public Member Functions

KOKKOS_FUNCTION Real33 operator() (AssemblyDatum &datum, unsigned int i, unsigned int qp) const
 Get the gradient of the current vector shape function. More...
 
KOKKOS_FUNCTION const Real33reference (AssemblyDatum &datum, unsigned int i, unsigned int qp) const
 Get the gradient of the current vector shape function in reference space. More...
 

Detailed Description

template<bool is_test>
class Moose::Kokkos::VectorVariableShapeGradient< is_test >

Definition at line 137 of file KokkosVariableValue.h.

Member Function Documentation

◆ operator()()

template<bool is_test>
KOKKOS_FUNCTION Real33 Moose::Kokkos::VectorVariableShapeGradient< is_test >::operator() ( AssemblyDatum datum,
unsigned int  i,
unsigned int  qp 
) const
inline

Get the gradient of the current vector shape function.

Parameters
datumThe AssemblyDatum object of the current thread
iThe element-local DOF index
qpThe local quadrature point index
Returns
The gradient of the vector shape function

Definition at line 157 of file KokkosVariableValue.h.

158  {
159  return reference(datum, i, qp) * datum.J(qp).transpose();
160  }
KOKKOS_FUNCTION const Real33 & reference(AssemblyDatum &datum, unsigned int i, unsigned int qp) const
Get the gradient of the current vector shape function in reference space.
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 d...
Definition: KokkosDatum.h:495
KOKKOS_INLINE_FUNCTION Real33 transpose() const
Definition: KokkosTypes.h:448

◆ reference()

template<bool is_test>
KOKKOS_FUNCTION const Real33 & Moose::Kokkos::VectorVariableShapeGradient< is_test >::reference ( AssemblyDatum datum,
unsigned int  i,
unsigned int  qp 
) const

Get the gradient of the current vector shape function in reference space.

Parameters
datumThe AssemblyDatum object of the current thread
iThe element-local DOF index
qpThe local quadrature point index
Returns
The reference-space gradient of the vector shape function

Definition at line 165 of file KokkosVariableValue.h.

Referenced by Moose::Kokkos::VectorKernelGrad::computeJacobianInternal(), Moose::Kokkos::VectorKernelGrad::computeOffDiagJacobianInternal(), Moose::Kokkos::VectorKernelGrad::computeResidualInternal(), and Moose::Kokkos::VectorVariableShapeGradient< is_test >::operator()().

168 {
169  auto & elem = datum.elem();
170  auto side = datum.side();
171  auto fe = is_test ? datum.ife() : datum.jfe();
172 
173  return side == libMesh::invalid_uint
174  ? datum.assembly().getVectorGradPhi(elem.subdomain, elem.type, fe)(i, qp)
175  : datum.assembly().getVectorGradPhiFace(elem.subdomain, elem.type, fe)(side)(i, qp);
176 }
const unsigned int invalid_uint
KOKKOS_FUNCTION unsigned int side() const
Get the side index.
Definition: KokkosDatum.h:79
KOKKOS_FUNCTION const auto & getVectorGradPhiFace(ContiguousSubdomainID subdomain, unsigned int elem_type, unsigned int fe_type) const
Get the gradient of face vector shape functions of a FE type for an element type and subdomain...
KOKKOS_FUNCTION unsigned int jfe() const
Get the coupled variable FE type ID.
Definition: KokkosDatum.h:666
KOKKOS_FUNCTION const auto & getVectorGradPhi(ContiguousSubdomainID subdomain, unsigned int elem_type, unsigned int fe_type) const
Get the gradient of vector shape functions of a FE type for an element type and subdomain.
KOKKOS_FUNCTION const Assembly & assembly() const
Get the Kokkos assembly.
Definition: KokkosDatum.h:274
KOKKOS_FUNCTION unsigned int ife() const
Get the variable FE type ID.
Definition: KokkosDatum.h:661
KOKKOS_FUNCTION const ElementInfo & elem() const
Get the element information object.
Definition: KokkosDatum.h:46

The documentation for this class was generated from the following file: