-
Notifications
You must be signed in to change notification settings - Fork 2
/
config.yaml
258 lines (239 loc) · 10.6 KB
/
config.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
logging_level: INFO
solve_network: solve #'solve' or 'skip'
results_dir: 'results'
costs_dir: '../technology-data/outputs'
# from ../pypsa-eur-sec/results/<run>/prenetworks-brownfield
n_2025: 'input/elec_s_37_lv1.0__1H-B-solar+p3_2025.nc'
n_2030: 'input/elec_s_37_lv1.0__1H-B-solar+p3_2030.nc'
###################
# Scenario controls
run: 'gas_price50'
#wildcards
scenario:
policy: ["ref", "grd", "res1p0","res1p2","res1p3", "exl1p0","exl1p2","exl1p3", "offgrid", "monthly"]
# ref: no H2 demand
# grd: H2 demand met from grid with no local procurement
# res: H2 elec demand matched by procured wind and solar annually
# exl: like cfe100 but excess limited to 20%
palette: [ "p1", # onwind + solar + battery
]
zone: [ "DE", "NL", # "ES", "PT", "CZ", "PL"
]
year: ['2025', '2030'] # controls both the brownfield fleet and tech costs projection
res_share: [p0] #, p01, p10, p20, p30, p35, p40, p45, p50, p55, p60, p70, p80, p90, 1p0] # [EUR/kg_H2] fixed offtake price of H2
offtake_volume: [3200] # [2233,3200, 6700] # [MWh_H2 per h] fixed offtake volume per hour, 10 GB planned in DE by 2030 if run 100% 10GB*0.67=6700MWh/h
storage: ["flexibledemand", "underground", "mtank", "htank", "nostore"] # storage type at google node
h2_demand_added: False
DE_target: True
temporal_resolution: "1H"
solving_option: "twostep" # options ["twostep", "together"]
# local electrolysis production
ci:
name: "CI"
res_techs: ["onwind","solar"]
# regional coverage of the model: "regions" or "EU"
# "regions" -> strips the model to country where CI load is located + all neighboring countries
# "EU" -> keeps the whole European power system (full ENTSO-E area)
area: "regions"
###################
# Fixed settings
node_suffixes_to_keep: ["H2","battery"] #"low voltage","home battery"]
carrier_to_keep: [ #generators
"offwind","offwind-ac","offwind-dc","solar", "onwind","ror", #"solar rooftop",
#storage units
"PHS","hydro",
#lines, links
"AC", "DC",
#links
"nuclear", "uranium", "gas","OCGT","CCGT","oil", "lignite", "coal",
"H2 Electrolysis","H2 Fuel Cell","H2 pipeline",
"battery charger","battery discharger", #"home battery charger","home battery discharger",
"urban central solid biomass CHP", #"electricity distribution grid",
#Stores
"H2 Store","co2","co2 stored","battery", "solid biomass", #"home battery"
#Loads ('industry electricity' is included)
"electricity"
]
additional_nodes: ["EU oil","EU gas", "EU lignite", "EU coal", "EU uranium", "EU solid biomass", "co2 atmosphere","co2 stored"]
global:
must_run: False # must run condition for coal power plants
uc: False # unit commitment for conventional plants
linear_uc: False
policy_type: "co2 price" # one of ["co2 cap", "co2 price"]
co2_baseline: 1.2e+7 # MtCO2/a - rough "energy industries" emissions in 1990 and 2020 in IE: 1.2e7
co2_share: 0.5 #pu - rough target for 2030
limit_res_exp_2025: 2 # max ratio (to 2021 basis) of renewable tech expantion per zone and technology
limit_res_exp_2030: 4 # max ratio (to 2021 basis) of renewable tech expantion per zone and technology
co2_price_2025: 80 # EUR/tCO2
co2_price_2030: 130 # EUR/tCO2
grid_res_techs: ["offwind","offwind-ac","offwind-dc","onwind", "ror", "solar",
"hydro","urban central solid biomass CHP"] #"solar rooftop"
grid_clean_techs: ["offwind","offwind-ac","offwind-dc","onwind", "ror", "solar",
"hydro", "nuclear", "urban central solid biomass CHP"] #"solar rooftop"
emitters: ["CCGT", "OCGT", "coal", "lignite", "oil"]
# fix_capacities_electrolysis: True
H2_store_cost:
underground:
2025: 175.2
2030: 140.16
mtank:
2025: 1290.48 # 13.8 Eur/kWh, same lifetime and FOM as htank -> not from DEA, own assumption
2030: 1113.88 # 12.10 Eur/kWh, same lifetime and FOM as htank -> not from DEA, own assumption
htank:
2025: 4774.79
2030: 4117.64
flexibledemand:
2025: 0
2030: 0
nostore:
2025: 1e6
2030: 1e6
costs:
lifetime: 25 # default lifetime
discountrate: 0.07 # From a Lion Hirth paper, also reflects average of Noothout et al 2016
USD2013_to_EUR2013: 0.7532 # [EUR/USD] ECB: https://www.ecb.europa.eu/stats/exchange/eurofxref/html/eurofxref-graph-usd.en.html # noqa: E501
USD2021_to_EUR2021: 0.8460 # [EUR/USD] ECB
adv_nuclear_overnight: 7138 # 2021$/kW CAPEX https://www.eia.gov/outlooks/aeo/ 2022
adv_geo_overnight_2025: 10000 # 2022$/kW CAPEX
adv_geo_overnight_2030: 10000 # 2022$/kW CAPEX
allam_ccs_overnight_2025: 2760 # 2022$/kW CAPEX, 2300*1.2
allam_ccs_overnight_2030: 3000 # 2022$/kW CAPEX, 2500*1.2
price_lignite: 6.5 # 6.5 # EUR/MWhth from TYNDP2020 -> default is 2.9
price_coal: 8.9 # EUR/MWhth from TYNDP2020 -> default is 8.15
# price_gas: 35 # EUR/MWhth -> https://energy.ec.europa.eu/system/files/2022-05/SWD_2022_230_1_EN_autre_document_travail_service_part1_v3.pdf
price_gas: 50.0 # hps://www.powernext.com/futures-market-data
# price_oil = 50.0 # EUR/MWhth -> TYNDP2020 = default
# price_uranium = 1.7 EUR/MWhth -> TYNDP2020 is 2.6
# TYNDP2020: https://2022.entsos-tyndp-scenarios.eu/download/
#national policies
phase_out:
# countries with nuclear phase-out policy (FR and BE shifted plan to 2035)
# source: https://world-nuclear.org/
nuclear:
2025: ["DE"]
2030: ["DE"]
# countries with coal phase-out policy before 2025 and 2030
# countries with the plan year 2025 + 'DE' are in the 2030 bracket
# source: https://beyond-coal.eu/europes-coal-exit/
coal:
2025: ['BE', 'SE', 'PT', 'AT', 'FR', 'GB']
2030: ['BE', 'SE', 'PT', 'AT', 'FR', 'GB', 'IT', 'IE', 'HU', 'MK', 'DK', 'GR', 'NL', 'FI', 'RS', 'ES', 'SK', 'DE'] # Germany has planned coal phase out in 2038 with option 2035 'DE']
#source: https://ec.europa.eu/info/energy-climate-change-environment/implementation-eu-countries
#data for NL is dummy
res_target_2025:
# https://energy.ec.europa.eu/system/files/2019-03/ger_draft_necp_eng_0.pdf
IE: 0.47
DK: 0.85 # p.3 https://ens.dk/sites/ens.dk/files/Basisfremskrivning/kf23_sektornotat_8b_forbrug_af_el.pdf
DE: 0.55
NL: 0.49 # interpolated from 2020 wind+solar 19%, bioenergy 6% to 2030 target
AT: 0.90 # 79% overall renewables in 2020 -> target 100% 2030 https://static.agora-energiewende.de/fileadmin/Projekte/2021/2020_01_EU-Annual-Review_2020/Data-file-Europe-Power-Sector-2020.xlsx
BE: 0.323 # p.63 https://energy.ec.europa.eu/system/files/2020-09/be_final_necp_parta_en_0.pdf, 11.156 GWh = 32.3%
BG: 0.21 # p. 59 Figure 10 https://energy.ec.europa.eu/system/files/2020-06/bg_final_necp_main_en_0.pdf
# CH:
CZ: 0.14 # 4% wind+solar 2020, 12% renewable overall (2020)
HR: 0.56 # linear interpolated Table 2-1 p.54 https://energy.ec.europa.eu/system/files/2020-01/hr_final_necp_main_en_0.pdf
FR: 0.32 # 10% wind+solar 2020, 23% renewable overall
GB: 0.535 # linear interpolated from 2020: 29% wind + solar 2020, 42% renewable overall to 2030 target
# LU: # 39% wind + solar 2020, 72% renewable overall
# NO:
PL: 0.245 # 11% wind + solar 2020, 17% renewable overall
# SE: # 17% wind + solar 2020, 68% renewable overall
ES: 0.588 # linear interpolated share 46.6% in 2021 targer 74% in 2030
PT: 0.69 # p.41 Table 9 https://energy.ec.europa.eu/system/files/2020-06/pt_final_necp_main_en_0.pdf
res_target_2030:
IE: 0.7
DK: 1.17 # p.3 https://ens.dk/sites/ens.dk/files/Basisfremskrivning/kf23_sektornotat_8b_forbrug_af_el.pdf
DE: 0.80
NL: 0.73 # p.23 https://energy.ec.europa.eu/system/files/2021-01/staff_working_document_assessment_necp_netherlands_en_0.pdf
AT: 1.0 # https://windeurope.org/newsroom/news/austria-aims-to-have-100-renewable-electricity-by-2030/
BE: 0.37 # p.63 https://energy.ec.europa.eu/system/files/2020-09/be_final_necp_parta_en_0.pdf, 12.78 GWh = 37%
BG: 0.27 # p.59 Figure 10 https://energy.ec.europa.eu/system/files/2020-06/bg_final_necp_main_en_0.pdf
HR: 0.64 # p.54 Table 2-1 https://energy.ec.europa.eu/system/files/2020-01/hr_final_necp_main_en_0.pdf
# CH:
CZ: 0.17
FR: 0.4
GB: 0.65 # p.27 https://assets.publishing.service.gov.uk/government/uploads/system/uploads/attachment_data/file/938539/NIS_Report_Web_Accessible.pdf
# NO:
PL: 0.32 # table 1.1 https://iea.blob.core.windows.net/assets/b9ea5a7d-3e41-4318-a69e-f7d456ebb118/Poland2022.pdf
ES: 0.74 # p.10 https://energy.ec.europa.eu/system/files/2021-01/staff_working_document_assessment_necp_spain_en_0.pdf
PT: 0.8 # p.41 Table 9 https://energy.ec.europa.eu/system/files/2020-06/pt_final_necp_main_en_0.pdf
# SE:
solving:
#tmpdir: "path/to/tmp"
options:
formulation: kirchhoff
n_iterations: 2 #iterations with CFE factor
solver:
name: gurobi
threads: 8
method: 2 # barrier
crossover: 0
# NumericFocus: 3 # Favour numeric stability over speed
BarConvTol: 1.e-7
# FeasibilityTol: 1.e-6
# OptimalityTol: 1.e-6
Seed: 123
AggFill: 0
PreDual: 0
NodeMethod: 2 # algorithm used for MIP node relaxation, 2=barrier
MIPGap: 0.01 # 5% gap between (ObjBound-ObjVal)/ObjVal
GURO_PAR_BARDENSETHRESH: 200
tech_colors:
#CI
"local": "#b474b4"
"PPA": "#b474b4"
"grid": "#9ccc65"
"AC": "#9ccc65"
"grid imports": "#9ccc65"
"revenue": "g"
"electricity": '#110d63'
"export": "#cccccc"
"import": "#e0e0e0"
# RES
"wind": "#74c6f2"
"offshore wind": "#6895dd"
"offwind": "#6895dd"
"offwind-dc": "#74c6f2"
"offwind-ac": "#6895dd"
"onshore wind": "#74c6f2"
"onwind": "#74c6f2"
"solar": "#ffef60"
"solar rooftop": '#000000'
# Clean Dispatchable
"nuclear": '#ff8c00'
"uranium": '#ffaf50'
"advanced nuclear": "#df3439"
"advanced geothermal": "#99582a"
"advanced dispatchable": "#99582a"
"NG-Allam": "#540b0e"
# Storage
"battery": "#666666"
"battery inverter": "#444444"
"battery charger": "#444444"
"battery discharger": "#444449"
"battery storage": "#666666"
"hydrogen storage": "#990090"
"hydrogen fuel cell": "#990090"
"H2 Fuel Cell": "#990090"
"H2 Store": '#bf13a0'
"offtake H": '#bf13a0'
"hydrogen electrolysis": "#550055"
"H2 Electrolysis": "#550055"
"PHS": '#51dbcc'
"PHS charger": '#51dbcc'
"hydro": '#298c81'
"ror": '#3dbfb0'
# Emitters
"OCGT": "#d35050"
"CCGT": "#b20101"
"Gas OC": "#d35050"
"coal": '#545454'
"lignite": '#826837'
"urban central solid biomass CHP": '#baa741'
"solid biomass": '#baa777'
"co2": '#f29dae'
"co2 stored": '#f2385a'
"oil": '#c9c9c9'
"H2 pipeline": '#f081dc'
"dummy": "teal"
"gas": '#e05b09'