#include <F_MgcrLS.hpp>
Inheritance diagram for F_MgcrLS:


Purpose: Mgcr(m) krylov solver with restart each m iterations, for non symmetric/indefinite linear system
Used to solve a set of linearized differencial equations,....
Mgcr is a Krylov solver working on residuals. It approximates a solution via generation of the suitable
partial Krylov orthonormal base, especially in the restart case.
We hope that a small number of Krylov sub-spaces are sufficient to lead to a good solution.
Mgcr is slightly faster than GMRES, it is also much less expansive that CGR.
Mgcr need only to solve a upper triangular, and is not requiring to solve a minimisation.
It does not breakdown, unless he found the exact solution!
Papers: "Modified Generalized Conjugate Residuals Method for Nonsymmetric Systems of Linear Equations."
Zbigniew Leyk, report 1993, Australian National University.
Public Methods | |
| F_MgcrLS (int maxIterations, int m=10, double epsilon=1.0e-4) | |
| virtual | ~F_MgcrLS () |
| virtual FloatVector * | solve (AFloatMatrix *m, FloatVector *b, FloatVector *dest) |
Protected Methods | |
| virtual FloatVector * | singleSolve (AFloatMatrix *A, FloatVector *b, FloatVector *x=0) |
Private Attributes | |
| int | m |
| int | k |
| int | width |
| double | d |
| FloatVector * | x0 |
| FloatVector * | r |
| FloatVector * | alpha |
| FloatVector * | c |
| FloatVector * | as |
| FloatVector ** | s |
| AFSymMatrix * | h |
![]() |
