# MatSetUnfactored

Resets a factored matrix to be treated as unfactored.

### Synopsis

    #include "petscmat.h"
    PetscErrorCode PETSCMAT_DLLEXPORT MatSetUnfactored(Mat mat)

Collective on Mat

### Input Parameter

mat -the factored matrix to be reset

### Notes

This routine should be used only with factored matrices formed by in-place factorization via ILU(0) (or by in-place LU factorization for the MATSEQDENSE format). This option can save memory, for example, when solving nonlinear systems with a matrix-free Newton-Krylov method and a matrix-based, in-place ILU(0) preconditioner.

Note that one can specify in-place ILU(0) factorization by calling

         PCType(pc,PCILU);
         PCILUSeUseInPlace(pc);

or by using the options -pc_type ilu -pc_ilu_in_place

In-place factorization ILU(0) can also be used as a local solver for the blocks within the block Jacobi or additive Schwarz methods (runtime option: -sub_pc_ilu_in_place). See the discussion of these preconditioners in the users manual for details on setting local solver options.

Most users should employ the simplified KSP interface for linear solvers instead of working directly with matrix algebra routines such as this. See, e.g., KSPCreate().

### See Also

PCILUSetUseInPlace(), PCLUSetUseInPlace()

Level:developer
Location:src/mat/interface/matrix.c
Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages