8.3.6. MdoExprLinear¶
- class mindoptpy.MdoExprLinear¶
Bases:
mindoptpy.MdoExpr
此对象会实现包含线性约束表达式对象的数据结构,此线性约束表达式对象包含一组系数-变量对。
输入线性约束表达式的典型步骤如下:
调用
mindoptpy.MdoModel.add_var()
,创建一组空变量对象。创建空线性表达式对象
mindoptpy.MdoExprLinear()
。使用重载运算符如
+
或成员函数mindoptpy.MdoExprLinear.add_terms()
输入线性表达式。
Note
一般来说,这是一个有效期很短的临时对象。
一般来说,诸如
+
之类的重载运算符效率较低,因此应避免在重复指令中使用。请注意,建立表达式对象最有效的方法是调用mindoptpy.MdoExprLinear.add_terms()
。
示例
MdoVar x1 = model.add_var() MdoVar x3 = model.add_var() expr1 = 1 * x1 expr1 = expr1 + x2 MdoVar x3 = model.add_var() expr2 = expr1 + x3
方法
此函数会向表达式对象添加常数项。
此函数会添加一个非零项。
此函数会添加一组非零项。
此函数会从表达式对象中删除所有非零元素。
在给定变量索引的情况下,此函数会从表达式对象中返回一个非零元素值。
此函数会返回表达式对象中的常数项。
get_size()
此函数会返回存储在表达式对象中的非零元素数量。
此函数会返回存储在列对象中的非零元素。
在给定一个变量对象的情况下,此函数会从表达式对象中返回变量对象。
在给定变量索引的情况下,此函数会从表达式对象中删除一个非零元素。
在给定变量对象的情况下,此函数会从表达式对象中删除一个非零元素。
此函数会更改表达式对象中的常数项。
此函数会返回与此约束相关的对偶变量。
- add_constant(constant: float)¶
此函数会向表达式对象添加常数项。
- Parameters
constant (float) – 待添加的常数项。
- add_term(var: mindoptpy.MdoVar, coeff: float)¶
此函数会添加一个非零项。非零项就是一对变量和系数。
- Parameters
var (MdoVar) – 与非零项相关的变量对象。
coeff (float) – 非零项的系数。
- add_terms(vars: Union[list, mindoptpy.MdoVar], coeffs: Union[list, float])¶
此函数会添加一组非零项。非零项就是一对变量和系数。
- Parameters
conss (类数组或单个变量对象) – 包含变量对象的数组,或单个变量对象。
coeffs (类数组或单个系数) – 包含非零项系数的数组,或单个系数。
- clear()¶
此函数会从表达式对象中删除所有非零元素。
- get_coeff(pos: int)¶
在给定变量索引的情况下,此函数会从表达式对象中返回一个非零元素值。
- Parameters
pos (int) – 当前存储在
pos
位置的项。- Returns
非零系数的值。
- Return type
浮点型
- get_constant()¶
此函数会返回表达式对象中的常数项。
- Returns
表达式对象中的一个常数项。
- Return type
浮点型
- get_terms()¶
此函数会返回存储在列对象中的非零元素。
- Returns
返回存储在列对象中的非零元素。
- Return type
类数组
- get_var(pos: int)¶
在给定变量索引的情况下,此函数会从表达式对象中返回变量对象。
- Parameters
pos (int) – 当前存储在
pos
位置的项。- Returns
一个变量对象。
- Return type
- remove_term(pos: int)¶
在给定变量索引的情况下,此函数会从表达式对象中删除一个非零元素。
- Parameters
pos (int) – 存储在 pos 位置的非零元素。
- remove_var(var: mindoptpy.MdoVar)¶
在给定变量对象的情况下,此函数会从表达式对象中删除一个非零元素。
- Parameters
var (MdoVar) – 一个变量对象,其系数将被删除。
- Returns
如果指定的系数存在于表达式中并且已被删除,则返回 true。
- Return type
bint
- set_constant(constant: float)¶
此函数会更改表达式对象中的常数项。
- Parameters
constant (float) – 一个新的常数项。
- get_dual_value()¶
此函数会返回与此约束相关的对偶变量。
- Returns
与此约束相关的对偶变量。
- Return type
浮点型