Skip to content

rl-institut/oemof-B3

Repository files navigation

oemof-B3

oemof-B3 is an energy system model of Berlin and Brandenburg. It represents many sectors: Electricity, central and decentral heat, hydrogen, CO2 and methane. It is a multi-node-model, which means that several distinct regions are represented that are connected via transmission lines.

The model is a perfect-foresight, cost minimizing linear optimization model that builds upon oemof.solph, oemof.tabular, and oemoflex.

There are six scenarios available, that you can calculate with oemof-B3:

  • 2050-80-el_eff
  • 2050-80-gas_moreCH4
  • 2050-95-el_eff
  • 2050-95-gas_moreCH4
  • 2050-100-el_eff
  • 2050-100-gas_moreCH4

All six refer to the target year 2050. A further distinction is made between an emissions reduction of 80, 95 or 100 percent. Furthermore, the scenarios differ in their degree of electrification. Scenarios with the index 'el_eff' represent strongly electrified scenarios, while 'gas_moreCH4' represent scenarios with increased use of methane. In the documentation you will find instructions on how to run the scenarios with oemof-B3.

Getting started

Installation

Currently, oemof-B3 needs python 3.8, 3.9 or 3.10 (newer versions may be supported, but installation can take very long).

Additionally, you need to install the python dependency manager poetry. It is recommended to install poetry system-wide via the command below or pipx:

curl -sSL https://install.python-poetry.org | python3 -
poetry install

In order to install oemof-B3, proceed with the following steps:

  1. Clone oemof-B3 into local folder:

    git clone git@github.com:rl-institut/oemof-B3.git
    
  2. Enter folder

    cd oemof-B3
    
  3. Create virtual environment using conda:

    conda env create -f environment.yml
    
  4. Activate environment:

    conda activate oemof-B3
    
  5. Install oemof-B3 package using poetry, via:

    poetry install
    

Alternatively, you can create a virtual environment using other approaches, such as virtualenv.

To create reports oemof-B3 requires pandoc (version > 2). Pandoc is included in conda environment config (environment.yml). If environment is build otherwise, pandoc must be installed manually. It can be installed following instructions from Pandoc Installation.

For the optimization, oemof-B3 needs a solver. Check out the oemof.solph documentation for installation notes.

To test if everything works, you can run the examples.

For developers: Please activate pre-commit hooks (via pre-commit install) in order to follow our coding styles.

Data

Download the raw data for the model from zenodo via:

snakemake -j1 download_raw_data

Documentation

Find the documentation here.

Contributing

Feedback is welcome. If you notice a bug, please open an issue.

Build the docs locally

To build the docs locally, you have to install related dependencies via

poetry install -E docs

Afterwards, navigate into the docs directory with

cd docs/

and run

make html

The output will then be located in docs/_build/html and can be opened with your favorite browser