Dune Core Modules (2.6.0)

Dune::RefinementImp::Simplex Namespace Reference

This namespace contains the Refinement implementation for simplices (triangles, tetrahedrons...) More...

Functions

Utilities
int factorial (int n)
 Calculate n! More...
 
int binomial (int upper, int lower)
 calculate \(\left({upper}\atop{lower}\right)\) More...
 
template<int dimension>
int pointIndex (const FieldVector< int, dimension > &point)
 calculate the index of a given gridpoint within a Kuhn0 simplex More...
 
template<int n>
FieldVector< int, n > getPermutation (int m)
 Calculate permutation from it's index. More...
 
template<int dimension, class CoordType >
FieldVector< CoordType, dimension > referenceToKuhn (FieldVector< CoordType, dimension > point, const FieldVector< int, dimension > &kuhn)
 Map from the reference simplex to some Kuhn simplex. More...
 
template<int dimension, class CoordType >
FieldVector< CoordType, dimension > kuhnToReference (FieldVector< CoordType, dimension > point, const FieldVector< int, dimension > &kuhn)
 Map from some Kuhn simplex to the reference simplex. More...
 

Detailed Description

This namespace contains the Refinement implementation for simplices (triangles, tetrahedrons...)

See Refinement implementation for simplices.

Function Documentation

◆ binomial()

int Dune::RefinementImp::Simplex::binomial ( int  upper,
int  lower 
)
inline

calculate \(\left({upper}\atop{lower}\right)\)

Runtime is of order O(min {lower, upper-lower})

References factorial().

Referenced by pointIndex(), Dune::AlbertaGridEntity< codim, dim, Grid >::subEntities(), and Dune::AlbertaGridEntity< 0, dim, Grid >::subEntities().

◆ factorial()

int Dune::RefinementImp::Simplex::factorial ( int  n)
inline

Calculate n!

Runtime is of order O(n).

Referenced by binomial().

◆ getPermutation()

template<int n>
FieldVector<int, n> Dune::RefinementImp::Simplex::getPermutation ( int  m)

Calculate permutation from it's index.

Runtime is of order O(n).

◆ kuhnToReference()

template<int dimension, class CoordType >
FieldVector<CoordType, dimension> Dune::RefinementImp::Simplex::kuhnToReference ( FieldVector< CoordType, dimension >  point,
const FieldVector< int, dimension > &  kuhn 
)

Map from some Kuhn simplex to the reference simplex.

Template Parameters
dimensionDimension of the simplices
CoordTypeThe C++ type of the coordinates

Runtime is of order O(dimension)

Parameters
pointPoint to map
kuhnPermutation of the Kuhn simplex to map from

◆ pointIndex()

template<int dimension>
int Dune::RefinementImp::Simplex::pointIndex ( const FieldVector< int, dimension > &  point)

calculate the index of a given gridpoint within a Kuhn0 simplex

Runtime is of order O(dimension^2) (or better for dimension > the coordinates of the point)

References binomial().

◆ referenceToKuhn()

template<int dimension, class CoordType >
FieldVector<CoordType, dimension> Dune::RefinementImp::Simplex::referenceToKuhn ( FieldVector< CoordType, dimension >  point,
const FieldVector< int, dimension > &  kuhn 
)

Map from the reference simplex to some Kuhn simplex.

Template Parameters
dimensionDimension of the simplices
CoordTypeThe C++ type of the coordinates

Runtime is of order O(dimension)

Parameters
pointPoint to map
kuhnPermutation of the Kuhn simplex to map to
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.80.0 (Apr 29, 22:29, 2024)