petsc-3.10.5 2019-03-28
Report Typos and Errors

# 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 on IS and comm

### Input Arguments

| 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 Arguments

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.

### See Also

ISSplit()

### Level

advanced

### Location

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

### 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
Index of all IS routines
Table of Contents for all manual pages
Index of all manual pages