# DMCompositeGetLocalISs
Gets index sets for each component of a composite local vector 
## Synopsis
```
#include "petscdmcomposite.h"  
PetscErrorCode DMCompositeGetLocalISs(DM dm, IS **is)
```
Not Collective


## Input Parameter

- ***dm -*** composite DM



## Output Parameter

- ***is -*** array of serial index sets for each each component of the DMComposite





## Notes
At present, a composite local vector does not normally exist.  This function is used to provide index sets for
MatGetLocalSubMatrix().  In the future, the scatters for each entry in the DMComposite may be be merged into a single
scatter to a composite local vector.  The user should not typically need to know which is being done.

To get the composite global indices at all local points (including ghosts), use DMCompositeGetISLocalToGlobalMappings().

To get index sets for pieces of the composite global vector, use DMCompositeGetGlobalISs().

Each returned IS should be destroyed with ISDestroy(), the array should be freed with PetscFree().

Not available from Fortran


## See Also
 `DMCompositeGetGlobalISs()`, `DMCompositeGetISLocalToGlobalMappings()`, `MatGetLocalSubMatrix()`, `MatCreateLocalRef()`

## Level
intermediate

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/dm/impls/composite/pack.c.html#DMCompositeGetLocalISs">src/dm/impls/composite/pack.c</A>

## Examples
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/snes/tutorials/ex28.c.html">src/snes/tutorials/ex28.c.html</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/ts/tutorials/ex14.c.html">src/ts/tutorials/ex14.c.html</A><BR>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/dm/impls/composite/pack.c)


[Index of all DM routines](index.md)  
[Table of Contents for all manual pages](/docs/manualpages/index.md)  
[Index of all manual pages](/docs/manualpages/singleindex.md)  
