Efficiencies
Change proposed in this Pull Request
Add efficiencies to conventional power plants based on their commissioning year. It uses information of fuel consumption from EEA and total generation from ENTSOE to form a linear regression between efficiency and commissioning year.
- There are not so many data points unfortunately.
- I hope I have used the proper function for matching the datasets.
- Documentation is not added.
- Downloading generation from ENTSOE takes very long unfortunately and it sometimes breaks. I have compiled a .csv file though and can upload it somewhere.
Type of change
- [ ] Bug fix (non-breaking change which fixes an issue)
- [x] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to change)
- [ ] Other
Checklist
- [ ] I have added a note to release notes
doc/release_notes.rst. - [ ] I have used
pre-commit run --allto lint/format/check my contribution - [ ] I have documented the effects of my code changes in the documentation
doc/. - [ ] I have adjusted the docstrings in the code appropriately.
Hey @bourbl! Thank you for your PR. I like the idea to retrieve data from EEA and Entsoe to calculate efficiencies. Allow me to pose some questions before fully reviewing the code?
- What do the functions
EEAandENTSOE_generationreturn in particular? Do they return efficiency values per plant or technology / commissioning year? - Did you see the functions in
powerplantmatching.heuristics? There is already a functionfill_commissioning_years, why not taking the approach to create afill_efficienciesfunction which uses stored data created from your EEA / ENTSOE approach.
Hi @FabianHofmann, yes, of course. You can also contact me by e-mail.
- They both return dataframes with power plant names and a feature value. In
EEAthe feature value is annual fuel consumption and inENTSOE_generationit's annual electricity generation. Then the idea is to uselink_multiple_datasetsto match these tables including the final matched dataset to generate efficiencies by dividing the two values (unfortunately the only fields available for matching are the names and the countries). Afterwards, using the efficiencies calculated above, extrapolate the missing efficiencies by linear regression based on the commissioning year. - The data tables do not include documented efficiencies, the PR is to find a way to circumvent the lack of it. Nevertheless, I should have used the
fill_commissioning_yearsin theextrapolate_efficienciesbecause I did something like that in line 150.
@bourbl thanks for the explanation
- Yes, that makes sense
- I rather thought about pre-calculating the efficiencies with your approach, store the data somewhere and use it in a function called
fill_missing_efficiencies. But independent of this, theextrapolate_efficienciesshould be moved toheuristics.pyand namedfill_missing_efficiencies, then it meets the naming convention.
Hi @FabianHofmann, yes, of course. You can also contact me by e-mail.
- They both return dataframes with power plant names and a feature value. In
EEAthe feature value is annual fuel consumption and inENTSOE_generationit's annual electricity generation. Then the idea is to uselink_multiple_datasetsto match these tables including the final matched dataset to generate efficiencies by dividing the two values (unfortunately the only fields available for matching are the names and the countries). Afterwards, using the efficiencies calculated above, extrapolate the missing efficiencies by linear regression based on the commissioning year.- The data tables do not include documented efficiencies, the PR is to find a way to circumvent the lack of it. Nevertheless, I should have used the
fill_commissioning_yearsin theextrapolate_efficienciesbecause I did something like that in line 150.
@bourbl @FabianHofmann @pz-max
I am affraid that, by doing the extrapolation by the commissioning year, you would be introducing a logical error in the model.
The PP's efficiency is not to be assigned according to the commissioning year, rather the refurbishment year, since at that time, as most of the components are upgraded/replaced, all is refurbished and efficacy of the PP is reset & increased.
We are not talking regular mentanance here, but a major power-plant upgrade/refurbishment. All power-plant have this at some stage: hydro, nuclear, gas, combined-cycle, coal.
Now, how does one get the refurbishemnt year - I would aim for the TSO/sys. operator website, since they contain much more detailed info compared to the ENTSO-E stuff.