Class xlifepp::PreconditionerTerm#

class PreconditionerTerm : public xlifepp::Preconditioner#

Define the preconditioner for linear systems.

This is a main class that users can derive to deal with preconditioning by operators. In most of the cases, users will use xlifepp::PreconditionerTerm when it is a preconditioning with TermMatrix/TermVector level (or MatrixEntry/VectorEntry)

Public Functions

inline PreconditionerTerm()#

default constructor

inline PreconditionerTerm(const PreconditionerTerm &pt)#

copy constructor

PreconditionerTerm(TermMatrix &A, PreconditionerType pt = _productPrec, const real_t w = 1.)#

constructor from matrix

~PreconditionerTerm()#

destructor

TermVector leftSolve(TermVector &B) const#

Transpose Solver with B.

LeftSolver with B.

virtual void leftSolve(TermVector &B, TermVector &X) const#

Transpose Solver with B and X.

inline void print() const#

print utility (const)

inline void print(std::ostream &os) const#

< print utility

TermVector solve(TermVector &B) const#

Solver with B.

virtual void solve(TermVector &B, TermVector &X) const#

Solver with B and X.

virtual ValueType valueType() const#

returns ValueType of preconditionner

test if Preconditioner is empty or not

Public Members

TermMatrix *precondMatrix_p#

precondition matrix