Software: FEM - Tutorial - Magnetfeld - Kennfeld-Nutzung zur System-Simulation: Unterschied zwischen den Versionen

Aus OptiYummy
Zur Navigation springenZur Suche springen
KKeine Bearbeitungszusammenfassung
Zeile 19: Zeile 19:
=== Erzeugen einer Windows-DLL ===
=== Erzeugen einer Windows-DLL ===


SimulationX bietet die Möglichkeit, externe Funktionen einzubinden, welche sich in einer [http://de.wikipedia.org/wiki/Dynamic_Link_Library Windwos-DLL] befinden. Deshalb erzeugen wir aus dem vorliegenden c-Quelltext durch Compilieren mit dem gcc eine solche DLL-Datei:
SimulationX bietet die Möglichkeit, externe Funktionen einzubinden, welche sich in einer [http://de.wikipedia.org/wiki/Dynamic_Link_Library Windwos-DLL] befinden. Deshalb erzeugen wir aus dem vorliegenden c-Quelltext durch Compilieren mit dem ''gcc'' eine solche DLL-Datei:
 
* Der exportierte c-Quelltext der aktuellen OptiY-Version ist noch nicht vollständig kompatibel mit den Anforderungen des ''gcc'' und der Schnittstelle zum SimulationX. Das soll sich mit der nächsten OptiY-Version ändern. Bis dahin sind noch folgende Änderungen im Quelltext vorzunehmen:
* Das den Kennfeld-Variablen vorangestellte Zeichen '''#''' muss entfernt werden (im Beispiel '''#i''' und '''#s''' durch '''i''' und '''s''' ersetzen). Ansonsten kommt es zu einem Syntax-Fehler im gcc-Compiler!
* Der Datentyp '''float''' muss überall durch '''double''' ersetzt werden (Kompatibilitaetsforderung zu SimulationX).
* Danach hat die Datei '''Magnet_RSM.c''' die folgende Form:


'''''===>>> Hier geht es bald weiter!!!'''''
'''''===>>> Hier geht es bald weiter!!!'''''

Version vom 16. Oktober 2009, 11:56 Uhr

Kennfeld-Nutzung zur System-Simulation


Verwendete Software

Es soll am Beispiel des Programms SimulationX gezeigt werden, wie der exportierte C-Code mit geringem Aufwand zur System-Simulation eines Magnet-Antriebs genutzt werden kann. Wir verwenden dazu den freien Gnu-C-Compiler gcc, der Bestandteil der GNU-Compiler Collection ist. Eine Portierung dieser Compiler Collection für Windows läuft unter Cygwin. Unter http://www.cygwin.com/ kann man eine aktuelle setup.exe für die Cygwin-Installation kostenlos herunterladen.

Ausführliche Hinweise zur Installation enthält die Installation_Cygwin.pdf von Herrn Sönke Hoffmann (Hochschule Ostwestfalen-Lippe). Von den darin angegebenen Komponenten der Development-Umgebung genügt für unsere Zwecke:

  • gcc-core, der C- Compiler,
  • make, ein Hilfsprogramm (dass man sicher benötigt)

Hinweis: Im Beispiel konnte bei der Benutzung der Download-Seite der TU-Dresden die Installation nicht vollendet werden, weil etwas fehlte. Ein Wechsel auf die Ruhr-Uni-Bochum führte zum Erfolg!

Die Windows-Systemvariable PATH wird, wie in der Anleitung beschrieben, durch den Verweis auf den cygwin\bin-Ordner erweitert. Damit ist gewährleistet, dass man den C-Compiler im Konsolen-Fenster von Windows direkt aufrufen kann.

Hinweis: Man muss in diesem Verzeichnis nachschauen, welche Version des Compilers installiert ist. In der Beispiel-Installation war es gcc-3.exe, deshalb ist dann der Compiler in der Konsole mit gcc-3 aufzurufen!


Erzeugen einer Windows-DLL

SimulationX bietet die Möglichkeit, externe Funktionen einzubinden, welche sich in einer Windwos-DLL befinden. Deshalb erzeugen wir aus dem vorliegenden c-Quelltext durch Compilieren mit dem gcc eine solche DLL-Datei:

  • Der exportierte c-Quelltext der aktuellen OptiY-Version ist noch nicht vollständig kompatibel mit den Anforderungen des gcc und der Schnittstelle zum SimulationX. Das soll sich mit der nächsten OptiY-Version ändern. Bis dahin sind noch folgende Änderungen im Quelltext vorzunehmen:
  • Das den Kennfeld-Variablen vorangestellte Zeichen # muss entfernt werden (im Beispiel #i und #s durch i und s ersetzen). Ansonsten kommt es zu einem Syntax-Fehler im gcc-Compiler!
  • Der Datentyp float muss überall durch double ersetzt werden (Kompatibilitaetsforderung zu SimulationX).
  • Danach hat die Datei Magnet_RSM.c die folgende Form:

===>>> Hier geht es bald weiter!!!