Intrepid
Public Member Functions | Protected Attributes | List of all members
Intrepid::CubatureDirect< Scalar, ArrayPoint, ArrayWeight > Class Template Referenceabstract

Defines direct cubature (integration) rules in Intrepid. More...

#include <Intrepid_CubatureDirect.hpp>

Inheritance diagram for Intrepid::CubatureDirect< Scalar, ArrayPoint, ArrayWeight >:
Intrepid::Cubature< Scalar, ArrayPoint, ArrayWeight > Intrepid::CubatureCompositeTet< Scalar, ArrayPoint, ArrayWeight > Intrepid::CubatureDirectLineGauss< Scalar, ArrayPoint, ArrayWeight > Intrepid::CubatureDirectLineGaussJacobi20< Scalar, ArrayPoint, ArrayWeight > Intrepid::CubatureDirectTetDefault< Scalar, ArrayPoint, ArrayWeight > Intrepid::CubatureDirectTriDefault< Scalar, ArrayPoint, ArrayWeight >

Public Member Functions

virtual void getCubatureData (ArrayPoint &cubPoints, ArrayWeight &cubWeights, const CubatureTemplate *cubData) const
 Extracts points and weights from cubData. More...
 
virtual void getCubature (ArrayPoint &cubPoints, ArrayWeight &cubWeights) const
 Returns cubature points and weights (return arrays must be pre-sized/pre-allocated). More...
 
virtual void getCubature (ArrayPoint &cubPoints, ArrayWeight &cubWeights, ArrayPoint &cellCoords) const
 Returns cubature points and weights. Method for physical space cubature, throws an exception. More...
 
virtual int getNumPoints () const
 Returns the number of cubature points.
 
virtual int getDimension () const
 Returns dimension of integration domain.
 
virtual void getAccuracy (std::vector< int > &accuracy) const
 Returns max. degree of polynomials that are integrated exactly. The return vector has size 1.
 
virtual const char * getName () const =0
 Returns cubature name.
 
virtual const CubatureTemplateexposeCubatureData () const =0
 Exposes cubature data.
 
virtual int getMaxAccuracy () const =0
 Returns maximum cubature accuracy.
 

Protected Attributes

int degree_
 The degree of polynomials that are integrated exactly by this cubature rule.
 
int dimension_
 Dimension of integration domain.
 

Detailed Description

template<class Scalar, class ArrayPoint = FieldContainer<Scalar>, class ArrayWeight = ArrayPoint>
class Intrepid::CubatureDirect< Scalar, ArrayPoint, ArrayWeight >

Defines direct cubature (integration) rules in Intrepid.

Cubature template (rule) consists of cubature points and cubature weights. Intrepid provides a small collection of frequently used cubature rule templates for FEM reconstructions on simplices (edge, tri, tet) and pyramid cells.

For quad, hex, and triprism rules, see tensor-product rules defined in the class CubatureTensor, and its derived classes.

Cubature rules for simplices and the pyramid are stored in the cubature_data_ array.

All templates are defined on a reference cell and can be mapped to physical space cells by the methods available in the MultiCell class.

Definition at line 76 of file Intrepid_CubatureDirect.hpp.

Member Function Documentation

template<class Scalar , class ArrayPoint , class ArrayWeight >
void Intrepid::CubatureDirect< Scalar, ArrayPoint, ArrayWeight >::getCubature ( ArrayPoint &  cubPoints,
ArrayWeight &  cubWeights 
) const
virtual
template<class Scalar , class ArrayPoint , class ArrayWeight >
void Intrepid::CubatureDirect< Scalar, ArrayPoint, ArrayWeight >::getCubature ( ArrayPoint &  cubPoints,
ArrayWeight &  cubWeights,
ArrayPoint &  cellCoords 
) const
virtual

Returns cubature points and weights. Method for physical space cubature, throws an exception.

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

Implements Intrepid::Cubature< Scalar, ArrayPoint, ArrayWeight >.

Definition at line 79 of file Intrepid_CubatureDirectDef.hpp.

template<class Scalar , class ArrayPoint , class ArrayWeight >
void Intrepid::CubatureDirect< Scalar, ArrayPoint, ArrayWeight >::getCubatureData ( ArrayPoint &  cubPoints,
ArrayWeight &  cubWeights,
const CubatureTemplate cubData 
) const
virtual

Extracts points and weights from cubData.

Parameters
cubPoints[out] - Array containing the cubature points.
cubWeights[out] - Array of corresponding cubature weights.
cubData[in] - Pointer to raw cubature data.

Definition at line 52 of file Intrepid_CubatureDirectDef.hpp.

References Intrepid::CubatureTemplate::points_, and Intrepid::CubatureTemplate::weights_.


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