svec_psdcone
(类来自 pyomo.core.kernel.conic)
- class pyomo.core.kernel.conic.svec_psdcone(x)[source]
基础类:
_ConicBase一个由半正定矩阵的下三角部分的向量化组成的域,其中非对角元素还进行了重新缩放。换句话说,如果长度为\(n = d(d+1)/2\)的向量‘x’属于这个锥,那么矩阵:
\[\begin{split}\begin{array}{rcclcl} sMat(x) = [\;\; [& x[1], & x[2]/\sqrt{2}, &...,& x[d]/\sqrt{2} &], \\ [&x[2]/\sqrt{2},& x[d+1], &...,& x[2d-1]/\sqrt{2} &], \\ & & \vdots & & & \\ [&x[d]/\sqrt{2},&x[2d-1]/\sqrt{2},&...,&x[d(d+1)/2]/\sqrt{2}&] \;\;] \end{array}\end{split}\]将被限制为一个半正定矩阵。
- Parameters:
x (
variable) – 一个长度为 \(d(d+1)/2\) 的可迭代变量。
方法
__init__(x)activate()激活此对象。
as_domain(x)构建一个圆锥域。
check_convexity_conditions([relax])如果满足所有锥约束的凸性条件,则返回True。
clone()返回此对象的副本,并将父指针设置为
None。停用此对象。
getname([fully_qualified, name_buffer, ...])动态生成此对象的名称。
has_lb()当下限为
None或负无穷大时返回Falsehas_ub()当上限为
None或正无穷大时返回Falseto_bounded_expression([evaluate_bounds])属性
此对象的活动状态。
约束的主体
约束的边界作为一个元组 (lb, ub)
对象的类别类型。
一个布尔值,指示这是否是一个等式约束
获取此约束上的表达式。
约束的下限值
对象在其父级上下文中的本地名称。
约束的下界表达式
下界松弛(body - lb)。
对象的完全限定名称。
对象的父级(可能为None)。
约束的右侧
最小(lslack, uslack).
对象在其父级中的存储键
约束的上限值
约束的上界表达式
上松弛(ub - body)。
x成员文档
- activate()
激活此对象。
- classmethod as_domain(x)[source]
构建一个锥形域。输入参数的形式与锥形约束相同,但在每个变量的位置,可以选择提供一个常数、线性表达式或None。
- Returns:
一个包含核心圆锥约束的块对象 (block.q) 使用辅助变量 (block.r, block.x) 表达,这些变量通过辅助约束 (block.c) 与输入参数链接。
- Return type:
- check_convexity_conditions(relax=False)
如果所有锥约束的凸性条件都满足,则返回True。如果relax为True,则忽略变量域,并假设所有变量都是连续的。
- clone()
返回此对象的副本,并将父指针设置为
None。克隆几乎等同于深拷贝,除了遇到的任何分类对象如果不是该对象的后代,将在克隆上引用相同的对象。
- deactivate()
停用此对象。
- getname(fully_qualified=False, name_buffer={}, convert=<class 'str'>, relative_to=None)
动态生成此对象的名称。
- has_lb()
当下限为
None或负无穷时返回False
- has_ub()
当上限为
None或正无穷大时返回False
- property active
此对象的活动状态。
- property body
约束的主体
- property bounds
约束的边界作为一个元组 (lb, ub)
- property ctype
对象的类别类型。
- property equality
一个布尔值,指示这是否是一个等式约束
- property expr
获取此约束上的表达式。
- property lb
约束的下限值
- property local_name
对象在其父级上下文中的本地名称。是 obj.getname(fully_qualified=False)的别名。
- property lower
约束的下界表达式
- property lslack
下界松弛(body - lb)。如果无法计算body的值,则返回
None。
- property name
对象的完全限定名称。obj.getname(fully_qualified=True)的别名。
- property parent
对象的父级(可能为None)。
- property rhs
约束的右侧
- property slack
min(lslack, uslack)。如果无法计算主体的值,则返回
None。
- property storage_key
对象在其父级中的存储键
- property ub
约束的上限值
- property upper
约束的上界表达式
- property uslack
上界松弛(ub - body)。如果无法计算body的值,则返回
None。