petsc-main 2021-04-20
Report Typos and Errors


Create a CSR graph of point connections for the partitioner


#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 Parameter

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().

See Also

PetscPartitionerGetType(), PetscPartitionerCreate(), DMSetAdjacency()






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