|
dune-fem 2.8.0
|
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 | |
| typedef FunctionImp | FunctionType |
| type of the implementation (Barton-Nackman) | |
| typedef FunctionSpaceType::DomainFieldType | DomainFieldType |
| field type of domain | |
| typedef FunctionSpaceType::RangeFieldType | RangeFieldType |
| field type of range | |
| typedef FunctionSpaceType::DomainType | DomainType |
| domain type | |
| typedef FunctionSpaceType::RangeType | RangeType |
| range type | |
| typedef FunctionSpaceType::JacobianRangeType | JacobianRangeType |
| jacobian type | |
| typedef FunctionSpaceType::HessianRangeType | HessianRangeType |
| hessian type | |
| typedef Mapping< DomainFieldType, RangeFieldType, DomainType, RangeType > | MappingType |
| type of mapping base class | |
Public Member Functions | |
| ThisType & | operator= (const ThisType &)=delete |
| virtual | ~Function () |
| destructor | |
| virtual void | operator() (const DomainType &arg, RangeType &dest) const |
| application operator call evaluate | |
| void | evaluate (const DomainType &x, RangeType &value) const |
| evaluate the function | |
| void | jacobian (const DomainType &x, JacobianRangeType &jacobian) const |
| evaluate the Jacobian of the function | |
| void | hessian (const DomainType &x, HessianRangeType &hessian) const |
| evaluate the hessian of the function | |
| void | operator() (const DomainType &arg, RangeType &dest) const |
| Application operator that applies all operators in the linear combination stack. | |
Protected Member Functions | |
| Function ()=default | |
| default constructor | |
| Function (const ThisType &)=default | |
| const Implementation & | asImp () const |
| Implementation & | asImp () |
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 | |
| 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 | |
| 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 | |
| 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 | |
| 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 | |
| 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 | |
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 |
|
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 |