petsc-3.12.4 2020-02-04
Report Typos and Errors

# DMRefineHookRemove

remove a callback from the list of hooks 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,DM,void*),PetscErrorCode (*interphook)(DM,Mat,DM,void*),void *ctx)

Logically Collective

### Input Arguments

| coarse | - nonlinear solver context on which to run a hook when restricting to a coarser level
| refinehook | - function to run when setting up a coarser level
| interphook | - function to run to update data on finer levels (once per SNESSolve())
| ctx | - [optional] user-defined context for provide data for the hooks (may be NULL)

### Notes

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

This function is currently not available from Fortran.

### See Also

DMCoarsenHookRemove(), 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