Intrepid2
Public Types | Public Member Functions | Private Attributes | List of all members
Intrepid2::CubatureTensor< ExecSpaceType, pointValueType, weightValueType > Class Template Reference

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

#include <Intrepid2_CubatureTensor.hpp>

Inheritance diagram for Intrepid2::CubatureTensor< ExecSpaceType, pointValueType, weightValueType >:
Intrepid2::Cubature< ExecSpaceType, pointValueType, weightValueType > Intrepid2::CubatureTensorPyr< ExecSpaceType, pointValueType, weightValueType >

Public Types

typedef Cubature
< ExecSpaceType,
pointValueType,
weightValueType >
::PointViewType 
PointViewType
 
typedef Cubature
< ExecSpaceType,
pointValueType,
weightValueType >
::weightViewType 
weightViewType
 
- Public Types inherited from Intrepid2::Cubature< ExecSpaceType, pointValueType, weightValueType >
typedef Kokkos::DynRankView
< pointValueType,
Kokkos::LayoutStride,
ExecSpaceType > 
PointViewType
 
typedef Kokkos::DynRankView
< weightValueType,
Kokkos::LayoutStride,
ExecSpaceType > 
weightViewType
 

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
 Returns cubature points and weights (return arrays must be pre-sized/pre-allocated). More...
 
virtual ordinal_type getNumPoints () const
 Returns the number of cubature points.
 
virtual ordinal_type getDimension () const
 Returns dimension of integration domain.
 
virtual const char * getName () const
 Returns cubature name.
 
virtual ordinal_type getAccuracy () const
 Returns dimension of the integration domain.
 
ordinal_type getNumCubatures () const
 Return the number of cubatures.
 
void getAccuracy (ordinal_type *accuracy) const
 Returns max. degree of polynomials that are integrated exactly.
 
 CubatureTensor (const CubatureTensor &b)
 
template<typename CubatureType0 , typename CubatureType1 >
 CubatureTensor (const CubatureType0 cubature0, const CubatureType1 cubature1)
 Constructor. More...
 
template<typename CubatureType0 , typename CubatureType1 , typename CubatureType2 >
 CubatureTensor (const CubatureType0 cubature0, const CubatureType1 cubature1, const CubatureType2 cubature2)
 Constructor. More...
 
- Public Member Functions inherited from Intrepid2::Cubature< ExecSpaceType, pointValueType, weightValueType >
virtual void getCubature (PointViewType, weightViewType, PointViewType) const
 Returns cubature points and weights on physical cells (return arrays must be pre-sized/pre-allocated). More...
 

Private Attributes

ordinal_type numCubatures_
 Array of cubature rules.
 
CubatureDirect< ExecSpaceType,
pointValueType,
weightValueType > 
cubatures_ [Parameters::MaxDimension]
 
ordinal_type dimension_
 Dimension of integration domain.
 

Detailed Description

template<typename ExecSpaceType = void, typename pointValueType = double, typename weightValueType = double>
class Intrepid2::CubatureTensor< ExecSpaceType, pointValueType, weightValueType >

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

Definition at line 64 of file Intrepid2_CubatureTensor.hpp.

Constructor & Destructor Documentation

template<typename ExecSpaceType = void, typename pointValueType = double, typename weightValueType = double>
template<typename CubatureType0 , typename CubatureType1 >
Intrepid2::CubatureTensor< ExecSpaceType, pointValueType, weightValueType >::CubatureTensor ( const CubatureType0  cubature0,
const CubatureType1  cubature1 
)
inline

Constructor.

Parameters
cubature1[in] - First direct cubature rule.
cubature2[in] - Second direct cubature rule.

Definition at line 166 of file Intrepid2_CubatureTensor.hpp.

template<typename ExecSpaceType = void, typename pointValueType = double, typename weightValueType = double>
template<typename CubatureType0 , typename CubatureType1 , typename CubatureType2 >
Intrepid2::CubatureTensor< ExecSpaceType, pointValueType, weightValueType >::CubatureTensor ( const CubatureType0  cubature0,
const CubatureType1  cubature1,
const CubatureType2  cubature2 
)
inline

Constructor.

Parameters
cubature1[in] - First direct cubature rule.
cubature2[in] - Second direct cubature rule.
cubature3[in] - Third direct cubature rule.

Definition at line 183 of file Intrepid2_CubatureTensor.hpp.

Member Function Documentation

template<typename ExecSpaceType = void, typename pointValueType = double, typename weightValueType = double>
virtual void Intrepid2::CubatureTensor< ExecSpaceType, pointValueType, weightValueType >::getCubature ( PointViewType  ,
weightViewType   
) const
inlinevirtual

Returns cubature points and weights (return arrays must be pre-sized/pre-allocated).

Parameters
cubPoints[out] - Array containing the cubature points.
cubWeights[out] - Array of corresponding cubature weights.

Reimplemented from Intrepid2::Cubature< ExecSpaceType, pointValueType, weightValueType >.

Reimplemented in Intrepid2::CubatureTensorPyr< ExecSpaceType, pointValueType, weightValueType >.

Definition at line 93 of file Intrepid2_CubatureTensor.hpp.


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