Skip to main content
`Ctrl`+`K`

# DMStagGetCorners

return global element indices of the local region (excluding ghost points)

## Synopsis

    #include "petscdmstag.h"
    #include "petscdmproduct.h"
    PetscErrorCode DMStagGetCorners(DM dm, PetscInt *x, PetscInt *y, PetscInt *z, PetscInt *m, PetscInt *n, PetscInt *p, PetscInt *nExtrax, PetscInt *nExtray, PetscInt *nExtraz)

Not Collective

## Input Parameter

- dm - the `DMSTAG` object

## Output Parameters

- x - starting element index in first direction

- y - starting element index in second direction

- z - starting element index in third direction

- m - element width in first direction

- n - element width in second direction

- p - element width in third direction

- nExtrax - number of extra partial elements in first direction

- nExtray - number of extra partial elements in second direction

- nExtraz - number of extra partial elements in third direction

## Notes

Arguments corresponding to higher dimensions are ignored for 1D and 2D grids. These arguments may be set to `NULL` in this case.

The number of extra partial elements is either 1 or 0. The value is 1 on right, top, and front non-periodic domain (“physical”) boundaries, in the x, y, and z directions respectively, and otherwise 0.

## See Also

DMSTAG: Staggered, Structured Grid, `DMSTAG`, `DMStagGetGhostCorners()`, `DMDAGetCorners()`

## Level

beginner

## Location

src/dm/impls/stag/stagutils.c

## Examples

src/dm/impls/stag/tutorials/ex2.c
src/dm/impls/stag/tutorials/ex3.c
src/dm/impls/stag/tutorials/ex6.c
src/dm/impls/stag/tutorials/ex8.c
src/dm/impls/stag/tutorials/ex1.c
src/dm/impls/stag/tutorials/ex4.c

Index of all DMStag routines
Table of Contents for all manual pages
Index of all manual pages