ISLocalToGlobalMappingGetInfo#

Gets the neighbor information for each processor and each index shared by more than one processor

Synopsis#

#include "petscis.h"  
PetscErrorCode ISLocalToGlobalMappingGetInfo(ISLocalToGlobalMapping mapping, PetscInt *nproc, PetscInt *procs[], PetscInt *numprocs[], PetscInt **indices[])

Collective

Input Parameter#

  • mapping - the mapping from local to global indexing

Output Parameters#

  • 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)

Note#

The user needs to call ISLocalToGlobalMappingRestoreInfo() when the data is no longer needed.

Fortran Usage#

        PetscInt indices[nproc][numprocmax],ierr)
        ISLocalToGlobalMpngGetInfoSize(ISLocalToGlobalMapping,PetscInt nproc,PetscInt numprocmax,ierr) followed by
        ISLocalToGlobalMappingGetInfo(ISLocalToGlobalMapping,PetscInt nproc, PetscInt procs[nproc],PetscInt numprocs[nproc],

Fortran Note#

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.

See Also#

Low-level Vector Communication, ISLocalToGlobalMappingDestroy(), ISLocalToGlobalMappingCreateIS(), ISLocalToGlobalMappingCreate(), ISLocalToGlobalMappingRestoreInfo()

Level#

advanced

Location#

src/vec/is/utils/isltog.c


Edit on GitLab

Index of all IS routines
Table of Contents for all manual pages
Index of all manual pages