PyPSA / pypsa-ariadne

MIT License
6 stars 4 forks source link

Add max capacity limits for renewable energies in Germany #89

Closed toniseibold closed 4 weeks ago

toniseibold commented 1 month ago

Since our results showed too much renewable energies in 2020 and 2025, a maximum constraint is introduced. config["limits_capacity_max"] follows the same logic as `config["limits_capacity_min"]. Be aware that defining both upper and lower limits for renewables is possible but might lead to numerical issues.

JulianGeis commented 1 month ago

Nice work, the model runs through smoothly. :dancing_women:

Why are we limiting the capacity expansion and not the total capacity itself? If I see it right, only the newly installed capacity is restricted, but to the total value of capacity?

Comparing the results to the real system 2020 (365h): real: solar: 54 GW, onshore_wind: 54 GW, offshore: 8 GW model_2020: solar: 81 GW, onshore_wind: 61, offshore_wind: 0

real_2024: solar 88 GW, onhore_wind: 62 GW, offshore_wind: 8 GW model_2025: solar: 93 GW, onshore 61 GW, offshore: 16 GW

Maybe it makes sense to reintroduce the minimum limits at least in 2020 and just reproduce the system from the past. What is also weird is why is there no offshore wind in 2020. @toniseibold do you have the same results or is there some powerplantmatching weirdness on my side again? :D

lindnemi commented 4 weeks ago
toniseibold commented 4 weeks ago
lindnemi commented 4 weeks ago

Existing solar capacities for the 2020 model are 81 GW, onshore wind 61 GW. Both are bigger than historical values. The reason is that the generator solar-2019 contains all capacities added in 2019 and later. Since our input data already contains solar added after 2020, we get excess capacities

lindnemi commented 4 weeks ago

we could throw out the extra capacities, but then they would be missing in later years (except that they probably get build by the model anyway)

lindnemi commented 4 weeks ago

My suggestion: Keep extra capacity, allow no further extension, issue a warning. This will imply that we have too much RES generation in 2020 and can not exactly validate against data for 2020.

lindnemi commented 4 weeks ago

@toniseibold changed the logic for Maximum limits slightly, please take a look

toniseibold commented 4 weeks ago

Logic looks good. Could add "residential rural solar thermal", "services rural solar thermal", "residential urban decentral solar thermal", "services urban decentral solar thermal", "urban central solar thermal" to the forbidden variable just to be on the safe side.