Skip to main content
`Ctrl`+`K`

# DMStagSetUniformCoordinatesProduct

create uniform coordinates, as a product of 1D arrays

## Synopsis

    #include "petscdmstag.h"
    #include "petscdmproduct.h"
    PetscErrorCode DMStagSetUniformCoordinatesProduct(DM dm, PetscReal xmin, PetscReal xmax, PetscReal ymin, PetscReal ymax, PetscReal zmin, PetscReal zmax)

Set the coordinate `DM` to be a `DMPRODUCT` of 1D `DMSTAG` objects, each of which have a coordinate `DM` (also a 1d `DMSTAG`) holding uniform coordinates.

Collective

## Input Parameters

- dm - the `DMSTAG` object

- xmin - minimum global coordinate value in the x direction

- xmax - maximum global coordinate value in the x direction

- ymin - minimum global coordinate value in the y direction

- ymax - maximum global coordinate value in the y direction

- zmin - minimum global coordinate value in the z direction

- zmax - maximum global coordinate value in the z direction

## Notes

Arguments corresponding to higher dimensions are ignored for 1D and 2D grids.

The per-dimension 1-dimensional `DMSTAG` objects that comprise the product always have active 0-cells (vertices, element boundaries) and 1-cells (element centers).

See the manual page for `DMStagSetUniformCoordinates()` for information on how coordinates for dummy cells outside the physical domain boundary are populated.

## See Also

DMSTAG: Staggered, Structured Grid, `DMSTAG`, `DMPRODUCT`, `DMStagSetUniformCoordinates()`, `DMStagSetUniformCoordinatesExplicit()`, `DMStagSetCoordinateDMType()`

## Level

intermediate

## Location

src/dm/impls/stag/stagutils.c

## Examples

src/dm/impls/stag/tutorials/ex4.c
src/dm/impls/stag/tutorials/ex6.c
src/dm/impls/stag/tutorials/ex2.c

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