petsc-3.12.1 2019-10-22
Report Typos and Errors

# DMPlexDistribute

Distributes the mesh and any associated sections.

### Synopsis

    #include "petscdmplex.h"
    #include "petscdmlabel.h"
    PetscErrorCode DMPlexDistribute(DM dm, PetscInt overlap, PetscSF *sf, DM *dmParallel)

Collective on dm

### Input Parameter

| dm | - The original DMPlex object
| overlap | - The overlap of partitions, 0 is the default

### Output Parameter

| sf | - The PetscSF used for point distribution, or NULL if not needed
| dmParallel | - The distributed DMPlex object

Note: If the mesh was not distributed, the output dmParallel will be NULL.

The user can control the definition of adjacency for the mesh using DMSetAdjacency(). They should choose the combination appropriate for the function representation on the mesh.

### See Also

DMPlexCreate(), DMSetAdjacency(), DMPlexGetOverlap()

### Level

intermediate

### Location

src/dm/impls/plex/plexdistribute.c

### Examples

src/dm/impls/plex/examples/tutorials/ex1.c.html
src/dm/impls/plex/examples/tutorials/ex5.c.html
src/dm/examples/tutorials/ex20.c.html
src/dm/label/examples/tutorials/ex1.c.html
src/dm/label/examples/tutorials/ex1f90.F90.html
src/dm/field/examples/tutorials/ex1.c.html
src/snes/examples/tutorials/ex12.c.html
src/snes/examples/tutorials/ex56.c.html
src/snes/examples/tutorials/ex62.c.html
src/snes/examples/tutorials/ex77.c.html
src/ts/examples/tutorials/ex11.c.html
Index of all DMPLEX routines
Table of Contents for all manual pages
Index of all manual pages