Skip to main content
`Ctrl`+`K`

# SVDConvergedReason

Reason a singular value solver was determined to have converged or diverged.

## Synopsis

    typedef enum {/* converged */
                  SVD_CONVERGED_TOL                =  1,
                  SVD_CONVERGED_USER               =  2,
                  SVD_CONVERGED_MAXIT              =  3,
                  /* diverged */
                  SVD_DIVERGED_ITS                 = -1,
                  SVD_DIVERGED_BREAKDOWN           = -2,
                  SVD_DIVERGED_SYMMETRY_LOST       = -3,
                  SVD_CONVERGED_ITERATING          =  0 } SVDConvergedReason;

## Values

- `SVD_CONVERGED_TOL` - converged up to tolerance

- `SVD_CONVERGED_USER` - converged due to a user-defined condition

- `SVD_CONVERGED_MAXIT` - reached maximum number of iterations with `SVD_CONV_MAXIT` criterion

- `SVD_DIVERGED_ITS` - exceeded the maximum number of allowed iterations

- `SVD_DIVERGED_BREAKDOWN` - generic breakdown in method

- `SVD_DIVERGED_SYMMETRY_LOST` - underlying indefinite eigensolver was not able to keep symmetry

- `SVD_CONVERGED_ITERATING` - the solver is still running

## See Also

SVD: Singular Value Decomposition, `SVDSolve()`, `SVDGetConvergedReason()`, `SVDSetTolerances()`

## Level

intermediate

## Location

include/slepcsvd.h

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