Intrepid::CubatureTensor< Scalar, ArrayPoint, ArrayWeight > Class Template Reference

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

#include <Intrepid_CubatureTensor.hpp>

Inheritance diagram for Intrepid::CubatureTensor< Scalar, ArrayPoint, ArrayWeight >:
Intrepid::Cubature< Scalar, ArrayPoint, ArrayWeight >

List of all members.

Public Member Functions

 CubatureTensor (std::vector< Teuchos::RCP< Cubature< Scalar, ArrayPoint, ArrayWeight > > > cubatures)
 Constructor.
 CubatureTensor (Teuchos::RCP< CubatureDirect< Scalar, ArrayPoint, ArrayWeight > > cubature1, Teuchos::RCP< CubatureDirect< Scalar, ArrayPoint, ArrayWeight > > cubature2)
 Constructor.
 CubatureTensor (Teuchos::RCP< CubatureDirect< Scalar, ArrayPoint, ArrayWeight > > cubature1, Teuchos::RCP< CubatureDirect< Scalar, ArrayPoint, ArrayWeight > > cubature2, Teuchos::RCP< CubatureDirect< Scalar, ArrayPoint, ArrayWeight > > cubature3)
 Constructor.
 CubatureTensor (Teuchos::RCP< CubatureDirect< Scalar, ArrayPoint, ArrayWeight > > cubature, int n)
 Constructor.
virtual void getCubature (ArrayPoint &cubPoints, ArrayWeight &cubWeights) const
 Returns cubature points and weights (return arrays must be pre-sized/pre-allocated).
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 > &degree) const
 Returns max. degree of polynomials that are integrated exactly. The return vector has the size of the degree_ vector.

Private Attributes

std::vector< int > degree_
 Degree of polynomials that are integrated exactly by each cubature rule within the tensor product.
int dimension_
 Dimension of integration domain.
std::vector< Teuchos::RCP
< Cubature< Scalar, ArrayPoint,
ArrayWeight > > > 
cubatures_
 Array of cubature rules, stored as FieldContainers.

Detailed Description

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

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

Definition at line 50 of file Intrepid_CubatureTensor.hpp.


Constructor & Destructor Documentation

template<class Scalar , class ArrayPoint , class ArrayWeight >
Intrepid::CubatureTensor< Scalar, ArrayPoint, ArrayWeight >::CubatureTensor ( std::vector< Teuchos::RCP< Cubature< Scalar, ArrayPoint, ArrayWeight > > >  cubatures  )  [inline]

Constructor.

Parameters:
cubatures [in] - Array of cubatures that represent the building blocks of the tensor product.

Definition at line 38 of file Intrepid_CubatureTensorDef.hpp.

References Intrepid::CubatureTensor< Scalar, ArrayPoint, ArrayWeight >::cubatures_, Intrepid::CubatureTensor< Scalar, ArrayPoint, ArrayWeight >::degree_, and Intrepid::CubatureTensor< Scalar, ArrayPoint, ArrayWeight >::dimension_.

template<class Scalar , class ArrayPoint , class ArrayWeight >
Intrepid::CubatureTensor< Scalar, ArrayPoint, ArrayWeight >::CubatureTensor ( Teuchos::RCP< CubatureDirect< Scalar, ArrayPoint, ArrayWeight > >  cubature1,
Teuchos::RCP< CubatureDirect< Scalar, ArrayPoint, ArrayWeight > >  cubature2 
) [inline]

Constructor.

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

Definition at line 69 of file Intrepid_CubatureTensorDef.hpp.

References Intrepid::CubatureTensor< Scalar, ArrayPoint, ArrayWeight >::cubatures_, Intrepid::CubatureTensor< Scalar, ArrayPoint, ArrayWeight >::degree_, and Intrepid::CubatureTensor< Scalar, ArrayPoint, ArrayWeight >::dimension_.

template<class Scalar , class ArrayPoint , class ArrayWeight >
Intrepid::CubatureTensor< Scalar, ArrayPoint, ArrayWeight >::CubatureTensor ( Teuchos::RCP< CubatureDirect< Scalar, ArrayPoint, ArrayWeight > >  cubature1,
Teuchos::RCP< CubatureDirect< Scalar, ArrayPoint, ArrayWeight > >  cubature2,
Teuchos::RCP< CubatureDirect< Scalar, ArrayPoint, ArrayWeight > >  cubature3 
) [inline]

Constructor.

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

Definition at line 86 of file Intrepid_CubatureTensorDef.hpp.

References Intrepid::CubatureTensor< Scalar, ArrayPoint, ArrayWeight >::cubatures_, Intrepid::CubatureTensor< Scalar, ArrayPoint, ArrayWeight >::degree_, and Intrepid::CubatureTensor< Scalar, ArrayPoint, ArrayWeight >::dimension_.

template<class Scalar , class ArrayPoint , class ArrayWeight >
Intrepid::CubatureTensor< Scalar, ArrayPoint, ArrayWeight >::CubatureTensor ( Teuchos::RCP< CubatureDirect< Scalar, ArrayPoint, ArrayWeight > >  cubature,
int  n 
) [inline]

Constructor.

Parameters:
cubature [in] - Direct cubature rule.
n [in] - Number of copies of the cubature rule in the tensor product.

Definition at line 106 of file Intrepid_CubatureTensorDef.hpp.

References Intrepid::CubatureTensor< Scalar, ArrayPoint, ArrayWeight >::cubatures_, Intrepid::CubatureTensor< Scalar, ArrayPoint, ArrayWeight >::degree_, and Intrepid::CubatureTensor< Scalar, ArrayPoint, ArrayWeight >::dimension_.


Member Function Documentation

template<class Scalar , class ArrayPoint , class ArrayWeight >
void Intrepid::CubatureTensor< Scalar, ArrayPoint, ArrayWeight >::getCubature ( ArrayPoint &  cubPoints,
ArrayWeight &  cubWeights 
) const [inline, virtual]

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

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

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

Definition at line 122 of file Intrepid_CubatureTensorDef.hpp.

References Intrepid::CubatureTensor< Scalar, ArrayPoint, ArrayWeight >::cubatures_, Intrepid::CubatureTensor< Scalar, ArrayPoint, ArrayWeight >::getDimension(), and Intrepid::CubatureTensor< Scalar, ArrayPoint, ArrayWeight >::getNumPoints().


The documentation for this class was generated from the following files:
Generated on Wed Mar 31 15:02:23 2010 for Intrepid by  doxygen 1.6.3