ieee118_power_flow_data
Data pipeline to build power flow cases of IEEE-118 power system
Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 4 DOI reference(s) in README -
✓Academic publication links
Links to: ieee.org, zenodo.org -
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.2%) to scientific vocabulary
Keywords
Repository
Data pipeline to build power flow cases of IEEE-118 power system
Basic Info
Statistics
- Stars: 19
- Watchers: 1
- Forks: 7
- Open Issues: 0
- Releases: 2
Topics
Metadata Files
README.md
Power Flow Data of IEEE-118 Bus System
The repository contains a data pipeline to build power flow cases of an IEEE-118 like power system with an hourly frequency for one year.
The system consists of 118 buses, 186 branches (177 lines, 9 transformers), 91 loads, 321 generators, and looks as follows (other image formats can be found here).

The prepared power flow cases can be used in research purposes for power flow analysis, static security analysis, etc.
Data Preparation Steps
The pipeline for data preparation and building power flow cases is separated into stages: - parse (extract necessary parameters from the raw data) - transform (combine and convert data to use in further steps) - prepare (compose final dataset to create power flow cases) - build (create power flow cases using the PandaPower engine)
The presented pipeline processes mainly a dataset described in the paper "An Extended IEEE 118-Bus Test System With High Renewable Penetration" (aka "NREL-118"). The NREL-118 dataset contains information about a power system based on the transmission representation of the IEEE-118 test system with a lot of modifications which are analyzed in this notebook. To append the data with some additional info, the information about the IEEE-118 test system prepared by Illinois Institute of Technology (version of 2004) is also used (see the JEAS-118 dataset) in the stages.
Actions performed at each stage and all the assumptions made during the preparation process are described in this notebook. The naming of variables in the prepared data corresponds to the project convention.
To ensure the execution order and reproducibility of the stages, Data Version Control is used. The configuration of the stages can be found in the DVC config.
How to Use
Power system data (model structure, time-series, plots, etc.) and power flow cases built using the latest release version of the pipeline can be downloaded from the release page (see, the "dataset-*.zip" archive).
To customize the pipeline or to build power flow cases manually:
1. Download the source code from the latest release or clone the repository.
2. Go to the project directory, create and activate a virtual environment, install project dependencies with pip or use poetry.
3. Add customizations or tune parameters that are listed in definitions and used in the computation.
4. Run main.py script in the activated environment. It is also possible to add the project directory to PYTHONPATH and run dvc repro in the terminal.
5. After completing all the stages, the power flow cases will be saved in the folder "samples" in the project directory.
License and Copyright
This work is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
Citation
If you use the repository code or prepared dataset (power system data, power flow cases, plots, etc.) in your research, please cite the following BibTeX entry:
@software{Tsydenov_Power_Flow_Data_2022,
author = {Tsydenov, Evgeny and Prokhorov, Anton},
doi = {10.5281/zenodo.7306932},
license = {CC-BY-NC-SA-4.0},
title = {{Power Flow Data of IEEE-118 Bus System}},
url = {https://github.com/evgenytsydenov/ieee118_power_flow_data},
}
Contribution
Everyone is welcome to contribute to this project. Feel free to share your ideas to improve the dataset and make it more valuable to the power engineering community. See our Contribution Guide for details.
Citation (CITATION.cff)
cff-version: 1.2.0 title: "Power Flow Data of IEEE-118 Bus System" authors: - family-names: "Tsydenov" given-names: "Evgeny" orcid: "https://orcid.org/0000-0002-0373-3782" email: "evgenytsydenov@tpu.ru" - family-names: "Prokhorov" given-names: "Anton" orcid: "https://orcid.org/0000-0002-7516-6027" email: "antonprokhorov@tpu.ru" abstract: "The repository contains a data pipeline to build power flow cases of an IEEE-118 like power system with an hourly frequency for one year. Power system data (model structure, time-series, plots, etc.) and power flow cases built using the pipeline can be downloaded from the release page." message: "If you use the repository code or prepared dataset (power system data, power flow cases, plots, etc.) in your research, please cite it as below." doi: 10.5281/zenodo.7306932 url: "https://github.com/evgenytsydenov/ieee118_power_flow_data" license: "CC-BY-NC-SA-4.0" keywords: - "power engineering" - "power flow" - "power flow analysis" - "power system" - "ieee18"
GitHub Events
Total
- Watch event: 7
- Fork event: 3
Last Year
- Watch event: 7
- Fork event: 3
Committers
Last synced: about 2 years ago
Top Committers
| Name | Commits | |
|---|---|---|
| Evgeny Tsydenov | e****v@g****m | 183 |
Issues and Pull Requests
Last synced: about 2 years ago
All Time
- Total issues: 0
- Total pull requests: 8
- Average time to close issues: N/A
- Average time to close pull requests: 8 minutes
- Total issue authors: 0
- Total pull request authors: 2
- Average comments per issue: 0
- Average comments per pull request: 0.0
- Merged pull requests: 5
- Bot issues: 0
- Bot pull requests: 3
Past Year
- Issues: 0
- Pull requests: 2
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 0.0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 2
Top Authors
Issue Authors
Pull Request Authors
- dependabot[bot] (6)
- evgenytsydenov (5)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- 186 dependencies
- dvc ^2.15.0
- jupyter ^1.0.0
- matplotlib ^3.5.2
- numba ^0.56.2
- numpy ^1.23.1
- pandapower ^2.10.1
- pandas ^1.4.3
- plotly ^5.10.0
- python >=3.10,<3.11
- python-docx ^0.8.11
- requests ^2.28.1
- seaborn ^0.11.2
- aiohttp ==3.8.3
- aiohttp-retry ==2.8.3
- aiosignal ==1.2.0
- amqp ==5.1.1
- antlr4-python3-runtime ==4.9.3
- anyio ==3.6.2
- appdirs ==1.4.4
- appnope ==0.1.3
- argon2-cffi ==21.3.0
- argon2-cffi-bindings ==21.2.0
- asttokens ==2.0.8
- async-timeout ==4.0.2
- asyncssh ==2.12.0
- atpublic ==3.1.1
- attrs ==22.1.0
- backcall ==0.2.0
- beautifulsoup4 ==4.11.1
- billiard ==3.6.4.0
- bleach ==5.0.1
- celery ==5.2.7
- certifi ==2022.9.24
- cffi ==1.15.1
- charset-normalizer ==2.1.1
- click ==8.1.3
- click-didyoumean ==0.3.0
- click-plugins ==1.1.1
- click-repl ==0.2.0
- colorama ==0.4.6
- commonmark ==0.9.1
- configobj ==5.0.6
- contourpy ==1.0.5
- cryptography ==38.0.1
- cycler ==0.11.0
- debugpy ==1.6.3
- decorator ==5.1.1
- deepdiff ==6.2.1
- defusedxml ==0.7.1
- dictdiffer ==0.9.0
- diskcache ==5.4.0
- distro ==1.8.0
- dpath ==2.0.6
- dulwich ==0.20.46
- dvc ==2.31.0
- dvc-data ==0.22.0
- dvc-http ==2.27.2
- dvc-objects ==0.11.0
- dvc-render ==0.0.12
- dvc-task ==0.1.4
- dvclive ==0.12.1
- entrypoints ==0.4
- executing ==1.1.1
- fastjsonschema ==2.16.2
- filelock ==3.8.0
- flatten-dict ==0.4.2
- flufl-lock ==7.1.1
- fonttools ==4.38.0
- frozenlist ==1.3.1
- fsspec ==2022.10.0
- funcy ==1.17
- future ==0.18.2
- gitdb ==4.0.9
- gitpython ==3.1.29
- grandalf ==0.6
- hydra-core ==1.2.0
- idna ==3.4
- ipykernel ==6.16.2
- ipython ==8.5.0
- ipython-genutils ==0.2.0
- ipywidgets ==8.0.2
- iterative-telemetry ==0.0.5
- jedi ==0.18.1
- jinja2 ==3.1.2
- jsonschema ==4.16.0
- jupyter ==1.0.0
- jupyter-client ==7.4.4
- jupyter-console ==6.4.4
- jupyter-core ==4.11.2
- jupyter-server ==1.21.0
- jupyterlab-pygments ==0.2.2
- jupyterlab-widgets ==3.0.3
- kiwisolver ==1.4.4
- kombu ==5.2.4
- llvmlite ==0.39.1
- lxml ==4.9.1
- markupsafe ==2.1.1
- matplotlib ==3.6.1
- matplotlib-inline ==0.1.6
- mistune ==2.0.4
- multidict ==6.0.2
- nanotime ==0.5.2
- nbclassic ==0.4.5
- nbclient ==0.7.0
- nbconvert ==7.2.3
- nbformat ==5.7.0
- nest-asyncio ==1.5.6
- networkx ==2.8.7
- notebook ==6.5.1
- notebook-shim ==0.2.0
- numba ==0.56.3
- numpy ==1.23.4
- omegaconf ==2.2.3
- ordered-set ==4.1.0
- packaging ==21.3
- pandapower ==2.10.1
- pandas ==1.5.1
- pandocfilters ==1.5.0
- parso ==0.8.3
- pathspec ==0.9.0
- pexpect ==4.8.0
- pickleshare ==0.7.5
- pillow ==9.2.0
- plotly ==5.11.0
- prometheus-client ==0.15.0
- prompt-toolkit ==3.0.31
- psutil ==5.9.3
- ptyprocess ==0.7.0
- pure-eval ==0.2.2
- py ==1.11.0
- pycparser ==2.21
- pydot ==1.4.2
- pygit2 ==1.10.1
- pygments ==2.13.0
- pygtrie ==2.5.0
- pyparsing ==3.0.9
- pyrsistent ==0.18.1
- python-dateutil ==2.8.2
- python-docx ==0.8.11
- pytz ==2022.5
- pywin32 ==304
- pywinpty ==2.0.9
- pyyaml ==6.0
- pyzmq ==24.0.1
- qtconsole ==5.3.2
- qtpy ==2.2.1
- requests ==2.28.1
- rich ==12.6.0
- ruamel-yaml ==0.17.21
- ruamel-yaml-clib ==0.2.7
- scipy ==1.9.3
- scmrepo ==0.1.2
- seaborn ==0.11.2
- send2trash ==1.8.0
- setuptools ==65.5.0
- setuptools-scm ==7.0.5
- shortuuid ==1.0.9
- shtab ==1.5.5
- six ==1.16.0
- smmap ==5.0.0
- sniffio ==1.3.0
- soupsieve ==2.3.2.post1
- stack-data ==0.5.1
- tabulate ==0.9.0
- tenacity ==8.1.0
- terminado ==0.17.0
- tinycss2 ==1.2.1
- tomli ==2.0.1
- tomlkit ==0.11.6
- tornado ==6.2
- tqdm ==4.64.1
- traitlets ==5.5.0
- typing-extensions ==4.4.0
- urllib3 ==1.26.12
- vine ==5.0.0
- voluptuous ==0.13.1
- wcwidth ==0.2.5
- webencodings ==0.5.1
- websocket-client ==1.4.1
- widgetsnbextension ==4.0.3
- yarl ==1.8.1
- zc-lockfile ==2.0
- actions/checkout v3 composite
- actions/setup-python v4 composite
- actions/upload-release-asset v1.0.2 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- pre-commit/action v3.0.0 composite
- aiohttp ==3.8.3 development
- aiohttp-retry ==2.8.3 development
- aiosignal ==1.3.1 development
- amqp ==5.1.1 development
- antlr4-python3-runtime ==4.9.3 development
- anyio ==3.6.2 development
- appdirs ==1.4.4 development
- appnope ==0.1.3 development
- argon2-cffi ==21.3.0 development
- argon2-cffi-bindings ==21.2.0 development
- asttokens ==2.1.0 development
- async-timeout ==4.0.2 development
- asyncssh ==2.12.0 development
- atpublic ==3.1.1 development
- attrs ==22.1.0 development
- backcall ==0.2.0 development
- beautifulsoup4 ==4.11.1 development
- billiard ==3.6.4.0 development
- black ==22.10.0 development
- bleach ==5.0.1 development
- celery ==5.2.7 development
- certifi ==2022.9.24 development
- cffi ==1.15.1 development
- cfgv ==3.3.1 development
- charset-normalizer ==2.1.1 development
- click ==8.1.3 development
- click-didyoumean ==0.3.0 development
- click-plugins ==1.1.1 development
- click-repl ==0.2.0 development
- colorama ==0.4.6 development
- commonmark ==0.9.1 development
- configobj ==5.0.6 development
- contourpy ==1.0.6 development
- cryptography ==38.0.3 development
- cycler ==0.11.0 development
- debugpy ==1.6.3 development
- decorator ==5.1.1 development
- deepdiff ==6.2.1 development
- defusedxml ==0.7.1 development
- dictdiffer ==0.9.0 development
- diskcache ==5.4.0 development
- distlib ==0.3.6 development
- distro ==1.8.0 development
- dpath ==2.0.6 development
- dulwich ==0.20.50 development
- dvc ==2.34.0 development
- dvc-data ==0.25.3 development
- dvc-http ==2.27.2 development
- dvc-objects ==0.12.2 development
- dvc-render ==0.0.12 development
- dvc-task ==0.1.4 development
- dvclive ==1.0.1 development
- entrypoints ==0.4 development
- executing ==1.2.0 development
- fastjsonschema ==2.16.2 development
- filelock ==3.8.0 development
- flake8 ==5.0.4 development
- flake8-docstrings ==1.6.0 development
- flatten-dict ==0.4.2 development
- flufl-lock ==7.1.1 development
- fonttools ==4.38.0 development
- frozenlist ==1.3.3 development
- fsspec ==2022.11.0 development
- funcy ==1.17 development
- future ==0.18.2 development
- gitdb ==4.0.9 development
- gitpython ==3.1.29 development
- grandalf ==0.6 development
- hydra-core ==1.2.0 development
- identify ==2.5.8 development
- idna ==3.4 development
- ipykernel ==6.17.1 development
- ipython ==8.6.0 development
- ipython-genutils ==0.2.0 development
- ipywidgets ==8.0.2 development
- isort ==5.10.1 development
- iterative-telemetry ==0.0.5 development
- jedi ==0.18.1 development
- jinja2 ==3.1.2 development
- jsonschema ==4.17.0 development
- jupyter ==1.0.0 development
- jupyter-client ==7.4.5 development
- jupyter-console ==6.4.4 development
- jupyter-core ==5.0.0 development
- jupyter-server ==1.23.1 development
- jupyterlab-pygments ==0.2.2 development
- jupyterlab-widgets ==3.0.3 development
- kiwisolver ==1.4.4 development
- kombu ==5.2.4 development
- llvmlite ==0.39.1 development
- lxml ==4.9.1 development
- markupsafe ==2.1.1 development
- matplotlib ==3.6.2 development
- matplotlib-inline ==0.1.6 development
- mccabe ==0.7.0 development
- mistune ==2.0.4 development
- multidict ==6.0.2 development
- mypy-extensions ==0.4.3 development
- nanotime ==0.5.2 development
- nbclassic ==0.4.8 development
- nbclient ==0.7.0 development
- nbconvert ==7.2.4 development
- nbformat ==5.7.0 development
- nest-asyncio ==1.5.6 development
- networkx ==2.8.8 development
- nodeenv ==1.7.0 development
- notebook ==6.5.2 development
- notebook-shim ==0.2.2 development
- numba ==0.56.4 development
- numpy ==1.23.4 development
- omegaconf ==2.2.3 development
- ordered-set ==4.1.0 development
- packaging ==21.3 development
- pandapower ==2.10.1 development
- pandas ==1.5.1 development
- pandocfilters ==1.5.0 development
- parso ==0.8.3 development
- pathspec ==0.9.0 development
- pexpect ==4.8.0 development
- pickleshare ==0.7.5 development
- pillow ==9.3.0 development
- platformdirs ==2.5.3 development
- plotly ==5.11.0 development
- pre-commit ==2.20.0 development
- prometheus-client ==0.15.0 development
- prompt-toolkit ==3.0.32 development
- psutil ==5.9.4 development
- ptyprocess ==0.7.0 development
- pure-eval ==0.2.2 development
- py ==1.11.0 development
- pycodestyle ==2.9.1 development
- pycparser ==2.21 development
- pydocstyle ==6.1.1 development
- pydot ==1.4.2 development
- pyflakes ==2.5.0 development
- pygit2 ==1.11.1 development
- pygments ==2.13.0 development
- pygtrie ==2.5.0 development
- pyparsing ==3.0.9 development
- pyrsistent ==0.19.2 development
- python-dateutil ==2.8.2 development
- python-docx ==0.8.11 development
- pytz ==2022.6 development
- pywin32 ==305 development
- pywinpty ==2.0.9 development
- pyyaml ==6.0 development
- pyzmq ==24.0.1 development
- qtconsole ==5.4.0 development
- qtpy ==2.3.0 development
- requests ==2.28.1 development
- rich ==12.6.0 development
- ruamel-yaml ==0.17.21 development
- ruamel-yaml-clib ==0.2.7 development
- scipy ==1.9.3 development
- scmrepo ==0.1.3 development
- seaborn ==0.12.1 development
- send2trash ==1.8.0 development
- setuptools ==65.5.1 development
- setuptools-scm ==7.0.5 development
- shortuuid ==1.0.10 development
- shtab ==1.5.7 development
- six ==1.16.0 development
- smmap ==5.0.0 development
- sniffio ==1.3.0 development
- snowballstemmer ==2.2.0 development
- soupsieve ==2.3.2.post1 development
- stack-data ==0.6.0 development
- tabulate ==0.9.0 development
- tenacity ==8.1.0 development
- terminado ==0.17.0 development
- tinycss2 ==1.2.1 development
- tokenize-rt ==5.0.0 development
- toml ==0.10.2 development
- tomli ==2.0.1 development
- tomlkit ==0.11.6 development
- tornado ==6.2 development
- tqdm ==4.64.1 development
- traitlets ==5.5.0 development
- typing-extensions ==4.4.0 development
- urllib3 ==1.26.12 development
- vine ==5.0.0 development
- virtualenv ==20.16.6 development
- voluptuous ==0.13.1 development
- wcwidth ==0.2.5 development
- webencodings ==0.5.1 development
- websocket-client ==1.4.2 development
- widgetsnbextension ==4.0.3 development
- yarl ==1.8.1 development
- zc-lockfile ==2.0 development