Building Electricity Networks#
The preparation process of the PyPSA-Eur energy system model consists of a group of snakemake
rules which are briefly outlined and explained in detail in the sections below.
Not all data dependencies are shipped with the git repository.
Instead we provide separate data bundles which can be obtained
using the retrieve*
rules (Retrieving Data).
Having downloaded the necessary data, it can build a base PyPSA network with the following rules
build_shapes
generates GeoJSON files with shapes of the countries, exclusive economic zones and NUTS3 areas.base_network
builds and stores the base network with all buses, HVAC lines and HVDC links, and determines Voronoi cells for all substations.
The network is then simplified by preparing approximations of the network model, for which it is computationally viable to co-optimize generation, storage and transmission capacities.
simplify_network
transforms the transmission grid to a 380 kV only equivalent network, whilecluster_network
uses a k-means based clustering technique to partition the network into a given number of zones and then reduce the network to a representation with one bus per zone.
The simplification and clustering steps are described in detail in the paper
Jonas Hörsch and Tom Brown. The role of spatial scale in joint optimisations of generation and transmission for European highly renewable scenarios), 14th International Conference on the European Energy Market, 2017. arXiv:1705.07617, doi:10.1109/EEM.2017.7982024.
Then, the process continues by calculating conventional power plant capacities, potentials, and per-unit availability time series for variable renewable energy carriers and hydro power plants with the following rules:
build_powerplants
for today’s thermal power plant capacities using powerplantmatching allocating these to the matching clustered region for each powerplant,determine_availability_matrix
for the land eligibility analysis of each cutout grid cell for PV, onshore and offshore wind,build_renewable_profiles
for the hourly capacity factors and installation potentials constrained by land-use in each substation’s Voronoi cell for PV, onshore and offshore wind, andbuild_hydro_profile
for the hourly per-unit hydro power availability time series.
The rules add_electricity
and prepare_network
then tie all the different data inputs
together into a detailed PyPSA network stored in networks/base_s_{clusters}_elec.nc
.
Rule build_cutout
#
Rule build_osm_boundaries
#
Rule clean_osm_data
#
Rule build_osm_network
#
Rule base_network
#
Rule build_transmission_projects
#
Rule build_line_rating
#
Rule add_transmission_projects_and_dlr
#
Rule build_bidding_zones
#
Combines bidding zone shape files from two sources. The electricitymaps-contrib data is more accurate and are used as the baseline. The Italian bidding zones from entsoe-py are more preferred and are used to override the baseline. Manual adjustments are made to match the TYNDP 2024 configuration. Small islands are removed and Crete is considered as independent of Greece. Southern Norwegian zones are merged.
Outputs#
resources/bidding_zones.geojson
: