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

Implements an iterative solver automatically choosing appropriate algorithm based on matrix criteria.

#include <TAutoSolver.hh>

Inheritance diagram for TAutoSolver:
TSolver

Public Member Functions

 TAutoSolver (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 auto solver object with corresponding stop criteria
 
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