:orphan: # DMPlexCreateOverlapLabelFromLabels Compute a label indicating what overlap points should be sent to new processes ## Synopsis ``` #include "petscdmplex.h" #include "petscdmlabel.h" PetscErrorCode DMPlexCreateOverlapLabelFromLabels(DM dm, PetscInt numLabels, const DMLabel label[], const PetscInt value[], PetscInt numExLabels, const DMLabel exLabel[], const PetscInt exValue[], PetscSection rootSection, IS rootrank, PetscSection leafSection, IS leafrank, DMLabel *ovLabel) ``` Collective ## Input Parameters - ***dm -*** The `DM` - ***numLabels -*** The number of labels to draw candidate points from - ***label -*** An array of labels containing candidate points - ***value -*** An array of label values marking the candidate points - ***numExLabels -*** The number of labels to use for exclusion - ***exLabel -*** An array of labels indicating points to be excluded, or `NULL` - ***exValue -*** An array of label values to be excluded, or `NULL` - ***rootSection -*** The number of leaves for a given root point - ***rootrank -*** The rank of each edge into the root point - ***leafSection -*** The number of processes sharing a given leaf point - ***leafrank -*** The rank of each process sharing a leaf point ## Output Parameter - ***ovLabel -*** `DMLabel` containing remote overlap contributions as point/rank pairings ## Note The candidate points are only added to the overlap if they are adjacent to a shared point ## See Also `DMPLEX`, `DMPlexCreateOverlapLabel()`, `DMPlexGetAdjacency()`, `DMPlexDistributeOwnership()`, `DMPlexDistribute()` ## Level developer ## Location src/dm/impls/plex/plexdistribute.c --- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/dm/impls/plex/plexdistribute.c) [Index of all DMPlex routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)