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

# KSPGCR

Implements the preconditioned Generalized Conjugate Residual method.

### Options Database Keys

-ksp_gcr_restart <restart> -the number of stored vectors to orthogonalize against Many br

Many br

Notes: The GCR Krylov method supports non-symmetric matrices and permits the use of a preconditioner Many brwhich may vary from one iteration to the next. Users can can define a method to vary the Many brpreconditioner between iterates via KSPGCRSetModifyPC(). Many brRestarts are solves with x0 not equal to zero. When a restart occurs, the initial starting Many brsolution is given by the current estimate for x which was obtained by the last restart Many briterations of the GCR algorithm. Many brUnlike GMRES and FGMRES, when using GCR, the solution and residual vector can be directly accessed at any iterate, Many brwith zero computational cost, via a call to KSPBuildSolution() and KSPBuildResidual() respectively. Many brThis implementation of GCR will only apply the stopping condition test whenever ksp->its > ksp->chknorm, Many brwhere ksp->chknorm is specified via the command line argument -ksp_check_norm_iteration or via Many brthe function KSPSetCheckNormIteration(). Many brThe method implemented requires the storage of 2 x restart + 1 vectors, twice as much as GMRES. Many brSupport only for right preconditioning. Many br

Contributed by Dave May Many br

### References

1. -S. C. Eisenstat, H. C. Elman, and H. C. Schultz. Variational iterative methods for Many brnonsymmetric systems of linear equations. SIAM J. Numer. Anal., 20, 1983 Many br

### See Also

KSPCreate(), KSPSetType(), KSPType (for list of available types), KSP,
KSPGCRSetRestart(), KSPGCRSetModifyPC(), KSPGMRES, KSPFGMRES Many br

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