Intrepid2
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 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 (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().
 
virtual TensorPointDataType allocateCubaturePoints () const override
 Returns a points container appropriate for passing to getCubature().
 
virtual TensorWeightDataType allocateCubatureWeights () const override
 Returns a weight container appropriate for passing to getCubature().
 
virtual ordinal_type getNumPoints () const override
 Returns the number of cubature points.
 
virtual ordinal_type getDimension () const override
 Returns dimension of integration domain.
 
virtual const char * getName () const override
 Returns cubature name.
 
virtual ordinal_type getAccuracy () const override
 Returns dimension of the integration domain.
 
void getAccuracy (ordinal_type *accuracy) const
 Returns max. degree of polynomials that are integrated exactly.
 
ordinal_type getNumCubatures () const
 Return the number of cubatures.
 
 CubatureTensor (const CubatureTensor &b)
 
 CubatureTensor (const CubatureType0 cubature0, const CubatureType1 cubature1)
 Constructor.
 
 CubatureTensor (const CubatureType0 cubature0, const CubatureType1 cubature1, const CubatureType2 cubature2)
 Constructor.
 
 CubatureTensor (const CubatureTensor cubatureTensor, const DirectCubature cubatureExtension)
 Constructor for extending an existing CubatureTensor object with an additional direct cubature rule.
 
- Public Member Functions inherited from Intrepid2::Cubature< void, double, double >
virtual void getCubature (PointViewType, weightViewType) const
 Returns cubature points and weights (return arrays must be pre-sized/pre-allocated).
 
virtual void getCubature (PointViewType, weightViewType, PointViewType) const
 Returns cubature points and weights on physical cells (return arrays must be pre-sized/pre-allocated).
 
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().
 

Additional Inherited Members

- Public Types inherited from Intrepid2::CubatureTensor< void, double, double >
using PointViewType
 
using weightViewType
 
using PointViewTypeAllocatable
 KK: following should be updated with nate's tensor work.
 
using WeightViewTypeAllocatable
 
using TensorPointDataType
 
using TensorWeightDataType
 
- Public Types inherited from Intrepid2::Cubature< void, double, double >
using ExecSpaceType
 
using PointViewType
 
using weightViewType
 
using PointViewTypeAllocatable
 
using WeightViewTypeAllocatable
 
using TensorPointDataType
 
using TensorWeightDataType
 

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.

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 109 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 112 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 116 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 122 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

◆ 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: