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
, orPETSC_USE_POINTER
; seePetscCopyMode
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.
Use ISGeneralSetIndices()
to provide indices to an already existing IS
of ISType
ISGENERAL
See Also#
Low-level Vector Communication, IS
, ISGENERAL
, ISCreateStride()
, ISCreateBlock()
, ISAllGather()
, PETSC_COPY_VALUES
, PETSC_OWN_POINTER
,
PETSC_USE_POINTER
, PetscCopyMode
, ISGeneralSetIndicesFromMask()
Level#
beginner
Location#
Examples#
src/ksp/ksp/tutorials/ex59.c
src/dm/field/tutorials/ex1.c
src/ksp/ksp/tutorials/ex85.c
src/dm/tutorials/ex22.c
src/dm/tutorials/swarm_ex3.c
src/ksp/pc/tutorials/ex4.c
src/dm/tutorials/ex6.c
src/vec/is/is/tutorials/ex1.c
src/vec/is/is/tutorials/ex1f.F90
src/vec/is/is/tutorials/ex1f90.F90
Index of all IS routines
Table of Contents for all manual pages
Index of all manual pages