|
dune-fem 2.12-git
|
Inverse operator base on CG method. This is the base class for the cg solver and does not imvolve any runtime parametrization. More...
#include <dune/fem/solver/cginverseoperator.hh>

Public Types | |
| typedef BaseType::DomainFunctionType | DomainFunctionType |
| typedef BaseType::RangeFunctionType | RangeFunctionType |
| typedef Fem::Operator< DomainFunctionType, RangeFunctionType > | OperatorType |
| typedef Fem::Operator< RangeFunctionType, DomainFunctionType > | PreconditionerType |
| typedef OperatorType::RangeFieldType | RangeFieldType |
| typedef Dune::FieldTraits< RangeFieldType >::real_type | RealType |
| typedef DomainFunction::RangeFieldType | DomainFieldType |
| field type of the operator's domain | |
Public Member Functions | |
| CGInverseOperator (RealType redEps, RealType absLimit, unsigned int maxIter, bool verbose, const ParameterReader ¶meter=Parameter::container()) | |
| constructor of CGInverseOperator | |
| CGInverseOperator (const SolverParameter ¶m=SolverParameter(Parameter::container())) | |
| CGInverseOperator (RealType redEps, RealType absLimit, unsigned int maxIter, const ParameterReader ¶meter=Parameter::container()) | |
| constructor of CGInverseOperator | |
| CGInverseOperator (RealType redEps, RealType absLimit, const ParameterReader ¶meter=Parameter::container()) | |
| CGInverseOperator (const OperatorType &op, RealType redEps, RealType absLimit, unsigned int maxIter, bool verbose, const ParameterReader ¶meter=Parameter::container()) | |
| constructor of CGInverseOperator | |
| CGInverseOperator (const OperatorType &op, RealType redEps, RealType absLimit, unsigned int maxIter, const ParameterReader ¶meter=Parameter::container()) | |
| constructor of CGInverseOperator | |
| CGInverseOperator (const OperatorType &op, RealType redEps, RealType absLimit, const ParameterReader ¶meter=Parameter::container()) | |
| CGInverseOperator (const OperatorType &op, const PreconditionerType &precond, RealType redEps, RealType absLimit, unsigned int maxIter, bool verbose, const ParameterReader ¶meter=Parameter::container()) | |
| constructor of CGInverseOperator | |
| CGInverseOperator (const OperatorType &op, const PreconditionerType &precond, RealType redEps, RealType absLimit, const ParameterReader ¶meter=Parameter::container()) | |
| constructor of CGInverseOperator | |
| CGInverseOperator (const OperatorType &op, const PreconditionerType &precond, RealType redEps, RealType absLimit, unsigned int maxIter, const ParameterReader ¶meter=Parameter::container()) | |
| void | bind (const OperatorType &op) |
| void | bind (const OperatorType &op, const PreconditionerType &precond) |
| void | unbind () |
| virtual void | operator() (const DomainFunctionType &arg, RangeFunctionType &dest) const |
| application operator | |
| template<typename... A> | |
| void | prepare (A...) const |
| virtual void | apply (const DomainFunctionType &arg, RangeFunctionType &dest) const |
| application operator | |
| unsigned int | iterations () const |
| number of iterations needed for last solve | |
| void | setMaxIterations (unsigned int maxIter) |
| double | averageCommTime () const |
| return average communication time during last solve | |
| SolverParameter & | parameter () const |
| virtual void | finalize () |
| finalization of operator | |
| virtual bool | nonlinear () const |
Protected Attributes | |
| const OperatorType * | operator_ = nullptr |
| const PreconditionerType * | preconditioner_ = nullptr |
| SolverType | solver_ |
| SolverParameter | parameter_ |
Detailed Description
class Dune::Fem::Solver::CGInverseOperator< DiscreteFunction >
Inverse operator base on CG method. This is the base class for the cg solver and does not imvolve any runtime parametrization.
Member Typedef Documentation
◆ DomainFieldType
|
inherited |
field type of the operator's domain
◆ DomainFunctionType
| typedef BaseType::DomainFunctionType Dune::Fem::Solver::CGInverseOperator< DiscreteFunction >::DomainFunctionType |
◆ OperatorType
| typedef Fem::Operator< DomainFunctionType, RangeFunctionType > Dune::Fem::Solver::CGInverseOperator< DiscreteFunction >::OperatorType |
◆ PreconditionerType
| typedef Fem::Operator< RangeFunctionType, DomainFunctionType > Dune::Fem::Solver::CGInverseOperator< DiscreteFunction >::PreconditionerType |
◆ RangeFieldType
| typedef OperatorType::RangeFieldType Dune::Fem::Solver::CGInverseOperator< DiscreteFunction >::RangeFieldType |
◆ RangeFunctionType
| typedef BaseType::RangeFunctionType Dune::Fem::Solver::CGInverseOperator< DiscreteFunction >::RangeFunctionType |
◆ RealType
| typedef Dune::FieldTraits<RangeFieldType>::real_type Dune::Fem::Solver::CGInverseOperator< DiscreteFunction >::RealType |
Constructor & Destructor Documentation
◆ CGInverseOperator() [1/10]
|
inline |
constructor of CGInverseOperator
- Parameters
-
[in] redEps reduction epsilon [in] absLimit absolut limit of residual [in] maxIter maximum number of iteration steps [in] verbose verbosity
◆ CGInverseOperator() [2/10]
|
inline |
◆ CGInverseOperator() [3/10]
|
inline |
constructor of CGInverseOperator
- Parameters
-
[in] redEps reduction epsilon [in] absLimit absolut limit of residual [in] maxIter maximum number of iteration steps
◆ CGInverseOperator() [4/10]
|
inline |
◆ CGInverseOperator() [5/10]
|
inline |
constructor of CGInverseOperator
- Parameters
-
[in] op operator to invert [in] redEps reduction epsilon [in] absLimit absolut limit of residual [in] maxIter maximum number of iteration steps [in] verbose verbosity
◆ CGInverseOperator() [6/10]
|
inline |
constructor of CGInverseOperator
- Parameters
-
[in] op operator to invert [in] redEps reduction epsilon [in] absLimit absolut limit of residual [in] maxIter maximum number of iteration steps
◆ CGInverseOperator() [7/10]
|
inline |
◆ CGInverseOperator() [8/10]
|
inline |
constructor of CGInverseOperator
- Parameters
-
[in] op operator to invert [in] precond precondition operator [in] redEps reduction epsilon [in] absLimit absolut limit of residual [in] maxIter maximum number of iteration steps [in] verbose verbosity
◆ CGInverseOperator() [9/10]
|
inline |
constructor of CGInverseOperator
- Parameters
-
[in] op operator to invert [in] precond precondition operator [in] redEps reduction epsilon [in] absLimit absolut limit of residual [in] maxIter maximum number of iteration steps
◆ CGInverseOperator() [10/10]
|
inline |
Member Function Documentation
◆ apply()
|
inlinevirtual |
application operator
The application operator actually solves the linear system \(op(dest) = arg\) using the CG method.
- Parameters
-
[in] arg argument discrete function [out] dest destination discrete function
◆ averageCommTime()
|
inline |
return average communication time during last solve
◆ bind() [1/2]
|
inline |
◆ bind() [2/2]
|
inline |
◆ finalize()
|
inlinevirtualinherited |
finalization of operator
- Note
- The default implementation is empty.
◆ iterations()
|
inline |
number of iterations needed for last solve
◆ nonlinear()
|
inlinevirtualinherited |
Return true if the Operator is nonlinear and false otherwise (default is true).
◆ operator()()
|
inlinevirtual |
application operator
The application operator actually solves the linear system \(op(dest) = arg\) using the CG method.
- Parameters
-
[in] arg argument discrete function [out] dest destination discrete function
Implements Dune::Fem::Operator< DiscreteFunction, DiscreteFunction >.
◆ parameter()
|
inline |
◆ prepare()
|
inline |
◆ setMaxIterations()
|
inline |
◆ unbind()
|
inline |
Member Data Documentation
◆ operator_
|
protected |
◆ parameter_
|
mutableprotected |
◆ preconditioner_
|
protected |
◆ solver_
|
protected |
The documentation for this class was generated from the following file:
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8