petsc-3.7.3 2016-07-24
Report Typos and Errors

# ISGlobalToLocalMappingApplyBlock

Provides the local block numbering for a list of integers specified with a block global numbering.

### Synopsis

    #include "petscis.h"
    PetscErrorCode  ISGlobalToLocalMappingApplyBlock(ISLocalToGlobalMapping mapping,ISGlobalToLocalMappingType type,
                                      PetscInt n,const PetscInt idx[],PetscInt *nout,PetscInt idxout[])

Not collective

### Input Parameters

| mapping | - mapping between local and global numbering
| type | - IS_GTOLM_MASK - replaces global indices with no local value with -1 IS_GTOLM_DROP - drops the indices with no local value from the output list
| n | - number of global indices to map
| idx | - global indices to map

### Output Parameters

| nout | - number of indices in output array (if type == IS_GTOLM_MASK then nout = n)
| idxout | - local index of each global index, one must pass in an array long enough to hold all the indices. You can call ISGlobalToLocalMappingApplyBlock() with idxout == NULL to determine the required length (returned in nout) and then allocate the required space and call ISGlobalToLocalMappingApplyBlock() a second time to set the values.

### Notes

Either nout or idxout may be NULL. idx and idxout may be identical.

This is not scalable in memory usage. Each processor requires O(Nglobal) size array to compute these.

Developer Note: The manual page states that idx and idxout may be identical but the calling sequence declares idx as const so it cannot be the same as idxout.

### See Also

ISLocalToGlobalMappingApply(), ISGlobalToLocalMappingApply(), ISLocalToGlobalMappingCreate(),
ISLocalToGlobalMappingDestroy()

Level:advanced
Location: src/vec/is/utils/isltog.c
Index of all IS routines
Table of Contents for all manual pages
Index of all manual pages

### Examples

src/vec/is/is/examples/tutorials/ex5.c.html