e2nIEE / pandapower

Convenient Power System Modelling and Analysis based on PYPOWER and pandas
https://www.pandapower.org
Other
885 stars 485 forks source link

Running storage_powermodels for multinetwork storage optimization #1227

Open joelsilvaandre opened 3 years ago

joelsilvaandre commented 3 years ago

Dear pandapower team,

when running the Multinetwork storage optimization with PowerModels.jl (as in the storage_powermodels.ipynb example) there is a KeyError stating that 'opf_flow_lim' is not defined in net._options. I tried manually adding the option in the runpm_storage_opf function but this leads to subsequent errors when calling Julia.

Julia and PyCall is working correctly, as I am able to run the opf_powermodels.ipynb

I am using Julia 1.5.4, Pandapower 2.6.0 on Python 3.7.3

MMajidi137 commented 3 years ago

@joelsilvaandre Hi! what is the error exactly? could you paste it here?

joelsilvaandre commented 3 years ago

@MMajidi137 Hi, I get the following error:

KeyError: <PyCall.jlwrap (in a Julia function called from Python)
JULIA: KeyError: key "p_loss" not found
Stacktrace:
 [1] getindex(::Dict{String,Any}, ::String) at .\dict.jl:467
 [2] _check_storage_parameters(::Dict{String,Any}) at C:\Users\joeld\.julia\packages\PowerModels\0MA1y\src\core\data.jl:1642
 [3] apply!(::typeof(PowerModels._check_storage_parameters), ::Dict{String,Any}, ::String; apply_to_subnetworks::Bool) at C:\Users\joeld\.julia\packages\InfrastructureModels\ts81X\src\core\data.jl:26
 [4] #apply_pm!#78 at C:\Users\joeld\.julia\packages\PowerModels\0MA1y\src\core\data.jl:6 [inlined]
 [5] apply_pm! at C:\Users\joeld\.julia\packages\PowerModels\0MA1y\src\core\data.jl:6 [inlined]
 [6] check_storage_parameters at C:\Users\joeld\.julia\packages\PowerModels\0MA1y\src\core\data.jl:1595 [inlined]
 [7] correct_network_data!(::Dict{String,Any}) at C:\Users\joeld\.julia\packages\PowerModels\0MA1y\src\io\common.jl:120
 [8] load_pm_from_json(::String) at C:\Users\joeld\Anaconda3\lib\site-packages\pandapower\opf\pp_2_pm.jl:120
 [9] run_powermodels(::String) at C:\Users\joeld\Anaconda3\lib\site-packages\pandapower\opf\run_powermodels_mn_storage.jl:40
 [10] #invokelatest#1 at .\essentials.jl:710 [inlined]
 [11] invokelatest(::Any, ::Any) at .\essentials.jl:709
 [12] _pyjlwrap_call(::Function, ::Ptr{PyCall.PyObject_struct}, ::Ptr{PyCall.PyObject_struct}) at C:\Users\joeld\.julia\packages\PyCall\BD546\src\callback.jl:28
 [13] pyjlwrap_call(::Ptr{PyCall.PyObject_struct}, ::Ptr{PyCall.PyObject_struct}, ::Ptr{PyCall.PyObject_struct}) at C:\Users\joeld\.julia\packages\PyCall\BD546\src\callback.jl:44>
JasmineGarland commented 2 years ago

Hi Pandapower team,

I am also trying to use the pp.runpm_storage_opf() function in pandapower, but have run into many errors, not associated with my julia interface. Is there a place I can find more documentation about this function?