pypsa-meets-earth / pypsa-earth

PyPSA-Earth: A flexible Python-based open optimisation model to study energy system futures around the world.
https://pypsa-earth.readthedocs.io/en/latest/
208 stars 167 forks source link

Build_renewables_area_availbility script #81

Closed pz-max closed 2 years ago

pz-max commented 2 years ago

The build renewable_profiles.py from PyPSA-Eur might be split into:

The intention behind this is that the code base might stay more comprehensible. Further potential new additions such as:

might require new features either on the time-series or land availability side. For instance, that an area availability map is produced for each technology separately.

pz-max commented 2 years ago

@euronion does that roughly cover what we discussed? @fneum any thoughts on that?

euronion commented 2 years ago

Area availabilities are created for the individual technologies anyways, as the the original build_renewable_potentials.py is executed on a per-technology basis.

In the first step (build_renewable_area_availability) you intend to determine eligible / available areas, right? (Already clustered per node or on a cutout level? The latter may be easier to read) In the second step (build_renewable_profiles) you would probably use atlite to determine renewable potentials per node and then the time-series per node, right?

There are many steps happening at the same time in the original build_renewable_profiles.py. It has improved quite a bit with the recent update by Fabian Hofmann: If you manage to understand what is happening without disecting it, then I suggest we just leave it as is? (I know, that's the opposite of what I said yesterday)

pz-max commented 2 years ago

build_renewable_area_availbility use Atlite to produce per technology an available area raster on cutout level. The script should also print out tiffs/png to quickly assess it. This available area part in the current scripts takes roughly 100 lines for the current set of technologies and I guess will grow to ~200+ lines when more technologies and datasets are included.

Adapted build_renewable_profiles use Atlite to produce only renewable potential time-series for each technology per node. Also around 100 lines potentially growing.

Yes, the code of the original PyPSA-Eur build_renewable_profiles.py does not look bad at all. Alright, yep maybe the best approach to implement the original version to gain more insights/experience.