Skip to main content
`Ctrl`+`K`

# petsc4py.PETSc.KSP.ConvergedReason

class petsc4py.PETSc.KSP.ConvergedReason

  Bases: `object`

  KSP Converged Reason.

  `CONVERGED_ITERATING`

    Still iterating

  `ITERATING`

    Still iterating

  `CONVERGED_RTOL_NORMAL_EQUATIONS`

    Undocumented.

  `CONVERGED_ATOL_NORMAL_EQUATIONS`

    Undocumented.

  `CONVERGED_RTOL`

    ∥r∥ <= rtolnorm(b) or rtolnorm(b - Ax₀)

  `CONVERGED_ATOL`

    ∥r∥ <= atol

  `CONVERGED_ITS`

    Used by the `Type.PREONLY` solver after the single iteration of the preconditioner is applied. Also used when the `KSPConvergedSkip` convergence test routine is set in KSP.

  `CONVERGED_NEG_CURVE`

    Undocumented.

  `CONVERGED_STEP_LENGTH`

    Undocumented.

  `CONVERGED_HAPPY_BREAKDOWN`

    Undocumented.

  `DIVERGED_NULL`

    Undocumented.

  `DIVERGED_MAX_IT`

    Ran out of iterations before any convergence criteria was reached.

  `DIVERGED_DTOL`

    norm(r) >= dtol*norm(b)

  `DIVERGED_BREAKDOWN`

    A breakdown in the Krylov method was detected so the method could not continue to enlarge the Krylov space. Could be due to a singular matrix or preconditioner. In KSPHPDDM, this is also returned when some search directions within a block are collinear.

  `DIVERGED_BREAKDOWN_BICG`

    A breakdown in the KSPBICG method was detected so the method could not continue to enlarge the Krylov space.

  `DIVERGED_NONSYMMETRIC`

    It appears the operator or preconditioner is not symmetric and this Krylov method (`Type.CG`, `Type.MINRES`, `Type.CR`) requires symmetry.

  `DIVERGED_INDEFINITE_PC`

    It appears the preconditioner is indefinite (has both positive and negative eigenvalues) and this Krylov method (`Type.CG`) requires it to be positive definite.

  `DIVERGED_NANORINF`

    Undocumented.

  `DIVERGED_INDEFINITE_MAT`

    Undocumented.

  `DIVERGED_PCSETUP_FAILED`

    It was not possible to build or use the requested preconditioner. This is usually due to a zero pivot in a factorization. It can also result from a failure in a subpreconditioner inside a nested preconditioner such as `PC.Type.FIELDSPLIT`.

  See also

  `None`

  Attributes Summary

  `CONVERGED_ATOL` | Constant `CONVERGED_ATOL` of type `int`
  `CONVERGED_ATOL_NORMAL_EQUATIONS` | Constant `CONVERGED_ATOL_NORMAL_EQUATIONS` of type `int`
  `CONVERGED_HAPPY_BREAKDOWN` | Constant `CONVERGED_HAPPY_BREAKDOWN` of type `int`
  `CONVERGED_ITERATING` | Constant `CONVERGED_ITERATING` of type `int`
  `CONVERGED_ITS` | Constant `CONVERGED_ITS` of type `int`
  `CONVERGED_NEG_CURVE` | Constant `CONVERGED_NEG_CURVE` of type `int`
  `CONVERGED_RTOL` | Constant `CONVERGED_RTOL` of type `int`
  `CONVERGED_RTOL_NORMAL_EQUATIONS` | Constant `CONVERGED_RTOL_NORMAL_EQUATIONS` of type `int`
  `CONVERGED_STEP_LENGTH` | Constant `CONVERGED_STEP_LENGTH` of type `int`
  `DIVERGED_BREAKDOWN` | Constant `DIVERGED_BREAKDOWN` of type `int`
  `DIVERGED_BREAKDOWN_BICG` | Constant `DIVERGED_BREAKDOWN_BICG` of type `int`
  `DIVERGED_DTOL` | Constant `DIVERGED_DTOL` of type `int`
  `DIVERGED_INDEFINITE_MAT` | Constant `DIVERGED_INDEFINITE_MAT` of type `int`
  `DIVERGED_INDEFINITE_PC` | Constant `DIVERGED_INDEFINITE_PC` of type `int`
  `DIVERGED_MAX_IT` | Constant `DIVERGED_MAX_IT` of type `int`
  `DIVERGED_NANORINF` | Constant `DIVERGED_NANORINF` of type `int`
  `DIVERGED_NONSYMMETRIC` | Constant `DIVERGED_NONSYMMETRIC` of type `int`
  `DIVERGED_NULL` | Constant `DIVERGED_NULL` of type `int`
  `DIVERGED_PCSETUP_FAILED` | Constant `DIVERGED_PCSETUP_FAILED` of type `int`
  `ITERATING` | Constant `ITERATING` of type `int`

  Attributes Documentation

  CONVERGED_ATOL: int = CONVERGED_ATOL

    Constant `CONVERGED_ATOL` of type `int`

  CONVERGED_ATOL_NORMAL_EQUATIONS: int = CONVERGED_ATOL_NORMAL_EQUATIONS

    Constant `CONVERGED_ATOL_NORMAL_EQUATIONS` of type `int`

  CONVERGED_HAPPY_BREAKDOWN: int = CONVERGED_HAPPY_BREAKDOWN

    Constant `CONVERGED_HAPPY_BREAKDOWN` of type `int`

  CONVERGED_ITERATING: int = CONVERGED_ITERATING

    Constant `CONVERGED_ITERATING` of type `int`

  CONVERGED_ITS: int = CONVERGED_ITS

    Constant `CONVERGED_ITS` of type `int`

  CONVERGED_NEG_CURVE: int = CONVERGED_NEG_CURVE

    Constant `CONVERGED_NEG_CURVE` of type `int`

  CONVERGED_RTOL: int = CONVERGED_RTOL

    Constant `CONVERGED_RTOL` of type `int`

  CONVERGED_RTOL_NORMAL_EQUATIONS: int = CONVERGED_RTOL_NORMAL_EQUATIONS

    Constant `CONVERGED_RTOL_NORMAL_EQUATIONS` of type `int`

  CONVERGED_STEP_LENGTH: int = CONVERGED_STEP_LENGTH

    Constant `CONVERGED_STEP_LENGTH` of type `int`

  DIVERGED_BREAKDOWN: int = DIVERGED_BREAKDOWN

    Constant `DIVERGED_BREAKDOWN` of type `int`

  DIVERGED_BREAKDOWN_BICG: int = DIVERGED_BREAKDOWN_BICG

    Constant `DIVERGED_BREAKDOWN_BICG` of type `int`

  DIVERGED_DTOL: int = DIVERGED_DTOL

    Constant `DIVERGED_DTOL` of type `int`

  DIVERGED_INDEFINITE_MAT: int = DIVERGED_INDEFINITE_MAT

    Constant `DIVERGED_INDEFINITE_MAT` of type `int`

  DIVERGED_INDEFINITE_PC: int = DIVERGED_INDEFINITE_PC

    Constant `DIVERGED_INDEFINITE_PC` of type `int`

  DIVERGED_MAX_IT: int = DIVERGED_MAX_IT

    Constant `DIVERGED_MAX_IT` of type `int`

  DIVERGED_NANORINF: int = DIVERGED_NANORINF

    Constant `DIVERGED_NANORINF` of type `int`

  DIVERGED_NONSYMMETRIC: int = DIVERGED_NONSYMMETRIC

    Constant `DIVERGED_NONSYMMETRIC` of type `int`

  DIVERGED_NULL: int = DIVERGED_NULL

    Constant `DIVERGED_NULL` of type `int`

  DIVERGED_PCSETUP_FAILED: int = DIVERGED_PCSETUP_FAILED

    Constant `DIVERGED_PCSETUP_FAILED` of type `int`

  ITERATING: int = ITERATING

    Constant `ITERATING` of type `int`

  __init__()
  classmethod __new__(*args, **kwargs)