:orphan: # MatFactorInfo Data passed into the matrix factorization routines, and information about the resulting factorization ## Synopsis ``` typedef struct { PetscReal diagonal_fill; /* force diagonal to fill in if initially not filled */ PetscReal usedt; PetscReal dt; /* drop tolerance */ PetscReal dtcol; /* tolerance for pivoting */ PetscReal dtcount; /* maximum nonzeros to be allowed per row */ PetscReal fill; /* expected fill, nonzeros in factored matrix/nonzeros in original matrix */ PetscReal levels; /* ICC/ILU(levels) */ PetscReal pivotinblocks; /* for BAIJ and SBAIJ matrices pivot in factorization on blocks, default 1.0 factorization may be faster if do not pivot */ PetscReal zeropivot; /* pivot is called zero if less than this */ PetscReal shifttype; /* type of shift added to matrix factor to prevent zero pivots */ PetscReal shiftamount; /* how large the shift is */ } MatFactorInfo; ``` ## Note You can use `MatFactorInfoInitialize()` to set default values. ## Fortran Note The data is available in a double precision arrays of size `MAT_FACTORINFO_SIZE` ## See Also [](ch_matrices), `Mat`, `MatInfo`, `MatGetFactor()`, `MatLUFactorSymbolic()`, `MatILUFactorSymbolic()`, `MatCholeskyFactorSymbolic()`, `MatICCFactorSymbolic()`, `MatICCFactor()`, `MatFactorInfoInitialize()` ## Level developer ## Location include/petscmat.h --- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/include/petscmat.h) [Index of all Mat routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)