DMPlexCreatePointNumbering#
Create a global numbering for all points.
Synopsis#
#include "petscdmplex.h"
PetscErrorCode DMPlexCreatePointNumbering(DM dm, IS *globalPointNumbers)
Collective
Input Parameter#
dm - The
DMPLEX
object
Output Parameter#
globalPointNumbers - Global numbers for all points on this process
Notes#
The point numbering IS
is parallel, with local portion indexed by local points (see DMGetLocalSection()
). The global
points are taken as stratified, with each MPI rank owning a contiguous subset of each stratum. In the IS, owned points
will have their non-negative value while points owned by different ranks will be involuted -(idx+1). As an example,
consider a parallel mesh in which the first two elements and first two vertices are owned by rank 0.
The partitioned mesh is
(2)--0--(3)--1--(4) (1)--0--(2)
and its global numbering is
(3)--0--(4)--1--(5)--2--(6)
Then the global numbering is provided as
[0] Number of indices in set 5
[0] 0 0
[0] 1 1
[0] 2 3
[0] 3 4
[0] 4 -6
[1] Number of indices in set 3
[1] 0 2
[1] 1 5
[1] 2 6
See Also#
DMPlex: Unstructured Grids, DM
, DMPLEX
, DMPlexGetCellNumbering()
Level#
developer
Location#
Index of all DMPlex routines
Table of Contents for all manual pages
Index of all manual pages