# PetscSection
Mapping from integers in a designated range to contiguous sets of integers. 
## Synopsis
```
typedef struct _p_PetscSection *PetscSection;
```
In contrast to `IS`, which maps from integers to single integers, the range of a `PetscSection` is in the space of
contiguous sets of integers. These ranges are frequently interpreted as domains of other array-like objects,
especially other `PetscSection`, `Vec`s, and `IS`s. The domain is set with `PetscSectionSetChart()` and does not need to
start at 0. For each point in the domain of a `PetscSection`, the output set is represented through an offset and a
count, which are set using `PetscSectionSetOffset()` and `PetscSectionSetDof()` respectively. Lookup is typically using
accessors or routines like `VecGetValuesSection()`.




## See Also
 `PetscSectionCreate()`, `PetscSectionDestroy()`, `PetscSectionSym`

## Level
beginner

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/include/petscsectiontypes.h.html#PetscSection">include/petscsectiontypes.h</A>

## Examples
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/dm/impls/stag/tutorials/ex1.c.html">src/dm/impls/stag/tutorials/ex1.c.html</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/ts/tutorials/ex11.c.html">src/ts/tutorials/ex11.c.html</A><BR>
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/ts/tutorials/ex11_sa.c.html">src/ts/tutorials/ex11_sa.c.html</A><BR>

## Implementations

<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/include/petsc/private/sectionimpl.h.html#_p_PetscSection">_p_PetscSection in include/petsc/private/sectionimpl.h</A><BR>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/include/petscsectiontypes.h)


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