:orphan: # SNESShellSetSolve Sets routine to apply as solver ## Synopsis ``` #include "petscsnes.h" PetscErrorCode SNESShellSetSolve(SNES snes, PetscErrorCode (*solve)(SNES, Vec)) ``` Logically Collective ## Input Parameters - ***snes -*** the `SNES` nonlinear solver context - ***apply -*** the application-provided solver routine ## Calling sequence of `apply` ```none PetscErrorCode apply(SNES snes, Vec xout) ``` - ***snes -*** the preconditioner, get the application context with `SNESShellGetContext()` provided with `SNESShelletContext()` - ***xout -*** solution vector ## See Also `SNESSHELL`, `SNESShellSetContext()`, `SNESShellGetContext()` ## Level advanced ## Location src/snes/impls/shell/snesshell.c ## Examples src/snes/tutorials/ex35.c
## Implementations SNESShellSetSolve_Shell(SNES snes, PetscErrorCode (*solve) in src/snes/impls/shell/snesshell.c
--- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/snes/impls/shell/snesshell.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)