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

Convert conventional ppls from generators to link with existing capacity #1165

Merged
merged 11 commits into from
Nov 15, 2024

Conversation

yerbol-akhmetov
Copy link
Collaborator

@yerbol-akhmetov yerbol-akhmetov commented Nov 2, 2024

Changes proposed in this Pull Request

Good day. I am proposing to convert conventional generators (e.g. coal, lignite, biomass, oil and etc) from generators to link with stores and generators. Currently it is implemented for OCGT in add_generation function of prepare_sector_networks and oil in add_oil functions. However, the current implementation is not fully correct as existing OCGT generators from elec network is not removed when added as a link.

This PR aims to convert technologies listed in conventional_generation section of sector section of config to links, and remove from generators. Having stores and links for conventional carriers is practical when defining new technologies that uses those carriers (eg. carbon capture). In addition, it will be possible to keep existing capacities and transfer them to links based on the option in config.

Checklist

  • I consent to the release of this PR's code under the AGPLv3 license and non-code contributions under CC0-1.0 and CC-BY-4.0.
  • I tested my contribution locally and it seems to work fine.
  • Code and workflow changes are sufficiently documented.
  • Changes in configuration options are added in all of config.default.yaml and config.tutorial.yaml.
  • Changes in configuration options are also documented in doc/configtables/*.csv and line references are adjusted in doc/configuration.rst and doc/tutorial.rst.
  • A note for the release notes doc/release_notes.rst is amended in the format of previous release notes, including reference to the requested PR.

@yerbol-akhmetov
Copy link
Collaborator Author

Similar to spatial_oil and spatial_gas, I have added such options for lignite and coal. I have set spafial_coal: true and spatial_lignite: false by default in config.default.yaml. But that can be discussed.
I have a question: Why do we have distributed oil by default (spatial_oil: true)? We also have oil reserves as 100 TWh in the config (fossil_reserves). In the code, currently 100TWh is set as e_initial at all distributed stores. So each store will have 100TWh of oil equivalent available, making total volume depend on number of stores. Should that number split by buses? I suppose so. Method of split is another question. Maybe it is better to set spatial_oil: false by default?

@yerbol-akhmetov
Copy link
Collaborator Author

Another thing that I want to discuss is the possibility to rename spatial bus names from Africa to Region (or Regional). I think it can be more neutral. Eg. we have Africa solid biomass node, it can be Regional solid biomass.

@yerbol-akhmetov yerbol-akhmetov marked this pull request as ready for review November 4, 2024 09:56
@yerbol-akhmetov
Copy link
Collaborator Author

Hi, @davide-f. It would be great to hear your opinion on this PR.

Copy link
Member

@davide-f davide-f left a comment

Choose a reason for hiding this comment

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

Hello @yerbol-akhmetov :D
The PR looks quite nice to me.

Beyond the comments here; I'd recommend to check at least a test config file, to ensure the new code is well tested and included in the CI. For example the spatial_lignite: false.

Great contribution!!!

Update: In agreement to the -sec meeting, we may have also a view of this PR by hazem

scripts/prepare_sector_network.py Outdated Show resolved Hide resolved
@yerbol-akhmetov
Copy link
Collaborator Author

Thanks, @davide-f, for suggestion. I have renamed all Africa instances to Earth.

@davide-f
Copy link
Member

Merging :D Congratulations!

@davide-f davide-f merged commit aea9d27 into pypsa-meets-earth:main Nov 15, 2024
6 checks passed
@yerbol-akhmetov yerbol-akhmetov deleted the make_generators_link branch November 15, 2024 16:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants