Intrepid2
Classes | Public Types | Public Member Functions | List of all members
Intrepid2::CubatureTensorPyr< DeviceType, pointValueType, weightValueType > Class Template Reference

Defines tensor-product cubature (integration) rules in Intrepid. More...

#include <Intrepid2_CubatureTensorPyr.hpp>

Inheritance diagram for Intrepid2::CubatureTensorPyr< DeviceType, pointValueType, weightValueType >:
Intrepid2::CubatureTensor< void, double, double > Intrepid2::Cubature< void, double, double >

Classes

struct  Functor
 

Public Types

typedef Cubature< DeviceType, pointValueType, weightValueType >::PointViewType PointViewType
 
typedef Cubature< DeviceType, pointValueType, weightValueType >::weightViewType weightViewType
 
- Public Types inherited from Intrepid2::CubatureTensor< void, double, double >
using PointViewType = typename Cubature< void, double, double >::PointViewType
 
using weightViewType = typename Cubature< void, double, double >::weightViewType
 
using PointViewTypeAllocatable = typename Cubature< void, double, double >::PointViewTypeAllocatable
 KK: following should be updated with nate's tensor work. More...
 
using WeightViewTypeAllocatable = typename Cubature< void, double, double >::WeightViewTypeAllocatable
 
using TensorPointDataType = typename Cubature< void, double, double >::TensorPointDataType
 
using TensorWeightDataType = typename Cubature< void, double, double >::TensorWeightDataType
 
- Public Types inherited from Intrepid2::Cubature< void, double, double >
using ExecSpaceType = typename DeviceType::execution_space
 
using PointViewType = Kokkos::DynRankView< double, Kokkos::LayoutStride, void >
 
using weightViewType = Kokkos::DynRankView< double, Kokkos::LayoutStride, void >
 
using PointViewTypeAllocatable = Kokkos::DynRankView< double, void >
 
using WeightViewTypeAllocatable = Kokkos::DynRankView< double, void >
 
using TensorPointDataType = TensorPoints< double, void >
 
using TensorWeightDataType = TensorData< double, void >
 

Public Member Functions

template<typename cubPointValueType , class ... cubPointProperties, typename cubWeightValueType , class ... cubWeightProperties>
void getCubatureImpl (Kokkos::DynRankView< cubPointValueType, cubPointProperties... > cubPoints, Kokkos::DynRankView< cubWeightValueType, cubWeightProperties... > cubWeights) const
 
virtual void getCubature (PointViewType cubPoints, weightViewType cubWeights) const
 
 CubatureTensorPyr (const CubatureTensorPyr &b)
 
template<typename CubatureLineType >
 CubatureTensorPyr (const CubatureLineType line)
 
template<typename CubatureLineType0 , typename CubatureLineType1 , typename CubatureLineType2 >
 CubatureTensorPyr (const CubatureLineType0 line0, const CubatureLineType1 line1, const CubatureLineType2 line2)
 
- Public Member Functions inherited from Intrepid2::CubatureTensor< void, double, double >
void getCubatureImpl (Kokkos::DynRankView< cubPointValueType, cubPointProperties... > cubPoints, Kokkos::DynRankView< cubWeightValueType, cubWeightProperties... > cubWeights) const
 
virtual void getCubature (PointViewType cubPoints, weightViewType cubWeights) const override
 
virtual void getCubature (const TensorPointDataType &tensorCubPoints, const TensorWeightDataType &tensorCubWeights) const override
 Returns tensor cubature points and weights. For non-tensor cubatures, the tensor structures are trivial, thin wrappers around the data returned by getCubature(). The provided containers should be pre-allocated through calls to allocateCubaturePoints() and allocateCubatureWeights(). More...
 
virtual TensorPointDataType allocateCubaturePoints () const override
 Returns a points container appropriate for passing to getCubature(). More...
 
virtual TensorWeightDataType allocateCubatureWeights () const override
 Returns a weight container appropriate for passing to getCubature(). More...
 
virtual ordinal_type getNumPoints () const override
 Returns the number of cubature points. More...
 
virtual ordinal_type getDimension () const override
 Returns dimension of integration domain. More...
 
virtual const char * getName () const override
 Returns cubature name. More...
 
virtual ordinal_type getAccuracy () const override
 Returns dimension of the integration domain. More...
 
void getAccuracy (ordinal_type *accuracy) const
 Returns max. degree of polynomials that are integrated exactly. More...
 
ordinal_type getNumCubatures () const
 Return the number of cubatures. More...
 
 CubatureTensor (const CubatureTensor &b)
 
 CubatureTensor (const CubatureType0 cubature0, const CubatureType1 cubature1)
 Constructor. More...
 
 CubatureTensor (const CubatureType0 cubature0, const CubatureType1 cubature1, const CubatureType2 cubature2)
 Constructor. More...
 
 CubatureTensor (const CubatureTensor cubatureTensor, const DirectCubature cubatureExtension)
 Constructor for extending an existing CubatureTensor object with an additional direct cubature rule. More...
 
- Public Member Functions inherited from Intrepid2::Cubature< void, double, double >
virtual TensorPointDataType allocateCubaturePoints () const
 Returns a points container appropriate for passing to getCubature(). More...
 
virtual TensorWeightDataType allocateCubatureWeights () const
 Returns a weight container appropriate for passing to getCubature(). More...
 
virtual void getCubature (PointViewType, weightViewType) const
 Returns cubature points and weights (return arrays must be pre-sized/pre-allocated). More...
 
virtual void getCubature (PointViewType, weightViewType, PointViewType) const
 Returns cubature points and weights on physical cells (return arrays must be pre-sized/pre-allocated). More...
 
virtual void getCubature (const TensorPointDataType &tensorCubPoints, const TensorWeightDataType &tensorCubWeights) const
 Returns tensor cubature points and weights. For non-tensor cubatures, the tensor structures are trivial, thin wrappers around the data returned by getCubature(). The provided containers should be pre-allocated through calls to allocateCubaturePoints() and allocateCubatureWeights(). More...
 
virtual ordinal_type getNumPoints () const
 Returns the number of cubature points. More...
 
virtual ordinal_type getDimension () const
 Returns dimension of the integration domain. More...
 
virtual ordinal_type getAccuracy () const
 Returns dimension of the integration domain. More...
 
virtual const char * getName () const
 Returns cubature name. More...
 

Detailed Description

template<typename DeviceType = void, typename pointValueType = double, typename weightValueType = double>
class Intrepid2::CubatureTensorPyr< DeviceType, pointValueType, weightValueType >

Defines tensor-product cubature (integration) rules in Intrepid.

Definition at line 62 of file Intrepid2_CubatureTensorPyr.hpp.

Member Typedef Documentation

◆ PointViewType

template<typename DeviceType = void, typename pointValueType = double, typename weightValueType = double>
typedef Cubature<DeviceType,pointValueType,weightValueType>::PointViewType Intrepid2::CubatureTensorPyr< DeviceType, pointValueType, weightValueType >::PointViewType

Definition at line 95 of file Intrepid2_CubatureTensorPyr.hpp.

◆ weightViewType

template<typename DeviceType = void, typename pointValueType = double, typename weightValueType = double>
typedef Cubature<DeviceType,pointValueType,weightValueType>::weightViewType Intrepid2::CubatureTensorPyr< DeviceType, pointValueType, weightValueType >::weightViewType

Definition at line 96 of file Intrepid2_CubatureTensorPyr.hpp.

Constructor & Destructor Documentation

◆ CubatureTensorPyr() [1/4]

template<typename DeviceType = void, typename pointValueType = double, typename weightValueType = double>
Intrepid2::CubatureTensorPyr< DeviceType, pointValueType, weightValueType >::CubatureTensorPyr ( )
inline

Definition at line 108 of file Intrepid2_CubatureTensorPyr.hpp.

◆ CubatureTensorPyr() [2/4]

template<typename DeviceType = void, typename pointValueType = double, typename weightValueType = double>
Intrepid2::CubatureTensorPyr< DeviceType, pointValueType, weightValueType >::CubatureTensorPyr ( const CubatureTensorPyr< DeviceType, pointValueType, weightValueType > &  b)
inline

Definition at line 111 of file Intrepid2_CubatureTensorPyr.hpp.

◆ CubatureTensorPyr() [3/4]

template<typename DeviceType = void, typename pointValueType = double, typename weightValueType = double>
template<typename CubatureLineType >
Intrepid2::CubatureTensorPyr< DeviceType, pointValueType, weightValueType >::CubatureTensorPyr ( const CubatureLineType  line)
inline

Definition at line 115 of file Intrepid2_CubatureTensorPyr.hpp.

◆ CubatureTensorPyr() [4/4]

template<typename DeviceType = void, typename pointValueType = double, typename weightValueType = double>
template<typename CubatureLineType0 , typename CubatureLineType1 , typename CubatureLineType2 >
Intrepid2::CubatureTensorPyr< DeviceType, pointValueType, weightValueType >::CubatureTensorPyr ( const CubatureLineType0  line0,
const CubatureLineType1  line1,
const CubatureLineType2  line2 
)
inline

Definition at line 121 of file Intrepid2_CubatureTensorPyr.hpp.

Member Function Documentation

◆ getCubature()

template<typename DeviceType = void, typename pointValueType = double, typename weightValueType = double>
virtual void Intrepid2::CubatureTensorPyr< DeviceType, pointValueType, weightValueType >::getCubature ( PointViewType  cubPoints,
weightViewType  cubWeights 
) const
inlinevirtual

Definition at line 102 of file Intrepid2_CubatureTensorPyr.hpp.

◆ getCubatureImpl()

template<typename DT , typename PT , typename WT >
template<typename cubPointValueType , class ... cubPointProperties, typename cubWeightValueType , class ... cubWeightProperties>
void Intrepid2::CubatureTensorPyr< DT, PT, WT >::getCubatureImpl ( Kokkos::DynRankView< cubPointValueType, cubPointProperties... >  cubPoints,
Kokkos::DynRankView< cubWeightValueType, cubWeightProperties... >  cubWeights 
) const

Definition at line 58 of file Intrepid2_CubatureTensorPyrDef.hpp.


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