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

# PCASMSetTotalSubdomains

Sets the subdomains for all processors for the additive Schwarz preconditioner. Either all or no processors in the PC communicator must call this routine, with the same index sets.

### Synopsis

    #include "petscpc.h"
    PetscErrorCode  PCASMSetTotalSubdomains(PC pc,PetscInt N,IS is[],IS is_local[])

Collective on PC Many br

### Input Parameters

| pc | - the preconditioner context Many br
| N | - the number of subdomains for all processors Many br
| is | - the index sets that define the subdomains for all processors Many br(or NULL to ask PETSc to compe up with subdomains) Many br
| is_local | - the index sets that define the local part of the subdomains for this processor Many br(or NULL to use the default of 1 subdomain per process) Many br

### Options Database Key

To set the total number of subdomain blocks rather than specify the Many brindex sets, use the option Many br
-pc_asm_blocks <blks> -Sets total blocks Many br

### Notes

Currently you cannot use this to set the actual subdomains with the argument is. Many br

By default the ASM preconditioner uses 1 block per processor. Many br

These index sets cannot be destroyed until after completion of the Many brlinear solves for which the ASM preconditioner is being used. Many br

Use PCASMSetLocalSubdomains() to set local subdomains. Many br

The IS numbering is in the parallel, global numbering of the vector for both is and is_local Many br

Many br

### Keywords

PC, ASM, set, total, global, subdomains, additive Schwarz

### See Also

PCASMSetLocalSubdomains(), PCASMSetOverlap(), PCASMGetSubKSP(),
PCASMCreateSubdomains2D() Many br

Level:advanced
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/ex8.c.html