Inverse operator base on CG method. Uses a runtime parameter fem.preconditioning which enables diagonal preconditioning if diagonal matrix entries are available, i.e., Op :: assembled is true.
More...
|
| | CGInverseOperator (const SolverParameter ¶m=SolverParameter(Parameter::container())) |
| |
| | CGInverseOperator (RealType redEps, RealType absLimit, unsigned int maxIter, bool verbose, const ParameterReader ¶meter=Parameter::container()) |
| | constructor of CGInverseOperator
|
| |
| | 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()) |
| |
| template<class LinearOperator , std::enable_if_t< std::is_base_of< OperatorType, LinearOperator >::value, int > = 0> |
| | CGInverseOperator (const LinearOperator &op, RealType redEps, RealType absLimit, unsigned int maxIter, bool verbose, const ParameterReader ¶meter=Parameter::container()) |
| | constructor of CGInverseOperator
|
| |
| template<class LinearOperator , std::enable_if_t< std::is_base_of< OperatorType, LinearOperator >::value, int > = 0> |
| | CGInverseOperator (const LinearOperator &op, RealType redEps, RealType absLimit, unsigned int maxIter, const ParameterReader ¶meter=Parameter::container()) |
| | constructor of CGInverseOperator
|
| |
| template<class LinearOperator , std::enable_if_t< std::is_base_of< OperatorType, LinearOperator >::value, int > = 0> |
| | CGInverseOperator (const LinearOperator &op, RealType redEps, RealType absLimit, const ParameterReader ¶meter=Parameter::container()) |
| |
| | CGInverseOperator (const OperatorType &op, const PreconditioningType &precond, RealType redEps, RealType absLimit, unsigned int maxIter, bool verbose, const ParameterReader ¶meter=Parameter::container()) |
| | constructor of CGInverseOperator
|
| |
| | CGInverseOperator (const OperatorType &op, const PreconditioningType &precond, RealType redEps, RealType absLimit, unsigned int maxIter, const ParameterReader ¶meter=Parameter::container()) |
| | constructor of CGInverseOperator
|
| |
| | CGInverseOperator (const OperatorType &op, const PreconditioningType &precond, RealType redEps, RealType absLimit, const ParameterReader ¶meter=Parameter::container()) |
| |
| template<class LinearOperator , std::enable_if_t< std::is_base_of< OperatorType, LinearOperator >::value, int > = 0> |
| void | bind (const LinearOperator &op) |
| |
| void | unbind () |
| |
| void | bind (const OperatorType &op) |
| |
| void | bind (const OperatorType &op, const PreconditionerType &precond) |
| |
| void | bind (const OperatorType &op) |
| |
| void | bind (const OperatorType &op, const PreconditionerType &precond) |
| |
| 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 |
| |
template<class DiscreteFunction, class Op = Fem::Operator< DiscreteFunction, DiscreteFunction >>
class Dune::Fem::CGInverseOperator< DiscreteFunction, Op >
Inverse operator base on CG method. Uses a runtime parameter fem.preconditioning which enables diagonal preconditioning if diagonal matrix entries are available, i.e., Op :: assembled is true.