## Summary of Nonlinear Solvers Available from PETSc

### See the paper Composing Scalable Nonlinear Algebraic Solvers or the PETSc users manual for details on the algorithms

### Requests and contributions welcome

Algorithm | Name of solver | |||||
---|---|---|---|---|---|---|

* Does not support a line search |
||||||

Newton's method | newtonls | Use -snes_mf for matrix-free linear solvers | ||||

Newton's method with trust region* | newtontr | |||||

Single linearization* | ksponly | Essentially one step of Newtwon without a line search | ||||

Quasi-Newton method (BFGS) | qn | |||||

Nonlinear CG | ncg | Requires nearly symmetric Jacobian for good convergence | ||||

Nonlinear GMRES | ngmres | |||||

Anderson mixing | anderson | |||||

Nonlinear Richardson | nrichardson | |||||

Nonlinear Gauss-Siedel* | ngs | |||||

Full Approximation Scheme (nonlinear multigrid) | fas | |||||

Nonlinear additive Schwarz method* | nasm | |||||

Nonlinear additive Schwarz preconditioned inexact Newton (ASPIN) methods | aspin | |||||

Composite; combine several nonlinear solvers | composite | |||||

Preconditioned nonlinear solver/td> | SNESGetNPC() | Can be combined to accelerate many of the solvers |