petsc-3.12.5 2020-03-29
Report Typos and Errors

DMPlexGetOrdering

Calculate a reordering of the mesh

Synopsis

#include "petscdmplex.h"   
#include "petscmat.h"      
PetscErrorCode DMPlexGetOrdering(DM dm, MatOrderingType otype, DMLabel label, IS *perm)
Collective on dm

Input Parameter

    MATORDERINGNATURAL - Natural
    MATORDERINGND - Nested Dissection
    MATORDERING1WD - One-way Dissection
    MATORDERINGRCM - Reverse Cuthill-McKee
    MATORDERINGQMD - Quotient Minimum Degree
dm - The DMPlex object
otype - type of reordering, one of the following:
label - [Optional] Label used to segregate ordering into sets, or NULL

Output Parameter

perm -The point permutation as an IS, perm[old point number] = new point number

Note: The label is used to group sets of points together by label value. This makes it easy to reorder a mesh which has different types of cells, and then loop over each set of reordered cells for assembly.

See Also

MatGetOrdering()

Level

intermediate

Location

src/dm/impls/plex/plexreorder.c
Index of all DMPLEX routines
Table of Contents for all manual pages
Index of all manual pages