AMDiS 2.10
The Adaptive Multi-Dimensional Simulation Toolbox
PreconditionerInterface< M, X, Y > Class Template Referenceabstract

Interface for Preconditioner y = M*x. More...

#include <PreconditionerInterface.hpp>

Inherited by Preconditioner< M, X, Y, PreconImpl >, and SolverPrecon< M, X, Y >.

Public Member Functions

virtual ~PreconditionerInterface ()=default
 Virtual destructor.
 
virtual void init (M const &A)=0
 Is called a the beginning of a solution procedure. More...
 
virtual void finish ()=0
 Is called at the end of a solution procedure. More...
 
virtual void solve (X const &x, Y &y) const =0
 Apply the preconditioner to a vector x and store the result in y. More...
 
virtual void adjoint_solve (X const &x, Y &y) const
 Apply the transposed preconditioner to a vector x and store the result in y. More...
 

Detailed Description

template<class M, class X, class Y>
class AMDiS::PreconditionerInterface< M, X, Y >

Interface for Preconditioner y = M*x.

Member Function Documentation

◆ adjoint_solve()

virtual void adjoint_solve ( X const &  x,
Y &  y 
) const
inlinevirtual

Apply the transposed preconditioner to a vector x and store the result in y.

Reimplemented in Preconditioner< M, X, Y, PreconImpl >, and SolverPrecon< M, X, Y >.

◆ finish()

virtual void finish ( )
pure virtual

Is called at the end of a solution procedure.

Implemented in Preconditioner< M, X, Y, PreconImpl >, and SolverPrecon< M, X, Y >.

◆ init()

virtual void init ( M const &  A)
pure virtual

Is called a the beginning of a solution procedure.

Implemented in Preconditioner< M, X, Y, PreconImpl >, and SolverPrecon< M, X, Y >.

◆ solve()

virtual void solve ( X const &  x,
Y &  y 
) const
pure virtual

Apply the preconditioner to a vector x and store the result in y.

Implemented in Preconditioner< M, X, Y, PreconImpl >, and SolverPrecon< M, X, Y >.


The documentation for this class was generated from the following file: