dune-fem 2.8.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
Dune::Fem::DifferentiableOperator< JacobianOperator > Class Template Referenceabstract

abstract differentiable operator More...

#include <dune/fem/operator/common/differentiableoperator.hh>

Inheritance diagram for Dune::Fem::DifferentiableOperator< JacobianOperator >:
Inheritance graph

Public Types

typedef JacobianOperator JacobianOperatorType
 type of linear operator modelling the operator's Jacobian
 
typedef BaseType::DomainFunctionType DomainFunctionType
 type of discrete function in the operator's domain
 
typedef BaseType::RangeFunctionType RangeFunctionType
 type of discrete function in the operator's range
 
typedef DomainFunctionType::RangeFieldType DomainFieldType
 field type of the operator's domain
 
typedef RangeFunctionType::RangeFieldType RangeFieldType
 field type of the operator's range
 

Public Member Functions

virtual void jacobian (const DomainFunctionType &u, JacobianOperatorType &jOp) const =0
 obtain linearization
 
virtual void operator() (const DomainFunctionType &u, RangeFunctionType &w) const=0
 application operator
 
virtual void finalize ()
 finalization of operator
 

Detailed Description

template<class JacobianOperator>
class Dune::Fem::DifferentiableOperator< JacobianOperator >

abstract differentiable operator

Differentiable operators are operators providing a linearization.

Template Parameters
JacobianOperatortype of linear operator describing the Jacobian (linearization) of this operator
Note
The types for the operator's domain and range function are derived from the JacobianOperator.
An interface class:

Member Typedef Documentation

◆ DomainFieldType

template<class JacobianOperator >
typedef DomainFunctionType::RangeFieldType Dune::Fem::DifferentiableOperator< JacobianOperator >::DomainFieldType

field type of the operator's domain

◆ DomainFunctionType

template<class JacobianOperator >
typedef BaseType::DomainFunctionType Dune::Fem::DifferentiableOperator< JacobianOperator >::DomainFunctionType

type of discrete function in the operator's domain

◆ JacobianOperatorType

template<class JacobianOperator >
typedef JacobianOperator Dune::Fem::DifferentiableOperator< JacobianOperator >::JacobianOperatorType

type of linear operator modelling the operator's Jacobian

◆ RangeFieldType

template<class JacobianOperator >
typedef RangeFunctionType::RangeFieldType Dune::Fem::DifferentiableOperator< JacobianOperator >::RangeFieldType

field type of the operator's range

◆ RangeFunctionType

template<class JacobianOperator >
typedef BaseType::RangeFunctionType Dune::Fem::DifferentiableOperator< JacobianOperator >::RangeFunctionType

type of discrete function in the operator's range

Member Function Documentation

◆ finalize()

virtual void Dune::Fem::Operator< JacobianOperator::DomainFunctionType , JacobianOperator::RangeFunctionType >::finalize ( )
inlinevirtualinherited

finalization of operator

Note
The default implementation is empty.

◆ jacobian()

template<class JacobianOperator >
virtual void Dune::Fem::DifferentiableOperator< JacobianOperator >::jacobian ( const DomainFunctionType u,
JacobianOperatorType jOp 
) const
pure virtual

obtain linearization

Parameters
[in]uargument discrete function
[out]jOpdestination Jacobian operator
Note
This method has to be implemented by all derived classes.

Implemented in Dune::Fem::DifferentiableGalerkinOperator< Integrands, JacobianOperator >, and Dune::Fem::MOLDifferentiableGalerkinOperator< Integrands, JacobianOperator >.

◆ operator()()

virtual void Dune::Fem::Operator< JacobianOperator::DomainFunctionType , JacobianOperator::RangeFunctionType >::operator() ( const DomainFunctionType u,
RangeFunctionType w 
) const
pure virtualinherited

application operator

Parameters
[in]uargument discrete function
[out]wdestination discrete function
Note
This method has to be implemented by all derived classes.

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