Need help with FMPy?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

CATIA-Systems
140 Stars 50 Forks Other 622 Commits 20 Opened issues

Description

Simulate Functional Mockup Units (FMUs) in Python

Services available

!
?

Need anything else?

Contributors list

Build Status PyPI Conda Read the Docs

FMPy

FMPy is a free Python library to simulate Functional Mock-up Units (FMUs) that...

Installation

Several options are available:

  • Install with conda:
    conda install -c conda-forge fmpy
  • Install with from PyPI:
    python -m pip install fmpy[complete]
  • Install a development build

If you don't have Python on your machine you can install Anaconda Python.

Start the Graphical User Interface

You can start the FMPy GUI with

python -m fmpy.gui

FMPy GUI

Simulate an FMU in Python

To follow this example download

Rectifier.fmu
for your platform by clicking on the respective link: Linux, macOS, Windows. Change to the folder where you've saved the FMU and open a Python prompt.
>>> from fmpy import *
>>> fmu = 'Rectifier.fmu'
>>> dump(fmu)  # get information

Model Info

FMI Version 2.0 Model Name Rectifier Description Model Rectifier Platforms win64 Continuous States 4 Event Indicators 6 Variables 63 Generation Tool MapleSim (1267140/1267140/1267140) Generation Date 2017-10-04T12:07:10Z

Default Experiment

Stop Time 0.1 Step Size 1e-07

Variables (input, output)

Name Causality Start Value Unit Description outputs output 282.842712474619 V Rectifier1.Capacitor1.v >>> result = simulate_fmu(fmu) # simulate the FMU >>> from fmpy.util import plot_result # import the plot function >>> plot_result(result) # plot two variables

Rectifier Result

Simulate an FMU on the command line

To get information about an FMU directly from the command line change to the folder where you've saved the FMU and enter

fmpy info Rectifier.fmu

Simulate the FMU and plot the results

fmpy simulate Rectifier.fmu --show-plot

Get more information about the available options

fmpy --help

Create a Jupyter Notebook

To create a Jupyter Notebook open an FMU in the FMPy GUI and select

Tools > Create Jupyter Notebook...
or run
fmpy create-jupyter-notebook Rectifier.fmu

on the command line and open the notebook in Jupyter with

jupyter notebook Rectifier.ipynb

Web App

Start the Web App

The FMPy Web App is built with Dash and a great way to share your FMUs with anyone that has a web browser. To start it run

python -m fmpy.webapp Rectifier.fmu

on the command line or use

--help
for more options.

Web App

Advanced Usage

To learn more about how to use FMPy in you own scripts take a look at the coupled_clutches.py, custom_input.py and parameter_variation.py examples.

Commercial Support

You're starting a project, need training or professional support? Our partners at LTX Simulation are ready to help you. Please send an e-mail to [email protected] for a quote.


© 2020 Dassault Systèmes

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.