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.
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:
-
Clone oemof-B3 into local folder:
git clone git@github.com:rl-institut/oemof-B3.git
-
Enter folder
cd oemof-B3
-
Create virtual environment using conda:
conda env create -f 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
.
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.
Download the raw data for the model from zenodo via:
snakemake -j1 download_raw_data
Find the documentation here.
Feedback is welcome. If you notice a bug, please open an issue.
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