Link - Hochschule Ulm
Link - Hochschule Ulm
Link - Hochschule Ulm
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
3 1<br />
4 2<br />
5 2<br />
6 3<br />
7 10<br />
8 12<br />
9 ans =<br />
10 4<br />
11 ans =<br />
12 2<br />
13 ans =<br />
14 5.0662<br />
Das folgende Beispiel zeigt ein Eigenwert-<br />
Roulette, welches darauf beruht, abzuzählen<br />
wieviele Eigenwerte einer reellen Zufallsmatrix<br />
reell sind. Ist die Matrix A reell und von<br />
der Ordnung 8, dann gibt es 0,2,4,6 oder 8<br />
reelle Eigenwerte (die Anzahl muss gerade<br />
sein, weil komplexe Eigenwerte in komplexkonjugierten<br />
Paaren auftreten). Die beiden Zeilen<br />
1 A = randn(8);<br />
2 sum((abs(imag(eig(A))) < 0.0001));<br />
erzeugen eine zufällig normalverteilte 8 × 8-<br />
Matrix und zählen, wieviel Eigenwerte reell<br />
sind. Dies ist so realisiert, dass geprüft wird,<br />
ob der Imaginärteil dem Betrag nach kleiner<br />
als 10 −4 ist. Jeder Aufruf erzeugt nun eine andere<br />
Zufallsmatrix und man erhält somit unterschiedliche<br />
Ergebnisse. Um ein Gefühl dafür<br />
zu bekommen, welche der fünf Möglichkeiten<br />
am wahrscheinlichsten ist, kann man folgenden<br />
Script ausführen.<br />
1 %-Script-File: EIGENWERTROULETTE<br />
2 n = 1000;<br />
3 Anzahl = zeros(n,1);<br />
4 for k=1:n<br />
5 A = randn(8);<br />
6 Anzahl(k) = sum(abs(imag(eig(A)<br />
)) < 0.0001);<br />
7 end<br />
8 hist(Anzahl,[0 2 4 6 8]);<br />
9 h = findobj(gca,’Type’,’patch’);<br />
10 set(h,’FaceColor’,’r’,’EdgeColor’,<br />
’w’)<br />
Dieser Script-File erzeugt 1000 Zufallszahlen<br />
und zeichnet ein Histogramm der Verteilung<br />
der Anzahl der reellen Eigenwerte. Die Abbildung<br />
29 zeigt ein mögliches Resultat. Wollen<br />
600<br />
500<br />
400<br />
300<br />
200<br />
100<br />
0<br />
0 2 4 6 8<br />
Abbildung 29: Histogramm zum Script<br />
Sie sehen, wie Ihr Script-File den von Ihnen<br />
geschriebenen Code abarbeitet, so geben Sie<br />
echo on ein. Mit echo off können Sie den<br />
Vorgang wieder rückgängig machen.<br />
44.2. Function-Files<br />
Wenn Sie intensiver mit Matlab arbeiten, dann<br />
werden Sie bald feststellen, dass es nicht<br />
für alle ihre Wünsche eingebaute Funktionen<br />
oder Kommandos gibt. In diesem Fall können<br />
Sie sich aber Ihre eigene Funktion schrei-<br />
74 Copyright c○ G. Gramlich