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

# SNESSetDM

Sets the DM that may be used by some nonlinear solvers or their underlying preconditioners

### Synopsis

    #include "petscsnes.h"
    PetscErrorCode  SNESSetDM(SNES snes,DM dm)

Logically Collective on SNES

### Input Parameters

| snes | - the nonlinear solver context
| dm | - the dm, cannot be NULL

### Notes

A DM can only be used for solving one problem at a time because information about the problem is stored on the DM, even when not using interfaces like DMSNESSetFunction(). Use DMClone() to get a distinct DM when solving different problems using the same function space.

### See Also

SNESGetDM(), KSPSetDM(), KSPGetDM()

### Level

intermediate

### Location

src/snes/interface/snes.c

### Examples

src/snes/examples/tutorials/ex5.c.html
src/snes/examples/tutorials/ex9.c.html
src/snes/examples/tutorials/ex12.c.html
src/snes/examples/tutorials/ex14.c.html
src/snes/examples/tutorials/ex15.c.html
src/snes/examples/tutorials/ex18.c.html
src/snes/examples/tutorials/ex19.c.html
src/snes/examples/tutorials/ex20.c.html
src/snes/examples/tutorials/ex22.c.html
src/snes/examples/tutorials/ex25.c.html
src/snes/examples/tutorials/ex28.c.html
Index of all SNES routines
Table of Contents for all manual pages
Index of all manual pages