如何设置索引变量的值? - 皮莫

2024-01-05

我正在开发一个与 AC OPF(最佳功率流)相关的项目,我试图使用 pyomo 解决 python 中的问题。 有3条母线,母线电压和母线角度受到限制。然而,第 1 条总线的电压必须为 1,角度必须为 0。

所以,我尝试了这个:

model.busvoltage = Var(model.bus, initialize=1, bounds=(0.95, 1.05), doc='Bus Voltage')
model.busvoltage[1].fixed=True
model.busangle = Var(model.bus, initialize=0, bounds=(-3.14, 3.14), doc='Bus angle')
model.busangle[1].fixed=True

问题是我只想设置第一条总线的总线电压和总线角度,而不用这些值初始化其他总线。我不知道这是否重要,但我使用 ipopt 作为求解器。

(这是我第一次用 Python 编程)任何帮助将不胜感激!


你在追随.value变量的属性。此外,设置变量的值并同时修复它可以简化为调用.fix():

model.busvoltage = Var(model.bus, bounds=(0.95, 1.05), doc='Bus Voltage')
model.busvoltage[1].fixed = True
model.busvoltage[1].value = 1

model.busangle = Var(model.bus, bounds=(-3.14, 3.14), doc='Bus angle')
model.busangle[1].fix(0)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何设置索引变量的值? - 皮莫 的相关文章

随机推荐