#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 |