AMPLRepn
(类来自 pyomo.repn.ampl)
- class pyomo.repn.ampl.AMPLRepn(const, linear, nonlinear)[source]
基础类:
objectAMPL NL 格式中表达式的“编译”表示。
这将以AMPL“NL”格式存储表达式的编译形式。数据结构包含6个字段:
- nonlinear
编译表达式的通用非线性部分作为一个包含两个部分的元组:
nl模板字符串:这是包含表达式中所有变量的占位符(
%s)的NL字符串。一个可迭代对象,如果
VarDataID对应于nl模板字符串中的占位符
如果没有表达式的通用非线性部分,则为None。请注意,在AMPLRepnVisitor中,这可能是一个元组片段的列表,但在退出AMPLRepnVisitor时,该列表会被连接成一个单一的元组。
- nl
这保存了此表达式的完整编译表示(包括乘数、常数、线性项和非线性片段),使用与nonlinear属性相同的格式。如果此字段不为None,则应被视为权威,因为有些NL片段无法通过{mult, const, linear, nonlinear}表示(例如,字符串参数)。
方法
__init__(const, linear, nonlinear)append(other)从acceptChildResult追加一个子结果
compile_nonlinear_fragment()compile_repn([prefix, args, named_exprs])duplicate()to_expr(var_map)属性
成员文档