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#
#include "petscksp.h"
PetscErrorCode KSPConvergedDefaultSetUIRNorm(KSP ksp)
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