JAO Static Grid Model Converter Function
The from_jao function allows users to convert the Static Grid Model provided by JAO (Joint Allocation Office) into a pandapower network by reading and processing the provided Excel and HTML files.
Function Overview
- pandapower.converter.jao.from_jao(excel_file_path, html_file_path, extend_data_for_grid_group_connections, drop_grid_groups_islands=False, apply_data_correction=True, max_i_ka_fillna=999, **kwargs)
Converts European (Core) EHV grid data provided by JAO (Joint Allocation Office), the “Single Allocation Platform (SAP) for all European Transmission System Operators (TSOs) that operate in accordance to EU legislation”.
Data Sources and Availability: The data are available at the website JAO Static Grid Model (November 2024). There, a map is provided to get an fine overview of the geographical extent and the scope of the data. These inlcude information about European (Core) lines, tielines, and transformers.
Limitations: No information is available on load or generation. The data quality with regard to the interconnection of the equipment, the information provided and the (incomplete) geodata should be considered with caution.
Features of the converter: - Data Correction: corrects known data inconsistencies, such as inconsistent spellings and missing necessary information. - Geographical Data Parsing: Parses geographical data from the HTML file to add geolocation information to buses and lines. - Grid Group Connections: Optionally extends the network by connecting islanded grid groups to avoid disconnected components. - Data Customization: Allows for customization through additional parameters to control transformer creation, grid group dropping, and voltage level deviations.
- Parameters:
excel_file_path (str) – input data including electrical parameters of grids’ utilities, stored in multiple sheets of an excel file
html_file_path (str | None) – input data for geo information. If The converter should be run without geo information, None can be passed., provided by an html file
extend_data_for_grid_group_connections (bool) – if True, connections (additional transformers and merging buses) are created to avoid islanded grid groups, by default False
drop_grid_groups_islands (bool) – if True, islanded grid groups will be dropped if their number of buses is below min_bus_number default for this is 6 (default: False)
apply_data_correction (bool) – _description_ (default: True)
max_i_ka_fillna (float | int) – value to fill missing values or data of false type in max_i_ka of lines and transformers. If no value should be set, you can also pass np.nan. (default: 999)
- Keyword Arguments:
minimal_trafo_invention (Optional[bool]) – applies if extend_data_for_grid_group_connections is True. Then, if minimal_trafo_invention is True, adding transformers stops when no grid groups is islanded anymore (does not apply for release version 5 or 6, i.e. it does not care what value is passed to minimal_trafo_invention). If False, all equally named buses that have different voltage level and lay in different groups will be connected via additional transformers (default: False)
min_bus_number (Optional[int|str]) – Threshold value to decide which small grid groups should be dropped and which large grid groups should be kept. If all islanded grid groups should be dropped except of the one largest, set “max”. If all grid groups that do not contain a slack element should be dropped, set “unsupplied”. (default: 6)
rel_deviation_threshold_for_trafo_bus_creation (Optional[float]) – If the voltage level of transformer locations is far different than the transformer data, additional buses are created. rel_deviation_threshold_for_trafo_bus_creation defines the tolerance in which no additional buses are created. (default: 0.2)
log_rel_vn_deviation (Optional[float]) – This parameter allows a range below rel_deviation_threshold_for_trafo_bus_creation in which a warning is logged instead of a creating additional buses. (default: 0.12)
- Returns:
net created from the jao data
- Return type:
pandapowerNet
Example
>>> from pathlib import Path >>> import os >>> from pandapower.converter.jao.from_jao import from_jao >>> net = from_jao() >>> home = str(Path.home()) >>> # assume that the files are located at your desktop: >>> excel_file_path = os.path.join(home, "desktop", "202409_Core Static Grid Mode_6th release") >>> html_file_path = os.path.join(home, "desktop", "2024-09-13_Core_SGM_publication.html") >>> net = from_jao(excel_file_path, html_file_path, True, drop_grid_groups_islands=True)