dune-fem
2.8-git
|
Abstract class representing a function. More...
#include <dune/fem/function/common/function.hh>
Public Types | |
typedef FunctionSpaceImp | FunctionSpaceType |
type of function space this function belongs to More... | |
typedef FunctionImp | FunctionType |
type of the implementation (Barton-Nackman) More... | |
typedef FunctionSpaceType ::DomainFieldType | DomainFieldType |
field type of domain More... | |
typedef FunctionSpaceType ::RangeFieldType | RangeFieldType |
field type of range More... | |
typedef FunctionSpaceType ::DomainType | DomainType |
domain type More... | |
typedef FunctionSpaceType ::RangeType | RangeType |
range type More... | |
typedef FunctionSpaceType ::JacobianRangeType | JacobianRangeType |
jacobian type More... | |
typedef FunctionSpaceType ::HessianRangeType | HessianRangeType |
hessian type More... | |
typedef Mapping< DomainFieldType, RangeFieldType, DomainType, RangeType > | MappingType |
type of mapping base class More... | |
Public Member Functions | |
ThisType & | operator= (const ThisType &)=delete |
virtual | ~Function () |
destructor More... | |
virtual void | operator() (const DomainType &arg, RangeType &dest) const |
application operator call evaluate More... | |
void | evaluate (const DomainType &x, RangeType &value) const |
evaluate the function More... | |
void | jacobian (const DomainType &x, JacobianRangeType &jacobian) const |
evaluate the Jacobian of the function More... | |
void | hessian (const DomainType &x, HessianRangeType &hessian) const |
evaluate the hessian of the function More... | |
void | operator() (const DomainType &arg, RangeType &dest) const |
Application operator that applies all operators in the linear combination stack. More... | |
Protected Member Functions | |
Function ()=default | |
default constructor More... | |
Function (const ThisType &)=default | |
const Implementation & | asImp () const |
Implementation & | asImp () |
const FunctionImp & | asImp () const |
Static Protected Member Functions | |
static const Implementation & | asImp (const ThisType &other) |
static Implementation & | asImp (ThisType &other) |
static const FunctionImp & | asImp (const ThisType &other) |
static FunctionImp & | asImp (ThisType &other) |
Related Functions | |
(Note that these are not member functions.) | |
static Mapping< FunctionSpaceImp ::DomainFieldType, FunctionSpaceImp ::RangeFieldType, FunctionSpaceImp ::DomainType, FunctionSpaceImp ::RangeType > | operator+ (const Mapping< FunctionSpaceImp ::DomainFieldType, FunctionSpaceImp ::RangeFieldType, FunctionSpaceImp ::DomainType, FunctionSpaceImp ::RangeType > &a, const Mapping< FunctionSpaceImp ::DomainFieldType, FunctionSpaceImp ::RangeFieldType, FunctionSpaceImp ::DomainType, FunctionSpaceImp ::RangeType > &b) |
add two mappings More... | |
static Mapping< FunctionSpaceImp ::DomainFieldType, FunctionSpaceImp ::RangeFieldType, FunctionSpaceImp ::DomainType, FunctionSpaceImp ::RangeType > | operator- (const Mapping< FunctionSpaceImp ::DomainFieldType, FunctionSpaceImp ::RangeFieldType, FunctionSpaceImp ::DomainType, FunctionSpaceImp ::RangeType > &a, const Mapping< FunctionSpaceImp ::DomainFieldType, FunctionSpaceImp ::RangeFieldType, FunctionSpaceImp ::DomainType, FunctionSpaceImp ::RangeType > &b) |
substract two mappings More... | |
static Mapping< FunctionSpaceImp ::DomainFieldType, FunctionSpaceImp ::RangeFieldType, FunctionSpaceImp ::DomainType, FunctionSpaceImp ::RangeType > | operator* (const Mapping< FunctionSpaceImp ::DomainFieldType, FunctionSpaceImp ::RangeFieldType, FunctionSpaceImp ::DomainType, FunctionSpaceImp ::RangeType > &mapping, const FunctionSpaceImp ::RangeFieldType &factor) |
scale mapping with factor More... | |
static Mapping< FunctionSpaceImp ::DomainFieldType, FunctionSpaceImp ::RangeFieldType, FunctionSpaceImp ::DomainType, FunctionSpaceImp ::RangeType > | operator* (const FunctionSpaceImp ::RangeFieldType &factor, const Mapping< FunctionSpaceImp ::DomainFieldType, FunctionSpaceImp ::RangeFieldType, FunctionSpaceImp ::DomainType, FunctionSpaceImp ::RangeType > &mapping) |
scale mapping with factor More... | |
static Mapping< FunctionSpaceImp ::DomainFieldType, FunctionSpaceImp ::RangeFieldType, FunctionSpaceImp ::DomainType, FunctionSpaceImp ::RangeType > | operator/ (const Mapping< FunctionSpaceImp ::DomainFieldType, FunctionSpaceImp ::RangeFieldType, FunctionSpaceImp ::DomainType, FunctionSpaceImp ::RangeType > &mapping, const FunctionSpaceImp ::RangeFieldType &factor) |
operator / for mappings More... | |
static Mapping< FunctionSpaceImp ::DomainFieldType, FunctionSpaceImp ::RangeFieldType, FunctionSpaceImp ::DomainType, FunctionSpaceImp ::RangeType > | operator/ (const FunctionSpaceImp ::RangeFieldType &factor, const Mapping< FunctionSpaceImp ::DomainFieldType, FunctionSpaceImp ::RangeFieldType, FunctionSpaceImp ::DomainType, FunctionSpaceImp ::RangeType > &mapping) |
operator / for mappings More... | |
Abstract class representing a function.
Template parameters are:
FunctionImp type of the implemented function (Barton-Nackman)
typedef FunctionSpaceType :: DomainFieldType Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::DomainFieldType |
field type of domain
typedef FunctionSpaceType :: DomainType Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::DomainType |
domain type
typedef FunctionSpaceImp Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::FunctionSpaceType |
type of function space this function belongs to
typedef FunctionImp Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::FunctionType |
type of the implementation (Barton-Nackman)
typedef FunctionSpaceType :: HessianRangeType Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::HessianRangeType |
hessian type
typedef FunctionSpaceType :: JacobianRangeType Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::JacobianRangeType |
jacobian type
typedef Mapping< DomainFieldType, RangeFieldType, DomainType, RangeType > Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::MappingType |
type of mapping base class
typedef FunctionSpaceType :: RangeFieldType Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::RangeFieldType |
field type of range
typedef FunctionSpaceType :: RangeType Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::RangeType |
range type
|
protecteddefault |
default constructor
|
protecteddefault |
|
inlinevirtual |
destructor
|
inlineprotected |
|
inlineprotected |
|
inlineprotectedinherited |
|
inlinestaticprotected |
|
inlinestaticprotectedinherited |
|
inlinestaticprotected |
|
inlinestaticprotectedinherited |
|
inline |
evaluate the function
[in] | x | evaluation point |
[out] | value | value of the function in x |
|
inline |
evaluate the hessian of the function
[in] | x | evaluation point |
[out] | hessian | value of the hessian in x |
|
inline |
evaluate the Jacobian of the function
[in] | x | evaluation point |
[out] | jacobian | value of the Jacobian in x |
|
inlinevirtual |
application operator call evaluate
[in] | arg | argument |
[out] | dest | destination, i.e. f(arg) |
|
inlineinherited |
Application operator that applies all operators in the linear combination stack.
[in] | arg | argument |
[out] | dest | destination |
|
delete |
|
related |
scale mapping with factor
[in] | factor | factor with which mapping is scaled |
[in] | mapping | Mapping which is scaled |
|
related |
scale mapping with factor
[in] | mapping | Mapping which is scaled |
[in] | factor | factor with which mapping is scaled |
|
related |
add two mappings
[in] | a | mapping 1 |
[in] | b | mapping 2 |
|
related |
substract two mappings
[in] | a | mapping 1 |
[in] | b | mapping 2 |
|
related |
operator / for mappings
[in] | factor | by which result of mapping is divided |
[in] | mapping | which is divided |
|
related |
operator / for mappings
[in] | mapping | mapping which is divided |
[in] | factor | f factor by which result of mapping is divided |