Skip to main content
`Ctrl`+`K`

# DMShellSetCreateInterpolation

Set the routine used to create the interpolation operator

## Synopsis

    #include "petscdmshell.h"
    PetscErrorCode DMShellSetCreateInterpolation(DM dm, PetscErrorCode (*interp)(DM coarse, DM fine, Mat *interp, Vec *rscale))

Logically Collective

## Input Parameters

- dm - the `DMSHELL`

- interp - the routine to create the interpolation

## Calling sequence of `interp`

- coarse - the `DM` to refine to

- fine - the fine `DM`

- interp - the output interpolation `Mat`

- rscale - an output scaling `Vec`, see `DMCreateInterpolationScale()`

## See Also

`DM`, `DMSHELL`, `DMShellSetCreateInjection()`, `DMCreateInterpolation()`, `DMShellGetCreateInterpolation()`, `DMShellSetCreateRestriction()`, `DMShellSetContext()`, `DMShellGetContext()`

## Level

advanced

## Location

src/dm/impls/shell/dmshell.c

## Examples

src/ksp/ksp/tutorials/ex73.c
src/ksp/ksp/tutorials/ex65.c

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