From 7b0dce4ebf7524528dc6d9c7a0d2670f4120554b Mon Sep 17 00:00:00 2001 From: Micha Date: Thu, 21 Nov 2024 11:46:14 +0100 Subject: [PATCH] Improve solar and wind modeling (#284) * small improvement * implement delay of BalWin 1 & 3 * reduce onwind capacity per sqkm from 3 to 2 * add correction_factor for wind, round correction factor for solar * rename scenario * increase memory resources --- ariadne-data/offshore_connection_points.csv | 4 ++-- config/config.yaml | 13 +++++++++---- workflow/Snakefile | 4 ++-- workflow/scripts/export_ariadne_variables.py | 4 ++-- 4 files changed, 15 insertions(+), 10 deletions(-) diff --git a/ariadne-data/offshore_connection_points.csv b/ariadne-data/offshore_connection_points.csv index 0d40c87a..84197d56 100644 --- a/ariadne-data/offshore_connection_points.csv +++ b/ariadne-data/offshore_connection_points.csv @@ -17,8 +17,8 @@ NOR-3-3,,DC-ONAS NOR-3-3 (DolWin6),Emden / Ost (TenneT),90.0,900,2023.0,NEP2023 NOR-6-3,,DC-ONAS NOR-6-3 (BorWin4),Hanekenfähr (Amprion),264.0,900,2028.0,NEP2023 Startnetz,52.475798,7.307034 NOR-7-1,,DC-ONAS NOR-7-1 (BorWin5),Garrel / Ost (TenneT),225.0,900,2025.0,NEP2023 Startnetz,52.945885,8.075682 NOR-7-2,,DC-ONAS NOR-7-2 (BorWin6),Büttel (TenneT),235.0,980,2027.0,NEP2023 Startnetz,53.917758,9.234576 -NOR-9-1,M243,HGÜ-Verbindung NOR-9-1 (BalWin1),Wehrendorf (Amprion),363.0,2000,2029.0,Szenario B/C 2045,52.347253,8.307983 -NOR-9-2,M236,HGÜ-Verbindung NOR-9-2 (BalWin3),Wilhelmshaven 2 (TenneT),250.0,2000,2029.0,Szenario B/C 2045,53.56214,8.12915 +NOR-9-1,M243,HGÜ-Verbindung NOR-9-1 (BalWin1),Wehrendorf (Amprion),363.0,2000,2030.0,Szenario B/C 2045,52.347253,8.307983 +NOR-9-2,M236,HGÜ-Verbindung NOR-9-2 (BalWin3),Wilhelmshaven 2 (TenneT),250.0,2000,2031.0,Szenario B/C 2045,53.56214,8.12915 NOR-9-3,M234,HGÜ-Verbindung NOR-9-3 (BalWin4),Unterweser (TenneT),265.0,2000,2029.0,Szenario B/C 2045,53.428708,8.472726 NOR-10-1,M39,HGÜ-Verbindung NOR-10-1 (BalWin2),Westerkappeln (Amprion),371.0,2000,2030.0,Szenario B/C 2045,52.275966,7.887789 NOR-11-1,M233,HGÜ-Verbindung NOR-11-1 (LanWin3),Suchraum Heide (50Hertz),215.0,2000,2030.0,Szenario B/C 2045,54.16277,9.05231 diff --git a/config/config.yaml b/config/config.yaml index 6ba1093b..52f57520 100644 --- a/config/config.yaml +++ b/config/config.yaml @@ -4,7 +4,7 @@ # docs in https://pypsa-eur.readthedocs.io/en/latest/configuration.html#run run: - prefix: 20241113-export-kernnetz-invest + prefix: 20241120-correct-wind name: # - CurrentPolicies @@ -104,7 +104,9 @@ atlite: renewable: onwind: + capacity_per_sqkm: 2 cutout: europe-2019-sarah3-era5 + correction_factor: 0.95 resource: smooth: false #this is false until correction to onshore wind speeds from GWA implemented #based on Vestas_V112_3MW, but changing hub_height from 80m with time @@ -128,6 +130,7 @@ renewable: capacity_per_sqkm: 6 landfall_length: 30 cutout: europe-2019-sarah3-era5 + correction_factor: 0.95 resource: smooth: true #based on NREL_ReferenceTurbine_2020ATB_5.5MW, but changing hub_height from 80m with time @@ -151,6 +154,7 @@ renewable: capacity_per_sqkm: 6 landfall_length: 30 cutout: europe-2019-sarah3-era5 + correction_factor: 0.95 resource: smooth: true #based on NREL_ReferenceTurbine_2020ATB_5.5MW, but changing hub_height from 80m with time @@ -174,12 +178,13 @@ renewable: landfall_length: 30 capacity_per_sqkm: 6 cutout: europe-2019-sarah3-era5 + correction_factor: 0.95 solar: cutout: europe-2019-sarah3-era5 - correction_factor: 0.918 # scaling to Abbildung 36 of https://www.ise.fraunhofer.de/de/veroeffentlichungen/studien/aktuelle-fakten-zur-photovoltaik-in-deutschland.html + correction_factor: 0.9 # scaling to Abbildung 36 of https://www.ise.fraunhofer.de/de/veroeffentlichungen/studien/aktuelle-fakten-zur-photovoltaik-in-deutschland.html solar-hsat: cutout: europe-2019-sarah3-era5 - correction_factor: 0.918 # scaling to Abbildung 36 of https://www.ise.fraunhofer.de/de/veroeffentlichungen/studien/aktuelle-fakten-zur-photovoltaik-in-deutschland.html + correction_factor: 0.9 # scaling to Abbildung 36 of https://www.ise.fraunhofer.de/de/veroeffentlichungen/studien/aktuelle-fakten-zur-photovoltaik-in-deutschland.html hydro: cutout: europe-2019-sarah3-era5 @@ -441,7 +446,7 @@ solving: DE: 2020: 7.8 2025: 11.3 - 2030: 31.3 # uba Projektionsbericht + 2030: 29.3 # uba Projektionsbericht and NEP without delayed BalWin 3 2035: 70 2040: 70 2045: 70 diff --git a/workflow/Snakefile b/workflow/Snakefile index 204dd92e..f7159cd2 100644 --- a/workflow/Snakefile +++ b/workflow/Snakefile @@ -280,7 +280,7 @@ rule modify_prenetwork: network=RESULTS + "prenetworks-final/base_s_{clusters}_l{ll}_{opts}_{sector_opts}_{planning_horizons}.nc", resources: - mem_mb=2000, + mem_mb=4000, log: RESULTS + "logs/modify_prenetwork_base_s_{clusters}_l{ll}_{opts}_{sector_opts}_{planning_horizons}.log", @@ -521,7 +521,7 @@ rule export_ariadne_variables: exported_variables_full=RESULTS + "ariadne/exported_variables_full.xlsx", resources: # A heuristic to assign more memory for larger networks. Should probably be quadratic?? - mem_mb=(lambda w: 320 * int(config_provider("scenario", "clusters")(w)[0])), + mem_mb=(lambda w: 400 * int(config_provider("scenario", "clusters")(w)[0])), log: RESULTS + "logs/export_ariadne_variables.log", script: diff --git a/workflow/scripts/export_ariadne_variables.py b/workflow/scripts/export_ariadne_variables.py index 7a18d983..140f5388 100644 --- a/workflow/scripts/export_ariadne_variables.py +++ b/workflow/scripts/export_ariadne_variables.py @@ -494,9 +494,9 @@ def _get_capacities(n, region, cap_func, cap_string="Capacity|"): # var[cap_string + "Electricity|Gas|CC|w/o CCS"] = # ! Not implemented, rarely used - var[cap_string + "Electricity|Gas|CC"] = capacities_electricity.get("CCGT") + var[cap_string + "Electricity|Gas|CC"] = capacities_electricity.get("CCGT", 0) - var[cap_string + "Electricity|Gas|OC"] = capacities_electricity.get("OCGT") + var[cap_string + "Electricity|Gas|OC"] = capacities_electricity.get("OCGT", 0) var[cap_string + "Electricity|Gas|w/ CCS"] = capacities_electricity.get( "urban central gas CHP CC", 0