Skip to main content

FMUs co-simulation in Python

Project description

CoFmuPy logo


👋 About CoFmuPy

CoFmuPy is a Python library designed for rapid prototyping of digital twins through the co-simulation of Functional Mock-up Units (FMUs). It offers advanced master coordination features, such as solving algebraic loops between FMUs and managing the interaction between various simulation components. This library provides a seamless interface to orchestrate complex physics simulations and handle the data exchange between FMUs.

The documentation is available online: https://irt-saint-exupery.github.io/CoFmuPy

🐾 Installation

CoFmuPy is available on PyPI and can be installed using pip:

pip install cofmupy

🐍 Python interface

The Python interface allows users to use CoFmuPy and run co-simulation. A high-level API is provided to easily run and visualize a co-simulation system. Advanced users can also dive deeper into the structure of CoFmuPy for a more advanced control of the components.

Under the hood, CoFmuPy is controlled by a component called the Coordinator. It is the entry point of CoFmuPy and it manages all the other components:

  • the Master algorithm which is the engine that runs the co-simulation of FMUs.
  • the Graph Engine that builds the connections and interactions between the FMUs and the data sources and sinks.
  • the data stream handlers that control the input data required by the co-simulation system.
  • the data storages that allow to store or send the outputs of the simulation.

📜 JSON configuration file

To properly define the co-simulation system, a JSON configuration file must be created. This file is the only information required by CoFmuPy to run the simulation. It must respect a specific syntax in order to define the FMUs, the interactions between them, the data sources and sinks, etc.

✒️ Contributing

Feel free to propose your ideas or come and contribute with us on the CoFmuPy library!

🙏 Acknowledgments

This project was funded by the European Union under GA no 101101961 - HECATE. Views and opinions expressed are however those of the authors only and do not necessarily reflect those of the European Union or Clean Aviation Joint Undertaking. Neither the European Union nor the granting authority can be held responsible for them. The project is supported by the Clean Aviation Joint Undertaking and its Members.

HECATE logo IRT Saint Exupéry logo

📝 License

The package is released under the 2-Clause BSD License.

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

cofmupy-0.9.0.tar.gz (88.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cofmupy-0.9.0-py3-none-any.whl (150.9 kB view details)

Uploaded Python 3

File details

Details for the file cofmupy-0.9.0.tar.gz.

File metadata

  • Download URL: cofmupy-0.9.0.tar.gz
  • Upload date:
  • Size: 88.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for cofmupy-0.9.0.tar.gz
Algorithm Hash digest
SHA256 e9c9daade121dd69f415563a71117ba5c600b99d9ba54a1f27eb339a644a64d4
MD5 4aeee96745e60f39e2041998bb5ef352
BLAKE2b-256 0e99d35a4683658cf273386c4e502aa876a30423947fedd7209296701b0d44b8

See more details on using hashes here.

File details

Details for the file cofmupy-0.9.0-py3-none-any.whl.

File metadata

  • Download URL: cofmupy-0.9.0-py3-none-any.whl
  • Upload date:
  • Size: 150.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for cofmupy-0.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e78ddaf20b8bad0a8be6f371793868a3cd49ba24080b92220b653490d28b8b62
MD5 3b8497fa5d931ecb3dc001dc2b468893
BLAKE2b-256 07ef8d6126a69d535e891e8330c1e9568c3784087a15c6fc4da1474c9de88b96

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page