Building Sector-Coupled Networks#
The preparation process of the sector-coupled version 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,
add_brownfield
builds and stores the base network with all buses, HVAC lines and HVDC links, while
Rule add_brownfield
#
Rule add_existing_baseyear
#
Rule build_existing_heating_distribution
#
Rule build_ammonia_production
#
Rule build_biomass_potentials
#
Rule build_egs_potentials
#
This rule extracts potential and cost for electricity generation through enhanced geothermal systems.
For this, we use data from “From hot rock to useful energy…” by Aghahosseini, Breyer (2020) ‘https://doi.org/10.1016/j.apenergy.2020.115769’ Note that we input data used here is not the same as in the paper, but was passed on by the authors.
The data provides a lon-lat gridded map of Europe (1° x 1°), with each grid cell assigned a heat potential (in GWh) and a cost (in EUR/MW).
This scripts overlays that map with the network’s regions, and builds a csv with CAPEX, OPEX and p_nom_max
Rule build_biomass_transport_costs
#
Reads biomass transport costs for different countries of the JRC report.
“The JRC-EU-TIMES model. Bioenergy potentials for EU and neighbouring countries.” (2015)
converts them from units ‘EUR per km/ton’ -> ‘EUR/ (km MWh)’
assuming as an approximation energy content of wood pellets
@author: bw0928
Rule build_clustered_population_layouts
#
Rule build_cop_profiles
#
Rule build_central_heating_temperature_profiles
#
Rule build_energy_totals
#
Rule build_heat_totals
#
Approximate heat demand for all weather years.
approximate_heat_demand()
approximates annual heat demand based on energy totals and heating degree days (HDD) using a regression of heat demand on HDDs.
Inputs#
resources/<run_name>/energy_totals.csv: Energy consumption by sector (columns), country and year. Output of
scripts.build_energy_totals.py()
.data/era5-annual-HDD-per-country.csv: Number of heating degree days by year (columns) and country (index).
Outputs#
resources/<run_name>/heat_totals.csv: Approximated annual heat demand for each country.