Skip to content
/ ixmp4 Public

A data warehouse for high-powered scenario analysis in the domain of integrated assessment of climate change and energy systems modeling

License

Notifications You must be signed in to change notification settings

iiasa/ixmp4

Repository files navigation

The ixmp4 package for scenario data management

Copyright (c) 2023-2024 IIASA - Energy, Climate, and Environment Program (ECE)

license: MIT python Code style: ruff

Overview

The ixmp4 package is a data warehouse for high-powered scenario analysis in the domain of integrated assessment of climate change and energy systems modeling.

License

The ixmp4 package is released under the MIT license.

Install from pypi

You can install ixmp4 using pip:

pip install ixmp4

Install from GitHub

For installing the latest version directly from GitHub do the following.

Requirements

This project requires Python 3.10 (or higher) and poetry (>= 1.2).

Setup

# Install Poetry, minimum version >=1.2 required
curl -sSL https://install.python-poetry.org | python -

# You may have to reinitialize your shell at this point.
source ~/.bashrc

# Activate in-project virtualenvs
poetry config virtualenvs.in-project true

# Add dynamic versioning plugin
poetry self add "poetry-dynamic-versioning[plugin]"

# Install dependencies
# (using "--with dev,docs,server" if dev and docs dependencies should be installed as well)
poetry install --with dev,docs,server

# Activate virtual environment
poetry shell

# Copy the template environment configuration
cp template.env .env

# Add a test platform
ixmp4 platforms add test

# Start the asgi server
ixmp4 server start

CLI

ixmp4 --help

Docs

Read doc/README.md to build and serve the documentation locally.

Docker Image

Check docker/README.md to build and publish docker images.

Developing

See DEVELOPING.md for guidance. When contributing to this project via a Pull Request, add your name to the "authors" section in the pyproject.toml file.

Compatibility

This project mainly targets postgres version 16 but we test version 15 continously also. Tests with pyarrow installed alongside are also run due to its effect on pandas etc.

python postgres with pyarrow
3.10 16 false
3.11 16 false
3.12 16 false
3.12 16 true
3.12 15 false

Funding ackownledgement

ECEMF logo openENTRANCE logo Kopernikus project ARIADNE logo

The development of the ixmp4 package was funded from the EU Horizon 2020 projects openENTRANCE and ECEMF as well as the BMBF Kopernikus project ARIADNE (FKZ 03SFK5A by the German Federal Ministry of Education and Research).

EU logo This project has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No. 835896 and 101022622.