scipy.optimize.root(fun, x0, args=(), method='hybr', jac=None, tol=None, callback=None, options={'func': None, 'col_deriv': 0, 'xtol': 1.49012e-08, 'maxfev': 0, 'band': None, 'eps': None, 'factor': 100, 'diag': None})

Find the roots of a multivariate function using MINPACK’s hybrd and hybrj routines (modified Powell method).

See also

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


Specify whether the Jacobian function computes derivatives down the columns (faster, because there is no transpose operation).


The calculation will terminate if the relative error between two consecutive iterates is at most xtol.


The maximum number of calls to the function. If zero, then 100*(N+1) is the maximum where N is the number of elements in x0.


If set to a two-sequence containing the number of sub- and super-diagonals within the band of the Jacobi matrix, the Jacobi matrix is considered banded (only for fprime=None).


A suitable step length for the forward-difference approximation of the Jacobian (for fprime=None). If eps is less than the machine precision, it is assumed that the relative errors in the functions are of the order of the machine precision.


A parameter determining the initial step bound (factor * || diag * x||). Should be in the interval (0.1, 100).


N positive entries that serve as a scale factors for the variables.