:orphan: # PCFactorSetMatOrderingType Sets the ordering routine (to reduce fill) to be used in the `PCLU`, `PCCHOLESKY`, `PCILU`, or `PCICC` preconditioners ## Synopsis ``` #include "petscpc.h" PetscErrorCode PCFactorSetMatOrderingType(PC pc, MatOrderingType ordering) ``` Logically Collective ## Input Parameters - ***pc -*** the preconditioner context - ***ordering -*** the matrix ordering name, for example, `MATORDERINGND` or `MATORDERINGRCM` ## Options Database Key - ***-pc_factor_mat_ordering_type -*** Sets ordering routine ## Notes Nested dissection is used by default for some of PETSc's sparse matrix formats For `PCCHOLESKY` and `PCICC` and the `MATSBAIJ` format the only reordering available is natural since only the upper half of the matrix is stored and reordering this matrix is very expensive. You can use a `MATSEQAIJ` matrix with Cholesky and ICC and use any ordering. `MATORDERINGEXTERNAL` means PETSc will not compute an ordering and the package will use its own ordering, usable with `MATSOLVERCHOLMOD`, `MATSOLVERUMFPACK`, and others. ## See Also `PCLU`, `PCCHOLESKY`, `PCILU`, `PCICC`, `MatOrderingType`, `MATORDERINGEXTERNAL`, `MATORDERINGND`, `MATORDERINGRCM` ## Level intermediate ## Location src/ksp/pc/impls/factor/factor.c ## Implementations PCFactorSetMatOrderingType_Factor in src/ksp/pc/impls/factor/factimpl.c
--- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/ksp/pc/impls/factor/factor.c) [Index of all PC routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)