:orphan: # DMPlexShape The domain shape used for automatic mesh creation. ## Synopsis ``` typedef enum { DM_SHAPE_BOX, DM_SHAPE_BOX_SURFACE, DM_SHAPE_BALL, DM_SHAPE_SPHERE, DM_SHAPE_CYLINDER, DM_SHAPE_SCHWARZ_P, DM_SHAPE_GYROID, DM_SHAPE_DOUBLET, DM_SHAPE_ANNULUS, DM_SHAPE_HYPERCUBIC, DM_SHAPE_ZBOX, DM_SHAPE_UNKNOWN } DMPlexShape; ``` ## Values - ***`DM_SHAPE_BOX` -*** The tensor product of intervals in dimension d - ***`DM_SHAPE_BOX_SURFACE` -*** The surface of a box in dimension d+1 - ***`DM_SHAPE_BALL` -*** The d-dimensional ball - ***`DM_SHAPE_SPHERE` -*** The surface of the (d+1)-dimensional ball - ***`DM_SHAPE_CYLINDER` -*** The tensor product of the interval and disk - ***`DM_SHAPE_SCHWARZ_P` -*** The Schwarz-P triply periodic minimal surface - ***`DM_SHAPE_GYROID` -*** The Gyroid triply periodic minimal surface - ***`DM_SHAPE_DOUBLET` -*** The mesh of two cells of a specified type - ***`DM_SHAPE_ANNULUS` -*** The area between two concentric spheres in dimension d - ***`DM_SHAPE_HYPERCUBIC` -*** The skeleton of the tensor product of the intervals ## See Also `DMPlexGetCellRefiner()`, `DMPlexSetCellRefiner()`, `DMRefine()`, `DMPolytopeType` ## Level beginner ## Location include/petscdmplextypes.h --- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/include/petscdmplextypes.h) [Index of all DMPlex routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)