#include "petscis.h" PetscErrorCode ISLocalToGlobalMappingGetBlockInfo(ISLocalToGlobalMapping mapping,PetscInt *nproc,PetscInt *procs,PetscInt *numprocs,PetscInt **indices)Collective on ISLocalToGlobalMapping
|nproc||- number of processors that are connected to this one|
|proc||- neighboring processors|
|numproc||- number of indices for each subdomain (processor)|
|indices||- indices of nodes (in local numbering) shared with neighbors (sorted by global numbering)|
ISLocalToGlobalMpngGetInfoSize(ISLocalToGlobalMapping,PetscInt nproc,PetscInt numprocmax,ierr) followed by
ISLocalToGlobalMappingGetInfo(ISLocalToGlobalMapping,PetscInt nproc, PetscInt procs[nproc],PetscInt numprocs[nproc],PetscInt indices[nproc][numprocmax],ierr) There is no ISLocalToGlobalMappingRestoreInfo() in Fortran. You must make sure that procs, numprocs and indices are large enough arrays, either by allocating them dynamically or defining static ones large enough.