PyMacroFin 中具有多个约束的系统
Systems with multiple constraints in PyMacroFin
我对工具箱 PyMacroFin 有疑问。
是否可以处理同时约束?我的意思是例如我们>1 && wr<0? (we和wr是两个需要同时约束的内生变量)
您可以按照文档的 this page 执行以下操作:
m.constraint(‘we’,’>’,1, label=’one’)
m.constraint(‘wr’,’<’,0, label=’two’)
s = system([‘one’,’two’],m)
…
m.systems.append(s)
基本上,您只需将约束标签列表添加到系统中即可。解决方案过程应该对系统进行排序,如果您有一个系统具有两个约束,那么另一个系统只有一个约束,它将首先检查组合约束,然后检查单个约束。例如,您可以执行以下操作:
m.constraint(‘we’,’>’,1, label=’one’)
m.constraint(‘wr’,’<’,0, label=’two’)
s1 = system([‘one’,’two’],m)
…
m.systems.append(s1)
s2 = system([‘one’],m)
…
m.systems.append(s2)
如果we <= 1且wr >=0,那么它将切换到系统s1。但是,如果我们 <= 1 且 wr < 0,它将切换到系统 2。
我对工具箱 PyMacroFin 有疑问。 是否可以处理同时约束?我的意思是例如我们>1 && wr<0? (we和wr是两个需要同时约束的内生变量)
您可以按照文档的 this page 执行以下操作:
m.constraint(‘we’,’>’,1, label=’one’)
m.constraint(‘wr’,’<’,0, label=’two’)
s = system([‘one’,’two’],m)
…
m.systems.append(s)
基本上,您只需将约束标签列表添加到系统中即可。解决方案过程应该对系统进行排序,如果您有一个系统具有两个约束,那么另一个系统只有一个约束,它将首先检查组合约束,然后检查单个约束。例如,您可以执行以下操作:
m.constraint(‘we’,’>’,1, label=’one’)
m.constraint(‘wr’,’<’,0, label=’two’)
s1 = system([‘one’,’two’],m)
…
m.systems.append(s1)
s2 = system([‘one’],m)
…
m.systems.append(s2)
如果we <= 1且wr >=0,那么它将切换到系统s1。但是,如果我们 <= 1 且 wr < 0,它将切换到系统 2。