G+Smo  23.12.0
Geometry + Simulation Modules
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
gsQuadrature Struct Reference

Detailed Description

Helper class for obtaining a quadrature rule.

Public Types

enum  rule {
  GaussLegendre,
  GaussLobatto,
  PatchRule
}
 Quadrature rule types. More...
 

Static Public Member Functions

template<class T >
static gsQuadRule< T > get (const gsBasis< T > &basis, const gsOptionList &options, short_t fixDir=-1)
 Constructs a quadrature rule based on input options.
 
template<class T >
static gsQuadRule< T > get (index_t qu, gsVector< index_t > const &numNodes, unsigned digits=0)
 Constructs a quadrature rule based on input options.
 
template<class T >
static gsQuadRule< T >::uPtr getPtr (const gsBasis< T > &basis, const gsOptionList &options, short_t fixDir=-1)
 Constructs a quadrature rule based on input options.
 
template<class T >
static gsQuadRule< T > getUnivariate (index_t qu, index_t numNodes, unsigned digits=0)
 Constructs a quadrature rule based on input options.
 
template<class T >
static gsVector< index_tnumNodes (const gsBasis< T > &basis, const Real quA, const index_t quB, short_t fixDir=-1)
 

Member Enumeration Documentation

enum rule

Quadrature rule types.

Enumerator
GaussLegendre 

Gauss-Legendre quadrature.

GaussLobatto 

Gauss-Lobatto quadrature.

PatchRule 

Patch-wise quadrature rule (Johannessen 2017)

Member Function Documentation

static gsVector<index_t> numNodes ( const gsBasis< T > &  basis,
const Real  quA,
const index_t  quB,
short_t  fixDir = -1 
)
inlinestatic

Computes and integer quA*deg_i + quB where deg_i is the degree of basis