Skip to main content
`Ctrl`+`K`

# PCSetUpOnBlocks

Sets up the preconditioner for each block in the block Jacobi, overlapping Schwarz, and fieldsplit methods.

## Synopsis

    #include "petscksp.h"
    PetscErrorCode PCSetUpOnBlocks(PC pc)

Collective

## Input Parameter

- pc - the `PC` preconditioner context

## Notes

For nested preconditioners such as `PCBJACOBI`, `PCSetUp()` is not called on each sub-`KSP` when `PCSetUp()` is called on the outer `PC`, this routine ensures it is called.

It calls `PCSetUp()` if not yet called.

## See Also

KSP: Linear System Solvers, `PC`, `PCSetUp()`, `PCCreate()`, `PCApply()`, `PCDestroy()`

## Level

developer

## Location

src/ksp/pc/interface/precon.c

## Examples

src/ksp/ksp/tutorials/bench_kspsolve.c

## Implementations

PCSetUpOnBlocks_ASM() in src/ksp/pc/impls/asm/asm.c
PCSetUpOnBlocks_Composite() in src/ksp/pc/impls/composite/composite.c
PCSetUpOnBlocks_FieldSplit() in src/ksp/pc/impls/fieldsplit/fieldsplit.c
PCSetUpOnBlocks_GASM() in src/ksp/pc/impls/gasm/gasm.c
PCSetUpOnBlocks_PATCH() in src/ksp/pc/impls/patch/pcpatch.c

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