scipy.optimize.Bounds#

class scipy.optimize.Bounds(lb=-inf, ub=inf, keep_feasible=False)[source]#

Bounds constraint on the variables.

The constraint has the general inequality form:

lb <= x <= ub

It is possible to use equal bounds to represent an equality constraint or infinite bounds to represent a one-sided constraint.

Parameters:
lb, ubdense array_like, optional

Lower and upper bounds on independent variables. lb, ub, and keep_feasible must be the same shape or broadcastable. Set components of lb and ub equal to fix a variable. Use np.inf with an appropriate sign to disable bounds on all or some variables. Note that you can mix constraints of different types: interval, one-sided or equality, by setting different components of lb and ub as necessary. Defaults to lb = -np.inf and ub = np.inf (no bounds).

keep_feasibledense array_like of bool, optional

Whether to keep the constraint components feasible throughout iterations. Must be broadcastable with lb and ub. Default is False. Has no effect for equality constraints.

Methods

residual(x)

Calculate the residual (slack) between the input and the bounds