pypsa-eur icon indicating copy to clipboard operation
pypsa-eur copied to clipboard

Enhanced Geothermal Systems

Open LukasFrankenQ opened this issue 2 years ago • 7 comments

Addresses #541.

Adds enhanced geothermal systems (EGS) for electricity generation an combined heat and power.

egs

This PR adds EGS to PyPSA-Eur. EGS refers to extracting heat from engineered (e.g. fractured) hot dry rock in deep geological layers. The main features are

  • Inclusion of potentials for egs capacity for electricity generation and the respective capital costs, based on geothermal gradients, subsurface heat conductivity based on Aghahosseini, Breyer 2020.
  • EGS for combined heat and power; if urban central heat is found in the network, EGS generates both for AC and urban central heat, respecting preliminary findings from the upcoming paper: CHP operation is most cost-effective.
  • A switch in the config that makes either optimistic or pessimistic assumptions on future developments of EGS cost. In the case of optimism the cost reduces exponentially towards 2050, replicating estimations made in the Aghahosseini et al. (2020). That paper assumes a cost reduction of 7.5% for each doubling in installed capacity, paired with an exponential increase in installed capacity towards 2050. The switch is by default set to the pessimist version, where the costs remain at their estimated 2020 level.
  • Flexible EGS which adds a storage unit to the generation nodes. Its use represents the application of backpressure to the production well, and boosted generation afterwards, see Ricks et al. 2023.
  • A switch that makes the execution more performant, and checks afterwards if that choice potentially changed model results.
  • Temperature-dependent capacity factors. Research suggests that EGS runs more efficiently when ambient temperatures are lower relative to the temperature for which the plant was planned. This induces time-dependent efficiencies, which can be switched on in the config.

This PR is how sharp, but crashed without adding the attached file to the databundle (egs_costs.json), and also needs a PR for organic rankine cycles just added to tech-data.

More long-term but very relevant features could be deep geothermal aquifers, along the lines of the recently completed district heating project finished in Munich.

Please let me know about any ideas and suggestions that you have :) All the best, Lukas

Checklist

  • [X] I tested my contribution locally and it seems to work fine.
  • [X] Code and workflow changes are sufficiently documented.
  • [X] Changed dependencies are added to envs/environment.yaml.
  • [X] Changes in configuration options are added in all of config.default.yaml.
  • [ ] Changes in configuration options are also documented in doc/configtables/*.csv.
  • [X] A release note doc/release_notes.rst is added.
  • [X] Fixed pre-commit issues

LukasFrankenQ avatar Sep 05 '23 14:09 LukasFrankenQ

@LukasFrankenQ is the dataset behind that also globally available? What's missing in this PR as it is still in draft mode?

pz-max avatar Oct 26 '23 11:10 pz-max

Hi @pz-max, yeah valid points, the dataset is from the plotting in Aghahosseini et al.. In the original supplemental of that paper, only a country-aggregated version was included, through a mail exchange the lon-lat version of the data used here was given to me. The file would need to be added to the databundle, this is the main reason it is just a draft right now

LukasFrankenQ avatar Nov 01 '23 16:11 LukasFrankenQ

Alright, many thanks for the review @lisazeyen! Will make the changes!

LukasFrankenQ avatar Nov 25 '23 13:11 LukasFrankenQ

@LukasFrankenQ should I have another look at the PR? If so, can you update to the latest master?

lisazeyen avatar Mar 25 '24 08:03 lisazeyen

@lisazeyen Thank you for the offer! I would work on it for one/two more days, mainly I would like to use the adjustments in the config to take care of the cost reductions. I would also remove the performant part :)

LukasFrankenQ avatar Mar 25 '24 13:03 LukasFrankenQ

Hi @lisazeyen, I think it would be ready now for another round.

I should note that it this PR depends on a cost file compiled by technology-data including the PR on organic Rankine cycles (https://github.com/PyPSA/technology-data/pull/111)

LukasFrankenQ avatar Mar 26 '24 23:03 LukasFrankenQ

The corresponding PR for technology-data is now merged and included in the new release.

fneum avatar May 12 '24 16:05 fneum

Awesome, many thanks @fneum. Will shortly update to newest commits!

LukasFrankenQ avatar May 18 '24 18:05 LukasFrankenQ

Hi @lisazeyen, Hi @fneum, I updated the PR, made some final checks for bugs and tested an array of configurations. Everything seems to run smooth, and should be implemented as discussed.

There are two points/questions that are still open:

  1. I took some freedom to make the logging within prepare_sector_network quite verbose. I think the user is passed some useful (necessary?) information on how to use the EGS feature though, so I think it could be worth it - given the default of EGS being not enabled. If EGS is enabled, the user probably cares about these details.
  2. The default execution appears to not use the latest cost files created by technology-data which crashes the code, probably a standard problem for which you have a procedure in place?

Eager to hear any feedback beyond this, and All the best, Lukas

LukasFrankenQ avatar May 31 '24 23:05 LukasFrankenQ

@LukasFrankenQ great!

  1. Awesome that you added some logging inforamtion there. I think this is going to be useful.
  2. In the config.yamlyou specify the technology data version here. And I think in the latest version all your cost data should be included. Can you double check that this is the reason that the workflow is not running?

lisazeyen avatar Jun 03 '24 08:06 lisazeyen

Hi @lisazeyen, thanks for getting back so quickly! Great call about the config, I figured it out, when running the workflow in testing, I originally had laying around an older costs2023.csv file, that was not updated because I had --touched it. It runs smoothly with the the current technology-data version 👍

LukasFrankenQ avatar Jun 03 '24 11:06 LukasFrankenQ

@LukasFrankenQ great! Nice to have this in the master!

lisazeyen avatar Jun 04 '24 08:06 lisazeyen

image Thank you! :)

LukasFrankenQ avatar Jun 04 '24 11:06 LukasFrankenQ