KSPSetTolerances#

Sets the relative, absolute, divergence, and maximum iteration tolerances used by the default KSP convergence testers.

Synopsis#

#include "petscksp.h" 
#include "petscmat.h" 
PetscErrorCode KSPSetTolerances(KSP ksp, PetscReal rtol, PetscReal abstol, PetscReal dtol, PetscInt maxits)

Logically Collective

Input Parameters#

  • ksp - the Krylov subspace context

  • rtol - the relative convergence tolerance, relative decrease in the (possibly preconditioned) residual norm

  • abstol - the absolute convergence tolerance absolute size of the (possibly preconditioned) residual norm

  • dtol - the divergence tolerance, amount (possibly preconditioned) residual norm can increase before KSPConvergedDefault() concludes that the method is diverging

  • maxits - maximum number of iterations to use

Options Database Keys#

  • -ksp_atol - Sets abstol

  • -ksp_rtol - Sets rtol

  • -ksp_divtol - Sets dtol

  • -ksp_max_it - Sets maxits

Notes#

Use PETSC_DEFAULT to retain the default value of any of the tolerances.

See KSPConvergedDefault() for details how these parameters are used in the default convergence test. See also KSPSetConvergenceTest() for setting user-defined stopping criteria.

See Also#

KSP: Linear System Solvers, KSPGetTolerances(), KSPConvergedDefault(), KSPSetConvergenceTest(), KSP

Level#

intermediate

Location#

src/ksp/ksp/interface/itfunc.c

Examples#

src/ksp/ksp/tutorials/ex1.c
src/ksp/ksp/tutorials/ex15.c
src/ksp/ksp/tutorials/ex15f.F90
src/ksp/ksp/tutorials/ex18.c
src/ksp/ksp/tutorials/ex1f.F90
src/ksp/ksp/tutorials/ex2.c
src/ksp/ksp/tutorials/ex23.c
src/ksp/ksp/tutorials/ex2f.F90
src/ksp/ksp/tutorials/ex4.c
src/ksp/ksp/tutorials/ex52f.F90
src/ksp/ksp/tutorials/ex6.c


Edit on GitLab

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