petsc-3.7.1 2016-05-15
Report Typos and Errors

KSPPGMRES

Implements the Pipelined Generalized Minimal Residual method.

Options Database Keys

-ksp_gmres_restart <restart> - the number of Krylov directions to orthogonalize against Many br
-ksp_gmres_haptol <tol> - sets the tolerance for "happy ending" (exact convergence) Many br
-ksp_gmres_preallocate - preallocate all the Krylov search directions initially (otherwise groups of Many brvectors are allocated as needed) Many br
-ksp_gmres_classicalgramschmidt - use classical (unmodified) Gram-Schmidt to orthogonalize against the Krylov space (fast) (the default) Many br
-ksp_gmres_modifiedgramschmidt - use modified Gram-Schmidt in the orthogonalization (more stable, but slower) Many br
-ksp_gmres_cgs_refinement_type <never,ifneeded,always> - determine if iterative refinement is used to increase the Many brstability of the classical Gram-Schmidt orthogonalization. Many br
-ksp_gmres_krylov_monitor - plot the Krylov space generated Many br

Many br

Notes

MPI configuration may be necessary for reductions to make asynchronous progress, which is important for performance of pipelined methods. Many brSee the FAQ on the PETSc website for details. Many br

Reference

Ghysels, Ashby, Meerbergen, Vanroose, Hiding global communication latencies in the GMRES algorithm on massively parallel machines, 2012. Many br

Developer Notes: This object is subclassed off of KSPGMRES Many br

See Also

KSPCreate(), KSPSetType(), KSPType (for list of available types), KSP, KSPGMRES, KSPLGMRES, KSPPIPECG, KSPPIPECR,
KSPGMRESSetRestart(), KSPGMRESSetHapTol(), KSPGMRESSetPreAllocateVectors(), KSPGMRESSetOrthogonalization(), KSPGMRESGetOrthogonalization(), Many brKSPGMRESClassicalGramSchmidtOrthogonalization(), KSPGMRESModifiedGramSchmidtOrthogonalization(), Many brKSPGMRESCGSRefinementType, KSPGMRESSetCGSRefinementType(), KSPGMRESGetCGSRefinementType(), KSPGMRESMonitorKrylov() Many br

Level:beginner
Location:
src/ksp/ksp/impls/gmres/pgmres/pgmres.c
Index of all KSP routines
Table of Contents for all manual pages
Index of all manual pages