# SNLE

### From OpenOpt

**System of Non-Linear Equations (SNLE)**- Solve system of non-linear equations
*subjected to*

- OpenOpt
**SNLE example** - FuncDesigner examples:

in versions prior to 0.34 you should use "NLSP" instead of "SNLE"

**SNLE solvers connected to OpenOpt**

Solver | License | Constraints | Can handle derivatives |
Info |
---|---|---|---|---|

scipy_fsolve | BSD | None | df | it's a wrapper around MINPACK's hybrd and hybrj algorithms. |

interalg | BSD | (since r. 0.36) all; finite box-bounds are required (they may be very huge) | interval analysis is used instead | Guaranteed solution no matter are involved functions convex, nonconvex, multiextremum, ill-conditioned etc (or rather quickly ensures that solution doesn't exist). See the example where interalg works and scipy.optimize fsolve fails. Can obtain ALL solutions of nonlinear equations system in the given box lb_i <= x_i <= ub_i (example). |

converter to NLP | BSD | all that NLP solver can handle | all that NLP solver can handle | Example: r = p.solve('nlp:ralg'). It tries to minimize norm(F, 2) till required ftol and contol will be reached. |

nssolve | BSD | lb, ub, Aeq, A, c, h (example) | df, dc, dh | This one is primarily for nonsmooth and noisy funcs, uses NSP ralg or amsg2p solvers (former for constrained problems, latter currently for unconstrained) and is intended to be enhanced from time to time, as well as the solvers. ns- can be interpreted as NonSmooth or NoiSy or Naum Shor (Ukrainian academician, my teacher, r-algorithm inventor). |

The ones below work very unstable and can't use user-provided gradient, at least for scipy 0.6.0

scipy_anderson, scipy_anderson2, scipy_broyden1, scipy_broyden2, scipy_broyden3, scipy_broyden_generalized

Maybe they will be enhanced in future by someone. See here for details

See also: