Drake
Drake C++ Documentation
TriangleQuadratureRule Class Referenceabstract

Detailed Description

A "rule" (weights and quadrature points) for computing quadrature over triangular domains.

#include <drake/multibody/triangle_quadrature/triangle_quadrature_rule.h>

Public Member Functions

 TriangleQuadratureRule ()=default
 
virtual ~TriangleQuadratureRule ()
 
int order () const
 Returns the order of this rule. More...
 
const std::vector< Vector2< double > > & quadrature_points () const
 Returns the vector of quadrature points. More...
 
const std::vector< double > & weights () const
 Returns the vector of weights. More...
 
Does not allow copy, move, or assignment
 TriangleQuadratureRule (const TriangleQuadratureRule &)=delete
 
TriangleQuadratureRuleoperator= (const TriangleQuadratureRule &)=delete
 
 TriangleQuadratureRule (TriangleQuadratureRule &&)=delete
 
TriangleQuadratureRuleoperator= (TriangleQuadratureRule &&)=delete
 

Protected Member Functions

virtual int do_order () const =0
 Derived classes shall return the order (>= 1) of this rule. More...
 
virtual const std::vector< Vector2< double > > & do_quadrature_points () const =0
 Derived classes shall return the vector of quadrature points. More...
 
virtual const std::vector< double > & do_weights () const =0
 Derived classes shall return the vector of weights. More...
 

Constructor & Destructor Documentation

◆ TriangleQuadratureRule() [1/3]

◆ TriangleQuadratureRule() [2/3]

◆ TriangleQuadratureRule() [3/3]

◆ ~TriangleQuadratureRule()

virtual ~TriangleQuadratureRule ( )
virtual

Member Function Documentation

◆ do_order()

virtual int do_order ( ) const
protectedpure virtual

Derived classes shall return the order (>= 1) of this rule.

◆ do_quadrature_points()

virtual const std::vector<Vector2<double> >& do_quadrature_points ( ) const
protectedpure virtual

Derived classes shall return the vector of quadrature points.

Each of these Vector2 objects represents the barycentric coordinates of a triangle (the third barycentric coordinate is implicit: it is the difference between unity and the sum of the other two coordinates).

◆ do_weights()

virtual const std::vector<double>& do_weights ( ) const
protectedpure virtual

Derived classes shall return the vector of weights.

The sum of all weights must equal 1.0.

◆ operator=() [1/2]

TriangleQuadratureRule& operator= ( TriangleQuadratureRule &&  )
delete

◆ operator=() [2/2]

TriangleQuadratureRule& operator= ( const TriangleQuadratureRule )
delete

◆ order()

int order ( ) const

Returns the order of this rule.

◆ quadrature_points()

const std::vector<Vector2<double> >& quadrature_points ( ) const

Returns the vector of quadrature points.

These are returned as the first two barycentric coordinates b0 b1; the third is just b2 = 1 - b0 - b1. Each of these has a corresponding weight returned by weights().

◆ weights()

const std::vector<double>& weights ( ) const

Returns the vector of weights.

These sum to 1 and there is one weight for each point returned by quadrature_points().


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