DMRestrict#

restricts user-defined problem data to a coarser DM by running hooks registered by DMCoarsenHookAdd()

Synopsis#

#include "petscdm.h"          
#include "petscdmlabel.h"     
#include "petscds.h"     
PetscErrorCode DMRestrict(DM fine, Mat restrct, Vec rscale, Mat inject, DM coarse)

Collective if any hooks are

Input Parameters#

  • fine - finer DM from which the data is obtained

  • restrct - restriction matrix, apply using MatRestrict(), usually the transpose of the interpolation

  • rscale - scaling vector for restriction

  • inject - injection matrix, also use MatRestrict()

  • coarse - coarser DM to update

Developer Note#

Though this routine is called DMRestrict() the hooks are added with DMCoarsenHookAdd(), a consistent terminology would be better

See Also#

DM Basics, DM, DMCoarsenHookAdd(), MatRestrict(), DMInterpolate(), DMRefineHookAdd()

Level#

developer

Location#

src/dm/interface/dm.c


Edit on GitLab

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