petsc-3.6.2 2015-10-02
Report Typos and Errors


Tells the system to do an in-place factorization. For dense matrices, this enables the solution of much larger problems. For sparse matrices the factorization cannot be done truly in-place so this does not save memory during the factorization, but after the matrix is factored, the original unfactored matrix is freed, thus recovering that space.


#include "petscpc.h" 
PetscErrorCode  PCFactorSetUseInPlace(PC pc,PetscBool flg)
Logically Collective on PC

Input Parameters

pc - the preconditioner context
flg - PETSC_TRUE to enable, PETSC_FALSE to disable

Options Database Key

-pc_factor_in_place <true,false> -Activate/deactivate in-place factorization


PCFactorSetUseInplace() can only be used with the KSP method KSPPREONLY or when a different matrix is provided for the multiply and the preconditioner in a call to KSPSetOperators(). This is because the Krylov space methods require an application of the matrix multiplication, which is not possible here because the matrix has been factored in-place, replacing the original matrix.


PC, set, factorization, direct, inplace, in-place, LU

See Also


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