Closed fneum closed 5 months ago
The overlap with the ipcei pipelines lokks good:
IPCEI:
Model:
Tasks of refinement are build in:
What I checked:
kernnetz: check with 2020: no kernnetz 2030: correctly builds 20 pipes (with reversed) 2040: correctly builds 10 additional pipes (with reversed) 2050: no mor pipes (already completely build) code: n.links[n.links.index.str.contains("kernnetz")]
reduction of gas network: 2020: no difference in gas pipelines between prenetworks brownfield and prenetworks-final 2030: 614 GW removed of 639 GW possible removed 2040: 65 GW removed from possible 175 GW 2050: no more removal code: n_bf.links.loc[(n_bf.links.carrier == "gas pipeline"), :].p_nom.sum() - n_f.links.loc[(n_f.links.carrier == "gas pipeline"), :].p_nom.sum()
p_nom max of prenetworks-final is roughly such an amount lower as the wkn in the period: 2020: p_nom max is 282 GW lower in final, whole reduction would have been 489 GW if you account for bidirectional pipes (reason for difference is that there is no retrofitting potential is some pipes of the gas network where it should be) 2030: same as year before 2040: same 2050: same
plots of kernnetz:
2020: no kernnetz
2030:
2040:
2050: same as 2040
code :
n_f.links.bus0 = n_f.links.bus0.str[:-3]
n_f.links.bus1 = n_f.links.bus1.str[:-3]
import cartopy.crs as ccrs import pandas as pd
fig, ax = plt.subplots(1, 1, figsize=(20,20), subplot_kw={"projection":ccrs.PlateCarree()}) n_f.links = n_f.links.loc[(n_f.links.carrier == "H2 pipeline") & (n_f.links.index.str.contains("kernnetz")), :]
n_f.plot(ax=ax, line_widths=0, link_widths=n_f.links.p_nom/5e3)
- the reduction of retrofitted and gas pipeline capacity is applied don the right lines
- To run the model with H2 retrofit those fixes have to be made to pypsa-eur submoduls branch:
- https://github.com/daniel-rdt/pypsa-eur/blame/44d9337b2e826aaa25b285784b3efa960bdb96e1/scripts/plot_network.py#L325-L337
- https://github.com/daniel-rdt/pypsa-eur/blame/44d9337b2e826aaa25b285784b3efa960bdb96e1/scripts/plot_network.py#L263-L268
build_year
when adding capacities:custom_pipes.query("build_year <= @investment_year", inplace=True)
p_nom_extendable=False
, viap_nom
taking into account build years (i.e. less in 2025 than in 2030)). Pipelines outside of Germany should be extendable because we don't have data.p_nom_extendable=True
but with Kernnetz capacities asp_nom_min
(as implemented now).