petsc-3.14.5 2021-03-03
Report Typos and Errors

# 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

| ksp | - iterative context

### 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