To get started with MESSAGEix, the following tutorials are provided as Jupyter notebooks, which combine code, sample output, and explanatory text.

A static, non-interactive version of each notebook can be viewed online using the links below. In order to execute the tutorial code or make modifications, read the Preparation section, next.


Getting tutorial files

If you installed MESSAGEix from source, all notebooks are in the tutorial directory.

If you installed MESSAGEix using Anaconda, download the notebooks using the messageix-dl utility. In a command prompt:

$ messageix-dl --local_path /path/to/tutorials

Running tutorials

Using Anaconda

The nb_conda package is required. It should be installed by default with Anaconda. If it was not, install it:

$ conda install nb_conda
  1. Open “Jupyter Notebooks” from Anaconda’s “Home” tab (or directly if you have the option).
  2. Choose and open a tutorial notebook.
  3. Each notebook requires a kernel that executes code interactively. Check that the kernel matches your conda environment, and if necessary change kernels with the menu, e.g. KernelChange KernelPython [conda root].

From the command line

  1. Navigate to the tutorial folder. For instance, if messageix-dl was used above:

    $ cd /path/to/tutorials
  2. Start the Jupyter notebook:

    $ jupyter notebook

Westeros Electrified

This tutorial demonstrates how to model a very simple energy system, and then uses it to illustrate a range of framework features.

  1. Build the baseline model.
  2. Introduce emissions and a bound on the emissions.
  3. Limit emissions using a tax instead of a bound.
  4. Represent both coal and wind electricity, using a “firm capacity” formulation: each generation technology can supply some firm capacity, but the variable, renewable technology (wind) supplies less than coal.
  5. Represent coal and wind electricity using a different, “flexibility requirement” formulation, wherein wind requires and coal supplies flexibility.

Austrian energy system

This tutorial demonstrates a stylized representation of a national electricity sector model, with several fossil and renewable power plant types.

  1. Prepare the base model version, in Python or in R.
  2. Plot results, in Python or in R.
  3. Run a single policy scenario.
  4. Run multiple policy scenarios. This tutorial has two notebooks: an introduction with some exercises and completed code for the exercises.