KASKADE 7 development version
|
Shape functions. More...
#include <pshapefunctions.hh>
Shape functions.
This class provides a common interface to the access of shape functions
ctype | the scalar type used for coordinates (usually double) |
dim | the spatial dimension |
T | Scalar type, the value field type of the shape functions |
comp | number of components |
A shape function lives on the reference element and may be scalar valued or vector valued:
\[ \phi: R^d \to T^m \]
with the spatial (grid) dimension \( d \), the value field type \( T \) (either a complex or a real type), and the vectorial dimension \( m \) (comp) of the image space. Shape function values are indeed defined not only on the reference element but on whole \( R^d \), even though the values outside the reference elements may be of little interest. It is possible to evaluate the shape function and its derivative.
Definition at line 57 of file pshapefunctions.hh.
Public Member Functions | |
virtual | ~ShapeFunction () |
virtual Dune::FieldVector< T, comp > | evaluateFunction (Dune::FieldVector< ctype, dim > const &xi) const =0 |
Evaluates the shape function (all components at once). More... | |
virtual Dune::FieldMatrix< T, comp, dim > | evaluateDerivative (Dune::FieldVector< ctype, dim > const &xi) const =0 |
Evaluates the derivative of the shape function (all components and all directions at once). More... | |
virtual Tensor< T, comp, dim, dim > | evaluate2ndDerivative (Dune::FieldVector< ctype, dim > const &xi) const |
Evaluates the second derivative of the shape function (all components and all directions at once). More... | |
virtual std::tuple< int, int, int, int > | location () const =0 |
Returns a tuple (nominalOrder,codim,entity,index) giving detailed information about the location of the shape function. More... | |
|
inlinevirtual |
Definition at line 60 of file pshapefunctions.hh.
|
inlinevirtual |
Evaluates the second derivative of the shape function (all components and all directions at once).
Reimplemented in Kaskade::HierarchicSimplexShapeFunction< ctype, dimension, Scalar >, Kaskade::LagrangeSimplexShapeFunction< ctype, dimension, Basis, Scalar >, Kaskade::LagrangeCubeShapeFunction< ctype, dimension, Scalar, O >, Kaskade::NedelecSimplexShapeFunction< ctype, dimension, T >, and Kaskade::HdivSimplexShapeFunction< ctype, dimension, T >.
Definition at line 75 of file pshapefunctions.hh.
|
pure virtual |
Evaluates the derivative of the shape function (all components and all directions at once).
Implemented in Kaskade::HierarchicSimplexShapeFunction< ctype, dimension, Scalar >, Kaskade::LagrangeSimplexShapeFunction< ctype, dimension, Basis, Scalar >, Kaskade::LagrangeCubeShapeFunction< ctype, dimension, Scalar, O >, Kaskade::NedelecSimplexShapeFunction< ctype, dimension, T >, and Kaskade::HdivSimplexShapeFunction< ctype, dimension, T >.
|
pure virtual |
Evaluates the shape function (all components at once).
Implemented in Kaskade::HierarchicSimplexShapeFunction< ctype, dimension, Scalar >, Kaskade::LagrangeSimplexShapeFunction< ctype, dimension, Basis, Scalar >, Kaskade::LagrangeCubeShapeFunction< ctype, dimension, Scalar, O >, Kaskade::NedelecSimplexShapeFunction< ctype, dimension, T >, and Kaskade::HdivSimplexShapeFunction< ctype, dimension, T >.
Referenced by Kaskade::ShapeFunctionSet< ctype, dimension, T, comp >::evaluate().
|
pure virtual |
Returns a tuple (nominalOrder,codim,entity,index) giving detailed information about the location of the shape function.
Each shape function is associated to a certain subentity of the element.
nominalOrder is a nonnegative ordering parameter that is usually the polynomial order of the shape function, but need not coincide.
codim is the codimension of the subentity to which the shape function is associated, entity is the number of the subentity, and index is the number of the shape function among those that are associated to the same subentity.
Implemented in Kaskade::HierarchicSimplexShapeFunction< ctype, dimension, Scalar >, Kaskade::LagrangeSimplexShapeFunction< ctype, dimension, Basis, Scalar >, Kaskade::LagrangeCubeShapeFunction< ctype, dimension, Scalar, O >, Kaskade::NedelecSimplexShapeFunction< ctype, dimension, T >, and Kaskade::HdivSimplexShapeFunction< ctype, dimension, T >.
Referenced by Kaskade::ContinuousHierarchicMapperImplementation< Scalar, GV, ShapeFunctionFilter >::entityIndex(), Kaskade::ContinuousHierarchicExtensionMapperImplementation< Scalar, GV, ShapeFunctionFilter >::entityIndex(), and Kaskade::ContinuousLagrangeMapperImplementation< ScalarType, GV, ShapeFunctionFilter >::entityIndex().