:orphan: # MatReuse Indicates if matrices obtained from a previous call to `MatCreateSubMatrices()`, `MatCreateSubMatrix()`, `MatConvert()` or several other functions are to be reused to store the new matrix values. ## Synopsis ``` typedef enum { MAT_INITIAL_MATRIX, MAT_REUSE_MATRIX, MAT_IGNORE_MATRIX, MAT_INPLACE_MATRIX } MatReuse; ``` ## Values - ***`MAT_INITIAL_MATRIX` -*** create a new matrix - ***`MAT_REUSE_MATRIX` -*** reuse the matrix created with a previous call that used `MAT_INITIAL_MATRIX` - ***`MAT_INPLACE_MATRIX` -*** replace the first input matrix with the new matrix (not applicable to all functions) - ***`MAT_IGNORE_MATRIX` -*** do not create a new matrix or reuse a give matrix, just ignore that matrix argument (not applicable to all functions) ## See Also [](ch_matrices), `Mat`, `MatCreateSubMatrices()`, `MatCreateSubMatrix()`, `MatDestroyMatrices()`, `MatConvert()` ## Level beginner ## Location include/petscmat.h ## Examples src/ksp/ksp/tutorials/ex27.c
src/ksp/ksp/tutorials/ex29.c
src/ksp/ksp/tutorials/ex34.c
src/ksp/ksp/tutorials/ex43.c
src/ksp/ksp/tutorials/ex49.c
src/ksp/ksp/tutorials/ex59.c
src/ksp/ksp/tutorials/ex64.c
src/ksp/ksp/tutorials/ex65.c
src/ksp/ksp/tutorials/ex6f.F90
src/ksp/ksp/tutorials/ex71.c
src/ksp/ksp/tutorials/ex72.c
--- [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)