petsc-3.14.6 2021-03-30
Report Typos and Errors

KSPConvergedReason

reason a Krylov method was said to have converged or diverged

Synopsis

typedef enum {/* converged */
              KSP_CONVERGED_RTOL_NORMAL        =  1,
              KSP_CONVERGED_ATOL_NORMAL        =  9,
              KSP_CONVERGED_RTOL               =  2,
              KSP_CONVERGED_ATOL               =  3,
              KSP_CONVERGED_ITS                =  4,
              KSP_CONVERGED_CG_NEG_CURVE       =  5,
              KSP_CONVERGED_CG_CONSTRAINED     =  6,
              KSP_CONVERGED_STEP_LENGTH        =  7,
              KSP_CONVERGED_HAPPY_BREAKDOWN    =  8,
              /* diverged */
              KSP_DIVERGED_NULL                = -2,
              KSP_DIVERGED_ITS                 = -3,
              KSP_DIVERGED_DTOL                = -4,
              KSP_DIVERGED_BREAKDOWN           = -5,
              KSP_DIVERGED_BREAKDOWN_BICG      = -6,
              KSP_DIVERGED_NONSYMMETRIC        = -7,
              KSP_DIVERGED_INDEFINITE_PC       = -8,
              KSP_DIVERGED_NANORINF            = -9,
              KSP_DIVERGED_INDEFINITE_MAT      = -10,
              KSP_DIVERGED_PC_FAILED           = -11,
              KSP_DIVERGED_PCSETUP_FAILED_DEPRECATED  = -11,

              KSP_CONVERGED_ITERATING          =  0} KSPConvergedReason;

Notes

See KSPGetConvergedReason() for explanation of each value

Developer Notes

this must match petsc/finclude/petscksp.h

The string versions of these are KSPConvergedReasons; if you change any of the values here also change them that array of names.

See Also

KSPSolve(), KSPGetConvergedReason(), KSPSetTolerances(), KSPConvergedReasonView()

Level

beginner

Location

src/ksp/ksp/guess/../../../../include/petscksp.h

Examples

src/ksp/ksp/tutorials/ex72.c.html
src/ksp/ksp/tutorials/ex77.c.html

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