SciPy

This is documentation for an old release of SciPy (version 1.3.2). Read this page in the documentation of the latest stable release (version 1.15.1).

scipy.optimize.LinearConstraint

class scipy.optimize.LinearConstraint(A, lb, ub, keep_feasible=False)[source]

Linear constraint on the variables.

The constraint has the general inequality form:

lb <= A.dot(x) <= ub

Here the vector of independent variables x is passed as ndarray of shape (n,) and the matrix A has shape (m, n).

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

Parameters
A{array_like, sparse matrix}, shape (m, n)

Matrix defining the constraint.

lb, ubarray_like

Lower and upper bounds on the constraint. Each array must have the shape (m,) or be a scalar, in the latter case a bound will be the same for all components of the constraint. Use np.inf with an appropriate sign to specify a one-sided constraint. Set components of lb and ub equal to represent an equality constraint. Note that you can mix constraints of different types: interval, one-sided or equality, by setting different components of lb and ub as necessary.

keep_feasiblearray_like of bool, optional

Whether to keep the constraint components feasible throughout iterations. A single value set this property for all components. Default is False. Has no effect for equality constraints.

Previous topic

scipy.optimize.NonlinearConstraint

Next topic

scipy.optimize.Bounds