bundles / scipy 1.17.1 / scipy / sparse / linalg / _isolve / _gcrotmk / _fgmres
function
scipy.sparse.linalg._isolve._gcrotmk:_fgmres
Signature
def _fgmres ( matvec , v0 , m , atol , lpsolve = None , rpsolve = None , cs = () , outer_v = () , prepend_outer_v = False ) Summary
FGMRES Arnoldi process, with optional projection or augmentation
Parameters
matvec: callableOperation A*x
v0: ndarrayInitial vector, normalized to nrm2(v0) == 1
m: intNumber of GMRES rounds
atol: floatAbsolute tolerance for early exit
lpsolve: callableLeft preconditioner L
rpsolve: callableRight preconditioner R
cs: list of (ndarray, ndarray)Columns of matrices C and U in GCROT
outer_v: list of ndarraysAugmentation vectors in LGMRES
prepend_outer_v: bool, optionalWhether augmentation vectors come before or after Krylov iterates
Returns
Q, R: ndarrayQR decomposition of the upper Hessenberg H=QR
B: ndarrayProjections corresponding to matrix C
vs: list of ndarrayColumns of matrix V
zs: list of ndarrayColumns of matrix Z
y: ndarraySolution to ||H y - e_1||_2 = min!
res: floatThe final (preconditioned) residual norm
Raises
: LinAlgErrorIf nans encountered
Aliases
-
scipy.sparse.linalg._isolve._gcrotmk._fgmres