Modelica

Modelica

Die objektorientierte Modellierungssprache Modelica ist entwickelt worden, um komplexe physikalische Systeme zu modellieren. Modelica sowie einzelne Bibliotheken und Tools sind frei verfügbar. Die Modelica Association sorgt für die Weiterentwicklung des Sprachstandards, organisiert Tutorials im Rahmen von Konferenzen, unterstützt die Entwickler und fördert die Verbreitung der Sprache.

Zur Physik der dynamischen Systeme existiert die Modelica-Bibliothek SystemPhysik. Diese Biblithek, die das grosse Synergiepotenzial von Modelica und dem systemdynamischen Zugang zu den Grundgesetzen der Natur ausschöpfen möchte, ist frei verfügbar und soll in den nächsten Jahren weiter ausgebaut werden.

Geschichte

In den frühen Neunzigerjahren gab es verschiedene Versuche, eine objektorientierte Modellbildungssprache zu entwickeln. Auf Initiative von Hilding Elmqvist, Dynasim AG, ist im September 1996 das ESPRIT-Projekt "Simulation in Europe Basic Research Working Group (SiE-WG)" mit dem Ziel gestartet worden, einen einheitlichen Sprachstandard zu schaffen, der die Wiederverwendung von Modellen erleichtert und den Austausch zwischen den verschiedenen Anwendern unterstützt. Modelica ist gemeinsam von den Entwicklern verschiedener Sprachen wie Allan, Dymola, NMF, ObjectMath, Omola, SIDOPS+, Smile definiert worden. Nach 19 dreitägigen Meetings ist die Versione 1.3 verabschiedet worden.

Weiter Meilensteine

Struktur

Modelica ist eine objektorientierte Modellbildungssprache, mit der physikalische Systeme effizient simuliert werden können. Gegenüber andern Modellbildungs- und Simulationssprachen weist Modelica drei wichtige Vorteile auf:

  1. akausale Modellbildung auf der Basis von differential-algebraischen Gleichungen
  2. Multidomain-Modellierung (Multiphysics-Modellierung), d.h. elektrische, hydraulische, pneumatische, mechanische oder thermische Komponenten können gemeinsam modelliert und simuliert werden
  3. eine allgemeine Struktur, die Objektorientierung, Mehrfachvererbung und Templates in einer einzigen Klassenstruktur vereinigt

In Modelica kann eine einzelne Klasse Variablen (auch Instanzen anderer Klassen), Gleichungen und lokale Klassendefinitionen enthalten. Die gleichungsbasierte, akausale Modellierung erleichtert die Wiederverwendung von Komponenten und Modelle.

Die Fähigkeit zur Multidomain-Modellierung basiert auf dem Konzept des Konnektors. Konnektoren sind spezielle Klassen, mit denen einfache Modelle zu immer komplexeren Strukturen verbunden werden können. Ein Konnektor enthält mindestens eine Fluss- und eine Potenzialgrösse. Werden Konnektoren verschiedener Teilmodelle miteinander verbundenen, wird beim kompilieren des Gesamtmodells ein Gleichungssystem generiert, welches die Potenziale der beteiltigten Konnektoren einander gleichsetzt und die Summe der Stromstärken zu Null addiert (Knotensatz). Auf diesem Konzept beruht die Affinität zwischen Modelica und der Physik der dynamischen Systeme.

Objektdiagramm

Elemente

Standardbibliotheken

Bibliotheken

Tools

  • Dymola von Dynasim kann merh als 100'000 Gleichungen symbolisch verarbeiten. Modelica-Modelle werden auf einer graphischen Oberfläche konfiguriert, die eigentliche Simulation wird auf einer zweiten Ebene ausgeführt. Modelica Modelle können in ein SIMULINK-S-Funktion tranformiert werden.
  • MapleSim™ ist ein leistungsfähiges Multidomaien-Modellierungs- und Simulations-Werkzeug von von Maplesoft.
  • MathModelica von MathCore.
  • MOSILAB von der Fraunhofer-Gesellschaft erlaubt zustandsabhängige Strukturänderungen im Verlauf der Simulation.
  • SimulationX von ITI ist ein a graphisch-interaktives Werkzeug zur Modellierung, Simulation und Darstellung von multidomain Systemen (1D bis 3D).

Konferenzen

November 2000 Workshop Lund, Schweden
18.-19. März 2002 2. Internationale Konferenz DLR, Oberpfaffenhofen, Deutschland
4.-6. November 2003 Modelica 2003 Linkoeping, Schweden
7.-8. März 2005 Modelica 2005 TUHH, Hamburg, Deutschland
4.-5. September 2006 Modelica 2006 Arsenal, Wien, Österreich
3.-4. März 2008 Modelica 2008 FH, Bielefeld, Deutschland
20.-22. September 2009 Modelica 2009 Como, Italien
20.-22. März 2011 Modelica 2011 Dresden, Deutschland
3.-5. September 2012 Modelica 2012 München, Deutschland
10.-12. März 2014 Modelica 2014 Lund, Schweden

Modelica-Kurs

In diesem Systemphysik-Wiki wird ein Modelica Kurs für Ingenieure, Naturwissenschaftler und Informatiker aufgebaut, der in die Modellierungssprache einführt, verschiedene Bibliotheken (Libraries) vorstellt und all diese Ideen bei konkreten Problemstellungen anwendet.

Links