:orphan:
# PCFieldSplitGetSchurPre
For Schur complement fieldsplit, determine how the Schur complement will be preconditioned. See `PCFieldSplitSetSchurPre()` for details.
## Synopsis
```
#include "petscpc.h"
PetscErrorCode PCFieldSplitGetSchurPre(PC pc, PCFieldSplitSchurPreType *ptype, Mat *pre)
```
Logically Collective
## Input Parameter
- ***pc -*** the preconditioner context
## Output Parameters
- ***ptype -*** which matrix to use for preconditioning the Schur complement: `PC_FIELDSPLIT_SCHUR_PRE_A11`, `PC_FIELDSPLIT_SCHUR_PRE_SELF`, `PC_FIELDSPLIT_PRE_USER`
- ***pre -*** matrix to use for preconditioning (with `PC_FIELDSPLIT_PRE_USER`), or NULL
## See Also
[](sec_block_matrices), `PC`, `PCFieldSplitSetSchurPre()`, `PCFieldSplitGetSubKSP()`, `PCFIELDSPLIT`, `PCFieldSplitSetFields()`, `PCFieldSplitSchurPreType`, `PCLSC`,
`PCFieldSplitSchurPreType`
## Level
intermediate
## Location
src/ksp/pc/impls/fieldsplit/fieldsplit.c
## Implementations
PCFieldSplitGetSchurPre_FieldSplit in src/ksp/pc/impls/fieldsplit/fieldsplit.c
---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/ksp/pc/impls/fieldsplit/fieldsplit.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)