:orphan: # DMCompositeGetLocalISs Gets index sets for each component of a composite local vector ## Synopsis ``` #include "petscdmcomposite.h" PetscErrorCode DMCompositeGetLocalISs(DM dm, IS **is) ``` Not Collective; No Fortran Support ## Input Parameter - ***dm -*** the `DMCOMPOSITE` ## 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()`. ## See Also `DMCOMPOSITE`, `DM`, `DMCompositeGetGlobalISs()`, `DMCompositeGetISLocalToGlobalMappings()`, `MatGetLocalSubMatrix()`, `MatCreateLocalRef()` ## Level intermediate ## Location src/dm/impls/composite/pack.c ## Examples src/snes/tutorials/ex28.c
src/ts/tutorials/ex14.c
--- [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](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)