DMPlexMigrateGlobalToNaturalSF#

Migrates the input sfNatural based on sfMigration

Synopsis#

#include "petscdmplex.h"   
PetscErrorCode DMPlexMigrateGlobalToNaturalSF(DM dmOld, DM dmNew, PetscSF sfNaturalOld, PetscSF sfMigration, PetscSF *sfNaturalNew)

Input Parameters#

  • dmOld - The original DM

  • dmNew - The DM to be migrated to

  • sfNaturalOld - The sfNatural for the dmOld

  • sfMigration - The PetscSF used to distribute the mesh, or NULL if it cannot be computed

Output Parameter#

  • sfNaturalNew - PetscSF for mapping the Vec in PETSc ordering to the canonical ordering

Notes#

sfNaturalOld maps from the old Global section (roots) to the natural Vec layout (leaves, may or may not be described by a PetscSection). DMPlexMigrateGlobalToNaturalSF creates an SF to map from the old global section to the new global section (generated from sfMigration). That SF is then composed with the sfNaturalOld to generate sfNaturalNew. This also distributes and sets the local section for dmNew.

This is not typically called by the user.

See Also#

DMPlex: Unstructured Grids, DM, DMPLEX, PetscSF, PetscSection, DMPlexDistribute(), DMPlexDistributeField()

Level#

intermediate

Location#

src/dm/impls/plex/plexnatural.c


Index of all DMPlex routines
Table of Contents for all manual pages
Index of all manual pages