Skip to main content
`Ctrl`+`K`

# MatFactorError

indicates what type of error was generated in a matrix factorization

## Synopsis

    typedef enum {
      MAT_FACTOR_NOERROR,
      MAT_FACTOR_STRUCT_ZEROPIVOT,
      MAT_FACTOR_NUMERIC_ZEROPIVOT,
      MAT_FACTOR_OUTMEMORY,
      MAT_FACTOR_OTHER
    } MatFactorError;

## Values

- `MAT_FACTOR_NOERROR` - there was no error during the factorization

- `MAT_FACTOR_STRUCT_ZEROPIVOT` - there was a missing entry in a diagonal location of the matrix

- `MAT_FACTOR_NUMERIC_ZEROPIVOT` - there was a (near) zero pivot during the factorization

- `MAT_FACTOR_OUTMEMORY` - the factorization has run out of memory

- `MAT_FACTOR_OTHER` - some other error has occurred.

## Note

When a factorization is done in a preconditioner `PC` the error may be propagated up to a `PCFailedReason` or a `KSPConvergedReason`

## See Also

Matrices, `Mat`, `MatGetFactor()`, `MatFactorGetError()`, `MatFactorGetErrorZeroPivot()`, `MatFactorClearError()`, `PCFailedReason`, `PCGetFailedReason()`, `KSPConvergedReason`

## Level

intermediate

## Location

include/petscmat.h

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