PCGASM#

Use the (restricted) additive Schwarz method, each block is (approximately) solved with its own KSP object on a subset of MPI processes

Options Database Keys#

  • -pc_gasm_total_subdomains - Sets total number of local subdomains to be distributed among the MPI processes

  • -pc_gasm_view_subdomains - activates the printing of subdomain indices in PCView(), -ksp_view or -snes_view

  • -pc_gasm_print_subdomains - activates the printing of subdomain indices in PCSetUp()

  • -pc_gasm_overlap - Sets overlap by which to (automatically) extend local subdomains

  • -pc_gasm_type [basic,restrict,interpolate,none] - Sets PCGASMType

Notes#

To set options on the solvers for each block append -sub_ to all the KSP, and PC options database keys. For example, -sub_pc_type ilu -sub_pc_factor_levels 1 -sub_ksp_type preonly

To set the options on the solvers separate for each block call PCGASMGetSubKSP() and set the options directly on the resulting KSP object (you can access its PC with KSPGetPC())

See [DW87] and [SBjorstadG96] for details on additive Schwarz algorithms

References#

[DW87]

Maksymilian Dryja and Olof Widlund. An additive variant of the Schwarz alternating method for the case of many subregions. Ultracomputer Research Laboratory, Univ., Courant Inst. of Mathematical …, 1987.

[SBjorstadG96]

Barry F. Smith, Petter Bjørstad, and William D. Gropp. Domain Decomposition: Parallel Multilevel Methods for Elliptic Partial Differential Equations. Cambridge University Press, 1996. URL: http://www.mcs.anl.gov/~bsmith/ddbook.html.

See Also#

KSP: Linear System Solvers, PCCreate(), PCSetType(), PCType, PC, PCASM, PCGASMType, PCGASMSetType(), PCBJACOBI, PCGASMGetSubKSP(), PCGASMSetSubdomains(), PCSetModifySubMatrices(), PCGASMSetOverlap(), PCGASMSetType()

Level#

beginner

Location#

src/ksp/pc/impls/gasm/gasm.c

Examples#

src/ksp/ksp/tutorials/ex64.c
src/ksp/ksp/tutorials/ex79.c
src/ksp/ksp/tutorials/ex62.c


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