# DMPlexCreateFromCellListParallelPetsc
Create distributed DMPLEX from a list of vertices for each cell (common mesh generator output) 
## Synopsis
```
#include "petscdmplex.h"   
#include "petscdmplex.h"   
PetscErrorCode DMPlexCreateFromCellListParallelPetsc(MPI_Comm comm, PetscInt dim, PetscInt numCells, PetscInt numVertices, PetscInt NVertices, PetscInt numCorners, PetscBool interpolate, const PetscInt cells[], PetscInt spaceDim, const PetscReal vertexCoords[], PetscSF *vertexSF, PetscInt **verticesAdj, DM *dm)
```

## Input Parameters

- ***comm -*** The communicator
- ***dim -*** The topological dimension of the mesh
- ***numCells -*** The number of cells owned by this process
- ***numVertices -*** The number of vertices owned by this process, or PETSC_DECIDE
- ***NVertices -*** The global number of vertices, or PETSC_DECIDE
- ***numCorners -*** The number of vertices for each cell
- ***interpolate -*** Flag indicating that intermediate mesh entities (faces, edges) should be created automatically
- ***cells -*** An array of numCells*numCorners numbers, the global vertex numbers for each cell
- ***spaceDim -*** The spatial dimension used for coordinates
- ***vertexCoords -*** An array of numVertices*spaceDim numbers, the coordinates of each vertex



## Output Parameters

- ***dm -*** The DM
- ***vertexSF -*** (Optional) SF describing complete vertex ownership
- ***verticesAdjSaved -*** (Optional) vertex adjacency array



## Notes
This function is just a convenient sequence of DMCreate(), DMSetType(), DMSetDimension(),
DMPlexBuildFromCellListParallel(), DMPlexInterpolate(), DMPlexBuildCoordinatesFromCellListParallel()

See DMPlexBuildFromCellListParallel() for an example and details about the topology-related parameters.
See DMPlexBuildCoordinatesFromCellListParallel() for details about the geometry-related parameters.




## See Also
 `DMPlexCreateFromCellListPetsc()`, `DMPlexBuildFromCellListParallel()`, `DMPlexBuildCoordinatesFromCellListParallel()`, `DMPlexCreateFromDAG()`, `DMPlexCreate()`

## Level
intermediate

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/dm/impls/plex/plexcreate.c.html#DMPlexCreateFromCellListParallelPetsc">src/dm/impls/plex/plexcreate.c</A>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/dm/impls/plex/plexcreate.c)


[Index of all DMPlex routines](index.md)  
[Table of Contents for all manual pages](/docs/manualpages/index.md)  
[Index of all manual pages](/docs/manualpages/singleindex.md)  
