Adeel Asghar
PELAB – Programming Environment Lab, Dept. Computer Science, Linköping University, Sweden
Andreas Pfeiffer
DLR Institute of System Dynamics and Control, 82234 Weßling, Germany
Arunkumar Palanisamy
PELAB – Programming Environment Lab, Dept. Computer Science, Linköping University, Sweden
Alachew Mengist
PELAB – Programming Environment Lab, Dept. Computer Science, Linköping University, Sweden
Martin Sjölund
PELAB – Programming Environment Lab, Dept. Computer Science, Linköping University, Sweden
Adrian Pop
PELAB – Programming Environment Lab, Dept. Computer Science, Linköping University, Sweden
Peter Fritzson
PELAB – Programming Environment Lab, Dept. Computer Science, Linköping University, Sweden
Ladda ner artikelhttp://dx.doi.org/10.3384/ecp15118671Ingår i: Proceedings of the 11th International Modelica Conference, Versailles, France, September 21-23, 2015
Linköping Electronic Conference Proceedings 118:72, s. 671-679
Publicerad: 2015-09-18
ISBN: 978-91-7685-955-1
ISSN: 1650-3686 (tryckt), 1650-3740 (online)
The Modelica and FMI tool ecosystem is growing each year with new tools and methods becoming available. The open Modelica standard promises portability but it is important to ensure that a certain model behaves the same in different Modelica tools or in a different version of the same tool. It is also very important (for model evolution) to check that a new version of the same model produces comparable results. Finally, it is desirable to verify that a model exported in FMU form from a Modelica tool gives exactly the same results as the original model. This paper presents a framework for automatic regression testing as part of PySimulator which provides an efficient and concise way of testing if a model or a range of models behaves in the same way in several tools or versions of a tool by checking that the results produced are essentially identical.
The FMI standard has been adopted by many tool vendors and is growing in popularity each year. This paper proposes a concept for building and simulating a system made from connected FMUs generated by different tools. The FMUs for Co-Simulation can be connected together using a GUI. The system model built graphically in this way can be saved for later use or simulated directly inside PySimulator. Active development is going on to support simulation of connected FMUs for Model Exchange.
PySimulator; Regression Testing; Connected FMUs; Parallel Simulation; Wolfram Simulator plugin
Benjamin Edwards. Pythonica, 2012. https://github.com/ bjedwards/pythonica (accessed: 19th of May 2015).
Anand K. Ganeson, Peter Fritzson, Olena Rogovchenko, Adeel Asghar, Martin Sjölund, and Andreas Pfeiffer. An OpenModelica Python Interface and its use in PySimulator. Proceedings of the 9th International Modelica Conference, 3.-5. Sep. 2012, Munich, Germany.
ITI GmbH. Csv-compare tool, 2013. https://github.com/modelica-tools/csv-compare (accessed: 19th of May 2015).
Modelica Association. Functional Mock-up Interface for Model Exchange and Co-Simulation, Version 2.0, July 25, 2014. http://www.fmi-standard.org (accessed: 19th of May 2015).
Modelica Association. Functional Mock-up Interface. Subversion repository, 2014. https://svn.fmistandard.org/fmi/branches/public/Test_FMUs/_FMIModelicaTest/FMITest (accessed: 21st of July 2015).
Modelica Association. Modelica Standard Library 3.2.1, 2013. https://github.com/modelica/Modelica/releases/tag/v3.2.1+build.2 (accessed: 30th of July 2015).
Martin Otter. Private communication, 2015.
Andreas Pfeiffer, Ingrid Bausch-Gall, and Martin Otter. Proposal for a Standard Time Series File Format in HDF5. Proceedings of the 9th International Modelica Conference, 3.-5. Sep. 2012, Munich, Germany.
Andreas Pfeiffer, Matthias Hellerer, Stefan Hartweg, Martin Otter, and Matthias Reiner. PySimulator – A Simulation and Analysis Environment in Python with Plugin Infrastructure. Proceedings of the 9th International Modelica Conference, 3.-5. Sep. 2012, Munich, Germany.
Andreas Pfeiffer, Matthias Hellerer, Stefan Hartweg, Martin Otter, Matthias Reiner, and Jakub Tobolar. System Analysis and Applications with PySimulator. Presentation at the 7th MODPROD Workshop on Model-Based Product Development, 4.-6. Feb. 2013, Linköping, Sweden.
Python: multiprocessing - Process-based “threading” interface. https://docs.python.org/2/library/multiprocessing.html (accessed: 20th of May 2015).
Robert Tarjan: Depth-first search and linear graph algorithms. SIAM Journal on Computing, Vol.1, No.2, 1972.
Wolfram: Wolfram Mathematica. http://www.wolfram.com/ mathematica (accessed: 19th of May 2015).
Wolfram: Wolfram SystemModeler. https://www.wolfram. com/system-modeler (accessed: 19th of May 2015).