Set up and analyze Modelica simulations in Python
ModelicaRes is a free, open-source tool that can be used to
- generate simulation scripts,
- load, analyze, and browse data,
- filter and sort groups of results,
- produce various plots and diagrams, and
- export data via pandas.
The goal of ModelicaRes is to leverage Python to make these tasks easy and complex tasks feasible. Publication-quality figures can be created with matplotlib using built-in methods that automatically add titles, labels, and legends. ModelicaRes can be scripted or used in an interactive Python session with math and matrix functions from NumPy.
Currently, ModelicaRes only loads Dymola/OpenModelica-formatted binary and text results (*.mat and *.txt), but the interface is modular so that other formats can be added easily.
First, install the dependencies. Most are installed automatically, but SciPy >= 0.10.0 must be installed according to the instructions at http://www.scipy.org/install.html. The GUIs require Qt, which can be installed via PyQt4, guidata, or PySide.
Then install ModelicaRes. The easiest way is to use pip:
> pip install modelicares
On Linux, it may be necessary to have root privileges:
$ sudo pip install modelicares
The matplotlibrc file has some recommended revisions to matplotlib's defaults. To use it, copy it to the working directory or matplotlib's configuration directory. See http://matplotlib.org/users/customizing.html for details.
License terms and development
ModelicaRes is published under a BSD-compatible license. Please
share any improvements you make, preferably as a pull request to the
branch of the GitHub repository. There are useful development scripts in the
hooks folder. If you find a bug, have a suggestion, or just want to
leave a comment, please
open an issue.
- awesim: helps run simulation experiments and organize results
- BuildingsPy: supports unit testing
- DyMat: exports Modelica simulation data to Gnuplot, MATLAB®, and Network Common Data Form (netCDF)
- PyFMI: tools to work with models through the Functional Mock-Up Interface (FMI) standard
- PySimulator: elaborate GUI; supports FMI