Skip to main content

FMI++ Python Interface

Project description


The Functional Mock-up Interface (FMI) specification intentionally provides only the most essential and fundamental functionalities in the form of a C interface. On the one hand, this increases flexibility in use and portability to virtually any platform. On the other hand, such a low-level approach implies several prerequisites a simulation tool has to fulfil in order to be able to utilize such an FMI component.

The FMI++ Python Interface is a Python wrapper for the FMI++ Library, which intends to bridge the gap between the basic fuctionality provided by the FMI specification and the typical requirements of simulation tools. The FMI++ Library provides high-level functionalities that ease the handling and manipulation of FMUs, such as numerical integration, advanced event-handling or state predictions. This allows FMUs to be integrated more easily, e.g., into fixed time step or discrete event simulations.

This package provides a stand-alone version of the Python interface for the FMI++ Library.


The FMI++ Python Interface provides several classes that allow to manipulate FMUs for ModelExchange and for Co-Simulation. An overview on how to use it can be found here.

More extensive background information can be found in the documentation of the FMI++ Library.

Installation on Windows

  • use pip to install the FMI++ Python Interface from the PyPI as pre-compiled binary package (Python wheel):

    $ pip install fmipp --prefer-binary

--prefer-binary should guarantee that binary distributions (wheels) are chosen over source distributions for the installation. Alternatively --only-binary :all: can be used instead to force installing from binary distribution.

Installation on Linux (Ubuntu 20.04)

  • make sure to have installed the following prerequisites(e.g. via apt, see package names in brackets below):

    • python (python3) (recommended: version 3.7 or higher)

    • pip (python3-pip)

    • distutils (python3-setuptools)

    • GCC compiler toolchain (build-essential)

    • swig (swig)

    • SUNDIALS library (libsundials-dev)

    • Boost library (libboost-all-dev)

  • use pip to install the FMI++ Python Interface from the PyPI via source distribution:

    $ python3 -m pip install fmipp

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fmipp-2.1.0.tar.gz (156.3 kB view hashes)

Uploaded source

Built Distributions

fmipp-2.1.0-cp310-none-win_amd64.whl (2.0 MB view hashes)

Uploaded cp310

fmipp-2.1.0-cp39-none-win_amd64.whl (2.0 MB view hashes)

Uploaded cp39

fmipp-2.1.0-cp38-none-win_amd64.whl (2.0 MB view hashes)

Uploaded cp38

fmipp-2.1.0-cp37-none-win_amd64.whl (2.0 MB view hashes)

Uploaded cp37

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page