ISOnComm#

Split a parallel IS on subcomms (usually self) or concatenate index sets on subcomms into a parallel index set

Synopsis#

#include "petscis.h" 
PetscErrorCode ISOnComm(IS is, MPI_Comm comm, PetscCopyMode mode, IS *newis)

Collective

Input Parameters#

  • is - index set

  • comm - communicator for new index set

  • mode - copy semantics, PETSC_USE_POINTER for no-copy if possible, otherwise PETSC_COPY_VALUES

Output Parameter#

  • newis - new IS on comm

Notes#

It is usually desirable to create a parallel IS and look at the local part when necessary.

This function is useful if serial ISs must be created independently, or to view many logically independent serial ISs.

The input IS must have the same type on every process.

Level#

advanced

Location#

src/vec/is/is/interface/index.c

Examples#

src/dm/label/tutorials/ex1.c.html

Implementations#

ISOnComm_Block in src/vec/is/is/impls/block/block.c
ISOnComm_General in src/vec/is/is/impls/general/general.c
ISOnComm_Stride in src/vec/is/is/impls/stride/stride.c


Edit on GitLab

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