# root(method=’df-sane’)¶

scipy.optimize.root(fun, x0, args=(), method='df-sane', tol=None, callback=None, options={'func': None, 'ftol': 1e-08, 'fatol': 1e-300, 'maxfev': 1000, 'fnorm': None, 'disp': False, 'M': 10, 'eta_strategy': None, 'sigma_eps': 1e-10, 'sigma_0': 1.0, 'line_search': 'cruz'})

Solve nonlinear equation with the DF-SANE method

For documentation for the rest of the parameters, see scipy.optimize.root

Options: ftol : float, optional Relative norm tolerance. fatol : float, optional Absolute norm tolerance. Algorithm terminates when ||func(x)|| < fatol + ftol ||func(x_0)||. fnorm : callable, optional Norm to use in the convergence check. If None, 2-norm is used. maxfev : int, optional Maximum number of function evaluations. disp : bool, optional Whether to print convergence process to stdout. eta_strategy : callable, optional Choice of the eta_k parameter, which gives slack for growth of ||F||**2. Called as eta_k = eta_strategy(k, x, F) with k the iteration number, x the current iterate and F the current residual. Should satisfy eta_k > 0 and sum(eta, k=0..inf) < inf. Default: ||F||**2 / (1 + k)**2. sigma_eps : float, optional The spectral coefficient is constrained to sigma_eps < sigma < 1/sigma_eps. Default: 1e-10 sigma_0 : float, optional Initial spectral coefficient. Default: 1.0 M : int, optional Number of iterates to include in the nonmonotonic line search. Default: 10 line_search : {‘cruz’, ‘cheng’} Type of line search to employ. ‘cruz’ is the original one defined in [Martinez & Raydan. Math. Comp. 75, 1429 (2006)], ‘cheng’ is a modified search defined in [Cheng & Li. IMA J. Numer. Anal. 29, 814 (2009)]. Default: ‘cruz’

References

 [1] “Spectral residual method without gradient information for solving large-scale nonlinear systems of equations.” W. La Cruz, J.M. Martinez, M. Raydan. Math. Comp. 75, 1429 (2006).
 [2] La Cruz, Opt. Meth. Software, 29, 24 (2014).
 [3] Cheng, D.-H. Li. IMA J. Numer. Anal. 29, 814 (2009).

#### Previous topic

root(method=’krylov’)

#### Next topic

scipy.optimize.newton_krylov