:orphan:
# IS
Abstract PETSc object used for efficient indexing into vector and matrices
## Synopsis
```
typedef struct _p_IS *IS;
```
## See Also
`ISType`, `ISCreateGeneral()`, `ISCreateBlock()`, `ISCreateStride()`, `ISGetIndices()`, `ISDestroy()`
## Level
beginner
## Location
include/petscistypes.h
## Examples
src/dm/impls/plex/tutorials/ex1f90.F90
src/dm/label/tutorials/ex1.c
src/dm/label/tutorials/ex1f90.F90
src/dm/tutorials/ex22.c
src/ksp/ksp/tutorials/ex59.c
src/ksp/ksp/tutorials/ex62.c
src/ksp/ksp/tutorials/ex8.c
src/snes/tutorials/ex73f90t.F90
src/vec/vec/tutorials/ex44.c
## Implementations
_p_IS in include/petsc/private/isimpl.h
---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/include/petscistypes.h)
[Index of all IS routines](index.md)
[Table of Contents for all manual pages](/manualpages/index.md)
[Index of all manual pages](/manualpages/singleindex.md)