#include <BelosIterativeSolver.hpp>
Inheritance diagram for Belos::IterativeSolver< ScalarType, MV, OP >:

Public Member Functions | |
Constructor/Destructor. | |
| IterativeSolver (void) | |
| Default Constructor. | |
| virtual | ~IterativeSolver (void) |
| Destructor. | |
Accessor methods | |
| virtual int | GetNumIters () const =0 |
| Get the current iteration count for this block of linear systems. | |
| virtual int | GetNumRestarts () const =0 |
| Get the current restart count of the iteration method. | |
| virtual RefCountPtr< const MV > | GetNativeResiduals (std::vector< MagnitudeType > *normvec) const =0 |
| Get the solvers native residuals for the current block of linear systems. | |
| virtual RefCountPtr< MV > | GetCurrentSoln ()=0 |
| Get the actual residual vectors for the current block of linear systems. | |
| virtual RefCountPtr< LinearProblem< ScalarType, MV, OP > > | GetLinearProblem () const =0 |
| Get a constant reference to the current linear problem, which may include a current solution. | |
| virtual RefCountPtr< StatusTest< ScalarType, MV, OP > > | GetStatusTest () const =0 |
Reset methods | |
| virtual int | Reset (const RefCountPtr< ParameterList > &pl=Teuchos::null) |
| Reset the solver to its initialized state. This is not a required method for all solvers, but a method that should be implemented by any solver whos object maintains state information. The reset method is used to reset a solver object so it can then be reused, i.e. in inner-outer iterations. An optional parameter list can be passed in to change any solver parameters necessary. | |
Solve method | |
| virtual void | Solve ()=0 |
| Use the iterative method prescribed by the solver to compute the solution to the linear problem. | |
The Belos::IterativeSolver class is responsible for providing the current solver information to the Belos::StatusTest object.
Definition at line 62 of file BelosIterativeSolver.hpp.
|
||||||||||
|
Default Constructor.
Definition at line 73 of file BelosIterativeSolver.hpp. |
|
||||||||||
|
Destructor.
Definition at line 76 of file BelosIterativeSolver.hpp. |
|
|||||||||
|
Get the current iteration count for this block of linear systems.
Implemented in Belos::BlockCG< ScalarType, MV, OP >, Belos::BlockGmres< ScalarType, MV, OP >, Belos::CG< ScalarType, MV, OP >, and Belos::TFQMR< ScalarType, MV, OP >. |
|
|||||||||
|
Get the current restart count of the iteration method. Some linear solvers can perform restarts (i.e. GMRES) to reduce memory and orthogonalization costs. For other linear solvers that don't perform restarts (i.e. CG), this is not a valid stopping criteria. Implemented in Belos::BlockCG< ScalarType, MV, OP >, Belos::BlockGmres< ScalarType, MV, OP >, Belos::CG< ScalarType, MV, OP >, and Belos::TFQMR< ScalarType, MV, OP >. |
|
||||||||||
|
Get the solvers native residuals for the current block of linear systems. This is not be the same as the true residual for most solvers. Sometimes the native residuals are not in multivector form, so the norm type is solver dependent. If the true residual is required, then call GetCurrentSoln().
Implemented in Belos::BlockCG< ScalarType, MV, OP >, Belos::BlockGmres< ScalarType, MV, OP >, Belos::CG< ScalarType, MV, OP >, and Belos::TFQMR< ScalarType, MV, OP >. |
|
|||||||||
|
Get the actual residual vectors for the current block of linear systems. This may force the solver to compute a current residual for its linear systems. Some linear solvers don't constantly update their residuals and solutions (i.e. GMRES), so this may be an expensive request. Using true residuals to determine convergence should be secondary to using the native residuals of the iterative linear solver.
Implemented in Belos::BlockCG< ScalarType, MV, OP >, Belos::BlockGmres< ScalarType, MV, OP >, Belos::CG< ScalarType, MV, OP >, and Belos::TFQMR< ScalarType, MV, OP >. |
|
|||||||||
|
Get a constant reference to the current linear problem, which may include a current solution.
Implemented in Belos::BlockCG< ScalarType, MV, OP >, Belos::BlockGmres< ScalarType, MV, OP >, Belos::CG< ScalarType, MV, OP >, and Belos::TFQMR< ScalarType, MV, OP >. |
|
|||||||||
|
Implemented in Belos::BlockCG< ScalarType, MV, OP >, Belos::BlockGmres< ScalarType, MV, OP >, Belos::CG< ScalarType, MV, OP >, and Belos::TFQMR< ScalarType, MV, OP >. |
|
||||||||||
|
Reset the solver to its initialized state. This is not a required method for all solvers, but a method that should be implemented by any solver whos object maintains state information. The reset method is used to reset a solver object so it can then be reused, i.e. in inner-outer iterations. An optional parameter list can be passed in to change any solver parameters necessary.
Reimplemented in Belos::BlockGmres< ScalarType, MV, OP >. Definition at line 140 of file BelosIterativeSolver.hpp. |
|
|||||||||
|
Use the iterative method prescribed by the solver to compute the solution to the linear problem.
Implemented in Belos::BlockCG< ScalarType, MV, OP >, Belos::BlockGmres< ScalarType, MV, OP >, Belos::CG< ScalarType, MV, OP >, and Belos::TFQMR< ScalarType, MV, OP >. |
1.3.9.1