Skip to content

rl-institut/Uganda_oemof

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.

Oemof-B3 is currently under heavy development, which means that first full scenario runs will be available in the coming months.

Getting started

Installation

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

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

  • git-clone oemof-B3 into local folder: git clone https://github.com/rl-institut/oemof-B3.git
  • enter folder
  • create virtual environment using conda: conda env create environment.yml
  • activate environment: conda activate oemof-B3
  • install oemof-B3 package using poetry, via: poetry install

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

Oemof-B3 needs pandoc (version > 2) in order to create reports. 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.

Oemof-B3 further needs demandlib in order to create heat load profiles. Due to a conflict of required pandas versions, the demandlib cannot be installed with poetry install. A separate installation is therefore necessary:

pip install demandlib

The clash of the pandas version should be fixed with the release of oemof-B3 0.0.2.

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

The raw data necessary to run the scenarios is not part of the model. It is not public yet and will be provided in the coming months.

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