DUNE-FEM (unstable)

Dune::Fem::AutomaticDifferenceOperator< DomainFunction, RangeFunction, LinearOperator > Class Template Referenceabstract

operator providing a Jacobian through automatic differentiation More...

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

Public Member Functions

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

Detailed Description

template<class DomainFunction, class RangeFunction = DomainFunction, class LinearOperator = AutomaticDifferenceLinearOperator< DomainFunction, RangeFunction >>
class Dune::Fem::AutomaticDifferenceOperator< DomainFunction, RangeFunction, LinearOperator >

operator providing a Jacobian through automatic differentiation

Note
The Jacobian operator is an on-the-fly operator, i.e., it does not store a matrix but only implements the application.

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()

virtual void Dune::Fem::DifferentiableOperator< AutomaticDifferenceLinearOperator< DomainFunction, DomainFunction > >::jacobian ( const DomainFunctionType u,
JacobianOperatorType jOp 
) const
pure virtualinherited

obtain linearization

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

◆ nonlinear()

virtual bool Dune::Fem::Operator< JacobianOperator::DomainFunctionType , JacobianOperator::RangeFunctionType >::nonlinear ( ) const
inlinevirtualinherited

Return true if the Operator is nonlinear and false otherwise (default is true).

◆ 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.

Implemented in EllipticOperator< JacobianOperator::DomainFunctionType, JacobianOperator::RangeFunctionType, Model >.


The documentation for this class was generated from the following file:
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.111.3 (Nov 21, 23:30, 2024)