重命名组件

(函数来自 pyomo.util.components)

pyomo.util.components.rename_components(model, component_list, prefix)[source]

使用前缀和唯一组件名称重命名组件列表中的组件

Parameters:
  • model (Pyomo 模型 (或 Block)) – 变量、约束和目标将在此模型上重命名

  • component_list (list) – 要重命名的组件列表

  • prefix (str) – 构建新名称时使用的前缀

示例

>>> model = pyo.ConcreteModel()
>>> model.x = pyo.Var()
>>> model.y = pyo.Var()
>>> c_list = list(model.component_objects(ctype=pyo.Var, descend_into=True))
>>> new = rename_components(model, component_list=c_list, prefix='special_')
>>> str(new)
"ComponentMap({'special_x (key=...)': 'x', 'special_y (key=...)': 'y'})"
Returns:

ComponentMap – 转换为提供其旧完全限定名称的字符串

Return type:

映射重命名的组件对象

待办事项

  • 需要添加一个检查,以查看是否有人意外传递了一个生成器,因为这可能导致无限循环