DMRefineHookRemove#

remove a callback from the list of hooks, that have been set with DMRefineHookAdd(), to be run when interpolating a nonlinear problem to a finer grid

Synopsis#

#include "petscdm.h"          
#include "petscdmlabel.h"     
#include "petscds.h"     
PetscErrorCode DMRefineHookRemove(DM coarse, PetscErrorCode (*refinehook)(DM coarse, DM fine, PetscCtx ctx), PetscErrorCode (*interphook)(DM coarse, Mat interp, DM fine, PetscCtx ctx), PetscCtx ctx)

Logically Collective; No Fortran Support

Input Parameters#

  • coarse - the DM on which to run a hook when restricting to a coarser level

  • refinehook - function to run when setting up a finer level

  • interphook - function to run to update data on finer levels

  • ctx - [optional] application context for provide data for the hooks (may be NULL)

Calling sequence of refinehook#

  • coarse - the coarse DM

  • fine - the fine DM

  • ctx - context for the function

Calling sequence of interphook#

  • coarse - the coarse DM

  • interp - the interpolation Mat from coarse to fine

  • fine - the fine DM

  • ctx - context for the function

Note#

This function does nothing if the hook is not in the list.

See Also#

DM Basics, DM, DMRefineHookAdd(), DMCoarsenHookRemove(), DMInterpolate(), SNESFASGetInterpolation(), SNESFASGetInjection(), PetscObjectCompose(), PetscContainerCreate()

Level#

advanced

Location#

src/dm/interface/dm.c


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