VarData
(类来自 pyomo.core.base.var)
- class pyomo.core.base.var.VarData(component=None)[source]
基础类:
ComponentData,NumericValue此类定义了单个变量的数据。
方法
__init__([component])clear()clear_suffix_value(suffix_or_name[, expand])设置此组件数据的后缀值
cname(*args, **kwds)已弃用。
copy(src)fix([value, skip_validation])修复此变量的值(视为非变量)
free()unfix()的别名get_suffix_value(suffix_or_name[, default])获取此组件数据的后缀值
返回此变量条目的单位。
getname([fully_qualified, name_buffer, ...])返回包含组件名称和索引的字符串
has_lb()当下限为
None或负无穷大时返回Falsehas_ub()当上限为
None或正无穷大时返回Falseindex()返回此ComponentData实例相对于父组件索引集的索引。
当域被限制为二进制值时返回True。
如果此类是Pyomo组件,则返回True
返回 False,因为这不是表达式中的常量。
当域是连续实数范围时返回True
is_expression_type([expression_system])如果此数值是一个表达式,则返回 True
is_fixed()如果此变量是固定的,则返回True,否则返回False。
如果此组件已索引,则返回true
当域是一个连续的整数范围时返回True。
如果此类是Pyomo布尔对象,则返回True。
如果此数值是一个命名表达式,则返回 True
如果此类是Pyomo数值对象,则返回True
除非此类是参数对象,否则返回 False
返回 True,因为这是一个变量。
如果此对象是引用,则返回 True。
已弃用。
返回 True,因为这是一个变量。
model()返回拥有此数据的组件的模型。
返回拥有此数据的组件的父组件。
返回与此对象关联的组件。
返回表达式的多项式次数。
pprint([ostream, verbose, prefix])打印组件信息
set_suffix_value(suffix_or_name, value[, expand])设置此组件数据的后缀值
set_value(val[, skip_validation])设置当前变量值。
setlb(val)在验证值已固定(或为None)后,设置此变量的下限。
setub(val)在验证值已固定(或为None)后,设置此变量的上限。
to_string([verbose, labeler, smap, ...])返回表达式树的字符串表示。
type()已弃用。
unfix()取消固定此变量(在求解器接口中视为变量)
属性
返回活动属性
返回(或设置)元组(下限,上限)。
返回此组件的类类型
返回(或设置)此变量的域。
返回(或设置)此变量的固定指示器。
返回(或设置)变量下限的数值。
仅在直接父容器的上下文中获取组件名称。
返回(或设置)变量下界的表达式。
获取完全限定的组件名称。
此变量的陈旧状态。
返回(或设置)变量上限的数值。
返回(或设置)变量上限的表达式。
返回(或设置)此变量的值。
成员文档
- clear_suffix_value(suffix_or_name, expand=True)
设置此组件数据的后缀值
- cname(*args, **kwds)
已弃用。
自版本5.0起已弃用:cname() 方法已重命名为 getname()。 获取组件名称的首选方法是使用 .name 属性,该属性返回完全限定的组件名称。 .local_name 属性将仅在直接父容器的上下文中返回组件名称。
- fix(value=NOTSET, skip_validation=False)[source]
修复此变量的值(视为非变量)
这将
fixed指示器设置为True。如果提供了value,则首先将值(以及skip_validation标志)传递给set_value()。
- get_suffix_value(suffix_or_name, default=None)
获取此组件数据的后缀值
- getname(fully_qualified=False, name_buffer=None, relative_to=None)
返回包含组件名称和索引的字符串
- index()
返回此ComponentData实例相对于父组件索引集的索引。如果此实例没有父组件,或者由于某些未知原因此实例不属于父组件的索引集,则返回None。
- is_component_type()
如果此类是Pyomo组件,则返回True
- is_expression_type(expression_system=None)
如果此数值是一个表达式,则返回 True
- is_indexed()
如果此组件已索引,则返回true
- is_logical_type()
如果此类是Pyomo布尔对象,则返回True。
布尔对象包括常量、变量或逻辑表达式。
- is_named_expression_type()
如果此数值是一个命名表达式,则返回 True
- is_numeric_type()
如果此类是Pyomo数值对象,则返回True
- is_parameter_type()
除非此类是参数对象,否则返回 False
- is_reference()
如果此对象是引用,则返回 True。
- is_relational()
已弃用。
如果此数值表示一个关系表达式,则返回True。
自版本6.4.3起已弃用:is_relational() 已被弃用,推荐使用 is_expression_type(ExpressionType.RELATIONAL)
- model()
返回拥有此数据的组件的模型。
- parent_block()
返回拥有此数据的组件的父组件。
- parent_component()
返回与此对象关联的组件。
- polynomial_degree()
返回表达式的多项式次数。
- Returns:
None
- pprint(ostream=None, verbose=False, prefix='')
打印组件信息
请注意,此方法通常只能通过IndexedComponent容器中的ComponentData对象访问。组件,包括未索引的Component派生类以及标量和索引的IndexedComponent派生类,将会看到
Component.pprint()
- set_suffix_value(suffix_or_name, value, expand=True)
设置此组件数据的后缀值
- set_value(val, skip_validation=False)[source]
设置当前变量值。
设置此变量的值。传入的值将转换为数值(即表达式被评估)。如果变量有单位,传入的值在存储之前将转换为正确的单位。最终值将根据变量的域和边界进行检查,如果值无效,则会引发异常。可以通过将
skip_validation参数设置为True来绕过域和边界检查。
- to_string(verbose=None, labeler=None, smap=None, compute_values=False)
返回表达式树的字符串表示。
- type()
已弃用。
返回此组件的类类型
自版本5.7起已弃用:Component.type() 方法已被 .ctype 属性取代。
- property active
返回活动属性
- property bounds
返回(或设置)元组(下限,上限)。
这将返回当前的下限和上限的(数值)值作为一个元组。如果没有界限,则返回None(而不是+/-无穷大)
- property ctype
返回此组件的类类型
- property domain
返回(或设置)此变量的域。
- property fixed
返回(或设置)此变量的固定指示器。
is_fixed()/fix()/unfix()的别名。
- property lb
返回(或设置)变量下限的数值。
- property local_name
仅在直接父容器的上下文中获取组件名称。
- property lower
返回(或设置)变量下界的表达式。
这将返回一个(可能不是变量的)表达式,用于变量的下限。这表示当前域和分配给
lower的常量或表达式中较紧的一个。请注意,表达式不会自动反映域或边界表达式的更改(例如,由于分配给lower或domain)。
- property name
获取完全限定的组件名称。
- property stale
此变量的陈旧状态。
如果变量的当前值未作为最近模型更新的一部分进行更新,则这些变量是“过时的”。 “模型更新”可以是以下几种情况之一:求解器调用、加载先前的解决方案或手动更新非过时的
Var值。- Return type:
注释
修复了在调用求解器后,
Var对象将变得陈旧的问题(因为它们的值未被求解器更新)。更新一个过时的
Var值不会导致其他变量值变得过时。然而,在求解或加载解决方案后更新第一个非过时的Var值将会导致所有其他变量被标记为过时。
- property ub
返回(或设置)变量上限的数值。
- property upper
返回(或设置)变量上限的表达式。
这将返回一个(不可能是变量的)表达式,用于变量的上限。这表示当前域和分配给
upper的常量或表达式中较紧的一个。请注意,表达式不会自动反映对域或边界表达式的更改(例如,由于分配给upper或domain的更改)。
- property value
返回(或设置)此变量的值。