DUNE-FEM (unstable)

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

abstract affine-linear operator More...

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

Public Types

typedef DomainFunction DomainFunctionType
 type of discrete function in the operator's domain
 
typedef DomainFunction RangeFunctionType
 type of discrete function in the operator's range
 
typedef DomainFunction::RangeFieldType DomainFieldType
 field type of the operator's domain
 
typedef RangeFunction::RangeFieldType RangeFieldType
 field type of the operator's range
 

Public Member Functions

virtual bool symmetric () const
 
virtual bool positiveDefinite () const
 
virtual bool nonlinear () const
 
virtual void operator() (const DomainFunctionType &u, RangeFunctionType &w) const=0
 application operator More...
 
virtual void finalize ()
 finalization of operator More...
 

Detailed Description

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

abstract affine-linear operator

Operators map a discrete function onto another discrete function. Their interface is described by the abstract class Operator. Implementation should derive from LinearOperator to indicate that they model an affine linear operator of the form

\[ u\mapsto A\,u + b \]

with a linear Operator \(A\) and an affine translation \(b\).

Template Parameters
DomainFunctiontype of discrete function for the domain
RangeFunctiontype of discrete function for the range (defaults to DomainFunction)
An interface class:

Member Function Documentation

◆ finalize()

virtual void Dune::Fem::Operator< DomainFunction, DomainFunction >::finalize ( )
inlinevirtualinherited

finalization of operator

Note
The default implementation is empty.

◆ nonlinear()

template<class DomainFunction , class RangeFunction = DomainFunction>
virtual bool Dune::Fem::LinearOperator< DomainFunction, RangeFunction >::nonlinear ( ) const
inlinevirtual

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

Reimplemented from Dune::Fem::Operator< DomainFunction, DomainFunction >.

◆ operator()()

virtual void Dune::Fem::Operator< DomainFunction, DomainFunction >::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.

◆ positiveDefinite()

template<class DomainFunction , class RangeFunction = DomainFunction>
virtual bool Dune::Fem::LinearOperator< DomainFunction, RangeFunction >::positiveDefinite ( ) const
inlinevirtual

Return true if the Operator is positive definite.

◆ symmetric()

template<class DomainFunction , class RangeFunction = DomainFunction>
virtual bool Dune::Fem::LinearOperator< DomainFunction, RangeFunction >::symmetric ( ) const
inlinevirtual

Return true if the Operator is symmetric.


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 13, 23:29, 2024)