SNESGetNPC#

Gets a nonlinear preconditioning solver SNES` to be used to precondition the original nonlinear solver.

Synopsis#

#include "petscsnes.h"  
PetscErrorCode SNESGetNPC(SNES snes, SNES *pc)

Not Collective; but any changes to the obtained the pc object must be applied collectively

Input Parameter#

  • snes - iterative context obtained from SNESCreate()

Output Parameter#

  • pc - the SNES preconditioner context

Options Database Key#

  • -npc_snes_type - set the type of the SNES to use as the nonlinear preconditioner

Notes#

If a SNES was previously set with SNESSetNPC() then that value is returned, otherwise a new SNES object is created that will be used as the nonlinear preconditioner for the current SNES.

The (preconditioner) SNES returned automatically inherits the same nonlinear function and Jacobian supplied to the original SNES. These may be overwritten if needed.

Use the options database prefixes -npc_snes, -npc_ksp, etc., to control the configuration of the nonlinear preconditioner

See Also#

SNES: Nonlinear Solvers, SNESSetNPC(), SNESHasNPC(), SNES, SNESCreate()

Level#

advanced

Location#

src/snes/interface/snes.c

Examples#

src/snes/tutorials/ex35.c


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