Skip to main content

logo

MIKE+Py: Streamline your MIKE+ workflows

Python version Full test PyPI version OS Downloads

MIKE+Py is an open-source Python package for interacting with MIKE+ model databases (.sqlite files). It enables automation of modelling tasks, programmatic data manipulation, scenario management, and simulation execution, enhancing the reproducibility and efficiency of MIKE+ workflows.

Installation

MIKE+Py can be installed from PyPI using uv (or pip):

uv pip install mikeplus

Note
Use of MIKE+Py requires a valid MIKE+ license.

To install a version compatible with a specific MIKE+ release year (e.g., MIKE+ 2025):

uv pip install mikeplus==2025.*

Quick Start

Here are a couple of quick examples to get you started:

Open a database and read table data into a Pandas DataFrame:

import mikeplus as mp

with mp.open("your_model.sqlite") as db:
    db.tables.msm_Node.to_dataframe()

Open a database and run the active simulation setup:

import mikeplus as mp

with mp.open("your_model.sqlite") as db:
    db.run() 

Key Features

  • Database Interaction: Programmatically open, create, and manage MIKE+ .sqlite databases.
  • Data Manipulation: Read and modify model data stored in various tables using a fluent API that supports Pandas DataFrames.
  • Scenario Management: Access, create, activate, and delete scenarios and alternatives.
  • Simulation Execution: Run MIKE+ simulations for different modules (CS, EPANET, SWMM) directly from Python.
  • Automation: Automate repetitive tasks such as parameter updates, scenario comparisons, and batch simulations.
  • Tools Integration: Programmatic access to some MIKE+ GUI tools.

Documentation

Comprehensive documentation is available at: https://dhi.github.io/mikepluspy/

Caution: Work with Database Copies

MIKE+Py directly modifies the .sqlite database file. There is no undo functionality within MIKE+Py for changes made to the database.

It is strongly recommended to always work on a copy of your MIKE+ database, not the original, to prevent accidental data loss or corruption.

Compatibility Issues

There are known compatibility issues when using MIKE+Py alongside other DHI libraries (e.g. MIKE IO, MIKE IO 1D, ModelSkill).

  • Importing MIKE IO after MIKE+Py is not supported and will cause errors.
  • Importing MIKE IO 1D before MIKE+Py is not supported and will cause errors.

The following is the suggest import order which works for most use cases, but could still run into issues:

import mikecore
import mikeio
import modelskill as ms
import mikeplus as mp
import mikeio1d

Metadata

Release files for mikeplus 2026.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for mikeplus 2026.0.0
File Interpreter ABI Platform
mikeplus-2026.0.0-py3-none-any.whl Python 3 none any Details

Release files / mikeplus-2026.0.0-py3-none-any.whl

Download URL mikeplus-2026.0.0-py3-none-any.whl
Size 299.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
640cbb8c581c3e3228abb8f6f079202b7280760d7376f02f88a5ce23eecd78be
BLAKE2b-256 checksum
How to use checksums
b287992c3de42e96488d443c8d09c21bccac1bbabaecd34000c57cc94817495e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.11

Release history Release notifications | RSS feed

This release

2026.0.0 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page