Interface for differentiable shape functions on a specific reference element. More...
#include <dune/localfunctions/common/basis.hh>
Public Types | |
typedef T | Traits |
Export type traits. | |
Public Member Functions | |
void | evaluateJacobian (const typename Traits::DomainType &in, std::vector< typename Traits::JacobianType > &out) const |
Evaluate jacobian of all shape functions at given position. | |
template<typename C > | |
void | evaluateJacobianCoeffs (const typename Traits::DomainType &in, const std::vector< C > &coeffs) const |
Evaluate jacobian with given coefficients at given position. | |
unsigned int | size () const |
Number of shape functions. | |
void | evaluateFunction (const typename Traits::DomainType &in, std::vector< typename Traits::RangeType > &out) const |
Evaluate all basis function at given position. | |
template<typename C > | |
Traits::RangeType | evaluateCoeffs (const typename Traits::DomainType &in, const std::vector< C > &coeffs) const |
Evaluate basis with coefficients at given position. | |
unsigned int | order () const |
Polynomial order of the shape functions. |
Interface for differentiable shape functions on a specific reference element.
This class represents a set of differentiable shape functions defined on one particular reference element. This interface returns global values.
Imp | Implementation of the interface used via CRTP. | |
T | Instance of C1LocalBasisTraits providing type information. |
typedef T Dune::C1BasisInterface< Imp, T >::Traits |
Export type traits.
Reimplemented from Dune::C0BasisInterface< Imp, T >.
Reimplemented in Dune::C1SimpleBasis< LB, Geo >.
Traits::RangeType Dune::C0BasisInterface< Imp, T >::evaluateCoeffs | ( | const typename Traits::DomainType & | in, | |
const std::vector< C > & | coeffs | |||
) | const [inline, inherited] |
Evaluate basis with coefficients at given position.
Evaluates all shape functions at the given (local) position and return the (global) value of the sum weighted with some coefficients.
C | The type of the coefficients |
[in] | in | Where to evaluate in local (reference element) coordinates. |
[in] | coeffs | The coefficients. |
void Dune::C0BasisInterface< Imp, T >::evaluateFunction | ( | const typename Traits::DomainType & | in, | |
std::vector< typename Traits::RangeType > & | out | |||
) | const [inline, inherited] |
Evaluate all basis function at given position.
Evaluates all shape functions at the given (local) position and returns the (global) values in a vector.
[in] | in | Where to evaluate in local (reference element) coordinates. |
[out] | out | The resulting global values, one per shape function. |
Reimplemented in Dune::C0SimpleBasis< LB >, and Dune::C1SimpleBasis< LB, Geo >.
void Dune::C1BasisInterface< Imp, T >::evaluateJacobian | ( | const typename Traits::DomainType & | in, | |
std::vector< typename Traits::JacobianType > & | out | |||
) | const [inline] |
Evaluate jacobian of all shape functions at given position.
out[i][j][k] is , when
is the i'th shape function. Note that this are the derivatives of the global values by the global coordinates, evaluated at local coordinates.
[in] | in | Where to evaluate in local coordinates. |
[out] | out | The result, one jacobian per base function. |
Reimplemented in Dune::C1SimpleBasis< LB, Geo >.
void Dune::C1BasisInterface< Imp, T >::evaluateJacobianCoeffs | ( | const typename Traits::DomainType & | in, | |
const std::vector< C > & | coeffs | |||
) | const [inline] |
Evaluate jacobian with given coefficients at given position.
out[j][k] is , where
is the function given by this basis and the coefficients. Note that this are the derivatives of the global values by the global coordinates, evaluated at local coordinates.
C | The type of the coefficients |
[in] | in | Where to evaluate in local (reference element) coordinates. |
[in] | coeffs | The coefficients. |
unsigned int Dune::C0BasisInterface< Imp, T >::order | ( | ) | const [inline, inherited] |
Polynomial order of the shape functions.
Reimplemented in Dune::C0SimpleBasis< LB >, and Dune::C1SimpleBasis< LB, Geo >.
unsigned int Dune::C0BasisInterface< Imp, T >::size | ( | ) | const [inline, inherited] |
Number of shape functions.
Reimplemented in Dune::C0SimpleBasis< LB >, and Dune::C1SimpleBasis< LB, Geo >.