PyPSA-AT

High resolution, sector-coupled model of the Austrian Energy System.
https://github.com/aggm-ag/pypsa-at

Category: Energy Systems
Sub Category: Global and Regional Energy System Models

Keywords from Contributors

energy-system-model energy-system power-systems energy-model pypsa capacity-expansion-planning power-grid transmission-network sector-coupling europe

Last synced: about 7 hours ago
JSON representation

Repository metadata

PyPSA-AT: High resolution, sector-coupled model of the Austrian Energy System

README.md

Version
Size
Test workflows
CodeQL
pre-commit.ci status
Pixi Badge
pixi
Ruff
Snakemake
Python
Docs
Discord

PyPSA-AT: A Sector-Coupled Open Optimisation Model of the Austrian Energy System

[!WARNING]
PyPSA-AT is under very active early development. Expect things to change rapidly.

[!CAUTION]
This repository is the official source of PyPSA-AT. Third-party forks are independent projects, and we do not vouch for their accuracy, methodology, or claims. When publishing results calculated with PyPSA-AT, users are strongly encouraged to clearly state which code version and input data were used, including whether the code was modified independently or the input data is not published (private data). Please carefully read through the limitations documented in the docs to verify that this model is suited to answering your research questions.

PyPSA-AT is an Austrian adaptation of the open European energy system
model PyPSA-Eur.
It provides a detailed sector-coupled model of the Austrian energy system, including the majority of relevant energy
carriers (electricity, gas, hydrogen, biomass, heat, coal, oil, methanol and ammonia) and demand profiles for the
industry, transport, residential, commercial, and agriculture sectors.

The project builds upon the methodologies developed in PyPSA-DE - the adaptation of
PyPSA-Eur for the German energy system - while incorporating Austria-specific network topology, energy system
characteristics, and regulatory frameworks.

For more comprehensive documentation on the underlying PyPSA-Eur/DE framework, model decisions, and implementation
details, please refer to the PyPSA-Eur documentation
and PyPSA-DE documentation, respectively.


🚀 Installation

Running PyPSA-AT is very simple. Just clone the repository

git clone https://github.com/AGGM-AG/pypsa-at.git && cd pypsa-at

And start the workflow (low time resolution and NUTS3 spatial resolution for Austria)

pixi run workflow

Please note that PyPSA-AT is only supported on Linux platforms. Installations on Windows or macOS require
modifications that are currently out of scope.

Prerequisites

Git and pixi must be installed.

⌨️ Usage

  1. Configure your model by adjusting the base scenario in config/config.at.yaml

  2. Include scenario settings that differ from the base scenario in config/scenarios.manual.yaml

  3. Run the model’s Snakemake workflow:

    pixi run workflow
    

    or activate the virtual environment and call the same workflow using a shorthand

    pixi shell && snakemake -call all_at
    

Rulegraph Rule All PyPSA-AT

📖 Documentation

More detailed documentation of PyPSA-AT is hosted on pypsa-at.readthedocs.io.

✨ Features

PyPSA-AT extends PyPSA-Eur and PyPSA-DE with Austria-specific network data, regulatory constraints, and energy
system pathways. The full change history is in
CHANGELOG.AT.md; implementation details are in the
documentation.

🤝 Contributing

[!NOTE]
The development team focuses on establishing a well-calibrated representation of the Austrian energy system and
has limited capacity to review contributions from the community at the moment.

In general, please install the pre-commit hooks if you plan to contribute to this project.

pixi run pre-commit install

⚖️ License

This project is licensed under the MIT License - see the LICENSE.txt file for details.

Parts of the code that originate from PyPSA-DE
or PyPSA-Eur remain under their original MIT licenses. The copyright and
attribution notices from these original projects are preserved in the respective source files.

🏅 Acknowledgments

PyPSA-AT builds upon PyPSA-Eur and PyPSA-DE,
developed by the PyPSA team at TU Berlin and other contributors.

✏️ Citation

If you use PyPSA-AT in your research, please cite it as:

Worschischek, Philip; Zechner, Nicole; Awetisjan, Vartan; Wernhart, Helmut (2026):
PyPSA-AT - A sector-coupled open optimisation model of the Austrian energy system.
Version 0.1.0. Austrian Gas Grid Management AG.
https://github.com/AGGM-AG/pypsa-at

Citation (CITATION.cff)

# SPDX-FileCopyrightText: Contributors to PyPSA-DE <https://github.com/pypsa/pypsa-de>
#
# SPDX-License-Identifier: CC0-1.0

cff-version: 1.2.0
title: "PyPSA-AT - Sektorgekoppeltes Energiesystemmodell des österreichischen Energiesystems"
repository: https://github.com/AGGM-AG/pypsa-at
version: 0.1.0-alpha
date-released: "none"
license: MIT
authors:
  - family-names: Worschischek
    given-names: Philip
    organisation: Austrian Gas Grid Management AG
  - family-names: Avetisjan
    given-names: Vartan
    organisation: Austrian Gas Grid Management AG
  - family-names: Wernhart
    given-names: Helmut
    organisation: Austrian Gas Grid Management AG
  - family-names: Zechner
    given-names: Nicole
    organisation: Austrian Gas Grid Management AG
  - family-names: Nutz
    given-names: Max
    organisation: University of Life Sciences Vienna BOKU


Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 14 days ago

Total Commits: 12,101
Total Committers: 108
Avg Commits per committer: 112.046
Development Distribution Score (DDS): 0.769

Commits in past year: 1,045
Committers in past year: 39
Avg Commits per committer in past year: 26.795
Development Distribution Score (DDS) in past year: 0.656

Name Email Commits
Fabian Neumann f****n@o****e 2796
Michael Lindner m****r@p****e 1183
pre-commit-ci[bot] 6****] 992
Fabian f****f@g****e 872
Philip Worschischek p****k@a****t 784
lisazeyen l****n@w****e 728
Tom Brown t****m@n****g 525
Jonas Hörsch j****h@k****u 432
toniseibold t****b@g****m 368
Lukas Trippe l****p@p****e 258
martavp m****z@g****m 238
martacki m****i@k****u 232
Philipp Glaum p****m@t****e 224
JulianGeis J****s@g****t 212
AmosSchledorn a****n@i****m 182
Koen van Greevenbroek k****k@u****o 160
virio-andreyana 1****a 156
github-actions[bot] 4****] 130
Adam-Dvorak1 9****1 126
euronion 4****n 126
Florian Wiedemair f****r@d****m 114
Bobby Xiong 3****g 94
Parisra 1****a 76
LukasFrankenQ l****n@e****k 72
dependabot[bot] 4****] 62
Thomas Gilon t****n@o****g 60
cpschau c****s@i****e 56
cpschau 1****u 56
millingermarkus m****r@c****e 54
Max Parzen m****n@e****k 52
and 78 more...

Committer domains:


Issue and Pull Request metadata

Last synced: 1 day ago

Total issues: 0
Total pull requests: 130
Average time to close issues: N/A
Average time to close pull requests: 3 days
Total issue authors: 0
Total pull request authors: 6
Average comments per issue: 0
Average comments per pull request: 1.29
Merged pull request: 111
Bot issues: 0
Bot pull requests: 10

Past year issues: 0
Past year pull requests: 121
Past year average time to close issues: N/A
Past year average time to close pull requests: 3 days
Past year issue authors: 0
Past year pull request authors: 6
Past year average comments per issue: 0
Past year average comments per pull request: 1.37
Past year merged pull request: 106
Past year bot issues: 0
Past year bot pull requests: 4

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/aggm-ag/pypsa-at

Top Issue Authors

Top Pull Request Authors

  • pworschischek-aggmag (87)
  • fwiedemair (15)
  • nicolezechneraggm (14)
  • github-actions[bot] (9)
  • maxnutz (4)
  • pre-commit-ci[bot] (1)

Top Issue Labels

Top Pull Request Labels


Dependencies

.github/workflows/claude-code-review.yml actions
  • actions/checkout v4 composite
  • anthropics/claude-code-action v1 composite
.github/workflows/validate.yaml actions
  • PyPSA/pypsa-validator v0.2.5 composite
.github/workflows/codeql.yaml actions
  • actions/checkout v6 composite
  • github/codeql-action/analyze v4 composite
  • github/codeql-action/init v4 composite
envs/environment.yaml conda
  • atlite >=0.3,!=0.5.0
  • bokeh >=3.8.0
  • cartopy >=0.25.0
  • copernicusmarine >=2.2.4
  • country_converter >=1.3.2
  • dask >=2025.10.0
  • descartes >=1.1.0
  • entsoe-py >=0.7.8
  • fiona >=1.10.1
  • folium >=0.20.0
  • geojson >=3.2.0
  • geopandas >=1
  • geopy >=2.4.1
  • glpk >=5.0
  • graphviz >=12.2.1
  • grpcio <1.78
  • gurobi >=12.0.3
  • highspy >=1.12.0
  • ipython >=9.7.0
  • jpype1
  • jpype1 >=1.6.0
  • jupyter >=1.1.1
  • libgdal-netcdf >=3.10.3
  • linopy >=0.6.1
  • lxml >=6.0.2
  • matplotlib >=3.10.7
  • memory_profiler >=0.61.0
  • natsort >=8.4.0
  • netcdf4 >=1.7.2,!=1.7.4
  • networkx >=3.5
  • numpy >=1.26.4
  • openpyxl >=3.1.5
  • pandas >=2.1
  • pandera >=0.28.1
  • plotly >=6.4.0
  • powerplantmatching >=0.5.15
  • pre-commit >=4.3.0
  • proj >=9.6.2
  • pyam >=2.0
  • pycountry
  • pydantic >=2
  • pydeck >0.6
  • pydeflate >=2.3.4
  • pylint >=4.0.2
  • pypsa >=0.35.2
  • pyscipopt >=5.6.0
  • pytables >=3.10.2
  • python >=3.12
  • python-dotenv >=1.0
  • pytz >=2025.2
  • pyxlsb >=1.0.10
  • rasterio >=1.4.3
  • rasterstats >=0.10.3
  • rioxarray >=0.20.0
  • ruamel.yaml
  • ruamel.yaml >=0.18.0
  • ruff >=0.14.3
  • scipy >=1.16.3
  • seaborn >=0.13.2
  • shapely >=2.0
  • snakemake-executor-plugin-cluster-generic >=1.0.9
  • snakemake-executor-plugin-slurm >=1.9.2
  • snakemake-logger-plugin-pypsa >=0.1.0
  • snakemake-logger-plugin-snkmt 0.1.6
  • snakemake-minimal >=9
  • snakemake-storage-plugin-cached-http >=0.2.1
  • snakemake-storage-plugin-http >=0.3
  • tenacity >=9.1.2
  • tqdm >=4.67.1
  • tsam >=2.3.1
  • xarray >=2024.3.0,<2025.7.0
  • xlrd >=2.0.2
  • yaml >=0.2.5
.devcontainer/Dockerfile docker
  • ghcr.io/prefix-dev/pixi latest build
.github/workflows/update-lockfile.yaml actions
  • actions/checkout v6 composite
  • peter-evans/create-pull-request v8 composite
  • prefix-dev/setup-pixi v0.9.5 composite
.github/workflows/claude.yml actions
  • actions/checkout v4 composite
  • anthropics/claude-code-action v1 composite
.github/workflows/push-images.yaml actions
  • actions/checkout v6 composite
  • docker/login-action v4 composite
.github/workflows/release.yaml actions
  • actions/checkout v6 composite
  • actions/create-github-app-token v3 composite
  • prefix-dev/setup-pixi v0.9.5 composite
  • stefanzweifel/git-auto-commit-action v7 composite
.github/workflows/test.yaml actions
  • actions/cache v5 composite
  • actions/checkout v6 composite
  • actions/upload-artifact v7 composite
  • dorny/paths-filter v4 composite
  • prefix-dev/setup-pixi v0.9.5 composite

Score: 6.29156913955832