Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Restructure the yaml file format to separate variable types from fuels #64

Merged
merged 12 commits into from
Aug 5, 2020

Conversation

danielhuppmann
Copy link
Member

This PR is a first step towards implementing the proposal in #29, namely to separate the list of fuels from the variable definitions. This will make the yaml files more readable (because shorter) and reduce the potential for errors (because avoiding unnecessary repetition).

The key change: the variables for electricity generation by fuel types (including CCS subcategories) are generically given by Secondary Energy|Electricity|<Fuel> (rather than having to define the full list in energy-secondary.yaml) and the <Fuel> tag will be replaced by the list given in fuel_types.yaml when importing the Python package (so that the validation continues to work as expected). A test is added to make sure that the correct variable and description are available via the Python package.

This PR only changed this one instance (electricity generation) to elicit feedback - other variables can then be simplified in a similar manner after a first round of discussion, e.g., replacing numerous occurrences of Maximum Active Power|Electricity|... by just one variable Maximum Active Power|Electricity|<Fuel> in power-plant.yaml.

@danielhuppmann danielhuppmann added structure Definition of the repository structure py-package Related to the installable Python package labels Jul 24, 2020
Copy link
Collaborator

@erikfilias erikfilias left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I propose two new sub-categories for Gas and Hydro, respectively. OCGT & CCGT for Gas. And, Run of River & Pumped Storage for Hydro.

Copy link
Collaborator

@sandrinecharousset sandrinecharousset left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added a few missing technologies

@danielhuppmann
Copy link
Member Author

Thanks @sandrinecharousset and @erikfilias for the suggestions, I have merged them (with some minor editorial changes in the descriptions).

@openENTRANCE/coordination any other comments? (please do not add more suggestions of fuel types for now, this will be implemented via specific PRs later - but general comments on the proposed structure are welcome!)

Coal:
description: Coal (including hard coal and lignite)
ccs: True

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@danielhuppmann I have a question: how do you declare the variable in the data file when eg it is Coal without CCS?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for this question @sandrinecharousset because it shows that the proposed notation is not yet sufficiently intuitive. The idea is that every fuel in fuel_types.yaml that has the attribute ccs: True has two sub-categories.

So following your example, there would be three variables:

  • Secondary Energy|Electricity|Coal (which is the total)
  • Secondary Energy|Electricity|Coal|w/ CCS
  • Secondary Energy|Electricity|Coal|w/o CCS

This is (tried to be) explained at the top of that file. Can you propose how to rename the attribute or extend the description to make this immediately obvious?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @danielhuppmann
When reading again the file, I find it clear. But I propose to add just examples so that too-quick readers (such as myself) will catch it....

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thank you @sandrinecharousset - I rewrote it to make it even clearer that we are talking about three variables, not just the two sub-categories. hope you agree!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
py-package Related to the installable Python package structure Definition of the repository structure
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants