petsc-3.15.0 2021-03-30
Report Typos and Errors

# DMPlexBuildFromCellList

Build DMPLEX topology from a list of vertices for each cell (common mesh generator output)

### Synopsis

    #include "petscdmplex.h"
    #include "petscdmplex.h"
    PetscErrorCode DMPlexBuildFromCellList(DM dm, PetscInt numCells, PetscInt numVertices, PetscInt numCorners, const PetscInt cells[])

### Input Parameters

| dm | - The DM
| numCells | - The number of cells owned by this process
| numVertices | - The number of vertices owned by this process, or PETSC_DECIDE
| numCorners | - The number of vertices for each cell
| cells | - An array of numCells*numCorners numbers, the global vertex numbers for each cell

### Notes

Two triangles sharing a face

           2

         / | \

        /  |  \

       /   |   \

      0  0 | 1  3

       \   |   /

        \  |  /

         \ | /

           1

would have input

     numCells = 2, numVertices = 4

     cells = [0 1 2  1 3 2]

which would result in the DMPlex

           4

         / | \

        /  |  \

       /   |   \

      2  0 | 1  5

       \   |   /

        \  |  /

         \ | /

           3

If numVertices is PETSC_DECIDE, it is computed by PETSc as the maximum vertex index in cells + 1.

Not currently supported in Fortran.

### See Also

DMPlexBuildFromCellListParallel(), DMPlexBuildCoordinatesFromCellList(), DMPlexCreateFromCellListPetsc()

### Level

advanced

### Location

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