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

add >18 energy storage techologies #67

Merged
merged 29 commits into from
May 22, 2023
Merged

add >18 energy storage techologies #67

merged 29 commits into from
May 22, 2023

Conversation

pz-max
Copy link
Contributor

@pz-max pz-max commented Jan 10, 2023

Changes proposed in this Pull Request

This PR adds about 18 energy storage technologies from a PNNL report. The implementation will be tested in PyPSA-Earth and should be merged into main only after this proof of concept (so this is work in progress).

Checklist

  • Code changes are sufficiently documented; i.e. new functions contain docstrings and further explanations may be given in doc.
  • Data source for new technologies is cleary stated.
  • Newly introduced dependencies are added to environment.yaml (if applicable).
  • A note for the release notes doc/release_notes.rst of the upcoming release is included.
  • I consent to the release of this PR's code under the GPLv3 license.

@pz-max pz-max marked this pull request as ready for review January 10, 2023 21:39
latex_tables/bib_transition.bib Outdated Show resolved Hide resolved
latex_tables/tables_in_latex.py Outdated Show resolved Hide resolved
latex_tables/tables_in_latex.py Outdated Show resolved Hide resolved
latex_tables/tables_in_latex.py Outdated Show resolved Hide resolved
outputs/costs_2020.csv Outdated Show resolved Hide resolved
outputs/costs_2020.csv Outdated Show resolved Hide resolved
config.yaml Outdated Show resolved Hide resolved
config.yaml Outdated Show resolved Hide resolved
# While the first segment is known, the others are defined by the initial segments with a accumulating quadratic descreasing gradient
other_segments_points = [2034, 2039, 2044, 2049, 2054, 2059]

def geometric_series(nominator, denominator=1, number_of_terms=1, start=1):
Copy link
Collaborator

Choose a reason for hiding this comment

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

Can you change this, to either find cost assumptions for 2050 or assuming the same cost assumptions for the following years from 2030 onwards?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

2050 assumptions for all >18 technologies dont' exist.
I would suggest to:

  1. keep this geometric series approach (needs to be fine-tuned in future, but reflect more reality)
  2. create a new option to cap the costs at 2030 (really pessimistic)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

The config.yaml now has the option approx_beyond_2030 with two options "geometric_series" (optimistic that technologies will improve) and "same_as_2030" (very pessimistic assuming costs are not decreasing after 2030). Below I am also just showing briefly that the options work fine.

image

Option "same_as_2030"

2020 results

image

2030 results

image

2050 results

image

Option "geometric_series"

2050 results

image

scripts/compile_cost_assumptions.py Outdated Show resolved Hide resolved
scripts/compile_cost_assumptions.py Outdated Show resolved Hide resolved
@pz-max
Copy link
Contributor Author

pz-max commented Apr 13, 2023

Thanks for the review @lisazeyen You spotted some issues. 👍
I will work on the PR next week.

@pz-max
Copy link
Contributor Author

pz-max commented May 17, 2023

@lisazeyen sorry for working on this PR that late. Some other stuff came in between. The PR is ready for review, and I added comments to every open Q. Let me know if you have any questions.

If you approve all changes, I will upload all the outputs (they typically lead to merge conflicts that's why I would wait just before the intention to merge).

# add fuel cell/electrolysis efficiencies from Budischak (DEA assumptions very conservative)
h2_from_budischak : false
energy_storage_database:
h2_from_budischak: true # add fuel cell/electrolysis efficiencies from Budischak (DEA assumptions very conservative)
Copy link
Collaborator

Choose a reason for hiding this comment

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

probably by accident the h2_from_budischak moved below energy_storage_database, should be separate

Copy link
Contributor Author

@pz-max pz-max May 22, 2023

Choose a reason for hiding this comment

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

Yep, the energy_storage_database aims to keep all energy storage relevant data options in one place, addressing your comment. It's just a proposal happy to revert.

config.yaml Outdated Show resolved Hide resolved
@lisazeyen lisazeyen merged commit 36ffcfe into PyPSA:master May 22, 2023
@lisazeyen
Copy link
Collaborator

Thanks @pz-max !

@pz-max pz-max mentioned this pull request May 22, 2023
1 task
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.

3 participants