petsc-3.7.1 2016-05-15
Report Typos and Errors

# PCASM

Use the (restricted) additive Schwarz method, each block is (approximately) solved with its own KSP object.

### Options Database Keys

| -pc_asm_blocks <blks> | - Sets total blocks Many br
| -pc_asm_overlap <ovl> | - Sets overlap Many br
| -pc_asm_type [basic,restrict,interpolate,none] | - Sets ASM type Many br

IMPORTANT: If you run with, for example, 3 blocks on 1 processor or 3 blocks on 3 processors you Many brwill get a different convergence rate due to the default option of -pc_asm_type restrict. Use Many br-pc_asm_type basic to use the standard ASM. Many br

Notes: Each processor can have one or more blocks, but a block cannot be shared by more Many brthan one processor. Defaults to one block per processor. Many br

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

To set the options on the solvers separate for each block call PCASMGetSubKSP() Many brand set the options directly on the resulting KSP object (you can access its PC Many brwith KSPGetPC()) Many br

Many br

### References

| 1. | - M Dryja, OB Widlund, An additive variant of the Schwarz alternating method for the case of many subregions Many brCourant Institute, New York University Technical report Many br
| 1. | - Barry Smith, Petter Bjorstad, and William Gropp, Domain Decompositions: Parallel Multilevel Methods for Elliptic Partial Differential Equations, Many brCambridge University Press. Many br

### See Also

PCCreate(), PCSetType(), PCType (for list of available types), PC,
PCBJACOBI, PCASMGetSubKSP(), PCASMSetLocalSubdomains(), Many brPCASMSetTotalSubdomains(), PCSetModifySubmatrices(), PCASMSetOverlap(), PCASMSetType() Many br

Level:beginner
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/ex6.c.html
src/ksp/ksp/examples/tutorials/ex8.c.html