System
library management with PowerSystemCaseBuilder.jl
¶Originally Contributed by: Clayton Barrows
PowerSystemCaseBuilder.jl provides a utility to manage a library of System
s.
The package has utilities to list the available system data and to create instances of each system. By keeping track of which systems
have been constructed locally, it makes the re-instantiation of systems efficient by utilizing the serialization features and avoiding
the parsing process for systems that have been previously constructed.
using PowerSystemCaseBuilder
show_systems()
Category: MatPowerTestSystems ┌──────────────────────────────┬───────────────────────────────────┐ │ Name │ Descriptor │ ├──────────────────────────────┼───────────────────────────────────┤ │ matpower_ACTIVSg10k_sys │ ACTIVSg10k Test system │ │ matpower_ACTIVSg2000_sys │ MATPOWER ACTIVSg2000 Test system │ │ matpower_RTS_GMLC_sys │ Matpower RTS-GMLC Test system │ │ matpower_case14_sys │ Matpower Test system │ │ matpower_case24_sys │ Matpower Test system │ │ matpower_case2_sys │ Matpower Test system │ │ matpower_case30_sys │ Matpower Test system │ │ matpower_case3_tnep_sys │ Matpower Test system │ │ matpower_case5_asym_sys │ Matpower Test system │ │ matpower_case5_dc_sys │ Matpower Test system │ │ matpower_case5_gap_sys │ Matpower Test system │ │ matpower_case5_pwlc_sys │ Matpower Test system │ │ matpower_case5_re_intid_sys │ Matpower Test system │ │ matpower_case5_re_sys │ Matpower Test system │ │ matpower_case5_re_uc_pwl_sys │ Matpower Test system │ │ matpower_case5_re_uc_sys │ Matpower Test system │ │ matpower_case5_strg_sys │ Matpower Test system │ │ matpower_case5_sys │ Matpower Test system │ │ matpower_case5_th_intid_sys │ Matpower Test system │ │ matpower_case5_tnep_sys │ Matpower Test system │ │ matpower_case6_sys │ Matpower Test system │ │ matpower_case7_tplgy_sys │ Matpower Test system │ │ matpower_frankenstein_00_sys │ Matpower Frankenstein Test system │ └──────────────────────────────┴───────────────────────────────────┘ Category: PSITestSystems ┌──────────────────────────┬───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ │ Name │ Descriptor │ ├──────────────────────────┼───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ RTS_GMLC_sys │ RTS-GMLC Full system from git repo for day-ahead simulations │ │ batt_test_case_b_sys │ test system for Storage Energy Target formulation(case-b) │ │ batt_test_case_c_sys │ test system for Storage Energy Target formulation(case-c) │ │ batt_test_case_d_sys │ test system for Storage Energy Target formulation(case-d) │ │ batt_test_case_e_sys │ test system for Storage Energy Target formulation(case-e) │ │ batt_test_case_f_sys │ test system for Storage Energy Target formulation(case-f) │ │ c_duration_test │ 1 Bus for duration testing │ │ c_linear_pwl_test │ 1 Bus lineal PWL linear testing │ │ c_market_bid_cost │ 1 bus system with MarketBidCost Model │ │ c_ramp_test │ 1-bus for ramp testing │ │ c_sos_pwl_test │ 1 Bus lineal PWL sos testing │ │ c_sys14 │ 14-bus system │ │ c_sys14_dc │ 14-bus system with DC line │ │ c_sys5 │ 5-bus system │ │ c_sys5_bat │ 5-bus system with Storage Device │ │ c_sys5_bat_ems │ 5-bus system with Storage Device with EMS │ │ c_sys5_dc │ Systems with HVDC data in the branches │ │ c_sys5_ed │ 5-bus System for Economic Dispatch Simulations │ │ c_sys5_hy │ 5-bus system with HydroDispatch │ │ c_sys5_hy_ed │ 5-bus system with Hydro-Power for Economic Dispatch Simulations │ │ c_sys5_hy_ems_ed │ 5-bus system with Hydro-Power for Economic Dispatch Simulations │ │ c_sys5_hy_ems_uc │ 5-bus system with Hydro-Power for Unit Commitment Simulations │ │ c_sys5_hy_uc │ 5-bus system with Hydro-Power for Unit Commitment Simulations │ │ c_sys5_hybrid │ 5-bus system with Hybrid devices │ │ c_sys5_hyd │ 5-bus system with Hydro Energy Reservoir │ │ c_sys5_hyd_ems │ 5-bus system with Hydro Energy Reservoir │ │ c_sys5_il │ System with Interruptible Load │ │ c_sys5_ml │ │ │ c_sys5_pglib │ 5-bus with ThermalMultiStart │ │ c_sys5_pglib_sim │ 5-bus with ThermalMultiStart for simulation │ │ c_sys5_phes_ed │ 5-bus system with Hydro Pumped Energy Storage for Economic Dispatch Simulations │ │ c_sys5_pwl_ed │ 5-bus with pwl cost function │ │ c_sys5_pwl_ed_nonconvex │ 5-bus with SOS cost function for Economic Dispatch Simulations │ │ c_sys5_pwl_uc │ 5-bus with SOS cost function for Unit Commitment Simulations │ │ c_sys5_re │ 5-bus system with Renewable Energy │ │ c_sys5_re_only │ 5-bus system with only Renewable Energy │ │ c_sys5_reg │ 5-bus with regulation devices and AGC │ │ c_sys5_uc │ 5-bus system for Unit Commitment Simulations │ │ hydro_test_case_b_sys │ test system for HydroGen Energy Target formulation(case-b) │ │ hydro_test_case_c_sys │ test system for HydroGen Energy Target formulation(case-c) │ │ hydro_test_case_d_sys │ test system for HydroGen Energy Target formulation(case-d) │ │ hydro_test_case_e_sys │ test system for HydroGen Energy Target formulation(case-e) │ │ hydro_test_case_f_sys │ test system for HydroGen Energy Target formulation(case-f) │ │ modified_RTS_GMLC_DA_sys │ Modified RTS-GMLC Full system for day-ahead simulations\n with modifications to reserve definitions to improve feasibility │ │ modified_RTS_GMLC_RT_sys │ Modified RTS-GMLC Full system for real-time simulations\n with modifications to reserve definitions to improve feasibility │ │ test_RTS_GMLC_sys │ RTS-GMLC test system with day-ahead forecast │ └──────────────────────────┴───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ Category: PSSETestSystems ┌─────────────────────────────────┬────────────────────────────────────┐ │ Name │ Descriptor │ ├─────────────────────────────────┼────────────────────────────────────┤ │ psse_3bus_gen_cls_sys │ PSSE 3-bus Test system with CLS │ │ psse_3bus_no_cls_sys │ PSSE 3-bus Test system without CLS │ │ psse_ACTIVSg2000_sys │ PSSE ACTIVSg2000 Test system │ │ psse_Benchmark_4ger_33_2015_sys │ PSSE Benchmark system │ │ psse_OMIB_sys │ PSSE OMIB Test system │ │ psse_RTS_GMLC_sys │ PSSE .raw RTS-GMLC system │ │ pti_case14_sys │ PSSE 14-bus Test system │ │ pti_case24_sys │ PSSE 24-bus Test system │ │ pti_case30_sys │ PSSE 30-bus Test system │ │ pti_case3_sys │ PSSE 3-bus Test system │ │ pti_case5_alc_sys │ PSSE 5-bus alc Test system │ │ pti_case5_sys │ PSSE 5-bus Test system │ │ pti_case73_sys │ PSSE 73-bus Test system │ │ pti_case7_tplgy_sys │ PSSE 7-bus Test system │ │ pti_frankenstein_00_2_sys │ PSSE frankenstein Test system │ │ pti_frankenstein_00_sys │ PSSE frankenstein Test system │ │ pti_frankenstein_20_sys │ PSSE frankenstein Test system │ │ pti_frankenstein_70_sys │ PSSE frankenstein Test system │ │ pti_parser_test_a_sys │ PSSE Test system │ │ pti_three_winding_mag_test_sys │ PSSE Test system │ │ pti_three_winding_test_2_sys │ PSSE Test system │ │ pti_three_winding_test_sys │ PSSE Test system │ │ pti_two_terminal_hvdc_test_sys │ PSSE Test system │ │ pti_two_winding_mag_test_sys │ PSSE Test system │ │ pti_vsc_hvdc_test_sys │ PSSE Test system │ └─────────────────────────────────┴────────────────────────────────────┘ Category: PSYTestSystems ┌──────────────────────┬──────────────────────────────────┐ │ Name │ Descriptor │ ├──────────────────────┼──────────────────────────────────┤ │ dynamic_inverter_sys │ PSY test dynamic inverter system │ │ tamu_ACTIVSg2000_sys │ TAMU ACTIVSg2000 Test system │ └──────────────────────┴──────────────────────────────────┘ Category: SIIPExampleSystems ┌────────────────────┬────────────────────────────────────────────┐ │ Name │ Descriptor │ ├────────────────────┼────────────────────────────────────────────┤ │ 5_bus_hydro_ed_sys │ 5-bus hydro economic dispatch data │ │ 5_bus_hydro_uc_sys │ 5-bus hydro unit commitment data │ │ 5_bus_hydro_wk_sys │ 5-bus hydro system for weekly dispatch │ │ 5_bus_matpower_AGC │ matpower 5-bus system with AGC time series │ │ 5_bus_matpower_DA │ matpower 5-bus system with DA time series │ │ 5_bus_matpower_RT │ matpower 5-bus system with RT time series │ └────────────────────┴────────────────────────────────────────────┘
the available categories can be displayed with:
show_categories()
MatPowerTestSystems PSITestSystems PSSETestSystems PSYTestSystems SIIPExampleSystems
the available systems can be displayed with:
show_systems(SIIPExampleSystems)
┌────────────────────┬────────────────────────────────────────────┐ │ Name │ Descriptor │ ├────────────────────┼────────────────────────────────────────────┤ │ 5_bus_hydro_ed_sys │ 5-bus hydro economic dispatch data │ │ 5_bus_hydro_uc_sys │ 5-bus hydro unit commitment data │ │ 5_bus_hydro_wk_sys │ 5-bus hydro system for weekly dispatch │ │ 5_bus_matpower_AGC │ matpower 5-bus system with AGC time series │ │ 5_bus_matpower_DA │ matpower 5-bus system with DA time series │ │ 5_bus_matpower_RT │ matpower 5-bus system with RT time series │ └────────────────────┴────────────────────────────────────────────┘
System
¶The first time this is run, it will parse csv data. Subsequent executions will rely on serialized data and will execute much faster
sys = build_system(SIIPExampleSystems, "5_bus_hydro_ed_sys")
┌ Info: Building new system 5_bus_hydro_ed_sys from raw data └ sys_descriptor.raw_data = "/Users/cbarrows/.julia/packages/PowerSystemCaseBuilder/1xViZ/data" [ Info: Parsing csv data in Hydro_Upstream_Input.csv ... [ Info: Successfully parsed Hydro_Upstream_Input.csv [ Info: Parsing csv data in branch.csv ... [ Info: Successfully parsed branch.csv [ Info: Parsing csv data in bus.csv ... [ Info: Successfully parsed bus.csv [ Info: Parsing csv data in gen.csv ... [ Info: Successfully parsed gen.csv [ Info: Parsing csv data in reserves.csv ... [ Info: Successfully parsed reserves.csv [ Info: Parsing csv data in storage.csv ... [ Info: Successfully parsed storage.csv [ Info: Unit System changed to UnitSystem.DEVICE_BASE = 1 ┌ Warning: Missing PowerSystems.InputCategoryModule.InputCategory.DC_BRANCH = 3 data. └ @ PowerSystems ~/.julia/packages/PowerSystems/N2l8o/src/parsers/power_system_table_data.jl:212 ┌ Warning: Missing PowerSystems.InputCategoryModule.InputCategory.LOAD = 5 data. └ @ PowerSystems ~/.julia/packages/PowerSystems/N2l8o/src/parsers/power_system_table_data.jl:212 ┌ Warning: Missing PowerSystems.InputCategoryModule.InputCategory.DC_BRANCH = 3 data. └ @ PowerSystems ~/.julia/packages/PowerSystems/N2l8o/src/parsers/power_system_table_data.jl:212 ┌ Warning: Missing PowerSystems.InputCategoryModule.InputCategory.LOAD = 5 data. └ @ PowerSystems ~/.julia/packages/PowerSystems/N2l8o/src/parsers/power_system_table_data.jl:212 [ Info: Adding contributing generators for REG1 by category ┌ Warning: no component category=Generator name=SolarBusC └ @ InfrastructureSystems ~/.julia/packages/InfrastructureSystems/lYELp/src/system_data.jl:448 ┌ Warning: no component category=Generator name=WindBusA └ @ InfrastructureSystems ~/.julia/packages/InfrastructureSystems/lYELp/src/system_data.jl:448 [ Info: Serialized time series data to /Users/cbarrows/.julia/packages/PowerSystemCaseBuilder/1xViZ/data/serialized_system/ForecastOnly/5_bus_hydro_ed_sys_time_series_storage.h5. [ Info: Serialized System to /Users/cbarrows/.julia/packages/PowerSystemCaseBuilder/1xViZ/data/serialized_system/ForecastOnly/5_bus_hydro_ed_sys.json
Base Power: 100.0
Num components: 35
ConcreteType | SuperTypes | Count | |
---|---|---|---|
String | String | Int64 | |
1 | Arc | Topology <: Component <: InfrastructureSystemsComponent <: InfrastructureSystemsType <: Any | 6 |
2 | Area | AggregationTopology <: Topology <: Component <: InfrastructureSystemsComponent <: InfrastructureSystemsType <: Any | 2 |
3 | Bus | Topology <: Component <: InfrastructureSystemsComponent <: InfrastructureSystemsType <: Any | 5 |
4 | HydroDispatch | HydroGen <: Generator <: StaticInjection <: Device <: Component <: InfrastructureSystemsComponent <: InfrastructureSystemsType <: Any | 1 |
5 | HydroEnergyReservoir | HydroGen <: Generator <: StaticInjection <: Device <: Component <: InfrastructureSystemsComponent <: InfrastructureSystemsType <: Any | 2 |
6 | HydroPumpedStorage | HydroGen <: Generator <: StaticInjection <: Device <: Component <: InfrastructureSystemsComponent <: InfrastructureSystemsType <: Any | 1 |
7 | Line | ACBranch <: Branch <: Device <: Component <: InfrastructureSystemsComponent <: InfrastructureSystemsType <: Any | 5 |
8 | LoadZone | AggregationTopology <: Topology <: Component <: InfrastructureSystemsComponent <: InfrastructureSystemsType <: Any | 2 |
9 | PowerLoad | StaticLoad <: ElectricLoad <: StaticInjection <: Device <: Component <: InfrastructureSystemsComponent <: InfrastructureSystemsType <: Any | 3 |
10 | TapTransformer | ACBranch <: Branch <: Device <: Component <: InfrastructureSystemsComponent <: InfrastructureSystemsType <: Any | 2 |
11 | ThermalStandard | ThermalGen <: Generator <: StaticInjection <: Device <: Component <: InfrastructureSystemsComponent <: InfrastructureSystemsType <: Any | 5 |
12 | VariableReserve{ReserveUp} | Reserve{ReserveUp} <: Service <: Component <: InfrastructureSystemsComponent <: InfrastructureSystemsType <: Any | 1 |
Components with time series data: 6
Total StaticTimeSeries: 12
Total Forecasts: 12
Resolution: 60 minutes
First initial time: 2020-01-01T00:00:00
Last initial time: 2020-03-24T12:00:00
Horizon: 12
Interval: 60 minutes
Forecast window count: 2005
This notebook was generated using Literate.jl.