#include "petscksp.h" PetscErrorCode PCSetModifySubMatrices(PC pc,PetscErrorCode (*func)(PC,PetscInt,const IS[],const IS[],Mat[],void*),void *ctx)Logically Collective on PC
pc | - the preconditioner context | |
func | - routine for modifying the submatrices | |
ctx | - optional user-defined context (may be null) |
func (PC pc,PetscInt nsub,IS *row,IS *col,Mat *submat,void *ctx);
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 func routine (may be null) |
A routine set by PCSetModifySubMatrices() is currently called within the block Jacobi (PCBJACOBI) and additive Schwarz (PCASM) preconditioners. All other preconditioners ignore this routine.