SNES Manual Pages

The Scalable Nonlinear Equations Solvers (SNES) component provides an easy-to-use interface to Newton-based methods for solving systems of nonlinear equations. SNES users can set various algorithmic options at runtime via the options database (e.g., specifying a trust region method via -snes_type tr ). SNES internally employs SLES for the solution of its linear systems. SNES users can also set SLES options directly in application codes by first extracting the SLES context from the SNES context via SNESGetSLES() and then directly calling various SLES (and KSP and PC) routines (e.g., PCSetType() ).

Beginner - Basic usage
SNESCreate SNESSetFunction SNESSetTypeFromOptions
SNESDestroy SNESSetGradient SNESSolve
SNESGetSLES SNESSetHessian SNESView
SNESPrintHelp SNESSetJacobian
SNESSetFromOptions SNESSetMinimizationFunction
Intermediate - Setting options for algorithms and data structures
SNESClearMonitor SNESGetApplicationContext SNESSetApplicationContext
SNESConverged_EQ_LS SNESGetConvergenceHistory SNESSetConvergenceHistory
SNESConverged_EQ_TR SNESGetFunctionNorm SNESSetMinimizationFunctionTolerance
SNESConverged_UM_LS SNESGetGradientNorm SNESSetMonitor
SNESConverged_UM_TR SNESGetIterationNumber SNESSetTolerances
SNESDefaultComputeHessian SNESGetNumberLinearIterations SNESSetTrustRegionTolerance
SNESDefaultComputeJacobian SNESGetNumberUnsuccessfulSteps SNESSetType
SNESDefaultComputeJacobianColor SNESGetTolerances SNESVecViewMonitor
SNESDefaultMonitor SNESGetType
Advanced - Setting more advanced options and customization
SNESAppendOptionsPrefix SNESGetSolution SNESSetConvergenceTest
SNESCubicLineSearch SNESGetSolutionUpdate SNESSetLineSearch
SNESGetFunction SNESNoLineSearch SNESSetLineSearchCheck
SNESGetGradient SNESNoLineSearchNoNorms SNESSetOptionsPrefix
SNESGetHessian SNESQuadraticLineSearch SNESSetUp
SNESGetJacobian SNESRegister SNES_KSP_SetConvergenceTestEW
SNESGetMinimizationFunction SNESRegisterAll SNES_KSP_SetParametersEW
SNESGetOptionsPrefix SNESRegisterDestroy
Developer - Interfaces intended primarily for library developers, not for typical applications programmers
SNESAddOptionsChecker SNESComputeGradient SNESComputeJacobian
SNESComputeFunction SNESComputeHessian SNESComputeMinimizationFunction

Table of Contents