petsc-3.14.6 2021-03-30
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_UNPRECONDIITONED) is used there is no B in the above formula. UIRNorm is short for Use Initial Residual Norm.
Synopsis
#include "petscksp.h"
PetscErrorCode KSPConvergedDefaultSetUIRNorm(KSP ksp)
Collective on ksp
Input Parameters
Options Database
| -ksp_converged_use_initial_residual_norm |
Notes
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
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