ISComplement#

Given an index set IS generates the complement index set. That is all indices that are NOT in the given set.

Synopsis#

#include "petscis.h"  
PetscErrorCode ISComplement(IS is, PetscInt nmin, PetscInt nmax, IS *isout)

Collective

Input Parameters#

  • is - the index set

  • nmin - the first index desired in the local part of the complement

  • nmax - the largest index desired in the local part of the complement (note that all indices in is must be greater or equal to nmin and less than nmax)

Output Parameter#

  • isout - the complement

Notes#

The communicator for isout is the same as for the input is

For a parallel is, this will generate the local part of the complement on each process

To generate the entire complement (on each process) of a parallel is, first call ISAllGather() and then call this routine.

See Also#

Low-level Vector Communication, IS, ISCreateGeneral(), ISCreateStride(), ISCreateBlock(), ISAllGather()

Level#

intermediate

Location#

src/vec/is/is/utils/iscoloring.c

Examples#

src/ksp/pc/tutorials/ex4.c
src/vec/vec/utils/tagger/tutorials/ex1.c


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