petsc-3.14.5 2021-03-03
Report Typos and Errors

# 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

| mesh | - The DMPlex
| p | - The point, which must lie in the chart set with DMPlexSetChart()
| useCone | - PETSC_TRUE for in-edges, otherwise use out-edges
| numPoints | - The number of points in the closure, so points[] is of size 2*numPoints, zeroed on exit
| points | - The points and point orientations, interleaved as pairs [p0, o0, p1, o1, ...], zeroed on exit

### Note

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

### Fortran Notes

Since it returns an array, this routine is only available in Fortran 90, and you must include petsc.h90 in your code.

The numPoints argument is not present in the Fortran 90 binding since it is internal to the array.

### See Also

DMPlexGetTransitiveClosure(), DMPlexCreate(), DMPlexSetCone(), DMPlexSetChart(), DMPlexGetCone()

### Level

beginner

### Location

src/dm/impls/plex/plex.c
Index of all DMPLEX routines
Table of Contents for all manual pages
Index of all manual pages