Open danielhuppmann opened 4 years ago
@erikfilias @sandrinecharousset any comments?
This does make sense from our model's point of view, and we do not see a problem in handling the extra yaml files.
As capacities of <Power Plants>
are only part of the electricity sector for many long-term energy system models, other placeholder types could be something along the lines of <(Electricity) Storage>
, <Heat Cooling Applications>
, and <Transport Applications>
.
Possible variable combination could then be:
Capacity|Electricity|<Electricity Storage>
with e.g. Battery|Lithium-Ion
Capacity|Electricity|<Heat Cooling Applications>
with e.g. Heat Pump|Air-Source
Capacity|Electricity|<Transport Applications>
with e.g. Electric Vehicle|BEV
(although electric vehicle units might need a storage capacity rather than a charging capacity value)I agree because internally I made a similar process to convert data format.
I only have a doubt related to the validation process.
Is it could be computationally expensive, no?
I imagine that for each variable will have a loop in order to link the variable with all possible options in <Power Plants>
and index/match it with their similar in the CSV file.
I also agree with your proposal @danielhuppmann Moreover, the list of plant types should not be closed and it will be much easier to add a new type of plant with such a strucutre
But I am not completely sure that all kinds of power plant would have the same 'strucure' of 'characteristics'; eg hydro plants are very different.... We usually have 4 different kinds: 1/ thermal plants (including coal, gas, nuclear, biomasse ...) 2/ hydro reservoir plants 3/ other renewable plants with variable capacity (including PV, wind, runofriver) - Those different kinds of plants share some characteristics (like Maximum Active power....) but some characteristics are only for some of the plants (like volumes...)
The list of variables is already becoming quite long, causing a risk of confusion or duplication going forward. One option is to separate the definitions into two parts at least for those variables.
Using the following example
Capacity|Electricity|Coal|w/ CCS
Capacity|Electricity
Coal|w/ CCS
This could then be defined in two separate files and linked by defining the variable as:
Capacity|Electricity|<Power Plants>
and a list of power plants types.The advantage is that it would result in shorter files. The disadvantage is that it makes reading the yaml files more complicated (because a user would have to switch back and forth), and it would require a more sophisticated programmatic implementation (e.g., a Python package) to use the definitions in automated workflows.