PowerModels.jl
PowerModels.jl copied to clipboard
Move data parser to seperate package
Sometimes I want to read a matpower file, but don't want to load/precompile JuMP and all the rest of the package dependencies of PowerModels.
One aspect of this is that PGLib.jl and PowerPlots.jl both end up having JuMP as a dependency even though they are only a data provider and plotting package.
Is there any interest in moving the file parsing to be a separate package from PowerModels? (would this require a change across the InfrastructureModels ecosystem?)
This is a good idea that has been requested for a few years. So far it has not happened due to these technical points.
The primary technical challenge is determine a data model that will be used in a would-be standalone data power parsing package. Right now the PowerModels parsers are intertwined with the PowerModels data model based on Dicts, which is probably not the right data model for a high performance stand-alone package.
For example, there is a nice discussion here about how a better data model can increase performance of the PSSE parser. https://discourse.julialang.org/t/ann-powerflowdata-jl-a-parser-for-pss-e-format-raw-power-flow-data-files/71722/9
A secondary technical challenge for a stand alone Matpower parser is that PowerModels uses some generic parsing functionality from InfrastructureModels. So a would-be stand alone package will need to extract some subset of that functionality.
@noahrhodes You can parse files using PowerSystems.jl without requiring the modeling layers.
It is possible to call
using PowerSystems
sys = PowerSystems.PowerModelsData(file)