PTEMS  0.1.0-dev+git.81fd0e4
PolyTopic Element Method Solver
ptems::TensorQuadraturePointAlgorithm< DIM > Class Template Referenceabstract

Abstract base type for an algorithm for computing quadrature points for a reference element based on tensor product of a set of quadratures points on the reference interval \([-1,1]\). More...

#include <ptems/quadrature.hpp>

Inheritance diagram for ptems::TensorQuadraturePointAlgorithm< DIM >:
Collaboration diagram for ptems::TensorQuadraturePointAlgorithm< DIM >:

Public Member Functions

 TensorQuadraturePointAlgorithm ()
 Construct the common implementation of tensor product quadrature algorithms. More...
 
const QuadraturePoints< DIM > & operator() (const ReferenceMapping< DIM > &mapping, std::size_t order)
 Gets the quadrature points for the specified reference element. More...
 
const QuadraturePoints< DIM > & operator() (const ReferenceElement< DIM > &refElement, std::size_t order)
 Gets the quadrature points for the specified reference element. More...
 
const QuadraturePoints< DIM > & Points (const ReferenceMapping< DIM > &mapping, std::size_t order)
 Gets the quadrature points for the specified reference element. More...
 
const QuadraturePoints< DIM > & Points (const ReferenceElement< DIM > &refElement, std::size_t order)
 Gets the quadrature points for the specified reference element. More...
 

Protected Member Functions

virtual void GenerateLocalPoints (const ReferenceElement< DIM > &refElement, std::size_t order, QuadraturePoints< DIM > &points) override
 Implements the computation of the quadrature points for the specified reference element. More...
 
virtual void GenerateLocal1DPoints (std::size_t order, QuadraturePoints< 1 > &points)=0
 Computes the quadrature points for the reference interval. More...
 

Detailed Description

template<std::size_t DIM>
class ptems::TensorQuadraturePointAlgorithm< DIM >

Abstract base type for an algorithm for computing quadrature points for a reference element based on tensor product of a set of quadratures points on the reference interval \([-1,1]\).

Template Parameters
DIMThe dimension of the reference element

Constructor & Destructor Documentation

◆ TensorQuadraturePointAlgorithm()

template<std::size_t DIM>
ptems::TensorQuadraturePointAlgorithm< DIM >::TensorQuadraturePointAlgorithm ( )
inline

Construct the common implementation of tensor product quadrature algorithms.

Member Function Documentation

◆ GenerateLocal1DPoints()

template<std::size_t DIM>
virtual void ptems::TensorQuadraturePointAlgorithm< DIM >::GenerateLocal1DPoints ( std::size_t  order,
QuadraturePoints< 1 > &  points 
)
protectedpure virtual

Computes the quadrature points for the reference interval.

Parameters
orderThe desired order of the quadrature
pointsAn empty vector to populate with the quadrature points on the reference interval

Implemented in ptems::GaussLegendreQuadraturePoints< DIM >, ptems::GaussLegendreQuadraturePoints< 1 >, and ptems::GaussLegendreQuadraturePoints< 2 >.

◆ GenerateLocalPoints()

template<std::size_t DIM>
virtual void ptems::TensorQuadraturePointAlgorithm< DIM >::GenerateLocalPoints ( const ReferenceElement< DIM > &  refElement,
std::size_t  order,
QuadraturePoints< DIM > &  points 
)
inlineoverrideprotectedvirtual

Implements the computation of the quadrature points for the specified reference element.

Parameters
refElementThe reference element
orderThe desired order of the quadrature
pointsAn empty vector to populate with the quadrature points on the reference element

Implements ptems::QuadraturePointAlgorithm< DIM >.

◆ operator()() [1/2]

template<std::size_t DIM>
const QuadraturePoints<DIM>& ptems::QuadraturePointAlgorithm< DIM >::operator() ( const ReferenceElement< DIM > &  refElement,
std::size_t  order 
)
inlineinherited

Gets the quadrature points for the specified reference element.

Parameters
refElementThe reference element
orderThe desired order of the quadrature
Returns
The quadrature points on the reference element

◆ operator()() [2/2]

template<std::size_t DIM>
const QuadraturePoints<DIM>& ptems::QuadraturePointAlgorithm< DIM >::operator() ( const ReferenceMapping< DIM > &  mapping,
std::size_t  order 
)
inlineinherited

Gets the quadrature points for the specified reference element.

Parameters
mappingA mapping from an element to a reference element defining the reference element
orderThe desired order of the quadrature
Returns
The quadrature points on the reference element

◆ Points() [1/2]

template<std::size_t DIM>
const QuadraturePoints<DIM>& ptems::QuadraturePointAlgorithm< DIM >::Points ( const ReferenceElement< DIM > &  refElement,
std::size_t  order 
)
inlineinherited

Gets the quadrature points for the specified reference element.

Exceptions
std::invalid_argumentif order == 0
Parameters
refElementThe reference element
orderThe desired order of the quadrature
Returns
The quadrature points on the reference element

◆ Points() [2/2]

template<std::size_t DIM>
const QuadraturePoints<DIM>& ptems::QuadraturePointAlgorithm< DIM >::Points ( const ReferenceMapping< DIM > &  mapping,
std::size_t  order 
)
inlineinherited

Gets the quadrature points for the specified reference element.

Parameters
mappingA mapping from an element to a reference element defining the reference element
orderThe desired order of the quadrature
Returns
The quadrature points on the reference element

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