# PCPATCH
A `PC` object that encapsulates flexible definition of blocks for overlapping and non-overlapping small block additive preconditioners. Block definition is based on topology from a `DM` and equation numbering from a `PetscSection`. 
## Options Database Keys

- ***-pc_patch_cells_view   -*** Views the process local cell numbers for each patch
- ***-pc_patch_points_view  -*** Views the process local mesh point numbers for each patch
- ***-pc_patch_g2l_view     -*** Views the map between global dofs and patch local dofs for each patch
- ***-pc_patch_patches_view -*** Views the global dofs associated with each patch and its boundary
- ***-pc_patch_sub_mat_view -*** Views the matrix associated with each patch





## See Also
 `PCType`, `PCCreate()`, `PCSetType()`, `PCASM`, `PCJACOBI`, `PCPBJACOBI`, `PCVPBJACOBI`, `SNESPATCH`

## Level
intermediate

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/ksp/pc/impls/patch/pcpatch.c.html#PCPATCH">src/ksp/pc/impls/patch/pcpatch.c</A>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/ksp/pc/impls/patch/pcpatch.c)


[Index of all PC routines](index.md)  
[Table of Contents for all manual pages](/docs/manualpages/index.md)  
[Index of all manual pages](/docs/manualpages/singleindex.md)  
