Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x PANDAPOWER OPF AC在尝试将可控停用和非可控停用合并时出现意外错误_Python 3.x_Numpy Ndarray_Pandapower - Fatal编程技术网

Python 3.x PANDAPOWER OPF AC在尝试将可控停用和非可控停用合并时出现意外错误

Python 3.x PANDAPOWER OPF AC在尝试将可控停用和非可控停用合并时出现意外错误,python-3.x,numpy-ndarray,pandapower,Python 3.x,Numpy Ndarray,Pandapower,有人知道如何解决pandapower的OPF AC在尝试将停用的可控发电机和运行中的非可控发电机合并时产生的错误吗 最简单的例子: 将pandapower导入为pp net=pp.创建\u空\u网络() 总线=pp.create_总线(网络,vn_kv=110,name=“总线2”) pp.create_ext_grid(net,bus=bus,vm_pu=1.00,name=“电网连接”) pp.create_-gen(net,bus=bus,p_-mw=5,min_-p_-mw=5,max_

有人知道如何解决pandapower的OPF AC在尝试将停用的可控发电机和运行中的非可控发电机合并时产生的错误吗

最简单的例子:

将pandapower导入为pp
net=pp.创建\u空\u网络()
总线=pp.create_总线(网络,vn_kv=110,name=“总线2”)
pp.create_ext_grid(net,bus=bus,vm_pu=1.00,name=“电网连接”)
pp.create_-gen(net,bus=bus,p_-mw=5,min_-p_-mw=5,max_-p_-mw=20,name='gen 1')
pp.create_gen(net,bus=bus,p_mw=5,min_p_mw=5,max_p_mw=20,name='gen 3')
net.gen['in_service','controlable']]=[[False,True],
[对,错]]
pp.runopp(净,详细=真)
输出:

---------------------------------------------------------------------------
索引器回溯(最后一次最近调用)
在里面
9[对,错]]
10
--->11 pp.runopp(净,详细=真)
C:\Users\Daniel Rueda\.conda\envs\Tesis\lib\site packages\pandapower\run.py in runopp(网络,详细,计算电压角,检查连接,抑制警告,开关接收比,增量,初始,numba,交通损耗,考虑线路温度,**kwargs)
355检查总线索引和打印警告如果高(净)
356检查生成索引和打印警告如果高(净)
-->357 _最优功率流(净、冗余、抑制警告,**kwargs)
358
359
C:\Users\Daniel Rueda\.conda\envs\Tesis\lib\site packages\pandapower\optimal\u powerflow.py in\u optimal\u powerflow(净、冗余、抑制警告,**kwargs)
39初始结果(净“opf”)
40
--->41 ppc,ppci=_pd2ppc(净)
42
43如果不是ac:
C:\Users\Daniel Rueda\.conda\envs\Tesis\lib\site packages\pandapower\pd2ppc.py in_pd2ppc(网络,序列)
113辅助设置隔离总线脱离服务(网络、ppc)
114
-->115 _build_gen_ppc(净ppc)
116
117如果“pf”处于模式:
C:\Users\Daniel Rueda\.conda\envs\Tesis\lib\site packages\pandapower\build\u gen.py in\u build\u gen\u ppc(net,ppc)
51初始ppc生成(净、ppc、f)
52对于元素(f,t),按gen_顺序。项目()
--->53将元素添加到元素(净、ppc、元素、f、t)
54净订单=总订单
55
C:\Users\Daniel Rueda\.conda\envs\Tesis\lib\site packages\pandapower\build\u gen.py在add\u element\u to\u gen(net、ppc、element、f、t)中
80-构建pp外部网格(网络、ppc、f、t)
81 elif元素==“gen”:
--->82(净值,盈馀,盈馀,盈馀,盈馀)
83 elif元素==“sgen_可控”:
84 _构建_pp _pq _元素(净、ppc、sgen、f、t)
C:\Users\Daniel Rueda\.conda\envs\Tesis\lib\site packages\pandapower\build\u gen.py in\u build\u pp\u gen(net、ppc、f、t)
220 ppc=_check_gen_vm_限制(网络、ppc、gen_总线、gen_is)
221如果net.gen.列中的“可控”:
-->222 ppc=_强制_可控_vm_pu p_mw(净、ppc、发电量为、f、t)
223
224
C:\Users\Daniel Rueda\.conda\envs\Tesis\lib\site packages\pandapower\build\u gen.py in\u enforce\u controlable\u vm\u pu\u p\u mw(净、ppc、gen\u is、f、t)
184#如果有一些不可控发电机组->设置vm#u pu和p#u mw固定
185如果np.有(不可控):
-->186总线=网络[“发电机”][“总线”]。值[不可控]
187 vm_pu=net[“gen”][“vm_pu”]。值[不可控]
188 p_mw=净[“发电”][“p_mw”]。数值[不可控]
索引器错误:布尔索引与维度0上的索引数组不匹配;维度为2,但相应的布尔维度为1
我正在分析错误,并能够识别:

  • 首先,创建一个布尔值,并显示生成器的打开或关闭状态
[假,真]

  • 然后,根据先前创建的数组(仅服务中的生成器),根据生成器的特征创建一个布尔值(如果生成器是可控的)
[False]

  • 现在,对于这个数组,每个元素的布尔逻辑都被反转,以根据先前创建的数组(仅服务中的生成器)获得一个具有生成器特性的数组(如果生成器不可控)
[True]

  • 最后,使用可控发电机连接的母线的索引创建a,但 这是自 pandas系列,其中阵列包括停止使用的发电机 而阵列滤波的可控特性已经存在 仅考虑使用中的发电机