Skip to main content
`Ctrl`+`K`

# SNESSetNPC

Sets the nonlinear preconditioner to be used.

## Synopsis

    #include "petscsnes.h"
    PetscErrorCode SNESSetNPC(SNES snes, SNES npc)

Collective

## Input Parameters

- snes - iterative context obtained from `SNESCreate()`

- npc - the `SNES` nonlinear preconditioner object

## Options Database Key

- -npc_snes_type <type> - set the type of the `SNES` to use as the nonlinear preconditioner

## Notes

This is rarely used, rather use `SNESGetNPC()` to retrieve the preconditioner and configure it using the API.

Only some `SNESType` can use a nonlinear preconditioner

## See Also

SNES: Nonlinear Solvers, `SNES`, `SNESNGS`, `SNESFAS`, `SNESGetNPC()`, `SNESHasNPC()`

## Level

developer

## Location

src/snes/interface/snes.c

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