KASKADE 7 development version
Public Types | Public Member Functions | Protected Attributes | List of all members
Kaskade::EquidistantLagrange< dim, Real > Class Template Reference

Lagrange shape functions on an equidistant grid over the simplex. These are polynomial basis functions \( p_i \) over the unit simplex, together with interpolation nodes \( \xi_j \), such that \( p_i(\xi_j) = \delta_{ij} \) holds. More...

#include <lagrangeshapefunctions.hh>

Detailed Description

template<int dim, class Real = double>
class Kaskade::EquidistantLagrange< dim, Real >

Lagrange shape functions on an equidistant grid over the simplex. These are polynomial basis functions \( p_i \) over the unit simplex, together with interpolation nodes \( \xi_j \), such that \( p_i(\xi_j) = \delta_{ij} \) holds.

Definition at line 313 of file lagrangeshapefunctions.hh.

Inheritance diagram for Kaskade::EquidistantLagrange< dim, Real >:
Kaskade::LagrangeBase< dim >

Public Types

using Vector = Dune::FieldVector< Real, dim >
 

Public Member Functions

 EquidistantLagrange (int order)
 Constructor. More...
 
Vector nodalPosition (int i) const
 The spatial location of the interpolation node \( \xi_i \) associated with the i-th basis function. More...
 
Real value (int i, Vector const &xi) const
 
Real derivative (int i, int dir, Vector const &xi) const
 
Real derivative2 (int i, int dir1, int dir2, Vector const &xi) const
 
int size () const
 The number of Lagrange polynomials. More...
 
int order () const
 The polynomial ansatz order of this Lagrange basis. More...
 
std::array< int, dim+1 > index (int i) const
 

Protected Attributes

int myOrder
 
std::vector< std::array< int, dim+1 > > ls
 

Member Typedef Documentation

◆ Vector

template<int dim, class Real = double>
using Kaskade::EquidistantLagrange< dim, Real >::Vector = Dune::FieldVector<Real,dim>

Definition at line 316 of file lagrangeshapefunctions.hh.

Constructor & Destructor Documentation

◆ EquidistantLagrange()

template<int dim, class Real = double>
Kaskade::EquidistantLagrange< dim, Real >::EquidistantLagrange ( int  order)

Constructor.

Parameters
lthe barycentric index of the shape function with nonnegative entries. The order of the shape function is \( p = \sum_{i=0}^d l_i \).

Member Function Documentation

◆ derivative()

template<int dim, class Real = double>
Real Kaskade::EquidistantLagrange< dim, Real >::derivative ( int  i,
int  dir,
Vector const &  xi 
) const

◆ derivative2()

template<int dim, class Real = double>
Real Kaskade::EquidistantLagrange< dim, Real >::derivative2 ( int  i,
int  dir1,
int  dir2,
Vector const &  xi 
) const

◆ index()

template<int dim>
std::array< int, dim+1 > Kaskade::LagrangeBase< dim >::index ( int  i) const
inlineinherited

Definition at line 293 of file lagrangeshapefunctions.hh.

◆ nodalPosition()

template<int dim, class Real = double>
Vector Kaskade::EquidistantLagrange< dim, Real >::nodalPosition ( int  i) const

The spatial location of the interpolation node \( \xi_i \) associated with the i-th basis function.

◆ order()

template<int dim>
int Kaskade::LagrangeBase< dim >::order ( ) const
inlineinherited

The polynomial ansatz order of this Lagrange basis.

Definition at line 288 of file lagrangeshapefunctions.hh.

◆ size()

template<int dim>
int Kaskade::LagrangeBase< dim >::size ( ) const
inlineinherited

The number of Lagrange polynomials.

Definition at line 280 of file lagrangeshapefunctions.hh.

◆ value()

template<int dim, class Real = double>
Real Kaskade::EquidistantLagrange< dim, Real >::value ( int  i,
Vector const &  xi 
) const

Member Data Documentation

◆ ls

template<int dim>
std::vector<std::array<int,dim+1> > Kaskade::LagrangeBase< dim >::ls
protectedinherited

◆ myOrder

template<int dim>
int Kaskade::LagrangeBase< dim >::myOrder
protectedinherited

Definition at line 299 of file lagrangeshapefunctions.hh.

Referenced by Kaskade::LagrangeBase< dim >::order().


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