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

Update central heating temperatures based on Euroheat data and AGFW-Hauptbericht #1264

Merged
merged 12 commits into from
Sep 9, 2024

Conversation

amos-schledorn
Copy link
Contributor

@amos-schledorn amos-schledorn commented Sep 6, 2024

Currently, central heating forward and return temperatures are guesstimates. This PR applies data on typical forward temperatures from Euroheat's 2024 Market Outlook. Minimum forward temperatures and return temperatures are extrapolated based on German data from AGFW-Hauptebericht 2022.
The data itself is a config setting and exchangeable; the extrapolation of missing country data is introduced as a feature.

Changes proposed in this Pull Request

  • config.default is updated such that Euroheat data is used for country-wise forward temperatures, with the exception of Germany ("up to 130C" in Euroheat data), where data from AGFW-Hauptbericht 2022 is used.
  • build_central_heating_profiles.run.py is modified such that:
  1. Missing max_forward_temperature values are replaced by average across all other countries and entry default in (countries not present in config.max_forward_temperatures).
  2. Missing min_forward_temperature/return_temperature values (by default all but Germany) are extrapolated from average ratio between max_forward_temperature and min_forward_temperature/return_temperature for those countries specified in min_forward_temperature (by default only Germany, from AGFW-Hauptbericht).

Checklist

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

Testing

This config was used for testing:

scenario:
  clusters:
  - 39
  planning_horizons:
  - 2030

countries: ['AL', 'AT', 'BA', 'BE', 'BG', 'CH', 'CZ', 'DE', 'DK', 'EE', 'ES', 'FI', 'FR', 'GB', 'GR', 'HR', 'HU', 'IE', 'IT', 'LT', 'LU', 'LV', 'ME', 'MK', 'NL', 'NO', 'PL', 'PT', 'RO', 'RS', 'SE', 'SI', 'SK', 'XK']

clustering:
  temporal:
    resolution_sector: 12h

The new supply temperatures are (for those countries in config):

Country Max Forward Temperature Min Forward Temperature Return Temperature
FR 110.00 82.75 58.53
DK 75.00 56.42 39.91
DE 109.00 82.00 58.00
CZ 130.00 97.80 69.17
FI 115.00 86.51 61.19
PL 130.00 97.80 69.17
SE 102.00 76.73 54.28
IT 90.00 67.71 47.89

For all countries:
image

Urban central heat mix before:
image

Urban central heat mix after:
image

Note

Bacteria growth might be a problem for low return temperatures, such as for Denmark. However, the DEA technology catalogue for district heating mentions low return temperatures (~35C) in several places - simply search for "return" in the PDF.
I would suggest not setting a floor value for now but confirming this with experts in the future.

@amos-schledorn amos-schledorn marked this pull request as draft September 6, 2024 13:09
@amos-schledorn amos-schledorn marked this pull request as ready for review September 6, 2024 14:38
@amos-schledorn amos-schledorn marked this pull request as draft September 6, 2024 15:08
Copy link
Member

@fneum fneum left a comment

Choose a reason for hiding this comment

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

Code-wise, this looks good to me. Results look plausible. Not merging as it is in draft mode.

The reason the tests fail is because ValueError: t_hot must be greater than t_cold, which needs to be captured but is probably a small fix.

Merge at will once tests pass.

Copy link
Contributor

@cpschau cpschau left a comment

Choose a reason for hiding this comment

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

Looks good @amos-schledorn! Do you already have an idea what's causing the error thrown in the CI?

@amos-schledorn amos-schledorn marked this pull request as ready for review September 9, 2024 13:58
@amos-schledorn
Copy link
Contributor Author

Thanks for the review, @fneum, @cpschau . The failing CI came from a small bug in the helper function for extrapolation. I've added an exception to catch this in the future.

@amos-schledorn amos-schledorn enabled auto-merge (squash) September 9, 2024 14:32
@amos-schledorn amos-schledorn merged commit 5cf706f into master Sep 9, 2024
8 checks passed
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