KSPConvergedDefaultSetUIRNorm#

makes the default convergence test use \( || B*(b - A*(initial guess))||\) instead of \( || B*b ||\). In the case of right preconditioner or if KSPSetNormType(ksp,KSP_NORM_UNPRECONDITIONED) is used there is no B in the above formula.

Synopsis#

Collective

Input Parameters#

  • ksp - iterative context

Options Database Key#

  • -ksp_converged_use_initial_residual_norm - Use initial residual norm for computing relative convergence

Notes#

UIRNorm is short for Use Initial Residual Norm.

Use KSPSetTolerances() to alter the defaults for rtol, abstol, dtol.

The precise values of reason are macros such as KSP_CONVERGED_RTOL, which are defined in petscksp.h.

If the convergence test is not KSPConvergedDefault() then this is ignored.

If right preconditioning is being used then B does not appear in the above formula.

See Also#

KSP: Linear System Solvers, KSP, KSPSetConvergenceTest(), KSPSetTolerances(), KSPConvergedSkip(), KSPConvergedReason, KSPGetConvergedReason(), KSPConvergedDefaultSetUMIRNorm(), KSPConvergedDefaultSetConvergedMaxits()

Level#

intermediate

Location#

src/ksp/ksp/interface/iterativ.c


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