Sets the norm that is used for convergence testing.


#include "petscksp.h" 
PetscErrorCode PETSCKSP_DLLEXPORT KSPSetNormType(KSP ksp,KSPNormType normtype)
Collective on KSP

Input Parameter

ksp - Krylov solver context
normtype - one of
  KSP_NO_NORM - skips computing the norm, this should only be used if you are using
                the Krylov method as a smoother with a fixed small number of iterations.
                You must also call KSPSetConvergenceTest(ksp,KSPSkipConverged,PETSC_NULL);
                supported only by CG, Richardson, Bi-CG-stab, CR, and CGS methods.
  KSP_PRECONDITIONED_NORM - the default for left preconditioned solves, uses the l2 norm
                of the preconditioned residual
  KSP_UNPRECONDITIONED_NORM - uses the l2 norm of the true b - Ax residual, supported only by
                CG, CHEBYCHEV, and RICHARDSON, automatically true for right (see KSPSetPreconditioningSide) 
  KSP_NATURAL_NORM - supported  by cg, cr, and cgs 

Options Database Key

-ksp_norm_type <none,preconditioned,unpreconditioned,natural> - Notes: Currently only works with the CG, Richardson, Bi-CG-stab, CR, and CGS methods.


KSP, create, context, norms

See Also

KSPSetUp(), KSPSolve(), KSPDestroy(), KSPSkipConverged()

Index of all KSP routines
Table of Contents for all manual pages
Index of all manual pages