:orphan:
# SNESDestroy
Destroys the nonlinear solver context that was created with `SNESCreate()`.
## Synopsis
```
#include "petscsnes.h"
PetscErrorCode SNESDestroy(SNES *snes)
```
Collective
## Input Parameter
- ***snes -*** the `SNES` context
## See Also
[](ch_snes), `SNES`, `SNESCreate()`, `SNESSolve()`
## Level
beginner
## Location
src/snes/interface/snes.c
## Examples
src/snes/tutorials/ex1.c
src/snes/tutorials/ex12.c
src/snes/tutorials/ex13.c
src/snes/tutorials/ex14.c
src/snes/tutorials/ex15.c
src/snes/tutorials/ex16.c
src/snes/tutorials/ex17.c
src/snes/tutorials/ex18.c
src/snes/tutorials/ex19.c
src/snes/tutorials/ex1f.F90
src/snes/tutorials/ex2.c
## Implementations
SNESDestroy_Composite in src/snes/impls/composite/snescomposite.c
SNESDestroy_FAS in src/snes/impls/fas/fas.c
SNESDestroy_NGS in src/snes/impls/gs/snesgs.c
SNESDestroy_KSPONLY in src/snes/impls/ksponly/ksponly.c
SNESDestroy_NEWTONLS in src/snes/impls/ls/ls.c
SNESDestroy_MS in src/snes/impls/ms/ms.c
SNESDestroy_Multiblock in src/snes/impls/multiblock/multiblock.c
SNESDestroy_ASPIN in src/snes/impls/nasm/aspin.c
SNESDestroy_NASM in src/snes/impls/nasm/nasm.c
SNESDestroy_NCG in src/snes/impls/ncg/snesncg.c
SNESDestroy_NGMRES in src/snes/impls/ngmres/snesngmres.c
SNESDestroy_NEWTONTRDC in src/snes/impls/ntrdc/ntrdc.c
SNESDestroy_Patch in src/snes/impls/patch/snespatch.c
SNESDestroy_QN in src/snes/impls/qn/qn.c
SNESDestroy_NRichardson in src/snes/impls/richardson/snesrichardson.c
SNESDestroy_Shell in src/snes/impls/shell/snesshell.c
SNESDestroy_NEWTONTR in src/snes/impls/tr/tr.c
SNESDestroy_VI in src/snes/impls/vi/vi.c
---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/snes/interface/snes.c)
[Index of all SNES routines](index.md)
[Table of Contents for all manual pages](/manualpages/index.md)
[Index of all manual pages](/manualpages/singleindex.md)