ISCreateStride#

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

Synopsis#

#include "petscis.h"   
PetscErrorCode ISCreateStride(MPI_Comm comm, PetscInt n, PetscInt first, PetscInt step, IS *is)

Collective

Input Parameters#

  • comm - the MPI communicator

  • n - the length of the locally owned portion of the index set

  • first - the first element of the locally owned portion of the index set

  • step - the change to the next index

Output Parameter#

  • is - the new index set

Notes#

ISStrideSetStride() may be used to set the stride of an ISSTRIDE that already exists

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

See Also#

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

Level#

beginner

Location#

src/vec/is/is/impls/stride/stride.c

Examples#

src/dm/impls/plex/tutorials/ex1f90.F90
src/dm/tutorials/ex22.c
src/dm/tutorials/ex6.c
src/ksp/ksp/tutorials/ex59.c
src/ksp/ksp/tutorials/ex71.c
src/ksp/ksp/tutorials/ex73.c
src/ksp/ksp/tutorials/ex82.c
src/tao/pde_constrained/tutorials/elliptic.c
src/tao/pde_constrained/tutorials/hyperbolic.c
src/tao/pde_constrained/tutorials/parabolic.c
src/vec/is/is/tutorials/ex2.c


Edit on GitLab

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