Version 1.1.015th April 2015
HSL_MI29: MPGMRES: an extension of GMRES which allows multiple preconditioners
This package solves the \(n\times n\) unsymmetric linear system \(A x = b\) using the iterative method restarted MPGMRES, otherwise known as
MPGMRES(m) is itself a generalization of the standard right-preconditioned generalized minimal residual method with restarts (
GMRES(m)) that allows the user to employ multiple preconditioners at each iteration.
MPGMRES comes in two variants: complete and selective. Complete
MPGMRES finds the approximation which minimizes the 2-norm of the residual over some space, termed the multi-Krylov space, which is defined by the choice of preconditioners. This search space grows exponentially with the iteration number, and so this version is generally to be avoided in practice, but useful in diagnostics. A selective version of
MPGMRES finds an approximation to the solution in some subspace of the full multi-Krylov space, the dimension of which will grow only linearly with the iteration number. The use of both variants is supported in this package.
Reverse communication is used for preconditioning operations and matrix-vector/matrix-matrix products with \(A\).