ISExpand#

Computes the union of two index sets, by concatenating 2 lists and removing duplicates.

Synopsis#

#include "petscis.h"  
PetscErrorCode ISExpand(IS is1, IS is2, IS *isout)

Collective

Input Parameters#

  • is1 - first index set

  • is2 - index values to be added

Output Parameter#

  • isout - is1 + is2 The index set is2 is appended to is1 removing duplicates

Notes#

Negative values are removed from the lists. This requires O(imax-imin) memory and O(imax-imin) work, where imin and imax are the bounds on the indices in is1 and is2.

is1 and is2 do not need to be sorted.

The operations are performed separately on each MPI rank

See Also#

Low-level Vector Communication, IS, ISDestroy(), ISView(), ISDifference(), ISSum(), ISIntersect()

Level#

intermediate

Location#

src/vec/is/is/utils/isdiff.c

Examples#

src/ksp/ksp/tutorials/ex81.c


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