DMRefineHookAdd#
adds a callback to be run when interpolating a nonlinear problem to a finer grid
Synopsis#
#include "petscdm.h"
#include "petscdmlabel.h"
#include "petscds.h"
PetscErrorCode DMRefineHookAdd(DM coarse, PetscErrorCode (*refinehook)(DM, DM, void *), PetscErrorCode (*interphook)(DM, Mat, DM, void *), void *ctx)
Logically Collective on coarse
Input Parameters#
Calling sequence of refinehook#
Calling sequence for interphook#
Notes#
This function is only needed if auxiliary data that is attached to the DM
s via, for example, PetscObjectCompose()
, needs to be
passed to fine grids while grid sequencing.
The actual interpolation is done when DMInterpolate()
is called.
If this function is called multiple times, the hooks will be run in the order they are added.
Fortran Note#
This function is not available from Fortran.
See Also#
DM
, DMCoarsenHookAdd()
, DMInterpolate()
, SNESFASGetInterpolation()
, SNESFASGetInjection()
, PetscObjectCompose()
, PetscContainerCreate()
Level#
advanced
Location#
Examples#
src/snes/tutorials/ex48.c.html
Index of all DM routines
Table of Contents for all manual pages
Index of all manual pages