PCGASMSetOverlap#
Sets the overlap between a pair of subdomains for the additive Schwarz preconditioner PCGASM
. Either all or no MPI processes in the pc communicator must call this routine.
Synopsis#
#include "petscpc.h"
PetscErrorCode PCGASMSetOverlap(PC pc, PetscInt ovl)
Logically Collective
Input Parameters#
pc - the preconditioner context
ovl - the amount of overlap between subdomains (ovl >= 0, default value = 0)
Options Database Key#
-pc_gasm_overlap
- Sets overlap
Notes#
By default the PCGASM
preconditioner uses 1 subdomain per process. To use
multiple subdomain per perocessor or “straddling” subdomains that intersect
multiple processes use PCGASMSetSubdomains()
(or option -pc_gasm_total_subdomains
The overlap defaults to 0, so if one desires that no additional
overlap be computed beyond what may have been set with a call to
PCGASMSetSubdomains()
, then ovl
must be set to be 0. In particular, if one does
not explicitly set the subdomains in application code, then all overlap would be computed
internally by PETSc, and using an overlap of 0 would result in an PCGASM
variant that is equivalent to the block Jacobi preconditioner.
One can define initial index sets with any overlap via
PCGASMSetSubdomains()
; the routine PCGASMSetOverlap()
merely allows
PETSc to extend that overlap further, if desired.
See Also#
KSP: Linear System Solvers, PCGASM
, PCGASMSetSubdomains()
, PCGASMGetSubKSP()
,
PCGASMCreateSubdomains2D()
, PCGASMGetSubdomains()
Level#
intermediate
Location#
Implementations#
PCGASMSetOverlap_GASM() in src/ksp/pc/impls/gasm/gasm.c
Index of all PC routines
Table of Contents for all manual pages
Index of all manual pages