KASKADE 7 development version
|
Geometrical transformation of shape function values. More...
#include <concepts.hh>
Geometrical transformation of shape function values.
Converters \( \psi(x) \) transform shape function values defined on the reference elements to their values on an actual cell. This is nontrivial for vectorial shape functions, e.g. edge elements. Converters do only depend on the geometry of the actual cell, not on any combinatorial or algebraic information. They can therefore instantiated without a valid LocalToGlobalMapperConcept object.
Here we assume that Grid is the grid type, RT the scalar type in use, and k the number of components of the shape functions.
Converters have to be assignable and copy constructible.
Definition at line 190 of file concepts.hh.
Public Member Functions | |
ConverterConcept () | |
Create a converter. More... | |
ConverterConcept (Cell< Grid > const &cell) | |
void | moveTo (Cell< Grid > const &cell) |
Defines the cell on which the converter lives. More... | |
void | setLocalPosition (LocalPosition< Grid > const &x) |
Sets the argument \( x \) of the transformation \( \psi \). More... | |
Dune::FieldMatrix< RT, k, 1 > | global (Dune::FieldMatrix< RT, k, 1 > const &sf) const |
Applies the transformation \( \psi(x) \) to shape function value. More... | |
VariationalArg< RT, dim, k > | global (VariationalArg< RT, dim, k > const &sf, int deriv=1) const |
Applies the transformation \( \psi(x) \) to shape function value and derivatives up to order deriv. More... | |
template<class Scalar > | |
VariationalArg< Scalar, dim, 1 > | global (std::tuple< Dune::FieldVector< Scalar, 1 >, Dune::FieldMatrix< Scalar, 1, dim >, Tensor< Scalar, 1, dim, dim > > const &sf) const |
Applies the transformation \( \psi \) to shape function value, gradient, and Hessian, returning a filled VariationalArg. More... | |
Dune::FieldMatrix< RT, k, 1 > | local (Dune::FieldMatrix< RT, k, 1 >) const |
Transforms global values to local shape function values. More... | |
ConverterConcept::ConverterConcept | ( | ) |
Create a converter.
Default constructed converters are good for nothing. Use moveTo() to define the cell on which they do operate.
ConverterConcept::ConverterConcept | ( | Cell< Grid > const & | cell | ) |
Convenience constructor. Equivalent to default constructor subsequented by moveTo.
Dune::FieldMatrix< RT, k, 1 > ConverterConcept::global | ( | Dune::FieldMatrix< RT, k, 1 > const & | sf | ) | const |
Applies the transformation \( \psi(x) \) to shape function value.
VariationalArg< Scalar, dim, 1 > ConverterConcept::global | ( | std::tuple< Dune::FieldVector< Scalar, 1 >, Dune::FieldMatrix< Scalar, 1, dim >, Tensor< Scalar, 1, dim, dim > > const & | sf | ) | const |
Applies the transformation \( \psi \) to shape function value, gradient, and Hessian, returning a filled VariationalArg.
VariationalArg< RT, dim, k > ConverterConcept::global | ( | VariationalArg< RT, dim, k > const & | sf, |
int | deriv = 1 |
||
) | const |
Applies the transformation \( \psi(x) \) to shape function value and derivatives up to order deriv.
Dune::FieldMatrix< RT, k, 1 > ConverterConcept::local | ( | Dune::FieldMatrix< RT, k, 1 > | ) | const |
Transforms global values to local shape function values.
void ConverterConcept::moveTo | ( | Cell< Grid > const & | cell | ) |
Defines the cell on which the converter lives.
The cell that is given has to persist as long as the converter is used on this cell.
void ConverterConcept::setLocalPosition | ( | LocalPosition< Grid > const & | x | ) |
Sets the argument \( x \) of the transformation \( \psi \).