HLIBpro  2.0
Public Member Functions | List of all members
TGMRES Class Reference

Implements GMRES iteration with restart.

#include <TGMRES.hh>

Inheritance diagram for TGMRES:
TSolver

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
 

Constructor & Destructor Documentation

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