PCICC

Incomplete Cholesky factorization preconditioners.

Options Database Keys

-pc_icc_levels <k> - number of levels of fill for ICC(k)
-pc_icc_in_place - only for ICC(0) with natural ordering, reuses the space of the matrix for its factorization (overwrites original matrix)
-pc_icc_damping - add damping to diagonal to prevent zero (or very small) pivots
-pc_icc_shift - apply Manteuffel shift to diagonal to force positive definite preconditioner
-pc_icc_zeropivot <tol> - set tolerance for what is considered a zero pivot
-pc_icc_fill <nfill> - expected amount of fill in factored matrix compared to original matrix, nfill > 1
-pc_icc_mat_ordering_type <natural,nd,1wd,rcm,qmd> - set the row/column ordering of the factored matrix

Notes: Only implemented for some matrix formats. Not implemented in parallel

For BAIJ matrices this implements a point block ICC.

The Manteuffel shift is only implemented for matrices with block size 1

By default, the Manteuffel is applied (for matrices with block size 1). Call PCICCSetShift(pc,PETSC_FALSE); to turn off the shift.

See Also

PCCreate(), PCSetType(), PCType (for list of available types), PC, PCSOR, MatOrderingType,
PCICCSetSetZeroPivot(), PCICCSetDamping(), PCICCSetShift(), PCICCSetFill(), PCICCSetMatOrdering(), PCICCSetReuseOrdering(), PCICCSetLevels()

Level:beginner
Location:
src/ksp/pc/impls/icc/icc.c
Index of all PC routines
Table of Contents for all manual pages
Index of all manual pages

Examples

src/ksp/pc/examples/tutorials/ex2.c.html