:orphan: # 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 [](ch_ksp), `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](https://gitlab.com/petsc/petsc/-/edit/release/src/ksp/ksp/interface/itfunc.c) [Index of all KSP routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)