NGSolve
4.9
|
Krylov Space Solver. More...
#include <cg.hpp>
Public Member Functions | |
KrylovSpaceSolver (const BaseMatrix &aa) | |
KrylovSpaceSolver (const BaseMatrix &aa, const BaseMatrix &ac) | |
void | SetMatrix (const BaseMatrix &aa) |
void | SetPrecond (const BaseMatrix &ac) |
void | SetMaxSteps (int amaxsteps) |
void | SetPrecision (double aprec) |
void | SetAbsolutePrecision (double aprec) |
void | SetRelativePrecision (double aprec) |
void | SetPrintRates (int pr=1) |
void | SetInitialize (int ai) |
void | SetStatusHandler (const BaseStatusHandler &stha) |
void | UseSeed (const bool useit=true) |
int | GetSteps () const |
virtual void | Mult (const BaseVector &v, BaseVector &prod) const =0 |
y = matrix * x. Multadd should be implemented, instead | |
virtual BaseVector * | CreateVector () const |
creates a matching vector (for square matrices) | |
virtual int | VHeight () const |
virtual function must be overloaded | |
virtual int | VWidth () const |
virtual function must be overloaded | |
Protected Attributes | |
const BaseMatrix * | a |
const BaseMatrix * | c |
double | prec |
int | maxsteps |
int | steps |
int | initialize |
bool | stop_absolute |
int | printrates |
int | absoluteRes |
bool | useseed |
const BaseStatusHandler * | sh |
Krylov Space Solver.