dune-localfunctions  2.2.0
Protected Member Functions | Static Protected Member Functions
Dune::RefinedSimplexLocalBasis< D, 3 > Class Template Reference

Base class for LocalBasis classes based on uniform refinement in 3D; provides numbering and local coordinates of subelements. More...

#include <dune/localfunctions/refined/common/refinedsimplexlocalbasis.hh>

Inheritance diagram for Dune::RefinedSimplexLocalBasis< D, 3 >:
Dune::RefinedP1LocalBasis< D, R, 3 >

List of all members.

Protected Member Functions

 RefinedSimplexLocalBasis ()
 Protected default constructor so this class can only be instantiated as a base class.

Static Protected Member Functions

static int getSubElement (const FieldVector< D, 3 > &global)
 Get the number of the subsimplex containing a given point in the reference element.
static void getSubElement (const FieldVector< D, 3 > &global, int &subElement, FieldVector< D, 3 > &local)
 Get local coordinates in the subsimplex.

Detailed Description

template<class D>
class Dune::RefinedSimplexLocalBasis< D, 3 >

Base class for LocalBasis classes based on uniform refinement in 3D; provides numbering and local coordinates of subelements.

Shape functions like these are necessary for hierarchical error estimators for certain nonlinear problems.

Template Parameters:
DType to represent the field in the domain.

Constructor & Destructor Documentation

template<class D >
Dune::RefinedSimplexLocalBasis< D, 3 >::RefinedSimplexLocalBasis ( ) [inline, protected]

Protected default constructor so this class can only be instantiated as a base class.


Member Function Documentation

template<class D >
static int Dune::RefinedSimplexLocalBasis< D, 3 >::getSubElement ( const FieldVector< D, 3 > &  global) [inline, static, protected]

Get the number of the subsimplex containing a given point in the reference element.

Defining the following points in the reference simplex

0: (0.0, 0.0, 0.0) 1: (1.0, 0.0, 0.0) 2: (0.0, 1.0, 0.0) 3: (0.0, 0.0, 1.0) 4: (0.5, 0.0, 0.0) 5: (0.5, 0.5, 0.0) 6: (0.0, 0.5, 0.0) 7: (0.0, 0.0, 0.5) 8: (0.5, 0.0, 0.5) 9: (0.0, 0.5, 0.5)

The subsimplices are numbered according to

0: 0467 - 1: 4158 |_ "cut off" vertices 2: 6529 | 3: 7893 -

4: 6487 - 5: 4568 |_ octahedron partition 6: 6897 | 7: 6895 -

Parameters:
[in]globalCoordinates in the reference simplex
Returns:
Number of the subsimplex containing global
template<class D >
static void Dune::RefinedSimplexLocalBasis< D, 3 >::getSubElement ( const FieldVector< D, 3 > &  global,
int &  subElement,
FieldVector< D, 3 > &  local 
) [inline, static, protected]

Get local coordinates in the subsimplex.

Parameters:
[in]globalCoordinates in the reference simplex
[out]subElementNumber of the subsimplex containing global
[out]localThe local coordinates in the subsimplex

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