SimpleExpressionVisitor
(类来自 pyomo.core.expr.visitor)
- class pyomo.core.expr.visitor.SimpleExpressionVisitor[源代码]
基础类:
object注意
该类是对PyUtilib
SimpleVisitor类的定制,专门用于高效遍历Pyomo表达式树。然而,该类并不是PyUtilibSimpleVisitor类的子类,因为所有关键方法都已重新实现。- __init__()
方法
__init__()finalize()返回搜索的“最终值”。
visit(node)访问表达式树中的一个节点并对其执行某些操作。
xbfs(node)广度优先搜索表达式树,除了叶节点会立即被访问。
xbfs_yield_leaves(node)广度优先搜索表达式树,除了叶节点会立即被访问。
成员文档
- visit(node)[source]
访问表达式树中的一个节点并对其执行一些操作。
此方法应由创建子类的用户重写。
- Parameters:
node – 表达式树中的一个节点
- Returns:
无
- xbfs(node)[source]
广度优先搜索表达式树,除了叶节点会立即被访问。
注意
此方法与PyUtilib的
SimpleVisitor.xbfs方法具有相同的功能。不同之处在于,此方法专门为高效遍历Pyomo表达式树而设计。- Parameters:
node – 被搜索的表达式树的根节点。
- Returns:
返回值由
finalize()函数决定,该函数可以由用户定义。默认值为None。
- xbfs_yield_leaves(node)[source]
广度优先搜索表达式树,除了叶子节点会立即被访问。
注意
此方法与PyUtilib的
SimpleVisitor.xbfs_yield_leaves方法具有相同的功能。不同之处在于,此方法专门用于高效遍历Pyomo表达式树。- Parameters:
node – 表达式树的根节点 被搜索的。
- Returns:
返回值由
finalize()函数决定,该函数可以由用户定义。默认为None。