4. Gemeinsame Parameterbenutzung durch eine binäre Matlab-Datei
In diesem Abschnitt werden Konzepte zur gemeinsamen Nutzung algorithmustypischer
Parameter in Matlab-Programmen vorgestellt. Es sollen dabei folgende spezielle
Aspekte berücksichtigt werden:
-
kurze Übergabelisten beim Funktionsaufruf
-
leichte Änderungsmöglichkeiten für verfahrenstypische
Parameter bzw. einfaches Wiederherstellen ihrer Defaulteinstellung
-
leicht verständliche Benutzung eines Programms, das man nicht selbst
entwickelt hat.
Eine Realisierung, die auf Parameterübergabelisten völlig verzichtet,
ist möglich durch Ausnutzung binärer Matlab-Dateien. Mit
dem Befehl save
schreibt Matlab die aktuellen Variablen des
Workspace in eine binäre Datei des Typs *.mat. Mit dem
Befehl load kann diese Datei in den Arbeitsspeicher gelesen
werden.
4.1 Grundkonzept: Erzeugen und Lesen einer binären
Matlab-Datei
Es wird zunächst an einem Beispiel die grundsätzliche Arbeitsweise
mit einer solchen Binärdatei erklärt.
-
Beispiel:
-
algorith2 sei ein Programm, das Berechnungen für eine Matrix
A
der Dimension nxn durchführt. n und A sind die
Eingabeparameter
der Function.
-
Außerdem seien folgende Verfahrensparameter mit einer Defaultbelegung
für den Standardfall definiert:
h=0.01; epsi=0.001; proto=0.
-
init_parameter_algorith2 sei ein Programm, das eine Binärdatei
mit diesen Algorithmusparametern erzeugt. Ist das in einem Initialisierungsschritt
geschehen, wird die Binärdatei vom eigentlichen Programm algorith2
geladen.
Die Spezialparameter stehen danach ohne weitere Übergabe oder Deklarationen
zur Verfügung.
Sollen für h, epsi oder proto später einmal andere
Werte verwendet werden, ist eine neue Binärdatei zu erzeugen. Das
Programm
algorith2 bleibt unverändert.
-
Prinzipielle Syntax der load und
save
Befehle für eine binäre Matlab-Datei
-
Nutzung einer Binärdatei als externe
Parameterdatei
4.2 Nutzen einer Matlab-Binärdatei als Parameterdatei
und Bereitstellen einer Nutzerschnittstelle für Änderungsmöglichkeiten
Ein komplexeres Beispiel zum Konzept binärer Dateien soll sowohl die
Nutzungsweise des Anwenders als auch die dazu nötigen Programme des
Entwicklers erläutern.
-
Beispiel:
-
main_algorith3 sei das Hauptprogramm des Benutzers.
-
algorith3 sei die Routine, die der Benutzer in seinem Programm aufruft.