# PCASMSetOverlap

Sets the overlap between a pair of subdomains for the additive Schwarz preconditioner. Either all or no processors in the PC communicator must call this routine.

### Synopsis

    #include "petscpc.h"
    PetscErrorCode PETSCKSP_DLLEXPORT PCASMSetOverlap(PC pc,PetscInt ovl)

Collective on PC

### Input Parameters

| pc | - the preconditioner context
| ovl | - the amount of overlap between subdomains (ovl >= 0, default value = 1)

### Options Database Key

-pc_asm_overlap <ovl> -Sets overlap

### Notes

By default the ASM preconditioner uses 1 block per processor. To use multiple blocks per perocessor, see PCASMSetTotalSubdomains() and PCASMSetLocalSubdomains() (and the option -pc_asm_blocks <blks>).

The overlap defaults to 1, so if one desires that no additional overlap be computed beyond what may have been set with a call to PCASMSetTotalSubdomains() or PCASMSetLocalSubdomains(), then ovl must be set to be 0. In particular, if one does not explicitly set the subdomains an application code, then all overlap would be computed internally by PETSc, and using an overlap of 0 would result in an ASM variant that is equivalent to the block Jacobi preconditioner.

Note that one can define initial index sets with any overlap via PCASMSetTotalSubdomains() or PCASMSetLocalSubdomains(); the routine PCASMSetOverlap() merely allows PETSc to extend that overlap further if desired.

### Keywords

PC, ASM, set, overlap

### See Also

PCASMSetTotalSubdomains(), PCASMSetLocalSubdomains(), PCASMGetSubKSP(),
PCASMCreateSubdomains2D(), PCASMGetLocalSubdomains()

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

### Examples

src/ksp/ksp/examples/tutorials/ex8.c.html