PyPSA-Eur-Sec: A Sector-Coupled Open Optimisation Model of the European Energy System

GitHub release (latest by date including pre-releases) Documentation Status GitHub GitHub repo size


PyPSA-Eur-Sec v0.7.0 has been incorporated into PyPSA-Eur with version v0.8.0. Please go to PyPSA-Eur to run sector-coupling studies for the European energy system with PyPSA. This repository (PyPSA-Eur-Sec) is now deprecated!

PyPSA-Eur-Sec is an open model dataset of the European energy system at the transmission network level that covers the full ENTSO-E area.

PyPSA-Eur-Sec builds on the electricity generation and transmission model PyPSA-Eur to add demand and supply for the following sectors: transport, space and water heating, biomass, energy consumption in the agriculture, industry and industrial feedstocks, carbon management, carbon capture and usage/sequestration. This completes the energy system and includes all greenhouse gas emitters except waste management, agriculture, forestry and land use.

WARNING: PyPSA-Eur-Sec is under active development and has several limitations which you should understand before using the model. The github repository issues collect known topics we are working on (please feel free to help or make suggestions). The documentation remains somewhat patchy. We cannot support this model if you choose to use it.


You can find showcases of the model’s capabilities in the Supplementary Materials of the preprint Benefits of a Hydrogen Network in Europe, the Supplementary Materials of the paper in Joule with a description of the industry sector, or in a 2021 presentation at EMP-E.

This diagram gives an overview of the sectors and the links between them:


PyPSA-Eur-Sec was initially based on the model PyPSA-Eur-Sec-30 described in the paper Synergies of sector coupling and transmission reinforcement in a cost-optimised, highly renewable European energy system (2018) but it differs by being based on the higher resolution electricity transmission model PyPSA-Eur rather than a one-node-per-country model, and by including biomass, industry, industrial feedstocks, aviation, shipping, better carbon management, carbon capture and usage/sequestration, and gas networks.

PyPSA-Eur-Sec includes PyPSA-Eur as a snakemake subworkflow. PyPSA-Eur-Sec uses PyPSA-Eur to build the clustered transmission model along with wind, solar PV and hydroelectricity potentials and time series. Then PyPSA-Eur-Sec adds other conventional generators, storage units and the additional sectors.

Currently the scripts to solve and process the resulting PyPSA models are also included in PyPSA-Eur-Sec, although they could in future be better integrated with the corresponding scripts in PyPSA-Eur. A stumbling block to sharing between PyPSA-Eur and PyPSA-Eur-Sec is the different extra_functionality required to build storage and CHP constraints.

PyPSA-Eur-Sec is designed to be imported into the open toolbox PyPSA for which documentation is available as well.

This project is currently maintained by the Department of Digital Transformation in Energy Systems at the Technical University of Berlin. Previous versions were developed by the Energy System Modelling group at the Institute for Automation and Applied Informatics at the Karlsruhe Institute of Technology which was funded by the Helmholtz Association, and by the Renewable Energy Group at FIAS to carry out simulations for the CoNDyNet project, financed by the German Federal Ministry for Education and Research (BMBF) as part of the Stromnetze Research Initiative.

Workflow Outline



The graph above was generated using snakemake --rulegraph -F | sed -n "/digraph/,/}/p" | dot -Tpng -o workflow.png


The code in PyPSA-Eur-Sec is released as free software under the MIT license, see LICENSE. However, different licenses and terms of use may apply to the various input data.