Skip to main content
`Ctrl`+`K`

# DMPlexRestoreTransitiveClosure

Restore the array of points on the transitive closure of the in-edges or out-edges for this point in the DAG

## Synopsis

    #include "petscdmplex.h"
    PetscErrorCode DMPlexRestoreTransitiveClosure(DM dm, PetscInt p, PetscBool useCone, PetscInt *numPoints, PetscInt *points[])

Not Collective

## Input Parameters

- dm - The `DMPLEX`

- p - The mesh point

- useCone - `PETSC_TRUE` for the closure, otherwise return the star

- numPoints - The number of points in the closure, so points[] is of size 2*`numPoints`

- points - The points and point orientations, interleaved as pairs [p0, o0, p1, o1, …]

## Note

If not using internal storage (points is not `NULL` on input), this call is unnecessary

## See Also

DMPlex: Unstructured Grids, `DM`, `DMPLEX`, `DMPlexGetTransitiveClosure()`, `DMPlexCreate()`, `DMPlexSetCone()`, `DMPlexSetChart()`, `DMPlexGetCone()`

## Level

beginner

## Location

src/dm/impls/plex/plex.c

## Examples

src/dm/impls/plex/tutorials/ex11.c

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