HLIBpro
2.0
|
Implements GMRES iteration with restart.
#include <TGMRES.hh>
Public Member Functions | |
TGMRES (const uint restart, const uint max_iter=100, const real abs_res_red=real(1e-8), const real rel_res_red=real(1e-8), const real rel_res_growth=real(1e6)) | |
virtual void | solve (const TLinearOperator *A, TVector *x, const TVector *b, const TLinearOperator *W=NULL, TInfo *data=NULL) const |
solve A·x = b with optional preconditioner W | |
Public Member Functions inherited from TSolver | |
TSolver (const uint max_iter=100, const real abs_res_red=real(1e-8), const real rel_res_red=real(1e-8), const real rel_res_growth=real(1e6)) | |
construct Richardson solver object with corresponding stop criteria | |
virtual | ~TSolver () |
dtor | |
virtual void | set_stop_crit (const uint max_iter=100, const real abs_res_red=real(1e-8), const real rel_res_red=real(1e-8), const real rel_res_growth=real(1e6)) |
set stop criterion | |
virtual bool | stop (const uint it, const real norm, const real norm0, TInfo *info) const |
return true if stop condition is met | |
Additional Inherited Members | |
Protected Attributes inherited from TSolver | |
uint | _max_iter |
maximal number of iterations | |
real | _abs_res_reduct |
absolute reduction of residual norm | |
real | _rel_res_reduct |
relative reduction of residual norm compared to start residual | |
real | _rel_res_growth |
maximal relative growth of residual norm compared to start residual | |
TGMRES | ( | const uint | restart, |
const uint | max_iter = 100 , |
||
const real | abs_res_red = real(1e-8) , |
||
const real | rel_res_red = real(1e-8) , |
||
const real | rel_res_growth = real(1e6) |
||
) |
construct GMRES solver object with corresponding stop criteria and restart after restart steps