12.02.2014 Aufrufe

Mathematik für Physiker - Numerische Physik: Modellierung

Mathematik für Physiker - Numerische Physik: Modellierung

Mathematik für Physiker - Numerische Physik: Modellierung

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

B.3. M-FILES 489<br />

0.4667<br />

0.3750<br />

0.6610<br />

0.3902<br />

Relall =<br />

0.4758<br />

Alternativ kann diese Funktion auch aus einem MatLab-Skript aufgerufen werden.<br />

Letzteres hat den Vorteil, dass die Matrix LV ebenfalls im Skript enthalten ist und<br />

nicht von Hand eingegeben werden muss.<br />

Die Variablen stehen jetzt in MatLab zur Verfügung und können bei Bedarf auch<br />

in weiteren Rechnungen verwendet werden.<br />

✷<br />

§ 1807 Beim Aufruf einer Funktion ist es sinnvoll, im Hauptprogramm oder innerhalb der<br />

Funktion die Zahl der Ein- oder Ausgabeparameter mit Hilfe von nargin bzw. nargout zu<br />

überprüfen. So haben wir bereits die Funktion linspace kennen gelernt, die mit zwei oder<br />

drei Eingabeparametern aufgerufen werden kann: die ersten beiden Parameter bestimmen<br />

den Wertebereich, der dritte die Zahl der Schritte. Fehlt der dritte Parameter, so wird die<br />

Schrittzahl automatisch auf 100 gesetzt: in der Funktion linspace(d1,d2,n), zu finden unter<br />

\toolbox\matlab\elmat, wird dies durch Abfrage der Zahl der Eingabeparameter erreicht.<br />

Werden nur zwei Parameter eingegeben, so wird der fehlende dritte auf 100 gesetzt:<br />

nargin<br />

nargout<br />

linspace<br />

if nargin == 2<br />

n = 100;<br />

end<br />

§ 1808 Das Beispiel illustriert gleichzeitig die Verwendung einer if Struktur zur Abfra- if<br />

ge und des doppelten Gleichheitszeichens == als Vergleichsoperator. Mit einem einfachen = =<br />

Gleichheitszeichen, a = 2, wird einer Variablen a der Wert 2 zugewiesen. Mit dem doppelten<br />

Gleichheitszeichen, a == 2, wird der Wert der Variablen a mit dem vorgegebenen Wert 2<br />

vergleichen. Das Ergebnis dieses Vergleichs ist 1, falls beide gleich sind (d.h. falls die Aussage<br />

a == 2 wahr ist); sonst ist es Null. Tabelle B.6 gibt einen Überblick über die in MatLab<br />

auftretenden Vergleichsoperatoren.<br />

Beispiel 2 Vergleichsoperatoren können nicht nur auf skalare Größen sondern auch<br />

auf Matrizen angewandt werden. In diesem Fall erfolgt der Vergleich elementweise,<br />

d.h. die Matrizen müssen gleich Struktur haben:<br />

>> A=[1 2 3 4;5 6 7 8;9 10 11 12;13 14 15 16]; ←↪<br />

>> B=[1 5 9 13;2 6 10 14; 3 7 11 15; 4 8 12 16]; ←↪<br />

>> A == B ←↪<br />

ans =<br />

1 0 0 0<br />

0 1 0 0<br />

0 0 1 0<br />

0 0 0 1<br />

✷<br />

§ 1809 Während ein Skript meist auf ein spezielles Problem zugeschnitten ist, ist eine Funktion<br />

ein universelleres Werkzeug, eine häufiger benötigte Vorschrift, die zwar einer vorgegebenen<br />

Syntax gehorcht aber aus verschiedenen Zusammenhängen heraus aufgerufen werden<br />

kann.<br />

c○ M.-B. Kallenrode 13. März 2007

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!