PCBJacobiGetSubKSP#
Gets the local KSP
contexts for all blocks on this processor.
Synopsis#
#include "petscpc.h"
PetscErrorCode PCBJacobiGetSubKSP(PC pc, PetscInt *n_local, PetscInt *first_local, KSP *ksp[])
Not Collective
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
ksp - the array of KSP contexts
Notes#
After PCBJacobiGetSubKSP()
the array of KSP
contexts is not to be freed.
Currently for some matrix implementations only 1 block per processor is supported.
You must call KSPSetUp()
or PCSetUp()
before calling PCBJacobiGetSubKSP()
.
Fortran Notes#
You must pass in a KSP
array that is large enough to contain all the local KSP
s.
You can call PCBJacobiGetSubKSP
(pc,nlocal,firstlocal,PETSC_NULL_KSP
,ierr) to determine how large the
KSP
array must be.
See Also#
KSP: Linear System Solvers, PCBJACOBI
, PCASM
, PCASMGetSubKSP()
Level#
advanced
Location#
Examples#
src/ksp/ksp/tutorials/ex7.c
src/snes/tutorials/ex3.c
src/ksp/ksp/tutorials/ex7f.F90
Implementations#
PCBJacobiGetSubKSP_BJacobi() in src/ksp/pc/impls/bjacobi/bjacobi.c
Index of all PC routines
Table of Contents for all manual pages
Index of all manual pages