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

# ISPairToList

convert an IS pair encoding an integer map to a list of ISs. Each IS on the output list contains the preimage for each index on the second input IS. The ISs on the output list are constructed on the subcommunicators of the input IS pair. Each subcommunicator corresponds to the preimage of some index j -- this subcomm contains exactly the ranks that assign some indices i to j. This is essentially the inverse of ISListToPair().

### Synopsis

    #include "petscis.h"
    PetscErrorCode ISPairToList(IS xis, IS yis, PetscInt *listlen, IS **islist)

Collective on indis.

### Input arguments

| xis | - domain IS
| yis | - range IS

### Output arguments

| listlen | - length of islist
| islist | - list of ISs breaking up indis by color

### Note

| xis and yis must be of the same length and have congruent communicators. | - - The resulting ISs have subcommunicators in a "deadlock-free" order (see ISListToPair()).

### See Also

ISListToPair()

### Level

advanced

### Location

src/vec/is/is/utils/isdiff.c
Index of all IS routines
Table of Contents for all manual pages
Index of all manual pages