:orphan: # DMGetCoarseDM Get the coarse `DM`from which this `DM` was obtained by refinement ## Synopsis ``` #include "petscdm.h" #include "petscdmlabel.h" #include "petscds.h" PetscErrorCode DMGetCoarseDM(DM dm, DM *cdm) ``` Not Collective ## Input Parameter - ***dm -*** The `DM` object ## Output Parameter - ***cdm -*** The coarse `DM` ## See Also [](ch_dmbase), `DM`, `DMSetCoarseDM()`, `DMCoarsen()` ## Level intermediate ## Location src/dm/interface/dm.c ## Examples src/ksp/ksp/tutorials/ex73.c
src/snes/tutorials/ex12.c
src/snes/tutorials/ex13.c
src/snes/tutorials/ex17.c
src/snes/tutorials/ex20.c
src/snes/tutorials/ex23.c
src/snes/tutorials/ex24.c
src/snes/tutorials/ex26.c
src/snes/tutorials/ex36.c
src/snes/tutorials/ex62.c
src/snes/tutorials/ex63.c
--- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/dm/interface/dm.c) [Index of all DM routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)