|
dune-fem 2.12-git
|
AMGX solver context for PETSc Mat and PETSc Vec. More...
#include <dune/fem/solver/amgxsolver.hh>

Public Types | |
| typedef BaseType::SolverDiscreteFunctionType | SolverDiscreteFunctionType |
| typedef BaseType::OperatorType | OperatorType |
| typedef BaseType::PreconditionerType | PreconditionerType |
| typedef BaseType::AssembledOperatorType | AssembledOperatorType |
| typedef BaseType::DomainFunctionType | DomainFunctionType |
| typedef BaseType::RangeFunctionType | RangeFunctionType |
| typedef Traits::SolverParameterType | SolverParameterType |
| typedef Impl::SolverInfo | SolverInfoType |
| typedef std::function< bool(const RangeFunctionType &w, const RangeFunctionType &dw, double residualNorm) > | ErrorMeasureType |
| type of error measure (used by NewtonInverseOperator primnarily) | |
| 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 | |
| AMGXInverseOperator (const AMGXSolverParameter ¶meter=AMGXSolverParameter()) | |
| constructor | |
| AMGXInverseOperator (const OperatorType &op, const AMGXSolverParameter ¶meter=AMGXSolverParameter()) | |
| AMGXInverseOperator (const OperatorType &op, PreconditionerType &preconditioner, const AMGXSolverParameter ¶meter=AMGXSolverParameter()) | |
| AMGXInverseOperator (const AMGXInverseOperator &other) | |
| void | bind (const OperatorType &op) |
| void | unbind () |
| virtual void | operator() (const DomainFunctionType &u, RangeFunctionType &w) const |
| application of operator to compute | |
| void | operator() (const DiscreteFunctionInterface< DImpl > &u, DiscreteFunctionInterface< RImpl > &w) const |
| application of operator to compute | |
| virtual void | operator() (const DomainFunctionType &u, RangeFunctionType &w) const=0 |
| application operator | |
| void | bind (const OperatorType &op) |
| store pointer to linear operator | |
| void | bind (const OperatorType &op, const PreconditionerType &preconditioner) |
| store pointer to linear operator and preconditioner | |
| int | iterations () const |
| return number of iterations used in previous call of application operator | |
| virtual SolverInfoType | info () const |
| Return performance info about last solver call. | |
| virtual void | setMaxLinearIterations (const int iter) |
| set number of max linear iterations to be used before an exception is thrown | |
| virtual void | setMaxIterations (const int iter) |
| void | setParameters (const SolverParameterType &newParams) |
| set complete set of linear inverse operator parameters | |
| SolverParameterType & | parameter () const |
| bool | verbose () const |
| double | averageCommTime () const |
| return accumulated communication time | |
| virtual void | finalize () |
| finalization of operator | |
| virtual bool | nonlinear () const |
Static Public Attributes | |
| static const bool | preconditioningAvailable = false |
| this solver does not offer to set preconditioning option | |
Protected Types | |
| typedef BartonNackmanInterface< InverseOperatorInterface< AMGXInverseOperatorTraits< DF > >, typename Traits::InverseOperatorType > | Base2Type |
| typedef Traits::InverseOperatorType | InverseOperatorType |
Protected Member Functions | |
| void | init (const AMGXSolverParameter ¶meter) |
| int | apply (const SolverDiscreteFunctionType &arg, SolverDiscreteFunctionType &dest) const |
| void | opApply (const SolverDiscreteFunctionType &u, SolverDiscreteFunctionType &w) const |
| void | opApply (const DiscreteFunctionInterface< DImpl > &u, DiscreteFunctionInterface< RImpl > &w) const |
| const Implementation & | asImp () const |
| Implementation & | asImp () |
Static Protected Member Functions | |
| static const Implementation & | asImp (const ThisType &other) |
| static Implementation & | asImp (ThisType &other) |
Protected Attributes | |
| std::shared_ptr< SolverParameterType > | parameter_ |
| const OperatorType * | operator_ |
| const AssembledOperatorType * | assembledOperator_ |
| const PreconditionerType * | preconditioner_ |
| std::unique_ptr< SolverDiscreteFunctionType > | rhs_ |
| std::unique_ptr< SolverDiscreteFunctionType > | x_ |
| int | iterations_ |
| bool | rightHandSideCopied_ |
| bool | verbose_ |
Friends | |
| class | InverseOperatorInterface< Traits > |
Detailed Description
class Dune::Fem::AMGXInverseOperator< DF >
AMGX solver context for PETSc Mat and PETSc Vec.
Member Typedef Documentation
◆ AssembledOperatorType
| typedef BaseType::AssembledOperatorType Dune::Fem::AMGXInverseOperator< DF >::AssembledOperatorType |
◆ Base2Type
|
protectedinherited |
◆ DomainFieldType
|
inherited |
field type of the operator's domain
◆ DomainFunctionType
|
inherited |
◆ ErrorMeasureType
|
inherited |
type of error measure (used by NewtonInverseOperator primnarily)
◆ InverseOperatorType
|
protectedinherited |
◆ OperatorType
| typedef BaseType::OperatorType Dune::Fem::AMGXInverseOperator< DF >::OperatorType |
◆ PreconditionerType
| typedef BaseType::PreconditionerType Dune::Fem::AMGXInverseOperator< DF >::PreconditionerType |
◆ RangeFieldType
|
inherited |
field type of the operator's range
◆ RangeFunctionType
|
inherited |
◆ SolverDiscreteFunctionType
| typedef BaseType::SolverDiscreteFunctionType Dune::Fem::AMGXInverseOperator< DF >::SolverDiscreteFunctionType |
◆ SolverInfoType
|
inherited |
◆ SolverParameterType
|
inherited |
Constructor & Destructor Documentation
◆ AMGXInverseOperator() [1/4]
|
inline |
constructor
- Parameters
-
[in] parameter parameter for the solver
◆ AMGXInverseOperator() [2/4]
|
inline |
◆ AMGXInverseOperator() [3/4]
|
inline |
◆ AMGXInverseOperator() [4/4]
|
inline |
Member Function Documentation
◆ apply()
|
inlineprotected |
◆ asImp() [1/4]
|
inlineprotectedinherited |
◆ asImp() [2/4]
|
inlineprotectedinherited |
◆ asImp() [3/4]
|
inlinestaticprotectedinherited |
◆ asImp() [4/4]
|
inlinestaticprotectedinherited |
◆ averageCommTime()
|
inlineinherited |
return accumulated communication time
◆ bind() [1/3]
|
inline |
◆ bind() [2/3]
|
inlineinherited |
◆ bind() [3/3]
|
inlineinherited |
◆ finalize()
|
inlinevirtualinherited |
finalization of operator
- Note
- The default implementation is empty.
◆ info()
|
inlinevirtualinherited |
Return performance info about last solver call.
◆ init()
|
inlineprotected |
◆ iterations()
|
inlineinherited |
return number of iterations used in previous call of application operator
◆ nonlinear()
|
inlinevirtualinherited |
Return true if the Operator is nonlinear and false otherwise (default is true).
◆ opApply() [1/2]
|
inlineprotectedinherited |
◆ opApply() [2/2]
|
inlineprotectedinherited |
◆ operator()() [1/3]
|
inlineinherited |
application of operator to compute
\[ w = op^-1( u ) \]
.
- Parameters
-
u parameter right hand side of linear problem w initial guess for linear solver
- Note
- Calling the inverse operator for arbitrary discrete functions a copy to solver compatible discrete function is made.
◆ operator()() [2/3]
|
inlinevirtualinherited |
application of operator to compute
\[ w = op^-1( u ) \]
.
- Parameters
-
u parameter right hand side of linear problem w initial guess for linear solver
◆ operator()() [3/3]
|
pure virtualinherited |
application operator
- Parameters
-
[in] u argument discrete function [out] w destination discrete function
- Note
- This method has to be implemented by all derived classes.
◆ parameter()
|
inlineinherited |
◆ setMaxIterations()
|
inlinevirtualinherited |
◆ setMaxLinearIterations()
|
inlinevirtualinherited |
set number of max linear iterations to be used before an exception is thrown
- Parameters
-
iter number of max linear iterations
◆ setParameters()
|
inlineinherited |
set complete set of linear inverse operator parameters
- Note
- newParams set of new parameters
◆ unbind()
|
inline |
◆ verbose()
|
inlineinherited |
Friends And Related Symbol Documentation
◆ InverseOperatorInterface< Traits >
|
friend |
Member Data Documentation
◆ assembledOperator_
|
protectedinherited |
◆ iterations_
|
mutableprotectedinherited |
◆ operator_
|
protectedinherited |
◆ parameter_
|
protectedinherited |
◆ preconditioner_
|
protectedinherited |
◆ preconditioningAvailable
|
static |
this solver does not offer to set preconditioning option
◆ rhs_
|
mutableprotectedinherited |
◆ rightHandSideCopied_
|
mutableprotectedinherited |
◆ verbose_
|
mutableprotectedinherited |
◆ x_
|
mutableprotectedinherited |
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