petsc-3.14.6 2021-03-30
MatSetUnfactored
Resets a factored matrix to be treated as unfactored.
Synopsis
#include "petscmat.h"
PetscErrorCode MatSetUnfactored(Mat mat)
Logically 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);
PCFactorSeUseInPlace(pc);
or by using the options -pc_type ilu -pc_factor_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_factor_in_place). See Users-Manual: ch_pc
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
PCFactorSetUseInPlace(), PCFactorGetUseInPlace()
Level
developer
Location
src/mat/interface/matrix.c
Implementations
MatSetUnfactored_MPIAIJ in src/mat/impls/aij/mpi/mpiaij.c
MatSetUnfactored_MPIBAIJ in src/mat/impls/baij/mpi/mpibaij.c
MatSetUnfactored_SeqBAIJ_4_NaturalOrdering_SSE in src/mat/impls/baij/seq/baijfact2.c
MatSetUnfactored_SeqBAIJ_4_NaturalOrdering_SSE_usj in src/mat/impls/baij/seq/baijfact2.c
MatSetUnfactored_MPISBAIJ in src/mat/impls/sbaij/mpi/mpisbaij.c
MatSetUnfactored_MPISELL in src/mat/impls/sell/mpi/mpisell.c
Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages