Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions config/config.default.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -688,6 +688,12 @@ sector:
dh_areas:
buffer: 1000
handle_missing_countries: fill
subnodes:
enable: false
n_subnodes: 10
countries: []
demand_column: Dem_GWh
label_column: Label
heat_pump_sources:
urban central:
- air
Expand Down
152 changes: 152 additions & 0 deletions config/schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -3921,6 +3921,44 @@
"additionalProperties": true,
"description": "District heating areas settings.",
"type": "object"
},
"subnodes": {
"description": "Configuration for `sector.district_heating.subnodes` settings.",
"properties": {
"enable": {
"default": false,
"description": "Enable subnodes in district heating sector.",
"type": "boolean"
},
"n_subnodes": {
"default": 10,
"description": "Number of largest district heating subnodes that are explicitly represented in the network.",
"type": "integer"
},
"countries": {
"default": [],
"description": "List of country codes to consider for district heating subnodes. If empty, all countries are considered.",
"items": {
"type": "string"
},
"type": "array"
},
"demand_column": {
"default": "Dem_GWh",
"description": "Name of the column in the single-system level data to use for subnodes.",
"type": "string"
},
"label_column": {
"default": "Label",
"description": "Name of the column in the single-system level data to use for subnode labels.",
"type": "string"
},
"use_isi_data_assumptions": {
"default": false,
"description": "If true, scale subnode demands to match the model's DH demand using ISI data assumptions as denominator.",
"type": "boolean"
}
}
}
}
},
Expand Down Expand Up @@ -5966,6 +6004,44 @@
"additionalProperties": true,
"description": "District heating areas settings.",
"type": "object"
},
"subnodes": {
"description": "Configuration for `sector.district_heating.subnodes` settings.",
"properties": {
"enable": {
"default": false,
"description": "Enable subnodes in district heating sector.",
"type": "boolean"
},
"n_subnodes": {
"default": 10,
"description": "Number of largest district heating subnodes that are explicitly represented in the network.",
"type": "integer"
},
"countries": {
"default": [],
"description": "List of country codes to consider for district heating subnodes. If empty, all countries are considered.",
"items": {
"type": "string"
},
"type": "array"
},
"demand_column": {
"default": "Dem_GWh",
"description": "Name of the column in the single-system level data to use for subnodes.",
"type": "string"
},
"label_column": {
"default": "Label",
"description": "Name of the column in the single-system level data to use for subnode labels.",
"type": "string"
},
"use_isi_data_assumptions": {
"default": false,
"description": "If true, scale subnode demands to match the model's DH demand using ISI data assumptions as denominator.",
"type": "boolean"
}
}
}
}
},
Expand Down Expand Up @@ -7483,6 +7559,44 @@
}
}
},
"_SubnodesConfig": {
"description": "Configuration for `sector.district_heating.subnodes` settings.",
"properties": {
"enable": {
"default": false,
"description": "Enable subnodes in district heating sector.",
"type": "boolean"
},
"n_subnodes": {
"default": 10,
"description": "Number of largest district heating subnodes that are explicitly represented in the network.",
"type": "integer"
},
"countries": {
"default": [],
"description": "List of country codes to consider for district heating subnodes. If empty, all countries are considered.",
"items": {
"type": "string"
},
"type": "array"
},
"demand_column": {
"default": "Dem_GWh",
"description": "Name of the column in the single-system level data to use for subnodes.",
"type": "string"
},
"label_column": {
"default": "Label",
"description": "Name of the column in the single-system level data to use for subnode labels.",
"type": "string"
},
"use_isi_data_assumptions": {
"default": false,
"description": "If true, scale subnode demands to match the model's DH demand using ISI data assumptions as denominator.",
"type": "boolean"
}
}
},
"_TechnologyMappingConfig": {
"description": "Configuration for `electricity.estimate_renewable_capacities.technology_mapping` settings.",
"properties": {
Expand Down Expand Up @@ -10031,6 +10145,44 @@
"additionalProperties": true,
"description": "District heating areas settings.",
"type": "object"
},
"subnodes": {
"description": "Configuration for `sector.district_heating.subnodes` settings.",
"properties": {
"enable": {
"default": false,
"description": "Enable subnodes in district heating sector.",
"type": "boolean"
},
"n_subnodes": {
"default": 10,
"description": "Number of largest district heating subnodes that are explicitly represented in the network.",
"type": "integer"
},
"countries": {
"default": [],
"description": "List of country codes to consider for district heating subnodes. If empty, all countries are considered.",
"items": {
"type": "string"
},
"type": "array"
},
"demand_column": {
"default": "Dem_GWh",
"description": "Name of the column in the single-system level data to use for subnodes.",
"type": "string"
},
"label_column": {
"default": "Label",
"description": "Name of the column in the single-system level data to use for subnode labels.",
"type": "string"
},
"use_isi_data_assumptions": {
"default": false,
"description": "If true, scale subnode demands to match the model's DH demand using ISI data assumptions as denominator.",
"type": "boolean"
}
}
}
}
},
Expand Down
4 changes: 4 additions & 0 deletions config/test/config.overnight.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,10 @@ sector:
- 10
- 21
district_heating:
subnodes:
enable: true
n_subnodes: 3
countries: ['BE']
ptes:
supplemental_heating:
enable: true
Expand Down
26 changes: 26 additions & 0 deletions data/dh_area_assumptions.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
country,dh_connection_rate_2020,dh_connection_rate_2050,national_dh_share_2020,national_dh_share_2050,distribution_cost_ceiling_2050_eur_per_MWh,demand_in_dh_areas_2020_GWh,demand_in_dh_areas_2050_GWh,heat_demand_covered_by_dh_2020_GWh,heat_demand_covered_by_dh_2050_GWh,avg_distribution_cost_eur_per_MWh
AT,0.55,0.8,0.253,0.332,36,38763,19890,21319,15912,28.1
BE,0.15,0.7,0.034,0.141,34,26027,10636,3904,7445,32.8
BG,0.64,0.75,0.267,0.349,38,10160,7382,6503,5536,28.7
CZ,0.44,0.8,0.247,0.43,35,51729,30994,22761,24795,28.1
DE,0.32,0.75,0.149,0.324,36,375321,171208,120103,128406,33.0
DK,0.88,0.9,0.528,0.467,40,35273,20287,31040,18259,32.6
EE,0.58,0.8,0.421,0.522,36,9105,4293,5281,3434,14.3
EL,0.29,0.7,0.108,0.248,31,14346,11582,4160,8107,29.4
ES,0.03,0.7,0.014,0.308,36,65881,54311,1976,38018,33.3
FI,0.63,0.9,0.476,0.63,37,57870,33453,36458,30108,30.5
FR,0.15,0.75,0.063,0.275,41,203160,123460,30474,92595,33.7
HR,0.37,0.8,0.113,0.257,32,7702,3614,2850,2892,31.9
HU,0.33,0.8,0.133,0.325,30,32249,18281,10642,14625,28.2
IE,0.0,0.7,0.0,0.047,36,1760,1630,0,1141,33.1
IT,0.17,0.7,0.079,0.31,36,178312,109970,30313,76979,33.8
LT,0.78,0.9,0.492,0.592,32,10987,6625,8570,5962,15.9
LU,0.29,0.8,0.195,0.517,32,5266,3066,1527,2453,29.0
LV,0.57,0.8,0.415,0.599,32,11195,5253,6381,4203,15.9
NL,0.26,0.75,0.09,0.265,38,46759,28372,12157,21279,35.7
PL,0.51,0.8,0.272,0.38,31,130002,63942,66301,51153,29.6
PT,0.33,0.7,0.064,0.139,41,5437,4390,1794,3073,40.5
RO,0.43,0.75,0.15,0.26,32,29236,14314,12571,10735,29.8
SE,0.86,0.9,0.663,0.655,42,66416,62989,57118,56690,30.7
SI,0.52,0.8,0.136,0.192,31,3192,1809,1660,1447,30.7
SK,0.74,0.9,0.327,0.369,32,13582,6614,10051,5952,29.4
1 change: 1 addition & 0 deletions doc/data_inventory.csv
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@
"mobility_profiles","German Vehicle Activity Profiles","Vehicle activity profiles for different vehicle types and road types in Germany, based on monitoring data from the Federal Highway Research Institute (BASt). These profiles provide insights into travel behavior and patterns, which can be used for transport modeling and analysis.","Federal Highway Research Institute (BASt)","https://www.bast.de/DE/Themen/Digitales/HF_1/Massnahmen/verkehrszaehlung/Stundenwerte.html?nn=414410","CC-BY-4.0"
"dh_areas","","Shapes of district heating areas","ISI Fraunhofer-Institut für System- und Innovationsforschung","https://fordatis.fraunhofer.de/handle/fordatis/341.5","CC-BY-4.0"
"geothermal_heat_utilisation_potentials","","Potentials for Geothermal heat utilisation","ISI Fraunhofer-Institut für System- und Innovationsforschung","https://fordatis.fraunhofer.de/handle/fordatis/341.5","CC-BY-4.0"
"geonames_cities","GeoNames cities500","Database of cities with a population > 500, used to map district heating areas to human-readable city names for subnode labelling.","GeoNames","https://download.geonames.org/export/dump/","CC-BY-4.0"
"jrc_ardeco","Annual Regional Database of the European Commission's Directorate General for Regional and Urban Policy","The database contains a set of long time-series variables and indicators for EU regions, as well as for regions in some EFTA and candidate countries, at various statistical scales (NUTS1, NUTS2, NUTS3, metro regions).","European Commission","https://territorial.ec.europa.eu/ardeco","similar to CC-BY"
"bidding_zones_electricitymaps","Electricity Maps Bidding Zones","Geospatial data defining bidding zones for electricity markets in Europe","Electricity Maps","https://github.com/electricitymaps/electricitymaps-contrib","AGPL-3.0"
"bidding_zones_entsoepy","ENTSOE-PY Bidding Zones","Geospatial data defining bidding zones for electricity markets in Europe","EnergieID","https://github.com/EnergieID/entsoe-py","MIT"
3 changes: 3 additions & 0 deletions doc/release_notes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@ Release Notes
Upcoming Release
================

* Added option to model n largest district heating systems (according to demand in #1516) explicitly. Enable via ``sector: district_heating:
subnodes: enable: true``.

* Remove snakemake's slurm plugin from windows installations (https://github.com/PyPSA/pypsa-eur/pull/2009).

* Added Xpress solver configuration options (``xpress-default`` and ``xpress-gpu``) with barrier method settings optimized for large-scale linear programming problems.
Expand Down
Loading
Loading