petsc-3.7.3 2016-07-24
Report Typos and Errors

# PCASMGetSubKSP

Gets the local KSP contexts for all blocks on this processor.

### Synopsis

    #include "petscpc.h"
    PetscErrorCode  PCASMGetSubKSP(PC pc,PetscInt *n_local,PetscInt *first_local,KSP *ksp[])

Collective on PC iff first_local is requested

### Input Parameter

pc -the preconditioner context

### Output Parameters

| n_local | - the number of blocks on this processor or NULL
| first_local | - the global number of the first block on this processor or NULL, all processors must request or all must pass NULL
| ksp | - the array of KSP contexts

### Note

After PCASMGetSubKSP() the array of KSPes is not to be freed.

Currently for some matrix implementations only 1 block per processor is supported.

You must call KSPSetUp() before calling PCASMGetSubKSP().

### Fortran note

The output argument 'ksp' must be an array of sufficient length or NULL_OBJECT. The latter can be used to learn the necessary length.

### Keywords

PC, ASM, additive Schwarz, get, sub, KSP, context

### See Also

PCASMSetTotalSubdomains(), PCASMSetTotalSubdomains(), PCASMSetOverlap(),
PCASMCreateSubdomains2D(),

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