This data stucture represents a linear constraint in the LP. Basically it is a linear expression with a lower or an upper bound (or both). These parts of the constraint can be obtained by the member functions expr(), lowerBound() and upperBound(), respectively. There are two ways to construct a constraint.
- You can set the linear expression and the bounds directly by the functions above.
- The operators
<=, == and >= are defined between expressions, or even between constraints whenever it makes sense. Therefore if e and f are linear expressions and s and t are numbers, then the followings are valid expressions and thus they can be used directly e.g. in addRow() whenever it makes sense. * e<=s
* e<=f
* e==f
* s<=e<=t
* e>=t
*
- Warning
- The validity of a constraint is checked only at run time, so e.g. addRow(
x[1]<=x[2]<=5) will compile, but will fail an assertion.
|
(Note that these are not member functions.)
|
|
LpBase::Constr | operator<= (const LpBase::Expr &e, const LpBase::Expr &f) |
| | Create constraint.
|
| |
|
LpBase::Constr | operator<= (const LpBase::Value &e, const LpBase::Expr &f) |
| | Create constraint.
|
| |
|
LpBase::Constr | operator<= (const LpBase::Expr &e, const LpBase::Value &f) |
| | Create constraint.
|
| |
|
LpBase::Constr | operator>= (const LpBase::Expr &e, const LpBase::Expr &f) |
| | Create constraint.
|
| |
|
LpBase::Constr | operator>= (const LpBase::Value &e, const LpBase::Expr &f) |
| | Create constraint.
|
| |
|
LpBase::Constr | operator>= (const LpBase::Expr &e, const LpBase::Value &f) |
| | Create constraint.
|
| |
|
LpBase::Constr | operator== (const LpBase::Expr &e, const LpBase::Value &f) |
| | Create constraint.
|
| |
|
LpBase::Constr | operator== (const LpBase::Expr &e, const LpBase::Expr &f) |
| | Create constraint.
|
| |
|
LpBase::Constr | operator<= (const LpBase::Value &n, const LpBase::Constr &c) |
| | Create constraint.
|
| |
|
LpBase::Constr | operator<= (const LpBase::Constr &c, const LpBase::Value &n) |
| | Create constraint.
|
| |
|
LpBase::Constr | operator>= (const LpBase::Value &n, const LpBase::Constr &c) |
| | Create constraint.
|
| |
|
LpBase::Constr | operator>= (const LpBase::Constr &c, const LpBase::Value &n) |
| | Create constraint.
|
| |