Intrepid2
Classes | Public Types | Public Member Functions | Static Public Member Functions | Private Types | Static Private Member Functions | Static Private Attributes | List of all members
Intrepid2::RefCellNodes< DeviceType > Class Template Reference

This class defines the coordinates of the nodes of reference cells according for supported cell topologies. The node coordinates are stored in static views. The class is templated on the Kokkos::Device Type which is used to determine layout and memory space of the views. More...

#include <Intrepid2_CellData.hpp>

Classes

struct  ReferenceNodeDataStatic
 Reference node containers for each supported topology. More...
 

Public Types

using ConstViewType = Kokkos::DynRankView< const double, DeviceType >
 

Public Member Functions

 RefCellNodes ()=default
 Default constructor.
 
 ~RefCellNodes ()=default
 Destructor.
 

Static Public Member Functions

static ConstViewType get (const unsigned cellTopoKey)
 Retrieves the Cartesian coordinates of reference cell nodes. More...
 

Private Types

using ViewType = Kokkos::DynRankView< double, DeviceType >
 static views containing the node coordinates allocated on DeviceType::memory_space
 

Static Private Member Functions

static void set ()
 Set reference nodes coordinates for supported topologies.
 

Static Private Attributes

static ViewType lineNodes
 
static ViewType line3Nodes
 
static ViewType triangleNodes
 
static ViewType triangle4Nodes
 
static ViewType triangle6Nodes
 
static ViewType quadrilateralNodes
 
static ViewType quadrilateral8Nodes
 
static ViewType quadrilateral9Nodes
 
static ViewType tetrahedronNodes
 
static ViewType tetrahedron8Nodes
 
static ViewType tetrahedron10Nodes
 
static ViewType tetrahedron11Nodes
 
static ViewType hexahedronNodes
 
static ViewType hexahedron20Nodes
 
static ViewType hexahedron27Nodes
 
static ViewType pyramidNodes
 
static ViewType pyramid13Nodes
 
static ViewType pyramid14Nodes
 
static ViewType wedgeNodes
 
static ViewType wedge15Nodes
 
static ViewType wedge18Nodes
 
static const
ReferenceNodeDataStatic 
refNodeDataStatic_
 static struct containing the nodes coordinates on host
 
static bool isReferenceNodeDataSet_ = false
 whether the nodes coordinates have been already set using the method set()
 

Detailed Description

template<typename DeviceType>
class Intrepid2::RefCellNodes< DeviceType >

This class defines the coordinates of the nodes of reference cells according for supported cell topologies. The node coordinates are stored in static views. The class is templated on the Kokkos::Device Type which is used to determine layout and memory space of the views.

Definition at line 206 of file Intrepid2_CellData.hpp.

Member Function Documentation

template<typename DeviceType >
RefCellNodes< DeviceType >::ConstViewType Intrepid2::RefCellNodes< DeviceType >::get ( const unsigned  cellTopoKey)
inlinestatic

Retrieves the Cartesian coordinates of reference cell nodes.

Returns a Kokkos view containing the coordinates of reference cell nodes. Requires the key of the reference cell topology. Node coordinates are always returned as an (x,y,z)-triple regardless of the actual topological cell dimension. The unused coordinates are set to zero, e.g., node 0 of Line<2> is returned as {-1,0,0}.

Parameters
cellTopoKey[in] - key of the cell topology
Returns
a rank-2 Kokkos::View containing the coordinates of the cell nodes The returned view has dimensions (# nodes, 3)

Definition at line 520 of file Intrepid2_CellDataDef.hpp.

References INTREPID2_TEST_FOR_EXCEPTION_DEVICE_SAFE.

Referenced by Intrepid2::CellTools< DeviceType >::getReferenceNode(), Intrepid2::CellTools< DeviceType >::getReferenceVertex(), and Intrepid2::RefSubcellParametrization< DeviceType >::set().


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