Skip to content. Skip to navigation

Modeling of Complex Physical Systems

Sections
Personal tools
You are here: Home Tools
Document Actions

Modelica Tools

by Administrator last modified 2008-01-21 08:55 AM

In order that the Modelica modeling language can be used to solve actual problems, a modeling and simulation environment is needed

  • to conveniently define a Modelica model with a graphical user interface (composition diagram/schematic editor) such that the result of the graphical editing is a (internal) textual description of the model in Modelica format.
  • to translate the defined Modelica model into a form which can be efficiently simulated in an appropriate simulation environment. This requires especially sophisticated symbolic transformation techniques.
  • to simulate the translated model with standard numerical integration methods and visualize the result.

The following commercial and free modeling and simulation environments for Modelica are currently available (note, that demo versions for the commercial environments are available and that some demo versions can be downloaded free of charge):

Commercial Modelica Simulation Environments

  • Dymola from Dynasim has a Modelica translator which is able to perform all necessary symbolic transformations for large systems (> 100 000 equations) as well as for real time applications. A graphical editor for model editing and browsing, as well as a simulation environment are included. Convenient interfaces to MATLAB and the popular block diagram simulator Simulink exist. For example, a Modelica model can be transformed into a SIMULINK S-function C mex-file which can be simulated in SIMULINK as an input/output block. A demo version of Dymola can be downloaded here.
  • MathModelica System Designer from MathCore provides a Modelica simulation environment. It provides an interactive graphical environment for easy model composition and an environment for simulation management. The professional edition, MathModelica System Designer Professional, includes a Mathematica link, offering facilities for mathematical computation, plotting, calculation, natural display of mathematical formulae, inline documentation, etc. within the powerful Mathematica notebook environment. MathCore also offer a basic graphical modeling environment, MathModelica Lite, for the Modelica open source compiler. This version is free for use for academic institutions.
  • MOSILAB from the Fraunhofer-Gesellschaft is a newly developed Modelica simulator for complex technical systems. One innovative feature of MOSILAB is the mapping of state-dependent changes of the model structure during the simulation experiment. This enables, for example, simulation experiments with models of variable modeling depth or varying model physics. In 2006, interested Modelica users can obtain a beta-version of MOSILAB, which is currently under development. In the beginning of 2007, MOSILAB will be available as a commercial simulation tool.
  • SimulationX from ITI is a graphically-interactive modeling and simulation tool. It provides ready-to-use model libraries, e.g. for mechanics, multi-body systems, power transmission, hydraulics, pneumatics, thermodynamics and electric drives. SimulationX models are written in Modelica. Libraries are extendable by Modelica-based modeling with the ITI TypeDesigner. A comprehensive API supports the integration into any CAE, CFD, CAD or database tool environment. A model can be exported in terms of Simulink S-function and C-Code for HiL and RCP applications.

Free Modelica Simulation Environments

  • OpenModelica: The Open Source Modelica is a project at Linköping University. The goal of the project is to create complete Modelica modeling, compilation and simulation environment based on free software distributed in source code form intended for research purposes. We invite all researchers and master students to participate in the project. Please visit Open Source Modelica page.
  • Modelicac is a compiler for a subset of the Modelica language including parts of the "equation" subset that can express relations between Real variables. Modelicac is included into the Scilab distribution (although it is an independant executable) and is used by Scicos (Scilab's block-oriented editor and simulator) to handle hybrid model simulations. The following features are supported by Modelicac:
    • Declaration of "Real" scalar variables and (statically fixed-size) arrays;
    • Aggregation of components is supported (but inheritance is not)
    • Modifications of parameters are supported;
    • Declaration of equations (equalities, "for" equations, "when" equations)
    • "if" equations are not supported, however it is possible to write "if" expressions in equations.
    That subset of the Modelica language allows one to write most of the continuous basic models encountered in various physical domains such as electricity, hydraulics, etc. A few examples provided as Scicos demonstrations come with the Scilab distribution.
    Control (by way of discrete variables, algorithms, blocks, etc.) is not handled by Modelicac, however it is handled by Scicos (in fact, it is Scicos's original purpose). Hence hybrid models can be simulated under the Scicos environment in a rather transparent way: Scicos calls Modelicac on the continuous part of the model and simulates directly the remaining (discrete) part.
    Scilab, Scicos and Modelicac are free software: one can use them for educational purposes but also into industrial applications (see the Scilab licence for details). More details about Modelicac and Scicos can be found here. Scicos is currently further developed in the SIMPA2 project to handle the full Modelica language.

Other tools

  • Simelica, a Simulink to Modelica translator is available from Claytex.
  • Free Excel interface to Dymola available from Magnus Holmgren
  • Free Simulink-Block similar to the "To File" Block, which writes a bus including the signal names in a Dymola-compatible mat-File. SaveToFile.zip written by Arne Schmenkel.
  • Free syntax highlighting tool Highlight which converts source code to formatted text with syntax highlighting.
    (Coloured output in HTML, XHTML, RTF, TeX, LaTeX and XML format, supports 120+ programming languages including Modelica)

  • EXITE from EXTESSY AG is a co-simulation platform connecting Dymola models to any other simulator. EXITE provides interfaces to Dymola, Simulink, ASCET, Rhapsody, ARTiSAN Studio and C/C++. During the co-simulation all models remain in their simulator and EXITE realises the communication among them via dedicated communication blocks. EXITE is capable of realising the data exchange in less than 30µs, thus allowing high-performance distributed simulation. Further information and software download can be found here.
  • EXITE ACE from EXTESSY AG is a co-execution platform following the paradigm of component based system design as standardised by AUTOSAR or AADL. EXITE ACE is used to simulate and test distributed control systems together with the controlled plant model, e.g. complete virtual cars. Components can be implemented with Simulink, Real-time Workshop, Targetlink (µC target code), ASCET (offline experiment and µC target code), ANSI-C, Rhapsody and Dymola. From a system architecture model EXITE ACE generates a model stub, which can be filled with the intended behaviour using the tool of your choice. EXITE ACE provides the connection of any simulation to hardware interfaces (CAN bus) and a common measurement and calibration interface. For improving execution speed EXITE ACE allows distributed simulation on WINDOWS PC and RT Linux. Further information and software download can be found here.
  • TISC is a co-simulation environment for controlling different simulation applications and exchanging data between them. TISC organizes the co-simulation setup by managing simulation programs, models, parameters and initialization settings, different simulation computers, as well as IP connections. TISC provides interfaces to Modelica, Matlab/Simulink, Ascet, Labview, Fluent, Star-CD, Theseus-FE, Flowmaster, Kuli, Trnsys, and Wave. New Interfaces can be developed upon request based on C, C++, C# (using .NET Framework 2.0), Python, or FORTRAN.
    Please visit the TLK-Thermo website for more information.
  • TILFLuids is an interface library to provide fluid properties from various existing fluid property databases to different applications. TILFluids provides interfaces to IfTLibrary and REFPROP and can be used function-based or object-oriented. Using the general Python, C/C++, or Modelica.Media interfaces, TILFluids can be used in software tools such as MS Excel, Dymola, MathModelica, OpenModelica, and Matlab.
    Please visit the TLK-Thermo website for more information.
  • StateViewer is an advanced software tool for graphical presentation of transient thermodynamic measurements or simulation data in different types of state charts (e.g. ph- or Ts-diagram). The StateViewer can open csv-files as well as Dymola result files, an online-visualization can easily be set up while running a measurement or simulation process. Using the media data of REFPROP as well as interfaces to other media databases guarantees a wide range of application.
    Please visit the TLK-Thermo website for more information.
  • Free StateViewer Lite is a version of StateViewer with restricted functionality. It can be downloaded from the the TLK-Thermo website.

Free Modelica Editors

Modelica models are usually graphically constructed with one of the schematic editors of Dymola or MathModelica. However, since Modelica is basically a textual description it is also possible to utilize a text editor to edit or to browse Modelica models. A free Modelica text editor and adaptations of popular text editors are available here:

  • MathModelica Lite, is a model editor for the Modelica open source compiler. The model editor is free for academic institutions.
  • The Free Modelica Editor has been developed by Falko Jens Wagner (Windows-98,-NT,-2000).
  • Modelica mode for Emacs , version 1.4.1 by Rüdiger Franke
  • Modelica syntax highlighting for text editor UltraEdit. (= shareware editor on PC which is fast, "simple things are simple", many useful features such as copying/moving of rectangular text). Copy content of file WordfileModelica.txt in file UltraEdit/Wordfile.txt and change first tag "/L6" to the correct number of supported language, if necessary.
  • Text-editor SciTE with a Modelica Mode (syntax highlighting, class folding and more) by Fraunhofer FIRST.
  • Modelica Development Tooling (MDT) is a plugin for Eclipse

Modelica Testsuite

Modelica models to test various aspects of the Modelica language (version 1.4 from December 2000) can be downloaded. testsuite.zip



Powered by Plone CMS, the Open Source Content Management System