:orphan:
# DMStagStencilLocation
enumerated type denoting a location relative to an element in a `DMSTAG` grid
## Synopsis
```
typedef enum {
DMSTAG_NULL_LOCATION = 0,
DMSTAG_BACK_DOWN_LEFT,
DMSTAG_BACK_DOWN,
DMSTAG_BACK_DOWN_RIGHT,
DMSTAG_BACK_LEFT,
DMSTAG_BACK,
DMSTAG_BACK_RIGHT,
DMSTAG_BACK_UP_LEFT,
DMSTAG_BACK_UP,
DMSTAG_BACK_UP_RIGHT,
DMSTAG_DOWN_LEFT,
DMSTAG_DOWN,
DMSTAG_DOWN_RIGHT,
DMSTAG_LEFT,
DMSTAG_ELEMENT,
DMSTAG_RIGHT,
DMSTAG_UP_LEFT,
DMSTAG_UP,
DMSTAG_UP_RIGHT,
DMSTAG_FRONT_DOWN_LEFT,
DMSTAG_FRONT_DOWN,
DMSTAG_FRONT_DOWN_RIGHT,
DMSTAG_FRONT_LEFT,
DMSTAG_FRONT,
DMSTAG_FRONT_RIGHT,
DMSTAG_FRONT_UP_LEFT,
DMSTAG_FRONT_UP,
DMSTAG_FRONT_UP_RIGHT
} DMStagStencilLocation;
```
The interpretation of these values is dimension-dependent.
## Developer Note
The order of the enum entries is significant, as it corresponds to the canonical numbering
of DOFs, and the fact that the numbering starts at 0 may also be used by the implementation.
## See Also
[](ch_stag), `DMSTAG`, `DMStagStencil`, `DMStagGetLocationSlot()`, `DMStagStencilType`
## Level
beginner
## Location
include/petscdmstag.h
## Examples
src/dm/impls/stag/tutorials/ex1.c
src/dm/impls/stag/tutorials/ex2.c
src/dm/impls/stag/tutorials/ex3.c
src/dm/impls/stag/tutorials/ex4.c
src/dm/impls/stag/tutorials/ex6.c
src/dm/impls/stag/tutorials/ex8.c
---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/include/petscdmstag.h)
[Index of all DMStag routines](index.md)
[Table of Contents for all manual pages](/manualpages/index.md)
[Index of all manual pages](/manualpages/singleindex.md)