class scipy.optimize.OptimizeResult[source]

Represents the optimization result.


There may be additional attributes not listed above depending of the specific solver. Since this class is essentially a subclass of dict with attribute accessors, one can see which attributes are available using the keys() method.

x : ndarray

The solution of the optimization.

success : bool

Whether or not the optimizer exited successfully.

status : int

Termination status of the optimizer. Its value depends on the underlying solver. Refer to message for details.

message : str

Description of the cause of the termination.

fun, jac, hess: ndarray

Values of objective function, its Jacobian and its Hessian (if available). The Hessians may be approximations, see the documentation of the function in question.

hess_inv : object

Inverse of the objective function’s Hessian; may be an approximation. Not available for all solvers. The type of this attribute may be either np.ndarray or scipy.sparse.linalg.LinearOperator.

nfev, njev, nhev : int

Number of evaluations of the objective functions and of its Jacobian and Hessian.

nit : int

Number of iterations performed by the optimizer.

maxcv : float

The maximum constraint violation.


fromkeys($type, iterable[, value]) Returns a new dict with keys from iterable and values equal to value.
pop(k[,d]) If key is not found, d is returned if given, otherwise KeyError is raised
popitem() 2-tuple; but raise KeyError if D is empty.
update([E, ]**F) If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]