Skip to main content
`Ctrl`+`K`

# DMGetLabel

Return the label of a given name, or `NULL`, from a `DM`

## Synopsis

    #include "petscdm.h"
    #include "petscdmlabel.h"
    #include "petscds.h"
    PetscErrorCode DMGetLabel(DM dm, const char name[], DMLabel *label)

Not Collective

## Input Parameters

- dm - The `DM` object

- name - The label name

## Output Parameter

- label - The `DMLabel`, or `NULL` if the label is absent

## Default labels in a `DMPLEX`

- “depth” - Holds the depth (co-dimension) of each mesh point

- “celltype” - Holds the topological type of each cell

- “ghost” - If the DM is distributed with overlap, this marks the cells and faces in the overlap

- “Cell Sets” - Mirrors the cell sets defined by GMsh and ExodusII

- “Face Sets” - Mirrors the face sets defined by GMsh and ExodusII

- “Vertex Sets” - Mirrors the vertex sets defined by GMsh

## See Also

DM Basics, `DM`, `DMLabel`, `DMHasLabel()`, `DMGetLabelByNum()`, `DMAddLabel()`, `DMCreateLabel()`, `DMPlexGetDepthLabel()`, `DMPlexGetCellType()`

## Level

intermediate

## Location

src/dm/interface/dm.c

## Examples

src/dm/label/tutorials/ex1.c
src/dm/impls/plex/tutorials/ex18.c
src/dm/impls/plex/tutorials/ex17.c
src/dm/impls/plex/tutorials/ex8.c
src/dm/label/tutorials/ex1f90.F90
src/dm/impls/plex/tutorials/ex19.c
src/dm/impls/plex/tutorials/ex1f90.F90
src/dm/impls/plex/tutorials/ex6.c
src/dm/impls/plex/tutorials/ex10.c
src/snes/tutorials/ex64.c

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