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

int PCASMSetOverlap(PC pc, int 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 usemultiple blocks per perocessor, see PCASMSetTotalSubdomains() andPCASMSetLocalSubdomains() (and the option -pc_asm_blocks <blks>).

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

Note that one can define initial index sets with any overlap viaPCASMSetTotalSubdomains() or PCASMSetLocalSubdomains(); the routinePCASMSetOverlap() merely allows PETSc to extend that overlap furtherif desired.

Keywords

PC, ASM, set, overlap

See Also

PCASMSetTotalSubdomains(), PCASMSetLocalSubdomains(), PCASMGetSubSLES(),
PCASMCreateSubdomains2D()

Examples

src/sles/examples/tutorials/ex8.c

Location: src/pc/impls/asm/asm.c
PC Index
Table of Contents