OpenAirClim
Description
OpenAirClim is an open-source response model for quantifying the climate impact of air traffic emissions. Rather than explicitly simulating physical processes, it uses response functions derived from comprehensive climate-chemistry models. This makes OpenAirClim particularly fast and efficient, with individual runs taking seconds to minutes on a conventional computer.
Motivation
Aviation operations account for around 3.5% of Effective Radiative Forcing and its share is expected to grow. A large part of aviation's impact arises from non-CO2 effects, in particular nitrogen oxide emissions and the formation of contrails. The impact of non-CO2 effects is highly dependent on the location and time of the emission, as well as on the characteristics of the emitting aircraft. Emerging aircraft and fuels (e.g. SAF, hydrogen, hybrid-electric) demand new, open and efficient tools to quantify their climate impacts. However, existing models are either closed, too general or computationally intense.
OpenAirClim and its add-ons constitute an open-source framework to rapidly model aviation emissions and their climate response: supporting science, industry and policy. Development is being led by the German Aerospace Center (Deutsches Zentrum für Luft- und Raumfahrt, DLR) and includes various research and industry partners.
Highlights
OpenAirClim builds upon the previous AirClim framework. Compared to AirClim, the new OpenAirClim framework:
- Provides standardised, open formats for the simulation configuration file, emission inventories and results
- Provides a Graphical User Interface (GUI) for interactive configuration and results exploration
- Handles multiple emission inventories over time (4D dependence)
- Allows attribution of climate impact to specific aircraft or fleets
- Implements tagging for atmospheric chemistry
- Extends contrail calculations to novel aviation fuels
- Enables the calculation of parametric scenarios at post-processing level, e.g. climate optimised routing
- Provides uncertainty and robustness metrics (work in progress)
- Provides various outputs, including time series of radiative forcing and temperature change, various climate metrics and sea-level rise
Typical use cases
OpenAirClim is aimed both at research and industry. Typical research questions that can be answered by using OpenAirClim relate to:
- fleet-wide scenarios, e.g. the introduction of a new aircraft type; climate impact of operations from a specific airline or airport
- aviation industry scenarios, e.g. the introduction of a new fuel type; climate-optimal distribution of SAF
- operational procedures, e.g. intermediate stop operations; flying lower and slower
Layout
Documentation
Please refer to openairclim.org for the documentation of the OpenAirClim framework. The documentation includes installation manuals, quick-start and user guides, example demonstrations, an API reference, as well as information on the scientific background and OpenAirClim governance.
Installation
OpenAirClim is currently available from PyPI at https://pypi.org/project/openairclim or from source at https://github.com/dlr-pa/oac. Later OpenAirClim versions will also be available from conda-forge (work in progress).
Install with pip
To install OpenAirClim from PyPI with pip (Python 3.11 or later required):
pip install openairclim
# install with optional dependencies (gui, docs, test, dev)
pip install openairclim[dev]
To install the latest development version directly from GitHub, you have two options:
# with git
git clone https://github.com/dlr-pa/oac.git
# with pip
pip install git+https://github.com/dlr-pa/oac.git
Install with uv
uv is a fast Python package and project manager. As a drop-in replacement for pip, it can install the published package the same way:
uv pip install openairclim
# install with optional dependencies (gui, docs, test, dev)
uv pip install openairclim[dev]
For a full development environment, clone the repository and let uv manage a
project-local virtual environment from the committed uv.lock:
git clone https://github.com/dlr-pa/oac.git
cd oac
uv sync --extra dev
This creates a .venv pinned to the interpreter in .python-version. Run
commands inside it with uv run (e.g. uv run oac-run <config-name>.toml),
or activate it directly with source .venv/bin/activate.
Install with conda
To install OpenAirClim with conda, make sure that either the
conda or
mamba package manager is installed
on your system. Currently, the only installation possibility with conda is by
first cloning the GitHub repository and then
installing the required dependencies using the provided environment_xxx.yaml
files:
git clone https://github.com/dlr-pa/oac-git
cd oac
conda env create -f environment_xxx.yaml
conda activate <env>
# optional: install GUI dependencies
conda env update -f environment_gui.yaml -n <env>
# install OpenAirClim in the conda environment with pip
pip install .
Replace xxx with either minimal or dev (full installation) and <env>
with the correct name of the conda environment (e.g. oac or oac_minimal).
To install an editable version of the openairclim package, allowing you to
make changes to the source code and see those changes reflected immediately,
use pip install -e . instead.
Getting started
Download repository data
OpenAirClim's response surfaces and background concentration scenarios are published separately, in dlr-pa/oac-data. To download the data to a shared cache, use:
oac-download-data
See the installation guide for override options.
Emission inventories
Air traffic emission inventories are an essential input to OpenAirClim. You can download example emission inventories based on the DLR project DEPA 2050 here. These inventories comprise realistic air traffic between 2020 and 2070.
If you are interested in testing or developing OpenAirClim, you might want to generate artificial data. This can be done using command line scripts from openairclim/utils/:
oac-create-artificial-inventories -o example/input/
oac-create-time-evolution -o example/input/
Graphical User Interface
OpenAirClim ships with an optional GUI for creating, loading and editing
configuration files, inspecting input data, running simulations and exploring
results. Provided the gui dependencies have been installed, it can be
launched using:
oac-gui
Run OpenAirClim
OpenAirClim can be run from the command line using:
cd path/to/working/directory
oac-run <config-name>.toml
Note that if there are any relative links in the config file (e.g.
dir = input/), you must be in the right working directory for OpenAirClim to
run successfully.
Create test files
If you contribute to the development of OpenAirClim, you will require additional test files. To create them, use:
python -m openairclim.utils.create_test_files -o tests/core/repository/
Roadmap
The scheduling of major software releases and milestone planning are partially dependent on the contractual framework with our stakeholders. For the version history of the completed releases, see the changelog. The full development stage as currently planned is shown in the layout.
Contributing
Contributions are very welcome. Please read our contribution guidelines to get started.
License
OpenAirClim is licensed under Apache 2.0, a copy of which can be found here.
Metadata
Release files for openairclim 0.18.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| openairclim-0.18.1.tar.gz | 141.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| openairclim-0.18.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 299.4 kB
Release files / openairclim-0.18.1.tar.gz
| Download URL | openairclim-0.18.1.tar.gz |
|---|---|
| Size | 141.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
277e8463168360c590dbde469e44419e1238c5967c0213c6294b03ef8030d975
|
|
BLAKE2b-256 checksum How to use checksums |
30eb47e36fb5d55af879497106fa2a35542a27d51a72b9ed2affc8173ba21a62
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 3, 2026.
Transparency logRelease files / openairclim-0.18.1-py3-none-any.whl
| Download URL | openairclim-0.18.1-py3-none-any.whl |
|---|---|
| Size | 158.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4ea5ef1c9bcfbd415f1de60f49a4b83de65d6c8fa46318675bd2e0a673a9a3e9
|
|
BLAKE2b-256 checksum How to use checksums |
90b5296dc5125f4aebb108a9dcfc4079b13de4ca25145c02590d3d05f88a85b3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 3, 2026.
Transparency log