dune-fem  2.4.1-rc
Public Types | Public Member Functions | Protected Member Functions | Static Protected Member Functions | List of all members
Dune::Fem::Function< FunctionSpaceImp, FunctionImp > Class Template Reference

Abstract class representing a function. More...

#include </local/tomalk/somewhere/tmp/dune-fem/dune/fem/function/common/function.hh>

Inheritance diagram for Dune::Fem::Function< FunctionSpaceImp, FunctionImp >:
Inheritance graph

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, RangeTypeMappingType
 type of mapping base class More...
 

Public Member Functions

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 constructor More...
 
 Function (const ThisType &other)
 
const FunctionImp & asImp () const
 
FunctionImp & asImp ()
 

Static Protected Member Functions

static const FunctionImp & asImp (const ThisType &other)
 
static FunctionImp & asImp (ThisType &other)
 

Detailed Description

template<class FunctionSpaceImp, class FunctionImp>
class Dune::Fem::Function< FunctionSpaceImp, FunctionImp >

Abstract class representing a function.

Template parameters are:

An interface class:

Member Typedef Documentation

template<class FunctionSpaceImp, class FunctionImp>
typedef FunctionSpaceType :: DomainFieldType Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::DomainFieldType

field type of domain

template<class FunctionSpaceImp, class FunctionImp>
typedef FunctionSpaceType :: DomainType Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::DomainType

domain type

template<class FunctionSpaceImp, class FunctionImp>
typedef FunctionSpaceImp Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::FunctionSpaceType

type of function space this function belongs to

template<class FunctionSpaceImp, class FunctionImp>
typedef FunctionImp Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::FunctionType

type of the implementation (Barton-Nackman)

template<class FunctionSpaceImp, class FunctionImp>
typedef FunctionSpaceType :: HessianRangeType Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::HessianRangeType

hessian type

template<class FunctionSpaceImp, class FunctionImp>
typedef FunctionSpaceType :: JacobianRangeType Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::JacobianRangeType

jacobian type

template<class FunctionSpaceImp, class FunctionImp>
typedef Mapping< DomainFieldType, RangeFieldType, DomainType, RangeType > Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::MappingType

type of mapping base class

template<class FunctionSpaceImp, class FunctionImp>
typedef FunctionSpaceType :: RangeFieldType Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::RangeFieldType

field type of range

template<class FunctionSpaceImp, class FunctionImp>
typedef FunctionSpaceType :: RangeType Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::RangeType

range type

Constructor & Destructor Documentation

template<class FunctionSpaceImp, class FunctionImp>
Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::Function ( )
inlineprotected

default constructor

template<class FunctionSpaceImp, class FunctionImp>
Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::Function ( const ThisType other)
inlineprotected
template<class FunctionSpaceImp, class FunctionImp>
virtual Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::~Function ( )
inlinevirtual

destructor

Member Function Documentation

static const FunctionImp & Dune::Fem::BartonNackmanInterface< Function< FunctionSpaceImp, FunctionImp > , FunctionImp >::asImp ( const ThisType other)
inlinestaticprotectedinherited
static FunctionImp & Dune::Fem::BartonNackmanInterface< Function< FunctionSpaceImp, FunctionImp > , FunctionImp >::asImp ( ThisType other)
inlinestaticprotectedinherited
const FunctionImp & Dune::Fem::BartonNackmanInterface< Function< FunctionSpaceImp, FunctionImp > , FunctionImp >::asImp ( ) const
inlineprotectedinherited
FunctionImp & Dune::Fem::BartonNackmanInterface< Function< FunctionSpaceImp, FunctionImp > , FunctionImp >::asImp ( )
inlineprotectedinherited
template<class FunctionSpaceImp, class FunctionImp>
void Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::evaluate ( const DomainType x,
RangeType value 
) const
inline
template<class FunctionSpaceImp, class FunctionImp>
void Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::hessian ( const DomainType x,
HessianRangeType hessian 
) const
inline

evaluate the hessian of the function

Parameters
[in]xevaluation point
[out]hessianvalue of the hessian in x

Referenced by Dune::Fem::Function< FunctionImp::FunctionSpaceType, ConvertToGridFunction< FunctionImp, GridPartImp > >::hessian().

template<class FunctionSpaceImp, class FunctionImp>
void Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::jacobian ( const DomainType x,
JacobianRangeType jacobian 
) const
inline

evaluate the Jacobian of the function

Parameters
[in]xevaluation point
[out]jacobianvalue of the Jacobian in x

Referenced by Dune::Fem::Function< FunctionImp::FunctionSpaceType, ConvertToGridFunction< FunctionImp, GridPartImp > >::jacobian().

template<class FunctionSpaceImp, class FunctionImp>
virtual void Dune::Fem::Function< FunctionSpaceImp, FunctionImp >::operator() ( const DomainType arg,
RangeType dest 
) const
inlinevirtual

application operator call evaluate

Parameters
[in]argargument
[out]destdestination, i.e. f(arg)

Referenced by Dune::Fem::Function< FunctionImp::FunctionSpaceType, ConvertToGridFunction< FunctionImp, GridPartImp > >::hessian().

void Dune::Fem::Mapping< FunctionSpaceImp::DomainFieldType , FunctionSpaceImp::RangeFieldType , FunctionSpaceImp::DomainType , FunctionSpaceImp::RangeType >::operator() ( const DomainType arg,
RangeType dest 
) const
inlineinherited

Application operator that applies all operators in the linear combination stack.

Parameters
[in]argargument
[out]destdestination

The documentation for this class was generated from the following file: