ISCreateGeneral#

Creates a data structure for an index set containing a list of integers.

Synopsis#

#include "petscis.h"  
PetscErrorCode ISCreateGeneral(MPI_Comm comm, PetscInt n, const PetscInt idx[], PetscCopyMode mode, IS *is)

Collective

Input Parameters#

  • comm - the MPI communicator

  • n - the length of the index set

  • idx - the list of integers

  • mode - PETSC_COPY_VALUES, PETSC_OWN_POINTER, or PETSC_USE_POINTER; see PetscCopyMode for meaning of this flag.

Output Parameter#

  • is - the new index set

Notes#

When the communicator is not MPI_COMM_SELF, the operations on IS are NOT conceptually the same as MPI_Group operations. The IS are then distributed sets of indices and thus certain operations on them are collective.

See Also#

ISCreateStride(), ISCreateBlock(), ISAllGather(), PETSC_COPY_VALUES, PETSC_OWN_POINTER, PETSC_USE_POINTER, PetscCopyMode

Level#

beginner

Location#

src/vec/is/is/impls/general/general.c

Examples#

src/vec/is/is/tutorials/ex1.c.html
src/vec/is/is/tutorials/ex1f90.F90.html
src/vec/is/is/tutorials/ex1f.F90.html
src/dm/tutorials/ex22.c.html
src/dm/tutorials/ex6.c.html
src/dm/tutorials/swarm_ex3.c.html
src/dm/field/tutorials/ex1.c.html
src/ksp/ksp/tutorials/ex49.c.html
src/ksp/ksp/tutorials/ex59.c.html
src/ksp/ksp/tutorials/ex71.c.html


Edit on GitLab

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