组件UID

(类来自 pyomo.core.base.componentuid)

class pyomo.core.base.componentuid.ComponentUID(component, cuid_buffer=None, context=None)[source]

基础类:object

组件唯一标识符

该类提供了一个生成“组件唯一标识符”的系统。模型中的任何组件都可以通过CUID来描述,并且通过CUID可以找到该组件。CUID的一个重要特性是它们是相对于模型的,因此你可以使用在一个模型上生成的CUID来找到另一个模型上的等效组件。这在克隆模型时特别有用,例如,当你想要将克隆模型中的变量值复制回原始模型时。

CUID 有一个字符串表示,可以通过使用索引通配符来指定特定的组件或一组相关组件(* 表示索引中的单个元素,** 表示所有索引)

__init__(component, cuid_buffer=None, context=None)[source]

方法

__init__(组件[, cuid_buffer, context])

find_component(block)

已弃用。

find_component_on(block)

返回块中的(唯一)组件。

generate_cuid_string_map(block[, ctype, ...])

get_repr([版本])

list_components(block)

生成器返回与此ComponentUID匹配的所有组件

matches(component[, context])

如果此ComponentUID与指定组件匹配,则返回True

成员文档

find_component(block)[source]

已弃用。

自版本5.7.2起已弃用:ComponentUID.find_component() 已弃用。请使用 ComponentUID.find_component_on()

find_component_on(block)[source]

返回块中的(唯一)组件。如果CUID在最后一个组件中包含通配符,则返回该组件。如果在其他地方有通配符(或最后一个组件是部分切片),则返回一个引用。另请参阅下面的list_components。

list_components(block)[source]

生成器返回与此ComponentUID匹配的所有组件

matches(component, context=None)[source]

如果此ComponentUID与指定的组件匹配,则返回True

这相当于:

组件在ComponentSet(self.list_components())中