# PetscSectionSym
Symmetries of the data referenced by a `PetscSection`. 
## Synopsis
```
typedef struct _p_PetscSectionSym *PetscSectionSym;
```
Often the order of data index by a `PetscSection` is meaningful, and describes additional structure, such as points on a
line, grid, or lattice.  If the data is accessed from a different "orientation", then the image of the data under
access then undergoes a symmetry transformation.  A `PetscSectionSym` specifies these symmetries.  The types of
symmetries that can be specified are of the form R * P, where R is a diagonal matrix of scalars, and P is a permutation.




## See Also
 `PetscSection`, `PetscSectionSymCreate()`, `PetscSectionSymDestroy()`, `PetscSectionSetSym()`, `PetscSectionGetSym()`, `PetscSectionSetFieldSym()`,
`PetscSectionGetFieldSym()`, `PetscSectionGetSymPoints()`, `PetscSectionSymType`, `PetscSectionSymSetType()`, `PetscSectionSymGetType()`

## Level
developer

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

## Implementations

<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/include/petsc/private/sectionimpl.h.html#_p_PetscSectionSym">_p_PetscSectionSym 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)  
