Skip to content

modelblocks-org/module_demand_electricity

Repository files navigation

Data module for electricity demand in Europe

This module prepares electricity demand timeseries for Europe at arbitrary resolution

About

This is a modular snakemake workflow created as part of the Modelblocks project. It can be imported directly into any snakemake workflow.

For more information, please consult the Modelblocks documentation, the integration example, and the snakemake documentation.

Overview

Data processing steps:

  • Download ENTSO-E historical load profiles.
  • Download a gridded population dataset that serves as a disaggregation proxy.
  • Filter and clean the raw load profile data.
  • Clip the population raster to the ENTSO-E area.
  • Disaggregate the national annual load to raster, using population as weight.
  • Re-aggregate the annual load raster data to the target shapes.
  • Assign the corresponding national load profile to each region to get the final load profiles for the target shapes.

Configuration

Please consult the configuration README and the configuration example for a general overview on the configuration options of this module.

Input / output structure

Please consult the interface file for more information.

Development

We use pixi as our package manager for development. Once installed, run the following to clone this repository and install all dependencies.

git clone git@github.com:modelblocks-org/module_demand_electricity.git
cd module_demand_electricity
pixi install --all

Please be aware that this is a multi-environment project (see pixi.toml for details).

  • default: used for development and integration testing. Because it contains Snakemake, conda and pytest as dependencies it should not be used in Snakemake rules.
  • module: contains minimal dependencies used in Snakemake rules. If modified, be sure to export it to Snakemake so it can be recreated by module users:
# create module.yaml and conda-spec pin files in workflow/envs/
pixi run export-snakemake-env module

Testing

For testing, simply run:

pixi run test-integration

To test a minimal example of a workflow using this module:

pixi shell    # activate this project's environment
cd tests/integration/  # navigate to the integration example
snakemake --use-conda --cores 2  # run the workflow!

References

This module is based on the following research and datasets:

Contributors ✨

Thanks goes to these wonderful people, sorted alphabetically (emoji key):

Jann Launer
Jann Launer

🤔 💻 ⚠️ 📖
Ivan Ruiz Manuel
Ivan Ruiz Manuel

👀

This project follows the all-contributors specification. Contributions of any kind welcome!

About

A module to prepare demand profiles for Europe at arbitrary spatial resolution, based on ENTSO-E historical load data.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages