#include "petscksp.h" PetscErrorCode PCModifySubMatrices(PC pc,PetscInt nsub,const IS row[],const IS col[],Mat submat[],void *ctx)Collective on PC
pc | - the preconditioner context | |
nsub | - the number of local submatrices | |
row | - an array of index sets that contain the global row numbers that comprise each local submatrix | |
col | - an array of index sets that contain the global column numbers that comprise each local submatrix | |
submat | - array of local submatrices | |
ctx | - optional user-defined context for private data for the user-defined routine (may be null) |
submat | - array of local submatrices (the entries of which may have been modified) |
The basic submatrices are extracted from the preconditioner matrix as usual; the user can then alter these (for example, to set different boundary conditions for each submatrix) before they are used for the local solves.