PCASMSetType#

Sets the type of restriction and interpolation used for local problems in the additive Schwarz method, PCASM.

Synopsis#

#include "petscpc.h" 
PetscErrorCode PCASMSetType(PC pc, PCASMType type)

Logically Collective

Input Parameters#

  • pc - the preconditioner context

  • type - variant of PCASM, one of

      PC_ASM_NONE        - local processor restriction and interpolation
      PC_ASM_RESTRICT    - full restriction, local processor interpolation (default)
      PC_ASM_INTERPOLATE - full interpolation, local processor restriction
      PC_ASM_BASIC       - full interpolation and restriction
      PC_ASM_WEIGHTED    - full restriction and interpolation with user-provided diagonal scaling

Options Database Key#

  • -pc_asm_type (none|restrict|interpolate|basic|weighted) - Sets PCASMType

Note#

if the is_local arguments are passed to PCASMSetLocalSubdomains() then they are used when PC_ASM_RESTRICT has been selected to limit the local processor interpolation. PC_ASM_WEIGHTED ignores these inner index sets and uses the weights supplied with PCASMWeightedSetScaling() instead. Weighted ASM requires additive local composition.

See Also#

KSP: Linear System Solvers, PCASM, PCASMSetTotalSubdomains(), PCASMGetSubKSP(), PCASMCreateSubdomains2D(), PCASMType, PCASMWeightedSetScaling(), PCASMSetLocalType(), PCASMGetLocalType(), PCGASM

Level#

intermediate

Location#

src/ksp/pc/impls/asm/asm.c

Examples#

src/ksp/pc/tests/ex13.c
src/ksp/pc/tests/ex13f.F90

Implementations#

PCASMSetType_ASM() in src/ksp/pc/impls/asm/asm.c


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