Skip to content
A model of the European power system built using Calliope.
Python
Branch: develop
Clone or download
timtroendle Merge pull request #5 from brynpickering/update-README
Update README to clarify download locations
Latest commit 51b78ff Nov 22, 2019

README.md

Euro Calliope

A model of the European power system built using Calliope.

This repository contains the routines that automatically generate the model from source data.

Get ready

  1. You need conda to build and use the model. Using conda, you can create a conda environment from within you can run it:
conda env create -f requirements.yml
conda activate euro-calliope
  1. You need a Gurobi license installed on your computer, or you need to choose a different solver.

  2. You need an account at the Copernicus Climate Data Service and you need to create a $HOME/.cdsapirc file with your credentials, see their How To (you do not need to manually install the client).

  3. Further, you need all data files that cannot be retrieved automatically:

Generate the model

Because input data is large, the actual model including this data is not part of this repository. To use the model, you first need to generate it from input data and scripts. Running the generation step will generate the model in the ./model folder.

snakemake --use-conda

Run on Euler cluster

To run on Euler, use the following command:

snakemake --use-conda --profile config/euler

If you want to run on another cluster, read snakemake's documentation on cluster execution and take config/euler as a starting point.

Example use of the model

The generation step created all single parts of euro-calliope, like technologies and time series. These can be combined to eventually build a final model to run simulations with. For an example of such a model, see ./tests/simple-model.yaml. It is a complete Calliope model and can be used like any other, for example like this:

$ calliope run ./tests/simple-model.yaml

For more information on how to use Calliope models, see Calliope's documentation.

Units and scaling

The default units for Euro-Calliope are MW, MWh, EUR, and km2, but you can scale all of these using the configuration values in config/default.yaml. Apart from convenience, this may be important to handle numerical issues with your solver.

Repo structure

  • build/model: contains the entire model after the generation step, including Calliope definition files and data (does not exist initially)
  • src: contains the source data and source code to generate the model
  • envs: contains files defining the environment to run the built steps in
  • tests: contains a test usage of the model

Run the tests

snakemake --use-conda test -f

To run all tests, including the tests on the regional level:

snakemake --use-conda test -f --config runregional=True
You can’t perform that action at this time.