PETSc version 3.17.4
Fix/Edit manual page

# DMPlexCreatePartitionerGraph

Create a CSR graph of point connections for the partitioner

### Synopsis

    #include "petscdmplex.h"
    PetscErrorCode DMPlexCreatePartitionerGraph(DM dm, PetscInt height, PetscInt *numVertices, PetscInt **offsets, PetscInt **adjacency, IS *globalNumbering)

### Input Parameters

| dm | - The mesh DM dm
| height | - Height of the strata from which to construct the graph

### Output Parameters

| numVertices | - Number of vertices in the graph
| offsets | - Point offsets in the graph
| adjacency | - Point connectivity in the graph
| globalNumbering | - A map from the local cell numbering to the global numbering used in "adjacency". Negative indicates that the cell is a duplicate from another process.

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. If requested, globalNumbering needs to be destroyed by the caller; offsets and adjacency need to be freed with PetscFree().

### Options Database Keys

| -dm_plex_csr_alg <mat,graph,overlap> | - Choose the algorithm for computing the CSR graph

### See Also

PetscPartitionerGetType(), PetscPartitionerCreate(), DMSetAdjacency()

### Level

developer

### Location

src/dm/impls/plex/plexpartition.c

### Implementations

DMPlexCreatePartitionerGraph_Overlap in src/dm/impls/plex/plexpartition.c
DMPlexCreatePartitionerGraph_Native in src/dm/impls/plex/plexpartition.c
DMPlexCreatePartitionerGraph_ViaMat in src/dm/impls/plex/plexpartition.c
Index of all DMPLEX routines
Table of Contents for all manual pages
Index of all manual pages