Dokument_1.pdf (2548 KB) - KLUEDO - Universität Kaiserslautern
Dokument_1.pdf (2548 KB) - KLUEDO - Universität Kaiserslautern
Dokument_1.pdf (2548 KB) - KLUEDO - Universität Kaiserslautern
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Charakterisierung und Auswahl einer Entwicklungsumgebung<br />
3. Schritt: Im folgenden wird das gesamte DAE-System - ohne die im Schritt 2 ermittelten<br />
Zwangsgleichungen - bezüglich der höchsten Ableitungen analysiert. Dies<br />
bedeutet, es wird zu Schritt 1 zurückgegangen, bis keine Untermenge von Gleichungen<br />
gefunden wird, bei der die Zahl der Gleichungen größer als die der Unbekannten<br />
ist. Der Abbruch des Algorithmus bedeutet, dass die Jacobi-Matrix des resultierenden<br />
Systems nicht mehr singulär ist.<br />
4.3.1.4 Automatische Codegenerierung<br />
Die automatische Codeerzeugung übernimmt das Dymosim-Programmpaket. Dymosim steht<br />
für Dynamic model simulator. In seinen Aufgabenbereich fällt neben der Code-Erzeugung zur<br />
kontinuierlichen Simulation die Anfangswertberechnung und Behandlung diskreter Ereignisse.<br />
Es stehen 10 verschiedene Integratoren zur Auswahl. Die ausführbaren Routinen sind<br />
im Programm dymosim.exe abgelegt. Zur automatischen Code-Erzeugung wird das mathematische<br />
Modell zunächst in C-Syntax übersetzt, compiliert und mit dymosim.exe gelinkt. Ein<br />
Aufruf von dymosim.exe -i berechnet die Anfangswerte. Der erzeugte Maschinen-Code steht<br />
dann zur Durchführung der Simulation zur Verfügung.<br />
Die Ergebnisse der Simulation werden im Matlab-Format unter dsres.mat abgespeichert. Als<br />
Voreinstellung werden alle Variablen zu allen Zeitschritten gespeichert. Sie können dann mit<br />
dem Visualisierungsprogramm Dymodraw geplottet analysiert werden.<br />
4.3.2 Die Sprache Modelica<br />
Die Grundideen der Simulationssprache Modelica ([Mod-02], [Til-01]) haben ihre Wurzeln in<br />
einer ganzen Reihe von objektorientierten, nicht berechnungskausalen Simulationssprachen.<br />
Sie erlauben eine physiknahe Modellspezifikation in Form von Gleichungen, Objekten und<br />
Schnittstellen. Sie sind meist Teil einer kompletten, für sie spezifischen Simulationsumgebung,<br />
die den Anwender bei der Modellerstellung, Durchführung und Analyse unterstützen.<br />
Und sie sind im Begriff, herkömmliche, blockschaltbildorientierte Beschreibungsformen kontinuierlicher<br />
Systeme besonders bei der Beschreibung großer, komplexer Systeme zunehmend<br />
zu verdrängen [Bea-00], [BaWi-00], [CSS-00a,b], [Ott-99a,b,c,d], [OEM-99a,b], [OtBa-<br />
99a,b], [OtSc-99], [Ott-00], [Tum00a,b], [TuTi-00].<br />
Die Tabelle 3 auf Seite 65 gibt einen Überblick über wichtigste Vorläufersprachen, die an der<br />
Modelica-Entwicklung Anteil hatten. Trotz der konzeptionellen Ähnlichkeit macht ihre vorwiegend<br />
syntaktische Verschiedenheit einen Austausch bereits entwickelter Modellkomponenten<br />
unmöglich. Die Idee bei der Entwicklung der Sprache Modelica war, dies zu ändern<br />
und einen gemeinsamen Standard zu definieren, wobei alle Konzepte der Vorgängersprachen<br />
in Modelica einfließen sollten. Dies bedeutet nicht, dass die Sprachen abgeschafft werden sollen,<br />
sondern sie sollen in der Lage sein ihre Modelle in der Sprache Modelica zu speichern<br />
und auch zu lesen. So können domänenspezifische Eigenschaften spezieller Tools auch weiterhin<br />
genutzt werden, ohne die Austauschbarkeit der Modelle zu behindern.<br />
64