Sie sind auf Seite 1von 127

Skriptum zur VU 138.

094 Numerische Methoden und Simulation


K. Held, H. Leeb, C. Lemell, H. Muller

Fakultt fur Physik a Technische Universitt Wien a

Diplomstudiengang fur Technische Physik

Version vom 12. Mrz 2013 a

ii

Inhaltsverzeichnis
Vorwort vii

Grundlagen: Numerische Methoden


. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1
3 3 3 5 7 8 11 11 11 12 15 17 17 18 18 19 19 23 24 24 24 25 26 26 27 27 28

1 Spezielle Funktionen 1.1 Einleitung . . . . . . . . . . . . . . . . . . . . . 1.2 Gamma-Funktion . . . . . . . . . . . . . . . . . 1.3 Legendre Polynome und Kugelchenfunktionen a 1.4 Sphrische Besselfunktionen . . . . . . . . . . . a 1.5 andere orthogonale Polynome . . . . . . . . . .

2 Interpolation, Dierentiation und Integration 2.1 Interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.1 Motivation und Klassikation . . . . . . . . . . . . . 2.1.2 Polynominterpolation . . . . . . . . . . . . . . . . . . 2.1.3 Spline-Interpolation . . . . . . . . . . . . . . . . . 2.2 Dierentiation . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.1 Ableitungen uber Interpolationspolynome . . . . . . 2.2.2 Ableitungen bei gleichmig verteilten Datenpunkten a 2.3 Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.1 Newton-Cotes Integrationsalgorithmen . . . . . . . . 2.3.2 Gau-Integration . . . . . . . . . . . . . . . . . . . .

3 Zufallszahlen 3.1 Generierung von Zufallszahlen . . . . . . . . . . . . . . . . . . . 3.1.1 Generierung wahrer Zufallszahlen . . . . . . . . . . . . 3.1.2 Pseudozufallszahlen . . . . . . . . . . . . . . . . . . . . . 3.1.3 Andere Methoden . . . . . . . . . . . . . . . . . . . . . . 3.1.4 Bibliotheksfunktionen . . . . . . . . . . . . . . . . . . . 3.2 Hugkeitsverteilungen . . . . . . . . . . . . . . . . . . . . . . . a 3.2.1 Zurckweisungsmethode . . . . . . . . . . . . . . . . . . u 3.2.2 Transformationsmethode . . . . . . . . . . . . . . . . . . 3.2.3 Poissonverteilte Zufallszahlen und Exponentialverteilung iii

iv 3.2.4 3.2.5 3.2.6

INHALTSVERZEICHNIS Gauverteilte Zufallzahlen . . . . . . . . . . . . . . . . . . . . . 29 Auf benutzerdenierte Intervalle beschrnkte (ganzzahlige) Zufallszahlen 30 a Beliebig normierte (Gleitkomma-) Zufallszahlen . . . . . . . . . 30 33 33 33 34 34 35 35 38 40 41 41 42 46 47 49 49 50 51 53 53 54 55 55 56 57 60 61 63 63 66 67 68 70

4 Nullstellenbestimmung und 2 -Anpassung 4.1 Nullstellenbestimmung . . . . . . . . . . . 4.1.1 Bracketing und Bisektionsverfahren 4.1.2 Newton-Raphson-Verfahren . . . . 4.1.3 Sekanten-Verfahren . . . . . . . . . 4.1.4 Nullstellenbestimmung nach Brent 4.1.5 Nullstellen von Polynomen . . . . . 4.2 2 -Anpassung . . . . . . . . . . . . . . . . 4.2.1 Lineare Regression . . . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

5 Lineare Algebra 5.1 Lineare Gleichungssysteme . . . . . . . . . . . . . . . . . . . . 5.1.1 Das Eliminationsverfahren von Gau . . . . . . . . . . 5.1.2 Lineare Gleichungssysteme mit Tridiagonaler Matrix . 5.2 Iterative Methoden . . . . . . . . . . . . . . . . . . . . . . . . 5.2.1 Einbinden von Bibliotheksprogrammen . . . . . . . . . 5.3 Der Lanczos Algorithmus . . . . . . . . . . . . . . . . . . . . . 5.3.1 Rayleigh-Quotient & Gram-Schmidt Orthonormierung 5.3.2 Krylov-Basis und Lanczos Rekursionsformel . . . . . . 6 Gewhnliche Dierentialgleichungen o 6.1 Einleitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2 Systeme gewhnlicher Dierentialgleichungen erster Ordnung . o 6.3 Einschrittverfahren . . . . . . . . . . . . . . . . . . . . . . . . 6.3.1 Einschrittverfahren erster und zweiter Ordnung . . . . 6.3.2 Konsistenz und Konvergenz von Einschrittverfahren . . 6.3.3 Runge-Kuttaverfahren . . . . . . . . . . . . . . . . . . 6.4 Rundungsfehler . . . . . . . . . . . . . . . . . . . . . . . . . . 6.5 Numerov Verfahren . . . . . . . . . . . . . . . . . . . . . . . . 6.6 Mehrschrittverfahren . . . . . . . . . . . . . . . . . . . . . . . 6.6.1 Konstruktion einfacher Mehrschrittverfahren . . . . . . 6.6.2 Allgemeine Mehrschrittverfahren . . . . . . . . . . . . 6.6.3 Konsistenz und Konvergenz von Mehrschrittverfahren . 6.7 Extrapolationsverfahren . . . . . . . . . . . . . . . . . . . . . 6.8 Vergleich der Verfahren zur Lsung von Anfangswertprobleme o

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

INHALTSVERZEICHNIS

Anwendungen: Simulation
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

71
73 73 74 76 76 78 83 83 84 86 89 89 91 92 92 93 95 97 97 99 102 107 110 113 114 117

7 Schwingungsbewegung 7.1 Die Bewegungsgleichung und ihre Lsung . . . . . . o 7.2 Lagrangeformalismus und Zustand im Phasenraum 7.2.1 Die gedmpfte Schwingungsbewegung . . . . a 7.2.2 Frequenzspektrum . . . . . . . . . . . . . . 7.3 Das getriebene physikalische Pendel . . . . . . . . . 8 Das 8.1 8.2 8.3

Wasserstoatom Die radiale Schrdingergleichung und ihre Lsungen . . . . . . . . . . . o o Die numerische Lsung der radialen Schrdingergleichung . . . . . . . . o o Berechnung von Bindungszustnden . . . . . . . . . . . . . . . . . . . . a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

9 Finite-Dierenzen-Methode 9.1 Stationre Schrdingergleichung . . . . a o 9.2 Zeitabhngige Schrdingergleichung . . a o 9.2.1 explizites Eulerverfahren . . . . 9.2.2 implizites Eulerverfahren . . . . 9.2.3 Crank-Nicolson-Verfahren . . . 9.2.4 Andere Propagationsmethoden

10 Monte-Carlo-Simulationen 10.1 Motivation: Ising-Modell . . . . . . . . . . . . . . . . . . . . . . 10.2 Wiederholung: Statistische Physik . . . . . . . . . . . . . . . . . 10.3 Monte-Carlo-Integration . . . . . . . . . . . . . . . . . . . . . . 10.4 Physik des Ising-Modells . . . . . . . . . . . . . . . . . . . . . . 10.5 Monte-Carlo-Simulation des Ising-Modells . . . . . . . . . . . . 10.6 Finite-size scaling . . . . . . . . . . . . . . . . . . . . . . . . . 10.6.1 Renormierungsgruppe, Skaleninvarianz und Universalitt a 10.6.2 Anwendung der Skalierung fr das nite-size scaling . u

vi

INHALTSVERZEICHNIS

Vorwort
Die Beschreibung von beobachteten Phnomenen und Zusammenhngen mittels maa a thematischer Methoden ist ein wichtiges Anliegen der Physik und stellt auch die Basis fr deren Anwendung in der Technik dar. Die quantitative Auswertung der entspreu chenden Theorien erfordert numerische Rechnungen, die in der ersten Hlfte des letza ten Jahrhunderts durch die beschrnkte Schnelligkeit des Menschen auf wenige schea matische Beispiele bzw. grobe Nherungen beschrnkt waren. Die Entwicklung von a a Computern in den letzten Jahrzehnten, in letzter Zeit insbesondere die Leistungssteigerung durch Einsatz von massivem Parallelismus, hat die Lsungskapazitt wesentlich o a erhht, sodass wir heute auch komplexere Probleme quantitativ erfassen knnen. Dies o o hat im Bereich der Physik hat der Einsatz von Computern zum Teil auch methodische Vernderungen bewirkt. Durch die Mglichkeit der Simulation von komplexen Systea o men konnte sich ein neuer Zweig der Physik, die Numerische Physik etablieren. Numerische Methoden zur Lsung der ein physikalisches Problem beschreibenden o mathematischen Zusammenhnge sind die Grundvoraussetzung fr den Einsatz von a u Rechnern in der Physik. Die Lehrveranstaltung Numerische Methoden und Simulation soll die wichtigsten numerischen Techniken vermitteln. Lehrziel der Lehrveranstaltung ist das Verstndnis der grundlegenden Algorithmen wie sie in der Physik zum a Einsatz kommen, die Verwendung von Programmbibliotheken und die konkrete Umsetzung physikalischer Problemstellungen. Der pragmatische Zugang steht dabei im Vordergrund, whrend die Behandlung im Sinne der Numerischen Mathematik nur auf a das Notwendigste beschrnkt wird. In der Lehrveranstaltung knnen nur sehr wenia o ge Methoden behandelt werden. Fr einen umfassenderen Uberblick wird z.B. auf die u Numerical Recipes [1] verwiesen, die nicht nur eine Beschreibung der mathematischen Grundlagen geben, sondern auch entsprechende Programme in C++ (ltere Versionen a des Buches mit Programmen in FORTRAN77, Fortran90/95 und C knnen auf der o webseite des Verlages gefunden werden).

vii

viii

VORWORT

Teil A Grundlagen: Numerische Methoden

Kapitel 1 Spezielle Funktionen


1.1 Einleitung

In diesem Kapitel uber Spezielle Funktionen wollen wir einige fr die mathematische u Behandlung physikalischer Probleme ntzliche Funktionen nher betrachten. Speziell u a werden wir auf die Generierung der Gamma-Funktion, der Legendre-Polynome und der sphrischen Bessel- und Neumannfunktionen eingehen. Weitere Spezielle Funktionen a ndet man in Programmbibliotheken wie z.B. der cernlib oder der gsl (gnu scientic library) oder den kommerziell verfgbarendie NAG, IMSL oder MKL Bibliotheken. Die u Programme dieser Bibliotheken sind meist sehr umfangreich, da sie als Black Boxes verwendet werden und eine sorgfltige Kontrolle der Genauigkeit, auch fr Sonderflle, a u a garantieren mssen. Bei den nachstehend angefhrten Funktionen skizzieren wir nur die u u mathematischen Grundlagen, welche fr die numerische Darstellung verwendet werden u knnen. o

1.2

Gamma-Funktion

In vielen Problemen der Physik und der Statistik wird die Gamma-Funktion (z), die verallgemeinerte Faktorielle, bentigt. Sie tritt z.B. in quantenmechanischen Problemen o der Atom- und Kernphysik in Normierungskonstanten auf. Die Gamma-Funktion ist uber das Integral (z) =
0

dt tz1 et

(1.1)

deniert. Ist das Argument eine natrliche Zahl, z = n (n N ), so entspricht die u Gamma-Funktion der Faktoriellen, n! = (n + 1) . Fr allgemeines z erfllt die Gamma-Funktion die Rekursionsbeziehung u u (z + 1) = z (z) 3 (1.3) (1.2)

KAPITEL 1. SPEZIELLE FUNKTIONEN

Kennt man die Gamma-Funktion fr z-Werte in der gesamten Halbebene Rez > 1, so u lassen sich uber die Reexionsformel z (1 z) = = (1.4) (z) sin(z) (1 + z) sin(z) auch die Werte der Gamma-Funktion fr Rez < 1 bestimmen. Die Gamma-Funktion u hat Pole bei z = 0 und bei allen negativen ganzen Zahlen. Fr die numerische Berechnung von (z) kann man von einer der speziellen Daru stellungen fr bestimmte Intervalle ausgehen (siehe z.B. [2], Kapitel 6) und durch u Anwendung der Rekursionsbeziehung (1.3) und der Reexionsformel (1.4) die gesamte komplexe z-Ebene abdecken. Eine der Nherungen fr reelle Argumentwerte x aus dem a u Intervall [1, 2[ ist von der Form
8

(x) mit den Konstanten a0 a1 a2 = = = 1.000000 0.577192 0.988206 a3 a4 a5

k=0

ak (x 1)k ,

(1.5)

= = =

Im Allgemeinen ist es gnstiger den Logarithmus der Funktion, ln (z), numerisch u zu implementieren. Dadurch lsst sich ein oating point overow des Rechners vermeia den. Die Rekursionsbeziehung (1.3) reduziert sich dann zu einer Summe ln (z + N ) =
N 1 n=0

0.897057 0.918207 0.756704

a6 a7 a8

= = =

0.482199 0.193528 0.035868

ln(z + n) + ln (z) .

(1.6)

Whlt man nun die Zahl N hinreichend gro, so kann man die folgende asymptotische a Form zur Berechnung von ln (z + N ) verwenden (siehe [2]) 1 1 1 1 + + (1.7) 2 5 12 360 z z 1260 z 16807 z mit z = z +N in | arg z | < (vgl. Stirling-Formel ln n! n ln nn). Fr Rez < 1 u muss zustzlich noch die Reexionsformel (1.4) eingesetzt werden. a Zum Abschluss sei noch die spezielle Nherung von Lanczos genannt [2], a ln () ( 1 ) ln z z + 2 ln(2) + z z 2 1
1 (1 + z) = (z + + 2 )z+0.5 e(z++0.5) c1 c2 c5 + + + 2 1 + z+1 z+2 z+5

fr Rez > 0 u

(1.8)

mit = 5 und den Konstanten c1 c4 = = 76.18009173 1.231739516 c2 c5 = = 86.50532033 0.00120858003 c3 c6 = = 24.01409822 0.000053682

Diese Formel kann in der gesamten komplexen Halbebene Rez > 0 angewendet werden, wobei der Fehler || < 2 1010 ist.

1.3. LEGENDRE POLYNOME UND KUGELFLACHENFUNKTIONEN

1.3

Legendre Polynome und Kugelchenfunktioa nen

Kugelchenfunktionen, Ym (, ) werden in einer Vielzahl physikalischer Probleme a verwendet. Ihre Verwendung ist besonders dann vorteilhaft, wenn das betrachtete Problem eine sphrische Symmetrie aufweist, wie dies z.B. in vielen Fragestellungen der a Atom- und Kernphysik der Fall ist. Die Kugelchenfunktionen sind auf der Einheitskugel deniert und stellen einen a orthonormierten Satz von Basisfunktionen dar,
2 +1

d
0 1

d(cos )Y,m (, )Ym (, ) = mm ,

(1.9)

wobei (*) komplexe Konjungation bedeutet. Die Kugelchenfunktionen haben die Form a Ym (, ) = und es gilt die Beziehung
Y,m (, ) = (1)m Ym (, ) .

2 + 1 ( m)! m P (cos )eim 4 ( + m)!

(1.10)

(1.11)

Die Abhngigkeit der Kugelchenfunktionen vom Winkel ist durch die assoziiera a ten Legendre Polynome, Pm (cos ), gegeben. Diese hngen uber die Beziehung a Pm (x) = (1)m (1 x2 )m/2 dm P (x) dxm (1.12)

mit den gewhnlichen Legendre Polynomen, P (x), zusammen. An dieser Stelle soll o bemerkt werden, dass die Position der magnetischen Quantenzahl m als oberer oder unterer Index beachtet werden muss. Es gilt Pm (x) = (1)m Pm (x) . (1.13)

Die assoziierten Legendre Polynome niedriger Ordnung und die entsprechenden Kugelchenfunktionen haben eine einfache Form und sind in der Tabelle 1.3 angegeben. a Bei der Berechnung der assoziierten Legendre Polynome sollte man nicht versuchen, die Polynomdarstellung numerisch zu implementieren, da dies zu Auslschungsfehlern o bei der Addition benachbarter Terme mit entgegengesetztem Vorzeichen fhrt. Aueru dem werden bei hheren Legendre Polynomen die Einzelterme wesentlich grer als die o o Summe, sodass die Genauigkeit zustzlich verringert wird. Auf diese Art knnen bei a o doppelt genauer Rechnung (REAL*8) nur Polynome bis etwa = 18 berechnet werden.

KAPITEL 1. SPEZIELLE FUNKTIONEN

P00 (x) =

Y00 =

1 4

P11 (x) = P10 (x) =

(1 x2 )1/2 x

Y11 = Y10 =

3 8 3 4

sin ei

cos

P22 (x) = P21 (x) = P20 (x) =

3(1 x2 ) 3x(1 x2 )1/2


1 (3x2 2

Y22 = Y21 = Y20 =

1 4

15 2 15 8

sin2 e2i sin ei cos2 1 ) 2

1)

5 3 ( 4 2

Tabelle 1.1: Assoziierte Legendre Polynome und Kugelchenfunktionen niedrigster a Ordnung

Ein in Hinblick auf die numerische Genauigkeit robusterer Algorithmus kann auf der Basis der Rekursionsbeziehung ( m)Pm (x) = (2 1)xP1,m (x) ( + m 1)P2,m (x) P (x) = (2 1)!!(1 x2 )/2 (1.14)

aufgebaut werden. Startpunkt der Rekursion sind die Polynome P (x), die durch (1.15)

gegeben sind. Setzt man auerdem P,m=+1 = 0, so lsst sich die Rekursion bis zu a hchsten -Werten stabil durchfhren. Man geht dabei in folgender Reihenfolge vor: o u m Berechnung nach (1.15) P00 P11 P22 P33 . . . Berechnung uber Rekursionsformel (1.14) P10 , P20 , P30 , P40 , . . . P21 , P31 , P41 , . . . P32 , P42 , . . . P43 , . . . . . .

0 1 2 3 . . .

Abschlieend soll noch darauf aufmerksam gemacht werden, dass nicht jede Rekursionsformel zu einem stabilen Algorithmus fhrt. Wir werden diesen Punkt noch u genauer bei den sphrischen Besselfunktionen behandeln. a

1.4. SPHARISCHE BESSELFUNKTIONEN

1.4

Sphrische Besselfunktionen a

Ein wichtiges Funktionensystem bei der Lsung der Schrdingergleichung stellen die o o sphrischen Bessel- und Neumannfunktionen dar. Diese sind Lsungen der gewhnlia o o chen Dierentialgleichung ( + 1) 2 d d2 +1 + 2 d d 2 R () = 0 , (1.16)

der radialen Schrdingergleichung fr ein freies Teilchen. Die Dierentialgleichung o u (1.16) hat zwei linear unabhngige Lsungen. Diese unterscheiden sich durch ihr Vera o halten bei = 0, regulre Lsung bei = 0: a o irregulre Lsung bei = 0: a o sprische Besselfunktion a sphrische Neumannfunktion a j () n ()

Die mathematischen Eigenschaften der sphrischen Bessel- und Neumannfunktionen a sind gut untersucht. Wichtige mathematische Zusammenhnge sind z.B. im Tabellena werk von Abramowitz und Stegun [2] zusammengefasst. Die Funktionen zeigen unter anderem das folgende Verhalten am Ursprung 2 1 + O(4 ) (2 + 1)!! 2(2 + 3) 2 (2 1)!! 0 1+ + O(4 ) n () +1 2(2 1) j ()
0

, .

(1.17) (1.18)

Das asymptotische Verhalten ist durch sin( ) 2 , cos( ) 2 n () j ()

(1.19) (1.20)

gegeben. Fr die Bessel- und Neumannfunktionen knnen geschlossene Ausdrcke anu o u gegeben werden, =0 =1 =2 j0 () = + sin , j1 () = cos +
sin() 2 3 3

n0 () = cos , ,
1

n1 () = sin sin ,

cos() 2 3 3

,
1

j2 () = 3 cos + 2

n2 () = 3 sin2

cos .

Die numerische Berechnung der sprischen Bessel- und Neumannfunktionen erfolgt a uber die Rekursionsformeln g+1 () + g1 () = 2 + 1 g () , (1.21)

KAPITEL 1. SPEZIELLE FUNKTIONEN

wobei g () fr eine sphrische Bessel- oder Neumannfunktion steht. Analog zu der u a Berechnung der Legendrefunktionen fhrt man auch fr die sphrischen Neumannu u a funktionen eine Rekursion durch, wobei man von n0 () und n1 () ausgeht. Bei den sphrischen Neumannfunktionen ist die Vorwrtsrekursion stabil und fhrt fr alle a a u u Argumentwerte auf zuverlssige Ergebnisse. a Fr die Bestimmung von j () ist die Vorwrtsrekursion leider nicht ausreichend u a stabil fr > . Die Ursache fr die Probleme bei der Vorwrtsrekursion lsst sich aus u u a a der Umformung der Rekursionsvorschrift erkennen, j+1 () 2j () + j1 () = 2 + 1 2 j () . (1.22)

Gleichung (1.22) kann auch als Dierenzendarstellung der Dierentialgleichung 2 + 1 2 d2 j () = j () 2 d (1.23)

aufgefasst werden. Eine solche Dierentialgleichung hat zwei linear unabhngige Lsuna o gen. Ist (2 + 1 2) < 0, so erhlt man 2 in oszillierende Lsungen. Bei a o (2 + 1 2) > 0 erhlt man eine exponentiell in ansteigende und eine abfallena de Lsung. Fr die Verlsslichkeit des Rekursionsverfahrens ist es nun magebend, o u a dass die divergierende Lsung unterdrckt wird. Dies ist bei der Vorwrtsrekursion der o u a sphrischen Neumannfunktionen der Fall, nicht aber bei der Rekursion der sphrischen a a Besselfunktionen, d.h., bei ansteigenden > wird der divergierende Term ab einem gewissen Punkt dominant werden. Diese prinzipielle Eigenschaft der Rekursion kann man zur Berechnung der sphria schen Besselfunktion ausntzen, indem man eine sogenannte Rckwertsrekursion u u durchfhrt. Man startet die Rekursion bei einem sehr hohen -Wert, = L > . u Fr die numerische Rechnung kann man aufrund des oben Gesagten annehmen, dass u die divergierende Lsung sicherlich den numerischen Ansatz dominiert. Man kann dao her beliebige Werte fr jL () und jL+1 () ansetzen. Fhrt man nun die Rekursion u u rckwrts durch, d.h., man berechnet sukzessive jL1 , jL2 , . . . j1 , j0 uber die Rekursiu a onsformel (1.21), so verschwindet der divergierende Anteil sehr rasch und es verbleibt nur die fr die sphrischen Besselfunktionen relevante Lsung. Die erhaltenen Werte u a o sind allerdings noch Vielfaches der entsprechenden j -Werte und mssen durch Veru gleich mit j0 () normiert werden. Mehr Details uber die Rckwrtsrekursion wurden u a von Gillman und Fiebig [3] angegeben.

1.5

andere orthogonale Polynome

Zahlreiche spezielle Funktionen lassen sich leicht durch Rekursionsbeziehungen von der Bauart a1n fn+1 (x) = (a2n + a3n x)fn (x) a4n fn1 (x) (1.24)

1.5. ANDERE ORTHOGONALE POLYNOME

berechnen. Rekursionsanfang sowie die Faktoren {ain } liegen in tabellierter Form vor [2]. Z.B. ndet man fr die Legendrepolynome Pn (x) (vgl. Gl. 1.14 fr m = 0) u u a1n = n + 1, a2n = 0, a3n = 2n + 1, a4n = n . (1.25)

Die resultierenden orthogonalen Polynome sind Lsungen spezieller, in der Physik o auftretender Dierentialgleichungen (z.B. sind die Hermitepolynome Hn (x) Teil der Lsung der Schrdingergleichung des harmonischen Oszillators) und bilden auch die o o Grundlage der Gau-Integration, die in Abschnitt 2.3.2 besprochen wird.

10

KAPITEL 1. SPEZIELLE FUNKTIONEN

Kapitel 2 Interpolation, Dierentiation und Integration


2.1
2.1.1

Interpolation
Motivation und Klassikation

Ein zentrales Thema bei der numerischen Behandlung von Fragestellungen stellt die Wahl einer geeigneten Interpolation zur Darstellung von Funktionen im Computer dar. Die Motivation fr die Verwendung von Interpolationen ist vielfltig, z.B. u a die Zahl der Messpunkte ist gering, der Aufwand zur Berechnung eines Datenpunktes ist sehr hoch, d.h., man versucht mglichst wenige Punkte zu berechnen, o die numerische Methode verlangt ein bestimmtes Gitter, die Mess- oder Rechenpunkte liegen aber auf einem anderen Gitter vor. Diese Probleme treten sowohl in der Auswertung von Messreihen als auch bei numerischen Rechnungen im Rahmen einer Theorie oder eines vorgegebenen Modells auf. Der Ausgangspunkt fr eine Interpolation ist stets hnlich: u a Gegeben ist eine unabhngige Variable x, und fr eine Menge von Werten {xi } a u aus einem Intervall I sind Funktionswerte f (xi ) = fi bekannt. Gesucht ist eine Funktion f (x) (eventuell geschlossener Ausdruck), sodass fr beliebiges x aus I u (x) eine sinnvolle Nherung an f (x) errechnet werden kann. mit f a Ziel der Interpolation ist nicht nur die Verwendung von f (x) zur nherungsweisen a Berechnung von Funktionswerten f (x) mit x I (Interpolation), sondern auch als Ausgangspunkt nherungsweiser Integrations-, Dierentiations- und in einigen a Fllen Extrapolationsmethoden. a 11

12 KAPITEL 2. INTERPOLATION, DIFFERENTIATION UND INTEGRATION Die entsprechende mathematische Problemstellung lsst sich kompakt wie folgt a formulieren: Interpolationsproblem: Eine Funktion f (x) sei an n + 1 unterschiedlichen Argumentwerten xi , i = 0, 1, . . . , n, xi = xk gegeben, fi = f (xi ). Ein Interpolationsproblem liegt dann vor, wenn fr u eine vorgegebene Funktionenklasse (x; a0 , a1 , . . . , an ) die Parameter ai so bestimmt werden sollen, dass (xi ; a0 , a1 , . . . , an ) = fi i = 0, 1, . . . , n

Die Paare (xi , fi ) werden als Sttzstellen bezeichnet. u Eine besondere Klasse sind lineare Interpolationsprobleme. Bei diesen hngt die a Interpolationsfunktion (x; a0 , a1 , . . . , an ) linear von den Parametern ai ab, (x; a0 , a1 , . . . , an ) = (x) + a0 0 (x) + a1 1 (x) + + an n (x) . (2.1)

Die in diesem Skriptum behandelten Interpolationstechniken, (a) die Polynominterpolation und (b) die Spline-Interpolation, gehren beide der Klasse der linearen Interpoo lationsprobleme an. Beispiele fr nichtlineare Interpolationsprobleme sind die Interpou lation mit rationalen Funktionen sowie die Interpolation mit Exponentialsummen.

2.1.2

Polynominterpolation

Bei der Polynominterpolation whlt man die Interpolationsfunktion aus n , der Menge a der reellen oder komplexen Polynome p(x) vom Grad n, (x; a0 , a1 , . . . , an ) = p(x) = a0 + a1 x + a2 x2 + + an xn . (2.2)

Das Interpolationsproblem besteht nun darin, dass man zu (n + 1) beliebig vorgegebenen Sttzstellen (xi , fi ) ein Polynom p(x) n bestimmt, welches an den (n + 1) u Sttzstellen mit der vorgegebenen Funktion ubereinstimmt, d.h. p(xi ) = f (xi ) = fi fr u u i = 0, 1, 2, . . . , n. Es lsst sich mithilfe eines indirekten Beweises zeigen, dass ein eindeutig bestimma tes Polynom p(x) existiert, welches dieses Interpolationsproblem lst: o Angenommen, es existierten zwei Polynome p1 , p2 n fr die gilt: u p1 (xi ) = p2 (xi ) = fi fr alle i = 0, 1, 2, . . . , n. Daraus wrde folgen, dass das Polynom u u p(x) = p1 (x)p2 (x) n zumindest n+1 Nullstellen [ p(xi ) = 0, i = 0, 1, . . . , n] htte. a Da p n nur maximal n Nullstellen haben kann, folgt p(x) 0 und p1 (x) p2 (x).

2.1. INTERPOLATION

13

Das Polynom p(x), welches das Interpolationsproblem lst, kann durch die Lagrange o Interpolationsformel
n

p(x) =
i=0

fi Li (x)

(2.3)

berechnet werden, wobei Li (x) die Lagrangeschen Interpolationspolynome sind Li (x) = x xk xi xk k=0,k=i
n

fr i = 0, 1, . . . , n . u

(2.4)

Da alle Li (x) n sind und Li (xk ) = ik gilt, liefert die Lagrangesche Interpolationsformel oensichtlich das gewnschte Interpolationspolynom. u Da die zu interpolierenden Funktionen selbst meist keine Polynome sind, wird bei der Interpolation ein Fehler gemacht. Sei pn (x) das Interpolationspolynom vom Grad n, dann ist der Fehler, E(x) = f (x) pn (x) proportional zu [4]: E(x) = i=0,n (x xi ) f (n+1) () (n + 1)! (2.5)

mit [x0 , xn ]. Fr die praktische Verwendung in einem Computerprogramm ist die Lagrangesche u Interpolationsformel ungeeignet. Sie bentigt viele arithmetischen Operationen und ist o daher auch anfllig fr Rundungsfehler. Je nachdem ob man die Funktion an einem oder a u mehreren Argumentwerten interpolieren will, bieten sich verschiedene Alternativen an. Der Algorithmus von Neville Will man den interpolierten Funktionswert f (x) nur an einem (wenigen) zustzlichen a Argumentwert(en) berechnen, bietet sich der Algorithmus von Neville zur Lsung des o Interpolationsproblems an. Der Algorithmus ist exibel bezglich der Zahl der Datenu punkte und aufgrund der rekursiven Formulierung leicht implementierbar. Wieder sei die Funktion an (n + 1) Sttzstellen (xi , fi ), i = 0, 1, . . . , n gegeben. u Ausgehend von Polynomen nullten Grades Pi (x) = f (xi ) = fi knnen wir mit der Rekursionsvorschrift o Pij ij+1 ...ij+k (x) = (x xij )Pij+1 ...ij+k (x) (x xij+k )Pij ...ij+k1 (x) xij+k xij pn (x) = Pi0 i1 ...in (x) . (2.7) x, (2.6)

den interpolierten Wert der Funktion an der Stelle x ermitteln, (2.8)

Der Algorithmus von Neville lsst sich in einem Schema ubersichtlich darstellen und a numerisch leicht implementieren. Als Beispiel betrachten wir das Schema fr n = 3 u

14 KAPITEL 2. INTERPOLATION, DIFFERENTIATION UND INTEGRATION k=0 f0 = P0 (x) f1 = P1 (x) P12 (x) x2 x3 f2 = P2 (x) P23 (x) f3 = P3 (x) P123 (x) k=1 P01 (x) x1 P012 (x) P0123 (x) k=2 k=3

x0

Man rechnet dabei spaltenweise und arbeitet sich zur hheren Ordnung (nach rechts) o vor. Newtonsche Interpolationsformel Bentigt man die Funktion f (x) an mehreren Punkten, bzw. will man das Polynom o selbst bestimmen, eignet sich der Algorithmus von Newton, welcher auf der Basis Dividierter Dierenzen arbeitet. Die Dividierte Dierenz (divided dierence) erster Ordnung zwischen zwei Sttzu stellen (xi , fi ) und (xj , fj ) ist folgendermaen deniert f [xi , xj ] = fi fj = f [xj , xi ]. xi xj (2.9)

Ausgehend von der Dividierten Dierenz nullter Ordnung, f [xi ] = fi , knnen nun o rekursiv Dividierte Dierenzen hherer Ordnung deniert werden, o f [xi , xi+1 , . . . , xi+k ] = f [xi+1 , . . . , xi+k ] f [xi , xi+1 , . . . , xi+k1 ] . xi+k xi (2.10)

Das gesuchte Interpolationspolynom pn (x), welches durch die (n+1) Sttzstellen (xi , fi ) u geht, lautet pn (x) = a0 +(xx0 )a1 +(xx0 )(xx1 )a2 + +(xx0 )(xx1 ) . . . (xxn1 )an , (2.11) wobei die Koezienten ai durch ai = f [x0 , x1 , . . . , xi ]. (2.12)

gegeben sind. Die rekursive Bestimmung der f [x0 , x1 , . . . , xi ] und somit der ai gem a Gl. 2.10 macht eine sehr einfache numerische Bestimmung der Polynomkoezienten mglich. o Der rekursive Algorithmus (Gl. 2.10) kannin ein symmetrisches Schema gebracht werden. Fr die Sttzstellen {(3.2, 22.0), (2.7, 17.8), (1.0, 14.2), (4.8, 38.3), (5.6, 51.7)} u u ergeben sich folgende Werte:

2.1. INTERPOLATION xi 3.2 2.7 1.0 4.8 5.6 fi = f [xi ] 22.0 17.8 14.2 38.3 51.7 f [xi , xi+1 ] 8.400 2.118 6.342 16.750 f [xi , . . . , xi+2 ] 2.856 2.012 2.263 f [xi , . . . , xi+3 ] -0.5280 0.0865 f [xi , . . . , xi+4 ]

15

0.256

Man nennt dies ein Dierenzenschema nach Newton, bei dem die Dividierten Dierenzen spaltenweise und dann von links nach rechts fortschreitend betimmt werden. Haben die Sttzstellen xi gleichen Abstand voneinander, so ergeben sich wesentliche u Vereinfachungen.

2.1.3

Spline-Interpolation

Motivation In manchen Fllen kann die Interpolation eines vorgegebenen Satzes von Funktionsa werten aufgrund der Oszillation von Polynomen hoher Ordnung zu unerwnschten u Ergebnissen fhren. Eine Verbesserung der Situation kann erreicht werden, indem man u abschnittsweise (d.h. fr eine kleine Untermenge der xi ) Polynome interpoliert, wobei u man zustzliche Randbedingungen an den Kontaktstellen der Polynome fordert. a Im Fall der (kubischen) Spline-Interpolation wird in jedem der Teilintervalle, gegeben durch [xi , xi+1 ], ein kubisches Polynom mit unbekannten Koezienten ai , bi , ci und di deniert, das die Funktionswerte an den Intervallgrenzen, f (xi ) und f (xi+1 ), reproduziert: f (x) = ai (x xi )3 + bi (x xi )2 + ci (x xi ) + di . (2.13) Im Folgenden bezeichnen wir den Abstand zwischen benachbarten Abszissenwerten mit hi = (xi+1 xi ) und die zweiten Ableitungen der Polynome an den Sttzstellen u (xi , fi ) mit Si . Aus der Stetigkeitsbedingung fr die Funktion f (x) ergibt sich u f (xi ) = di = fi f (xi+1 ) = ai (xi+1 xi )3 + bi (xi+1 xi )2 + ci (xi+1 xi ) + di = ai h3 + bi h2 + ci hi + di = fi+1 . i i

(2.14)

Gleichheit der ersten und zweiten Ableitungen der Polynome an den Intervallgrenzen fhrt fr Si und Si+1 auf u u Si = 2bi und Si+1 = 6ai hi + 2bi . (2.15)

Mithilfe dieser beiden Relationen lassen sich die unbekannten Koezienten ai und bi folgendermaen ausdrcken: u 1 b i = Si 2 und ai = 1 (Si+1 Si ). 6hi (2.16)

16 KAPITEL 2. INTERPOLATION, DIFFERENTIATION UND INTEGRATION Die Koezienten {ai }, {bi } und {di } sind somit bestimmt, die noch unbestimmten Koezienten {ci } ergeben sich aus Gl. 2.14. Man erhlt explizit a ci = fi+1 fi 2hi Si + hi Si+1 . hi 6 (2.17)

Anpassung der ersten Ableitungen der Polynome an der Stelle xi fhrt fr das rechtsu u bzw. linksseitige Polynom auf: f (xi ) = ci f (xi ) = 3ai1 (xi xi1 )2 + 2bi1 (xi xi1 ) + ci1 = 3ai1 h2 + 2bi1 hi1 + ci1 . i1

(2.18)

Gleichsetzen dieser beiden Relationen und Substitution der Ausdrcke fr ai , bi , ci und u u di ergibt fi+1 fi 2hi Si + hi Si+1 = 3 hi 6 Si1 Si Si1 hi1 h2 + 2 i1 6hi1 2 fi fi1 2hi1 Si1 + hi1 Si + , hi1 6

(2.19)

beziehungsweise, vereinfacht, hi1 Si1 + (2hi1 + 2hi )Si + hi Si+1 = 6 fi+1 fi fi fi1 hi hi1 . (2.20)

Insgesamt gibt es damit (n 1) Gleichungen fr die (n + 1) Unbekannten Si . Es werden u also noch zwei weitere Angaben fr S0 und Sn bentigt, die auf Annahmen beruhen. u o Eine der folgenden Festlegungen der Randwerte wird ublicherweise verwendet: S0 = Sn = 0 ( natrlicher spline). u S0 = S1 und Sn = Sn1 . S0 ist ein aus S1 und S2 linear extrapolierter Wert; ebenso ist Sn ein aus Sn1 und Sn2 linear extrapolierter Wert. Schtzwerte fr die Anstiege an den beiden Enden werden vorgegeben. a u Vor- und Nachteile jeder dieser Annahmen mssen im Anlassfall genau untersucht u werden. Das resultierende Gleichungssystems ist tridiagonal, d.h., dass jedes Si (ausgenommen S0 und Sn ) nur an seine Nachbarn Si1 und Si+1 durch lineare Relationen gekoppelt ist. Das macht die Berechnung der Si nicht nur einfach, sondern auch schnell (Anzahl der rechenschritte N , O(N )-Algorithmus, siehe Kapitel 5). Sind alle Si bestimmt, werden die unbekannten Koezienten der Interpolations Polynome folgendermaen bestimmt:

2.2. DIFFERENTIATION

17

ai = bi ci di

1 (Si+1 Si ) 6hi 1 Si = 2 fi+1 fi 2hi Si + hi Si+1 = hi 6 = fi

(2.21) (2.22) (2.23) (2.24)

2.2

Dierentiation

Die genaue Bestimmung der Ableitungen einer Funktion, die durch einen Satz von gegebenen Datenpunkten {(xi , fi )} beschrieben ist, gehrt zu den grundlegenden Voro aussetzungen jeder Kurvendiskussion. Weiters kann sie z.B. bei der Lsung von Dieo rentialgleichungen von groer Bedeutung sein.

2.2.1

Ableitungen uber Interpolationspolynome

Unter der Annahme, dass eine Funktion hinreichend gut durch ihr Interpolationspolynom approximiert wird (siehe vorhergehender Abschnitt), kann man hoen, dass diese Nherung auch fr die erste Ableitung verwendbar ist. Der Fehler in der ersten Ableia u tung ist allerdings grer als bei den Funktionswerten. o Ist das Interpolationspolynom z.B. durch die Newtonsche Interpolationsformel bestimmt, also

f (x) = pn (x) + E(x) (2.25) = f [x0 ] + f [x0 , x1 ](x x0 ) + f [x0 , x1 , x2 ](x x0 )(x x1 ) + f [x0 , x1 , . . . , xn ](x x0 )(x x1 ) (x xn1 ) + E(x) , so ergibt sich fr f (x) u f (x) = f [x0 , x1 ] + f [x0 , x1 , x2 ](2x x0 x1 ) +
n1

(2.26)

f [x0 , x1 , . . . , xn ]
k=0

(x x0 ) (x xn1 ) + E(x). (x xk )

Die Abschtzung fr E(x) ist komplizierter als jene fr E(x). Unter gewissen Vora u u aussetzungen lassen sich aber geschlossene Ausdrcke fr diese Fehler angeben [4], aus u u denen ersichtlich ist, dass E(x) grer als E(x) ist. o Hhere Ableitungen von f (x) lassen sich formal leicht aus den obigen Ausdrcken o u herleiten.

18 KAPITEL 2. INTERPOLATION, DIFFERENTIATION UND INTEGRATION

2.2.2

Ableitungen bei gleichmig verteilten Datenpunkten a

Sind die Datenpunkte auf einem regelmigen Gitter vorgegeben (quidistante a a Datenpunkte), also xi = x0 + ih, i = 1, . . . , n, knnen folgende Ausdrcke fr die o u u ersten und zweiten Ableitungen von f (x) verwendet werden: erste Ableitungen: f1 f0 + O(h) h f1 f1 + O(h2 ) f (x0 ) = 2h f2 + 4f1 3f0 f (x0 ) = + O(h2 ) 2h f2 + 8f1 8f1 + f2 f (x0 ) = + O(h4 ); 12h f (x0 ) = zweite Ableitungen: f (x0 ) = f2 2f1 + f0 + O(h) h2 f1 2f0 + f1 + O(h2 ) f (x0 ) = h2 f3 + 4f2 5f1 + 2f0 f (x0 ) = + O(h2 ) h2 f2 + 16f1 30f0 + 16f1 f2 f (x0 ) = + O(h4 ) . 12h2 (2.31) (2.32) (2.33) (2.34) (2.27) (2.28) (2.29) (2.30)

Durch Indextransformation in den obigen Ausdrcken knnen Ableitungen fr jeden u o u der n Datenpunkte angegeben werden. Zu beachten ist, dass bei Randpunkten einige der Ausdrcke mangels vorhandener Funktionswerte nicht anwendbar sind. Genauere u Angaben fr die Fehler sind in [2] zu nden. u

2.3

Integration
b

Um das bestimmte Integral I=


a

f (x) dx

zu lsen, werden im Folgenden zwei Klassen von Methoden diskutiert: einerseits soo genannte Newton-Cotes Integrationsalgorithmen, die auf der analytischen Integration stckweis aneinandergereihter Interpolationspolynome durch quidistante Datenpunku a te {(xi , fi )} beruhen, andererseits Gausche Integrationsmethoden, fr die die Abszisu sen {xi } der Sttzstellen durch die Wahl der Methode vorbestimmt sind. u

2.3. INTEGRATION

19

2.3.1

Newton-Cotes Integrationsalgorithmen

Wir beschrnken uns hier auf Integrationsalgorithmen, die sich auf Stze von Datena a punkten {(xi , fi )} mit quidistanten xi -Werten beziehen, also x0 (= a), . . . , xn (= b) mit a xi = x0 + ih. Die grundlegende Idee ist, dass durch die Punkte {(xi , fi )} stckweiu se Polynome gelegt werden, die dann uber den x-Bereich der Datenpunkte integriert werden. Der dadurch ermittelte Wert ist ein Nherungswert fr das Integral uber die a u durch die Datenpunkte dargestellte Funktion. Je nachdem, ob man die Funktion f (x) zwischen den Sttzstellen durch Polynome u ersten, zweiten oder dritten Grades ersetzt, erhlt man folgende Ausdrcke a u b a 2 h (f0 + 2f1 + 2f2 + 2fn1 + fn ) h f (), (2.35) 2 12 a b h dx f (x) = (f0 + 4f1 + 2f2 + 4f3 2fn2 + 4fn1 + fn ) (2.36) 3 a b a 4 IV h f (), 180 b 3h dx f (x) = (f0 + 3f1 + 3f2 + 2f3 + 3f4 + 3f5 3fn1 + fn ) (2.37) 8 a b a 4 IV h f (). 80 dx f (x) = Die jeweils letzten Terme in den obigen Gleichungen erlauben eine Fehlerabschtzung mit [a, b]. a Die erste Integrationsregel wird in der Literatur Trapezregel genannt, die Zahl der Sttzstellen n ist beliebig. Bei der zweiten Regel (Simpson-Regel ) muss n durch zwei u teilbar sein, bei der dritten Regel (Simpson 3/8 Regel ) muss n durch drei teilbar sein.
b

2.3.2

Gau-Integration

Gleichungen 2.352.37 zeigen, dass sich bei der Wahl quidistanter Sttzstellen die a u Nherungsformeln fr die Integrale durch Summen uber die Funktionswerte an diesen a u Sttzstellen multipliziert mit geeigneten Vorfaktoren (Gewichtsfaktoren) schreiben lasu sen. Die Gau-Integration erweitert diese Idee folgendermaen: geht man von den aqui distanten Sttzstellen ab, lsst man also die Wahl der n Sttzstellen oen, so gewinnt u a u man weitere n freie Parameter, die man im Sinne einer Optimierung der Nherungsa formeln whlt. So kann ein Polynom bis zum Grad (2n 1) durch die zu integrierende a Funktion gelegt werden. Die Nherungsformeln, die auf dieser Idee basieren, werden a Gau-Integrationsformeln genannt. Sie sollten allerdings nur dann verwendet werden, wenn die zu integrierende Funktion f (x) explizit bekannt ist. Das Prinzip der Gau-Integration wird im folgenden fr n = 2 veranschaulicht. u b Gegeben sei das Integral a dx f (x), wobei a und b endliche Werte haben sollen. Nach

20 KAPITEL 2. INTERPOLATION, DIFFERENTIATION UND INTEGRATION der Variablensubstitution x= b+a ba t+ , 2 2 dx = ba dt 2 (2.38)

erfolgt die Integration uber das symmetrische Intervall [1, +1]. Der Ansatz von Gau lautet damit
b

dx f (x) =
a

ba 2

dt f (t) =
1

ba [a1 f (t1 ) + a2 f (t2 )] 2

(2.39)

mit unbekannten Gewichtsfaktoren a1 und a2 und unbekannten Sttzstellen t1 und t2 . u Da diese Formel fr Polynome bis zum Grad (2n 1) = 3 gelten muss, knnen diese u o vier unbekannten Parameter aus folgenden Gleichungen bestimmt werden:
1

f (t) = t3 :
1 1

dt t3 = 0 = a1 t3 + a2 t3 , 1 2 dt t2 = 2/3 = a1 t2 + a2 t2 , 1 2 dt t = 0 = a1 t1 + a2 t2 ,

(2.40)

f (t) = t2 :
1 1

f (t) = t1 :
1 1

f (t) = 1 :
1

dt = 2 = a1 + a2 .

Lsung dieser vier Gleichungen fhrt auf o u a1 = a2 = 1 und somit


1

t2 = t1 =

1 = 0.5773 3

(2.41)

dt f (t) = f (0.5773) + f (0.5773).


1

(2.42)

Ist f (t) ein beliebiges Polynom dritten Grades, so ist diese Formel konstruktionsgem exakt. a Die Formeln fr die Gau-Integration lassen sich fr beliebiges n erweitern: sie u u lauten dann (beachten Sie im Unterschied zu den vorhergehenden Abschnitten den vernderten Startindex i = 1) a
1 n

dtf (t) =
1 i=1

wi f (ti ) ,

(2.43)

wobei die 2n Unbekannten wi und ti , i = 1, . . . , n, aus den Gleichungen


n

=
i=1

0
2 k+1

k = 1, 3, . . . , 2n 1 k = 0, 2, . . . , 2n 2

(2.44)

2.3. INTEGRATION

21

bestimmt werden. Es zeigt sich, dass die gesuchten ti die Nullstellen des LegendrePolynoms Pn (t) vom Grad n sind und dass die wi durch
wi = [Pn1 (ti ) Pn (ti )] 1

(2.45)

gegeben sind. Die Legendre-Polynome werden mithilfe der rekursiven Relation (n + 1)Pn+1 (t) (2n + 1) t Pn (t) + nPn1 (t) = 0 mit P0 (t) = 1, und P1 (t) = t (2.47) bestimmt. Die Legendre-Polynome sind auf dem Intervall [1, 1] orthogonal, d.h., es gilt 1 0 n=m Pn (t)Pm (t)dt = . (2.48) >0 n=m 1 Konkret ergibt sich P2 (t) aus (2.46) und (2.47) zu 3 1 P2 (t) = t2 2 2 und
wi = [P1 (ti ) P2 (ti )] 1

(2.46)

(2.49)

= [ti 3ti ]1 .

(2.50)

Aus Gl. 2.49 sieht man, dass die Nullstellen von P2 (t) tatschlich durch ti = 1/3 a gegeben sind. Setzt man diese Werte in Gl. 2.50 ein, so erhlt man w(ti ) = 1 (vgl. Gl. a 2.41). In der nachfolgenden Tabelle sind die Legendre-Polynome vom Grad n 4, ihre jeweiligen Nullstellen ti und die Werte der Gewichtsfaktoren, w(ti ), angegeben. n 0 1 2 3 Ln (t) 1 t 1 (3t2 1) 2
1 (5t3 2

3t) 30t2 + 3)

1 (35t4 8

Nullstellen ti 0.0 -0.57735 0.57735 -0.77459 0.0 0.77459 -0.86113 -0.33998 0.33998 0.86113

Gewichtsfaktoren w(ti ) 1 1 1 0.55555 0.88888 0.55555 0.34785 0.65214 0.65214 0.34785


b a

Ganz allgemein kann die Gau-Integration auf Integrale vom Typ erweitert werden. Die Nherungsformel lautet dann a

dx W (x)f (x)

22 KAPITEL 2. INTERPOLATION, DIFFERENTIATION UND INTEGRATION


n

b a

dx W (x)f (x)

wi f (xi ).
i=1

(2.51)

Dieser Ausdruck ist exakt, wenn f (x) ein Polynom ist, dessen Grad kleiner oder gleich (2n 1) ist. W (x) wird Gewichtsfunktion genannt. Die Berechnung der Gewichte wi erfolgt mit Hilfe der zu W (x) assoziierten orthogonalen Polynome pi (x). Ist W (x) und ein Intervall I = [a, b] gegeben, so heien Polynome pi (x), i = 0, 1, 2 . . . , orthonormiert bezglich W (x) auf I, wenn gilt u
b

dx pi (x)pj (x)W (x) = ij .


a

(2.52)

Die Abszissen xi sind die Nullstellen von pn (x), die Gewichte sind gegeben durch wi = [pn1 (xi )pn (xi )]
1

(2.53)

Die Gau-Integration erfolgt also bei vorgegebener Gewichtsfunktion W (x) und Intervall I in zwei Stufen: 1. Bestimmung der zu W (x) assoziierten orthonormalen Polynome pi (x); 2. Wahl von n, Bestimmung der Nullstellen von pn (x) und Berechnung der Gewichte wi . Abschlieend wird die Summe Gl. 2.51 berechnet. Fr spezielle Gewichtsfunktionen W (x) sind die orthogonalen Polynome bekannt, u z.B. W (x) 1 ex 2 ex x , > 1 I [1, 1] [0, ] [, ] [1, 1] Polynom Pn (x) . . . Legendre-Polynome Ln (x) . . . Laguerre-Polynome Hn (x) . . . Hermite-Polynome ,0 P2n . . . Jakobi-Polynome

Kapitel 3 Zufallszahlen
Die moderne Physik hat ein grundlegendes Uberdenken elementarer Sttzen der klasu sischen Philosophie bewirkt, insbesondere des Kausalittsprinzips. Als Physiker akzepa tieren wir gewisse quantenmechanische Phnomene als statistisch im Sinne der prina zipiellen Unvorhersagbarkeit des Einzelereignisses. Ein Beispiel ist die Ungewissheit des genauen Zeitpunkts der Relaxation eines angeregten Atoms oder eines radioaktiven Zerfallsakts, die sich im Experiment mit einem einfachen Geigerzhler anschaulich a zeigen lsst: die Zeitabstnde aufeinanderfolgender ticks sind im Einzelfall prinzipiell a a unvorhersehbar und zufllig, sie gehorchen aber statistischen Gesetzmigkeiten. Wir a a denieren wahre Zufallszahlen als Zahlenfolgen, deren Einzelwerte im physikalischen Sinn prinzipiell unvorhersehbar sind, deren Hugkeitsverteilung und statistische Era wartungswerte aber physikalischen Gesetzmigkeiten folgen. Mathematisch formuliert a klingt das so: . . . ein k-Tupel von Zahlen, das mit der statistischen Hypothese in Ein klang steht, eine Realisierung eines zuflliges Vektors mit unabhngigen, identisch nach a a einer Verteilungsfunktion v verteilten Komponenten zu sein, nennt man ein k-Tupel von nach v verteilten Zufallszahlen.[5]. Zuflle nennt man in der Natur, was beim Menschen Freiheit heien wrde. (Goethe, a u 1811) Viele Gren, die landlug als statistisch angesehen werden, lassen sich auf prino a zipiell determinierte Vorgnge zurckfhren, die jedoch entweder aus praktischen a u u Grnden nicht im Detail einzeln verfolgt werden oder aber grundstzlich unzugngu a a lich sind, wie z.B. in chaotische Vorgngen, wo die Anfangsbedingungen einer Zua standsnderung nicht vollstndig und ausreichend genau bestimmbar sind. Beispiele a a sind viele Messfehler oder die Trajektorien eines Einzelmolekls im Gas. Wenn daru aus resultierende Zahlenfolgen den Gesetzmigkeiten der Folge wahrer Zufallszahlen a gehorchen, heien sie (experimentelle) Pseudozufallszahlen. Analog sind (algorithmische) Pseudozufallszahlen Zahlenfolgen, die aus sorgfltig entwickelten Algorithmen a gewonnen werden. Algorithmen fr Pseudozufallszahlen und ihre Anwendung sind Geu genstand der folgenden Ausfhrungen [6]. u 23

24

KAPITEL 3. ZUFALLSZAHLEN

3.1
3.1.1

Generierung von Zufallszahlen


Generierung wahrer Zufallszahlen

Manche Computer sind mit einem physikalischen Zufallszahlengenerator ausgestattet, der aus dem Rauschen einer Widerstandsmessung oder mithilfe einer radioaktiven Quelle eine zufllige Bitfolge bestimmen. Leichter zugnglich ist die (Tona a )Aufnahmefunktion vieler Computer, die in Abwesenheit eines Eingangssignals ebenfalls ein zuflliges Signal produziert, das in eine Sequenz echter Zufallszahlen umgea wandelt werden kann.

3.1.2

Pseudozufallszahlen

Lineare Kongruenz Methode nach D.H. Lehmer, 1949 (Linear Congruential Generator). Sie liegt den meisten Routineanwendungen zu Grunde und ist Basis vieler Bibliotheksfunktionen. Ihr Kern ist die Rekursionsvorschrift ai+1 = (ai b + c) modm , (3.1)

die eine Folge von natrlichen Pseudozufallszahlen a1 , a2 , a3 , . . . liefert. u Die Parameter b, c sind geeignet gewhlte natrliche Zahlen. Der Startwert a0 a u ist eine beliebige natrliche Zahl im Bereich [0, m 1]. Oft wird c = 0 (bei passenden u Werten fr b und m) verwendet. u Beispiel: m = 32, b = 7, c = 1, a0 = 0 (das sind einfache Demo-Parameter. Empfohlene Parameter fr reale Anwendungen: siehe Tabelle 3.1): u a1 = (0 7 + 1) a2 = (1 7 + 1) a3 = (8 7 + 1) mod 32 = 1%32 = 1 mod 32 = 8%32 = 8 mod 32 = 57%32 = 25... (3.2)

Wie man sieht, liegen die so gewonnenen Zufallszahlen im Bereich (0, m 1). Will man groe Zufallszahlen erzeugen, muss m gro sein, was nur bei entsprechend groen Werten von (ai b + c) mglich ist. Hier besteht das Problem darin, dass dieser Zwio schenwert maschinenintern durch die grte darstellbare Integerzahl begrenzt ist und o die Gefahr eines Speicherberlaufs besteht (overow). Dieser ist schwer erkennbar, weil u keine Fehlermeldungen oder Warnungen erzeugt werden und mit den niedrigstelligen (least signicant) Bits weitergerechnet wird. Abhilfe durch geeignete Algorithmen ist mglich. o Die von der linearen Kongruenzmethode gelieferten Zahlenfolgen sind grundstzlich a periodisch. Bei schlechter Parameterwahl ist die Periode sehr kurz und das Verfahren mit diesen Parametern unbrauchbar, z.B. a0 = 0, b = 19, c = 1, m = 381 = 0, 1, 20, 0, 1, 20, ... Ein anderes Beispiel fr eine schlechte Parameterwahl ist a0 = u 8 10 , a = 31415821, b = 1, m = 1234567. Damit ergibt sich die Folge 35884508, 80001069,

3.1. GENERIERUNG VON ZUFALLSZAHLEN overow bei 220 222 222 223 223 223 224 224 224 225 225 225 225 225 2 226 226 227
26

25 m 121500 259200 117128 121500 312500 145800 175000 233280 244944 139968 214326 714025 134456 259200 233280 714025 b 1021 421 1277 2041 741 3661 2661 1861 1597 3877 3613 1366 8121 7141 9301 4096 c 25673 54773 24749 25673 66037 30809 36979 49297 51749 29573 45289 150889 28411 54773 49297 150889

m 6075 7875 7875 6075 6655 11979 14406 29282 53125 12960 14000 21870 31104 139968 29282 81000 134456 86436

b 106 211 421 1366 936 430 967 419 171 1741 1541 1291 625 205 1255 421 281 1093

c 1283 1663 1663 1283 1399 2531 3041 6173 11213 2731 2957 4621 6571 29573 6173 17117 28411 18257

overow bei 227 227 228 228 228 229 229 229 229 230 230 230 231 231 232 232

Tabelle 3.1: Parameter fr die lineare Kongruenzmethode (aus: Numerical Recipies ) u

63512650, 43635651, 1034472, 87181513, 6917174, 209855, 67115956, 59939877, . . . , bei der die letzte Stelle jeweils um 1 wchst. Die Ermittlung guter Parameterstze a a ist aufwndig, und es sollten nur erprobte Algorithmen und Parameterkombinationen a eingesetzt werden.

3.1.3

Andere Methoden

Kombinationsmethoden verwenden Kombinationen von Zufallszahlen verschiedener Generatoren. Mitunter knnen damit sehr groe Periodenlngen erzielt o a werden. Zum unten angefhrten non-linear additive feedback random number geu nerator siehe die Dokumentation in Linux. Ausfhrliche Beschreibungen von Alu gorithmen nden sich u.a. in [1, 6]. Fibonacci-Generator: an+1 = (an + an1 ) mod m von Neumann Generator ( Quadratmittengenerator): Man quadriert eine Zahl, schneidet aus der Mitte der Ziernfolge eine Zahl heraus, die man wieder quadriert, usw.).

26

KAPITEL 3. ZUFALLSZAHLEN

3.1.4

Bibliotheksfunktionen

In ANSI-C werden die Funktionen int rand() [in Linux/GNU oft long rand()] und srand() verwendet (include math.h). Sie beruhen hug auf der linearen Kongrua enzmethode. Der maximale Wert der darstellbaren Zufallszahl ist durch die systemdenierte Makro-Variable RAND MAX gegeben; sie ist oft gleich INT MAX (oder LONG MAX, fr long rand()). Die ANSI-Norm verlangt ein RAND MAX von lediglich 32767, was u fr technisch-wissenschaftliche Anwendungen vllig unzureichend ist. Wird die lineau o re Kongruenzmethode verwendet, entspricht RAND MAX dem Parameter m. Die grte o erreichbare Zufallszahl ist daher RAND MAX-1, die kleinste Null. Die oben erwhnte Unzulnglichkeit des Mindeststandards in der ANSI-Norm a a hat in der Unix-/Linux-Welt zur Implementierung von alternativen Funktionen (z.B. dem non-linear additive feedback random number generator) gefhrt. Statt ran() u und srand() werden random() und srandom() eingesetzt (relativ groe Periode von (16 (231 1)), sowie die Hilfsfunktionen initstate() und setstate(). Hier besteht in der Qualitt der Zufallszahlen kein Unterschied zwischen low bytes und high bytes. a In FORTRAN77 sieht der Standard keinen intrinsischen Zufallszahlengenerator vor, allerdings gibt es eine Vielzahl frei erhltlicher Bibliotheken mit Zufallszahlengeneratoa ren. Unter Linux sind - compilerabhngig - fr FORTRAN77 oft die gleichen Generaa u toren wie unter C verfgbar. Der Fortran2003-Standard deniert die Routinen RAND, u IRAND und RANDOM NUMBER samt der dazugehrigen Initialisierungsroutinen SRAND bzw. o RANDOM SEED). Fr komplexere Anwendungen, z.B. Monte-Carlo Methoden, sind mitunter auch u gute Standard-Bibliotheksfunktionen nicht ausreichend, und eine sorgfltige Vorarbeit a ist unabhngig von der gewhlten Programmiersprache unerlsslich. a a a Anfangswerte Die Funktion srand(int/long Anfangswert) ist die seed-Funktion, die im Rahmen der Initialisierungen (Programmstart) den Anfangswert der Zufallsfolge festlegt, also das a0 in der oben verwendeten Bezeichnungsweise. Vorsicht: Wenn im Code keine Vorkehrungen getroen werden, luft ein Programm immer mit der gleichen Zua fallszahlenfolge ab. Dieses Verhalten kann zwar whrend der Programmentwicklung a wnschenswert sein, wird aber ein zuflliger Anfangswert gewnscht, bietet sich z.B. u a u die Funktion time(NULL) an, die als Rckgabewert die seit dem 1.1.1970, 0.00 Uhr u (Unix-Urknall) vergangene Sekundenanzahl liefert. srand() setzt eine globale Systemvariable und wirkt daher auf alle rand()-Aufrufe im Programm unabhngig von a ihrer Position im Code.

3.2

Hugkeitsverteilungen a

Die meisten Standardgeneratoren (und Bibliotheksfunktionen) liefern gleichverteilte Zufallszahlen, d.h. jede Integerzahl (oder jedes beliebige Sub-Intervall bei oating point Zahlen) tritt mit gleicher Wahrscheinlichkeit und damit nherungsweise gleich hug a a

3.2. HAUFIGKEITSVERTEILUNGEN

27

auf. Manchmal will man aber ungleichverteilte Zahlenfolgen generieren, deren Werte gem einer bestimmten Hugkeitsverteilung auftreten, z.B. einer Gauverteilung, a a Exponentialverteilung, logarithmischen Verteilung, dem Planckschen Strahlungsgesetz, einer eigenen Vorschrift folgend, usw.

3.2.1

Zuruckweisungsmethode

Diese Methode ist allgemein anwendbar und leicht zu implementieren, mitunter aber inezient. Die vorgegebene Verteilungsfunktion y = v(x) sei im Intervall A x B anzuwenden und habe darin einen maximalen Funktionswert ymax . Nun werden zwei unabhngige, gleichverteilte Zufallszahlen R1 und R2 im Intervall (0, Rmax ) generiert. a Die erste wird auf das Intervall (A, B) abgebildet und whlt darin einen zuflligen a a x-Wert aus: xR1 = A + R1 (B A)/(Rmax ). Nun wird der Funktionswert an dieser Stelle bestimmt: v(xR1 ). Dann wird R2 auf den Bereich der Funktionswerte von v(x), also (0, ymax ) abgebildet und geprft, ob R2 /Rmax < v(xR1 )/ymax ist. Bildlich entspricht das der u Frage, ob der (auf ymax normierte) Zufallswert unterhalb des Funktionsgraphen, also unter v(xR1 ) liegt oder darber. u Gegebenenfalls wird R1 als gltiger Wert akzeptiert. Andernfalls, also wenn u R2 /Rmax > v(xR1 )/ymax ist, wird der gesamte Schritt verworfen. Es fhrt also nicht jeder Schritt zum Erfolg, insbesondere ist die Methode dann u a uerst inezient, wenn v(x) nur eine lokale Spitze hat und uberall sonst sehr klein ist, weil dann fast jeder Schritt verworfen werden muss. Eine mgliche Verbesserung o fr solche Flle besteht darin, eine Funktion V (x) zu suchen, deren Werte im Intervall u a A x B leicht berechenbar sind und die eine mglichst eng anliegende Hlle um o u v(x) bildet: an jeder Stelle mu aber V (x) v(x) sein. An die Stelle des Vergleichs R2 /Rmax < v(xR1 )/ymax tritt der Vergleich R2 /Rmax < v(xR1 )/V (xR1 ). Die Funktion V (x) kann auch stckweise zusammengesetzt werden und braucht lediglich eindeutig u berechenbar zu sein; sie muss insbesondere nicht stetig sein.

3.2.2

Transformationsmethode

Hier wird versucht, jene Funktion f (R) von Zufallszahlen R explizit zu nden, mit der die Werte xi = f (Ri ) einer vorgegebenen Wahrscheinlichkeitsdichte (Hugkeitsverteia lung) v(x) auftreten. Beispielsweise liefern gauverteilte Zufallsfolgen mit 1 (x x0 )2 exp v(x) = 2 2 (3.3)

bevorzugt Werte x nahe x0 . Es ist v(x)dx die Wahrscheinlichkeit fr das Auftreten einer u Zufallszahl im Intervall (x, x + dx) und (Normierung der Gesamtwahrscheinlichkeit auf

28 1):
x=+

KAPITEL 3. ZUFALLSZAHLEN

x=

1 v(x)dx = 2

x=+

exp
x=

(x x0 )2 2

=1

(3.4)

Analoges gilt fr eine Wahrscheinlichkeitsdichte (Hugkeitsverteilung) Z(R) von u a gleichverteilten Zufallszahlen R, die von R unabhngig ist, fr die also Z(R) = const = a u 1. Nach einer Transformation Z(R) v(x) mit Hilfe von x = f (R) mu jede Wahrscheinlichkeit Z(R)dR einer Wahrscheinlichkeit v(x)dx entsprechen, und es muss in jedem Intervall Z(R)dR = v(x)dx v(x) = Z(R) sein. Mit Z(R) = 1 wird dR = v(x) R = dx v(x)dx = W (x) x = W 1 (R) (3.6) dR = f (R) dx (3.5)

Die praktische Anwendbarkeit der Transformationsmethode hngt davon ab, wie leicht a W 1 (R) berechenbar oder in einem Computeralgorithmus (eventuell nherungsweise) a darstellbar ist.

3.2.3

Poissonverteilte Zufallszahlen und Exponentialverteilung

Die Poissonverteilung P (n) beschreibt die Wahrscheinlichkeit fr das Auftreten von u n zufallsbedingten Ereignissen in einem dimensionslosen Intervall (interpretierbar als Zeit, Strecke, Raum, auch das Auftreten von x Fehlern in einer Produktionscharge, usw.). Sie hat einen einzigen Parameter, , der gleichzeitig Mittelwert und Standardabweichung darstellt und eine Rate (mittlere Anzahl von Ereignissen in einem Intervall) angibt: n (3.7) Pn (n) = e , n . n! n sind ganze Zahlen. Fr groe Werte (>10) von wird die Poissonverteilung nheu a rungsweise zur Gauverteilung mit 2 = . Ersetzt man fr physikalische Anwenu dungen durch ein Produkt aus (Mittelwert/Einheitsintervall) Intervallgre, z.B. t o [s1 ] (Ereignisse pro Zeiteinheit, Rate) Zeitintervallgre t [s], ist t t wieder eine o dimensionslose Zahl und man erhlt a Px (x) = (t t)x t t e . x! (3.8)

Mit der Poissonverteilung eng verknpft ist die Exponentialverteilung, welche die u dimensionslose Intervalllnge (beispielsweise als Wartezeit interpretierbar) bis zum Eina treten des nchsten (ersten) Ereignisses angibt. Whlt man wieder Zeitintervalle, muss a a

3.2. HAUFIGKEITSVERTEILUNGEN man dazu die obige Gleichung nach der Zeit dierenzieren und erhlt a Pt (t) = t et t .

29

(3.9)

Der Erwartungswert und die Standardabweichung sind beide gleich 1/ [s]. Fr die Exu ponentialverteilung lassen sich das Integral W (t) und die Umkehrfunktion W 1 leicht berechnen (Transformationsmethode): W (t) = R = t = W 1 (1 R) = t et t dt = 1 et t , 1 1 ln(1 R) ln R . t t (3.10)

Im letzten Schritt wurde die Tatsache verwendet, dass R und 1 R aquivalente, gleich verteilte, auf 1 normierte Zufallszahlenfolgen sind. Gibt man eine mittlere Ereignisrate t vor, z.B. 100 radioaktive Zerflle pro Sekunde, bilden die Werte ti = 0.01 ln(Ri ) a eine Folge von exponentialverteilten Wartezeiten, die aus gleichverteilten Zufallszahlen Ri berechnet werden kann.

3.2.4

Gauverteilte Zufallzahlen
2 1 v(x) = ex /2 . 2

Gauverteilte Zufallzahlen folgen der Verteilungsfunktion (3.11)

Es ist keine analytische Darstellung der in der Transformationsmethode denierten Funktionen W und W 1 bekannt, aber es gibt einige eziente Algorithmen: Box-Muller Algorithmus: (ohne Beweis) Generiere zwei gleichverteilte, auf 1 normierte Zufallszahlen R1 und R2 . Berechne = 2R1 und = 2 ln(R2 ) Berechne X1 = cos und X2 = sin X1 und X2 sind die gesuchten gauverteilten Zufallszahlen. Es werden also Paare von gleichverteilten Zufallszahlen bentigt, um Paare von gauverteilten Zufallso zahlen zu erhalten. Polarmethode von Marsaglia: (ohne Beweis) Generiere zwei gleichverteilte, auf 1 normierte Zufallszahlen R1 und R2 . Berechne W 2 = S 2 + T 2 > 1. Abbrechen/Neubeginn, wenn W 2 > 1 Berechne X1 = (S/W ) (2 ln(W 2 )) und X2 = (T /W ) (2 ln(W 2 )). Setze S = 2R1 1 und T = 2R2 1

30

KAPITEL 3. ZUFALLSZAHLEN X1 und X2 sind die gesuchten gauverteilten Zufallszahlen. Wiederum fhrt ein u Paar von gleichverteilten Zufallszahlen zu einem Paar gauverteilter Zufallszahlen. Da es sich um eine Version der Verwerfungsmethode handelt, ergibt nicht jede Kombination von Werten R1 und R2 ein Paar X1 und X2 . Die Polarmethode ist gegenber dem Box-Muller-Algorithmus vorteilhaft, wenn die Berechnung u von Winkelfunktionen zu zeitaufwndig ist. a

3.2.5

Auf benutzerdenierte Intervalle beschrnkte (ganzzaha lige) Zufallszahlen

Die mit Bibliotheksfunktionen generierten, ganzzahligen Zufallszahlen liegen im Bereich von 0 und einem Maximalwert, der z.B. in C fr rand() durch das Mau a kro RAND MAX gegeben ist. Will man den Bereich einschrnken (etwa auf die Werte (1, 2, 3, 4, 5, 6) zur Simulation eines Wrfels), liegt eine Modulo-Division nahe: u 1 + rand()%m mit m = 6. Die Methode hat zwei Nachteile: erstens beruht das Ergebnis auf den least signicant bits, was, wie erwhnt, bei manchen Generatoren una vorteilhaft ist. Zweitens ist im allgemeinen der interessierende Bereich (mit Startwert 0 : 0, 1, 2, 3, 4, 5) nicht ganzzahlig in RAND MAX enthalten. Es gibt also einige Zahlen, die ein Mal ofter vorkommen als andere, nmlich die zwischen m (int)(RAND MAX/m) a und RAND MAX. Im vorliegenden Fall ist das nicht kritisch, weil RAND MAX/5 sehr gro im Vergleich zum gewhlten Bereich der Zufallszahlen ist. Ist aber entweder RAND MAX a klein oder der gewnschte Bereich gro, kann das Probleme ergeben. Man muss koru rekterweise alle Zufallszahlen R m (int)(RAND MAX/m) verwerfen.

3.2.6

Beliebig normierte (Gleitkomma-) Zufallszahlen

Auf 1 normierte Zufallszahlen Die ganzzahligen Zufallszahlen liegen im Bereich von 0 und RAND MAX. Die Normierung auf 1 erfolgt durch (double) rand()/(RAND MAX+1.0) oder (double) rand()/(double)(RAND MAX)) je nachdem, ob RAND MAX die grtmgliche Zufallszahl o o miteinschliet oder nicht und ob im Ergebnis der Wert 1 inkludiert sein soll (letzteres meist nicht). Man beachte den Dezimalpunkt nach 1., der den Ausdruck zu einer double Gre macht. Weglassen erzeugt mglicherweise eine kleine Katastrophe, weil o o RAND MAX oft gleich LONG MAX ist und RAND MAX+1 dann durch overow 2147483648 ergibt! Andere Normierungen Grundstzlich gilt das oben Gesagte. Die Linux-Dokumentation empehlt fr a u den non-linear additive feedback random number generator mit Bezug auf die Numerical recipies [1] als Beispiel fr die Normierung auf 10 j=1+(int) u (10.0*rand()/(RAND MAX+1.0)); Beachten Sie, dass sowohl der Token 1.0 als auch

3.2. HAUFIGKEITSVERTEILUNGEN

31

der Token 10.0 die Berechnung des inneren Ausdrucks (Klammer) mit double Przision a bewirken. Das double-Zwischenergebnis wird in ein int konvertiert.

32

KAPITEL 3. ZUFALLSZAHLEN

Kapitel 4 Nullstellenbestimmung und 2-Anpassung


4.1 Nullstellenbestimmung

In Kapitel 2 wurde die Frage der numerischen Auswertung von Integralen behandelt. Dabei hat sich im Falle der Gau-Quadratur
b a n

f (x) dx

wi f (xi )
i=1

(4.1)

die Notwendigkeit der Bestimmung der Nullstellen der den Berechnungen zugrundeliegenden Polynome ergeben. Wir werden uns daher diesem numerischen Problem zuwenden und die gngigsten a Methoden vorstellen. Die Vorgangsweise wird in jedem Fall sehr hnlich sein und kann a wie folgt zusammengefasst werden: 1. nde einen Bereich, der (zumindest) eine Nullstelle enthlt a 2. whle eine geeignete Methode der Nullstellenbestimmung. a

4.1.1

Bracketing und Bisektionsverfahren

Die uberwiegende Zahl von Nullstellen lsst sich durch den Vorzeichenwechsel der a Funktion f (x) an x0 charakterisieren. Ausnahmen bilden komplexe Nullstellen (z.B. x2 + a = 0, a > 0), doppelt zu zhlende Nullstellen (z.B. x2 = 0) oder Singularitten a a der Form f (x) = 1/g(x) mit ungerader Funktion g(x). Es gibt keine Methode, die fr u eine unbekannte Funktion f(x) mit Sicherheit eine Nullstelle nden knnte. Es ist daher o ratsam, sich vor Beginn des Programmierens mit Form und Art der zu untersuchenden Funktionen vertraut zu machen. 33

34

KAPITEL 4. NULLSTELLENBESTIMMUNG UND 2 -ANPASSUNG

Den Vorzeichenwechsel von f (x) macht man sich beim Bracketing zunutze, indem man, ausgehend von einem vorgegebenen Ausgangspunkt xi , durch sukzessive Vergrerung des Intervalls [xi , xf ] das erste xf bestimmt, fr das die Bedingung o u f (xi ) f (xf ) 0 (4.2)

erfllt ist. Anschlieend kann man unter Wahrung der Bedingung 4.2 das Intervall wieu der verkleinern und dadurch die (eine der) eingeschlossene(n) Nullstelle(n) auf beliebige Genauigkeit bestimmen (Bisektionsverfahren).

4.1.2

Newton-Raphson-Verfahren

Ist die analytische Form der ersten Ableitung von f (x) bekannt, so empehlt sich die Verwendung des Newton-Raphson-Verfahrens. Es basiert auf der Taylorreihenentwicklung von f (x) in der Nhe der Nullstelle x0 = x + x a f (x + x) f (x) + f (x)x + f (x) 2 x + . . . . 2 (4.3)

Wegen f (x + x) = 0 folgt (unter Vernachlssigung aller Terme O(x2 )) x = a f (x)/f (x). Die Iterationsvorschrift fr xi lautet daher u xi+1 = xi f (xi ) . f (xi ) (4.4)

Das Newton-Raphson-Verfahren konvergiert quadratisch gegen die Nullstelle, d.h., dass sich mit jedem Iterationsschritt die Zahl der signikanten Stellen verdoppelt. Ist die analytische Form der ersten Ableitung von f (x) nicht bekannt und muss durch ein Dierenzenverfahren bestimmt werden, verschlechtert sich die Ezienz dramatisch. In diesem Fall empehlt sich die Verwendung anderer Verfahren, die ohne Berechnung der Ableitung auskommen. Nachteil des Newton-Raphson-Verfahrens: Da in Gleichung 4.3 alle Terme O(x2 ) vernachlssigt werden, kann es bei Startwerten, die weit von der Nullstelle entfernt sind, a zu unvorhersagbaren Ergebnissen kommen. Liegen weiters Extrema von f (x) zwischen dem Startwert xi und der Nullstelle x0 vor, so sind ebenfalls numerische Instabilitten a (wegen f (x) 0) mglich. o

4.1.3

Sekanten-Verfahren

Drei eng miteinander verwandte Verfahren begngen sich mit der Auswertung der u Funktion an zwei bzw. drei Werten fr x, um eine iterative Annherung an x0 zu u a nden. Das Sekanten-Verfahren und die regula-falsi-Methode nhern f (x) in der Umgebung a der Nullstelle durch die Sekante deniert durch die Funktionswerte an den Grenzen von [xi1 , xi ] an. Der Schnittpunkt der Sekante mit der x-Achse deniert den neuen

4.1. NULLSTELLENBESTIMMUNG

35

Nherungswert xi+1 , der entweder den Grenzwert xi1 (Sekantenverfahren) ersetzt oder a das Suchintervall so umdeniert, dass Bedingung 4.2 erfllt bleibt (regula-falsi). u Die Konvergenz von regula-falsi ist oft besser als linear, fhrt aber sicher zum Eru folg. Im Sekantenverfahren muss die Mglichkeit der Divergenz aufgrund des lokalen o Verhaltens der Funktion f (x) gegen die bessere Konvergenz ( 1.618 ) abgewogen werden. Eine interssante Variante der regula-falsi-Methode, die Sicherheit und Schnelligkeit ( 2 ) verbindet, ist die Nullstellenbestimmung nach Ridder. Zunchst wird f nicht a nur an den Stellen xi1 und xi sondern auch in der Mitte des Intervalls xm = (xi1 + xi )/2 berechnet. Nach Abspalten eines Exponentialfaktors (fr Details der Ableitung siehe z.B. [1]) u erhlt man fr den neuen Wert xi+1 a u xi+1 = xm + (xm xi1 ) sgn[f (xi1 ) f (xi )]f (xm ) f (xm )2 f (xi1 )f (xi ) . (4.5)

4.1.4

Nullstellenbestimmung nach Brent

Garantierte Konvergenz bei gutem Konvergenzverhalten bietet das Verfahren nach Brent, das, grob gesprochen, die Kombination eines leicht vernderten Sekantenvera fahrens und eingeschobener Bisektionsschritte darstellt. Ausgehend von den drei Zahlenpaaren [xa , f (xa )], [xb , f (xb )] und [xc , f (xc )], wobei xb die bisher beste Annherung a an x0 sei, errechnet man den neuen Nherungswert durch a x = xb + S[T (R T )(xc xb ) (1 R)(xb xa )] . (T 1)(R 1)(S 1) (4.6)

Die Hilfsgren S, R und T sind durch o S = f (xb )/f (xa ), R = f (xb )/f (xc ), T = f (xa )/f (xc ) (4.7)

bestimmt. Ist man mit dem Iterationsergebnis nicht zufrieden, ersetzt man es durch das Resultat eines Bisektionsschrittes.

4.1.5

Nullstellen von Polynomen

Bekannterweise haben Polynome vom Grad n ebensoviele Nullstellen und knnen als o Produkt pn (x) = (x x1 )(x x2 ) . . . (x xn ), xn (4.8) angeschrieben werden. Da komplexe Nullstellen paarweise auftreten (x0 = a ib), ist leicht einsichtig, dass Polynome ungeraden Grades zumindest eine reelle Nullstelle aufweisen. Nachdem diese abgespalten wurde (Polynomdivision, siehe unten), muss die Nullstellensuche auf die komplexe Zahlenebene ausgedehnt werden.

36

KAPITEL 4. NULLSTELLENBESTIMMUNG UND 2 -ANPASSUNG

Bei Mullers Methode handelt es sich um eine komplexe Verallgemeinerung der Sekantenmethode, wobei aber eine quadratische statt der linearen Interpolation angewandt wird. Ausgehend von drei x-Werten (knnen aquidistant auf der reellen Achse o liegen) kommt folgende Iterationsformel zur Anwendung: xi+1 = xi (xi xi1 ) wobei die Hilfsgrssen q, A, B und C durch o xi xi1 xi1 xi2 A = qPn (xi ) q(1 + q)Pn (xi1 ) + q 2 Pn (xi2 ) B = (2q + 1)Pn (xi ) (1 + q)2 Pn (xi1 ) + q 2 Pn (xi2 ) C = (1 + q)Pn (xi ) q = 2C , B 2 4AC (4.9)

(4.10)

gegeben sind. Das Vorzeichen in Gleichung 4.9 wird so gewhlt, dass der Betrag des a Nenners maximal wird. Ein weiteres, von Laguerre entwickeltes Verfahren beruht auf einer gewagten Abschtzung fr den Abstand der tatschlichen Nullstellen vom derzeit untersuchten a u a Punkt x. Zunchst deniert man wiederum zwei Hilfsgrssen a o d ln |pn (x)| = dx d ln |pn (x)| = dx2
2 n

i=1 n

p 1 = n = G, x xi pn 1 = (x xi )2 pn pn

(4.11)
2

i=1

p n =H. pn

(4.12)

Unter der Annahme, dass die Nullstelle x1 einen Abstand a, alle anderen Nullstellen aber Abstand b von x haben, knnen die Ausdrcke fr G und H wesentlich vereinfacht o u u werden 1 n1 + = G, a b 1 n1 + 2 = H. 2 a b Damit ergibt sich fr a u a= G n (n 1)(nH G2 ) (4.13) (4.14)

(4.15)

was zum neuen Iterationswert xi+1 = xi a fhrt. Auch in Gl. 4.15 wird der Nenner u maximiert. Ahnlich wie das Bisektionsverfahren konvergiert das Laguerre-Verfahren immer zu einer der reellen Nullstellen. Fr komplexe Nullstellen ist ein Misserfolg sehr u unwahrscheinlich.

4.1. NULLSTELLENBESTIMMUNG Aunden mehrerer/aller Nullstellen von Polynomen

37

Eine einfache Methode, die fr reelle Nullstellen funktioniert, besteht darin, dass man u das zu untersuchende Intervall in n Unterintervalle teilt und diese auf einen Vorzeichenwechsel der Funktion innerhalb deren Grenzen untersucht. Danach werden durch eine der oben beschriebenen Methoden in den gefundenen Unterintervallen die Nullstellen von f (x) bestimmt. Aus Polynomen knnen Nullstellen auch abdividiert werden. Dadurch wird ein Polyo nom geringeren Grades erzeugt und die Prozedur wiederholt. Im Falle eines komplexen Paares von Nullstellen dividiert man durch [x (a + ib)][x (a ib)] = x2 2ax + (a2 + b2 ). (4.16)

Dabei ist zu beachten, dass die gefundenen Nullstellen nur als gute Nherung an die a tatschlichen Nullstellen des Polynoms betrachtet werden sollten, da sich numerische a Fehler mit jeder Division aufaddieren. Alle gefundenen Nullstellen sollten daher nach Beendigung der Routine aufpoliert werden. Einschub: einfache algebraische Manipulation von Polynomen: Fr ein Polynom vom Grad n, das durch pn = n ci xi gegeben ist, fhrt man u u i=0 eine Multiplikation mit dem Faktor (x a) durch einen Programmteil durch, der 1. cn zu cn+1 macht und 2. eine Zeile enthlt, die den neuen Koezienten cj durch cj1 cj a berechnet a (von j = n beginnend). Will man das Polynom pn durch (x a) dividieren, sind folgende Rechenschritte erforderlich: 1. cn in einem Zwischenspeicher ZS1 ablegen und cn = 0 setzen (der Grad des Polynoms wird um eins erniedrigt) 2. von j = n1 beginnend cj in ZS2 ablegen und auf cj = ZS1 setzen. Danach wird ZS1 durch ZS1 = ZS2 + ZS1 a neu berechnet. Der Vollstndigkeit halber sei noch die Mglichkeit erwhnt, die Nullstellen eines a o a Polynoms durch die Berechnung der Eigenwerte einer Matrix A zu bestimmen. Sie ist deniert durch die Gleichung Pn (x) = det[A x] . (4.17)

Fr Polynome hohen Grades und auf fr lineare Algebra optimierten Computern kann u u sich dies als die schnellste und stabilste Methode herausstellen.

38

KAPITEL 4. NULLSTELLENBESTIMMUNG UND 2 -ANPASSUNG

4.2

2-Anpassung

Bevor wir zur Beschreibung der Anpassungsmethoden kommen, sollten ein paar Worte darber gesagt werden, worum es bei einer Anpassung eigentlich geht. Es ist nicht u das Ziel einer Fitprozedur, durch eine Reihe von Datenpunkten eine mglichst glatte o Kurve zu legen, um die graphische Darstellung zu optimieren, sondern es handelt sich bei der 2 -Anpassung um eine Methode zu entscheiden, wie gut das physikalische Bild, das man sich von einem Prozess gemacht hat, die gemessene Realitt erklren kann. a a Eine Fitprozedur alleine kann Ihnen niemals eine Erklrung fr die gemessenen Daten a u liefern. Zwei Beispiele: Sie untersuchen den radioaktiven Zerfall einer Ihnen unbekannten Substanz. Da Sie wissen, dass Zerfallsprozesse durch eine abklingende Exponentialkurve beschrieben werden knnen, passen Sie eine Funktion der Form c et an Ihre o Datenpunkte an, ermitteln daraus z.B. die Zerfallsrate des Materials und bestimmen mithilfe einer Datensammlung das untersuchte Element. Sie haben eine Experiment durchgefhrt, fr dessen Ergebnis Ihnen zwei mgliche u u o Erklrungen einfallen. Ein Fit kann Ihnen die Wahl zwischen den beiden Modellen a erleichtern, kann Ihnen aber auch sagen, dass keines der beiden Modelle in der Lage ist, die gemessenen Daten zufriedenstellend zu erklren. a Hat man also einen Satz von N Datenpunkten (xi , yi ) gemessen und hat man die Vermutung, dass die Daten durch eine Funktion mit M Fitparametern y(x) = y(x; a1 . . . aM ) (4.18)

beschrieben werden knnen, so sollte die Fitprozedur 1. die Parameter ai , 2. eine o Abschtzung uber den Fehler jedes einzelnen Parameters und 3. ein statistisches Ma a fr die Qualitt der Fitfunktion liefern. Geben Sie sich niemals mit dem ersten Punkt u a alleine zufrieden, oftmals tuscht die graphische Darstellung das Auge uber die Una zulnglichkeit des zugrundegelegten Modells hinweg (eine geschickt gewhlte Darstela a lung der Daten hilft oft zu verschleiern, dass man keine Ahnung hat, was man gemessen oder gerechnet hat!). Selbstverstndlich sollte die Anzahl der Fitparameter mglichst a o gering sein, um den Wert eines Modells abschtzen zu knnen. Den leider oftmals a o begangenen Irrweg, ein fehlerhaftes Modell durch zustzliche Parameter ai zu retten, a sollten Sie tunlichst vermeiden. Deniert man als Ma fr die Abweichung u
N

2 =
i=1

yi y(xi ; a1 . . . aM ) i

(4.19)

wobei die Parameter i in Gl. 4.19 die individuelle Standardabweichungen zu jedem Messpunkt (xi , yi ) bedeuten, so besteht die Aufgabe in der Minimierung von 2 bezglich der Fitparameter ai . u

4.2. 2 -ANPASSUNG

39

Kennt man i nicht und muss/kann man von einer fr alle Datenpunkte identischen u Standardabweichung ausgehen, setzt man zunchst alle i auf eins, minimiert Gl. 4.19 a und errechnet aus dem Ergebnis mittels 2 =
N i=1 [yi

y(xi ; a1 . . . aM )]2 . N M

(4.20)

Numerisch gesehen geht es bei einer 2 -Anpassung darum, die Nullstellen der M Ableitungen von Gl. 4.19 nach den Fitparametern ak zu nden, also das Gleichungssystem N yi y(xi ) y(xi ; . . . ak . . .) 0= k = 1, . . . , M (4.21) i ak i=1 zu lsen. o Wir wollen uns hier auf Modelle beschrnken, die linear in den Fitparametern ai a sind, also Summen von Produkten der ai mit beliebigen Basisfunktionen Xi . Handelt es sich bei den Xi z.B. um Potenzen von x, tten wir unsere Daten an ein Polynom an, bei Xi = sin(i x) oder Xi = cos(i x) an eine harmonische Serie. Damit sieht unsere ursprngliche Gl. 4.19 nun folgendermaen aus: u
N

=
i=1

yi

M k=1

ak Xk (xi )

(4.22)

Deniert man das Problem durch Denition einer N -Zeilen M -Spalten Matrix A und eines Vektors b mit N Komponenten durch Aij = um, wird Gl. 4.22 zu 2 = |A a b|2 . (4.24) Setzt man weiters die Basisfunktionen Xi in Gl. 4.21 ein, fhrt dies auf das Gleichungsu system M N 1 yi aj Xj (xi ) Xk (xi ) k = 1, . . . , M (4.25) 0= 2 j=1 i=1 i das quivalent zu a AT A
M M

Xj (xi ) , i

bi =

yi i

(4.23)

aM = AT N bN M

(4.26)

ist. Die Lsung eines Gleichungssystems der Form Aa = c gehrt zu den Standardproo o blemen der linearen Algebra und kann getrost den optimierten Bibliotheksfunktionen uberlassen werden. Die Auswahl der geeigneten Routine hngt im wesentlichen davon a ab, welche Zahlenwerte die Matrixelemente Aij haben. Dabei ist fr die 2 -Anpassung u die Methode der singular value decomposition am wenigsten empndlich auf Rundungsfehler.

40

KAPITEL 4. NULLSTELLENBESTIMMUNG UND 2 -ANPASSUNG

Was die Abschtzung der Fehler der Fitparameter betrit, die wir zu Beginn als a Bedingung fr eine sinnvolle Fitprozedur gefordert hatten, so haben wir Glck. Sie u u fallen als Nebenprodukt der Berechnung an, denn die Varianzen der ai sind durch 2 (ai ) = Cii mit C = AT A
1

(4.27)

gegeben. Hat man das einmal akzeptiert, glaubt man auch, dass es sich bei den Nebendiagonalelementen Cij um die Kovarianzen zwischen ai und aj handelt. Der dritte Punkt unserer Liste war die Abschtzung der Gte des Fits. Sie wird als a u 2 2 -Wahrscheinlichkeitsfunktion Q( |) bezeichnet. Vereinfacht gesagt beschreibt sie die Wahrscheinlichkeit, dass man trotz eines richtigen Modells fr die Anpassung einen u 2 besseren Wert fr nden kann und sollte daher mglichst klein sein. Berechnet wird u o sie mithilfe der unvollstndigen -Funktion a Q(a, x) =
t a1 e t x t a1 e t 0

dt 1 = (a) dt

et ta1 dt ,

(4.28)

wobei fr a = (N M )/2 und fr x = 2 /2 einzusetzen sind. u u

4.2.1

Lineare Regression

gegeben ist. Fr diesen einfachen Fall ergibt sich fr die Funktion 2 sowie ihre Ableiu u tungen nach a und b 2 N 2 d = 0 = 2 N yj abxj , j=1 yj a bxj da j 2 = (4.30) N xj (yj abxj ) d2 j = 0 = 2 j=1 . j=1 db j Unter Verwendung der Hilfsgren o
N

Die einzige Anwendung der 2 -Anpassung, fr die man ublicherweise keine Bibliotheksu funktion verwendet, ist die Anpassung einer Geraden an Datenpunkte. D.h., dass die Fitfunktion durch y(x) = y(x; a, b) = a + b x (4.29)

S=
j=1

1 , Sx = 2 j

j=1

xj , Sx = 2 j

j=1

yj , Sxx = 2 j

j=1

x2 j und Sxy = 2 j

j=1

xj yj 2 j

berechnen. Gl. 4.31 vereinfacht sich weiter, wenn die Standardabweichungen j unbekannt sind und j = 1 gesetzt werden knnen. In diesem Fall ist S gleich der Anzahl o der Datenpunkte, S = N .

lassen sich die Koezienten a und b aus dem Gleichungssystem a = Sxx Sy Sx Sxy aS + bSx = Sy 2 SSxx Sx b = SSxy Sx Sy aSx + bSxx = Sxy SSxx S 2
x

(4.31)

Kapitel 5 Lineare Algebra


Im ersten Teil dieses Kapitels behandeln wir Methoden zur Lsung von linearen Gleio chungssystemen - eines der zentralen Probleme in der numerischen Mathematik. Im zweiten Teil des Kapitel lernen wir den iterativen Lanczos Algorithmus kennen, mit welchem Eigenwert und Eigenvektor des Grundzustandes einer hermiteschen Matrix berechnet werden knnen. o

5.1

Lineare Gleichungssysteme

wobei x und b Vektoren der Dimension N sind und A eine M N Matrix ist. Die Matrix A und der Vektor b werden als bekannt vorausgesetzt. Man muss nun die folgenden Flle unterscheiden: a M < N oder M = N, det A = 0 Das Gleichungssystem ist unterbestimmt, M = N, det A = 0 Das Gleichungssystem ist eindeutig lsbar, o M > N Das Gleichungssystem ist uberbestimmt, ausgenommen fr den Fall, u dass M N Gleichungen uber lineare Abhngigkeiten reduziert werden knnen. a o 41

In der numerischen Mathematik werden viele Probleme, z.B. die Interpolation von Funktionen, die Lsung von Dierentialgleichungen, die Lsung von Integralgleichuno o gen, etc., auf die Lsung eines linearen Gleichungssystem zurckgefhrt. Lineare Gleio u u chungssysteme sind mathematisch bestens untersucht und knnen unter vorgegebenen o (meist schwachen) Bedingungen gelst werden. Die Eigenschaften linearer Gleichungso systeme nden auch in der formalen Mathematik in vielen Beweisen ihre Anwendung. Ein lineares Gleichungssystem fr die Unbekannten x1 , x2 , . . . , xN ist von der Form u x1 b1 A11 A12 . . . A1N x2 A21 A22 . . . A2N x3 b2 (5.1) Ax = b . = . , . . . . . . . . . . . . . . . . bM AM 1 AM 2 . . . AM N xN

42

KAPITEL 5. LINEARE ALGEBRA

Im Folgenden beschrnken wir uns auf den Fall M = N , sodass A eine quadratische a Matrix ist. Ist nun det A = 0 so spricht man von einem singulren Gleichungssystem, a welches nicht eindeutig nach x aufgelst werden kann. Nichtsingulre Gleichungssysteo a me, d.h. det A = 0, knnen im Prinzip eindeutig gelst werden. Bei der numerischen o o Rechnung hat man aber Schwierigkeiten mit der Genauigkeiten zu erwarten, wenn det A sehr klein wird, bzw. wenn die Eigenwerte von A eine hohe Dynamik aufweisen, d.h., sich ihre Zahlenwerte uber viele Grenordnungen erstrecken. o Zur Lsung von linearen Gleichungssystemen gibt es je nach Form von A eine o Vielzahl spezieller Verfahren, welche in zwei Gruppen unterteilt werden knnen, o a direkte Verfahren, b iterative Verfahren. Direkte Verfahren liefern in endlich vielen Schritten das exakte Ergebnis, wenn man von Rundungsfehlern absieht. Bei iterativen Verfahren erreicht man das exakte Ergebnis erst nach unendlich vielen Schritten. Im vorliegenden Kapitel beschrnken wir a uns auf die Darstellung von zwei direkten Verfahren, und zwar (a) den Gauschen Eliminationsalgorithmus und (b) eine spezielle Methode fr tridiagonale Matrizen. u Bei den sogenannten iterativen Verfahren nhert man sich, ausgehend von einer a Startnherung, schrittweise der gesuchten Lsung an, bis ein festgelegtes Konvergenza o kriterium erreicht ist. Beispiele fr solche iterative Methoden sind das Jacobi- bzw. das u Gau-Seidel-Verfahren. Besonders bei dnnbesetzten Matrizen knnen diese Verfahren u o sehr ezient sein. Abschlieend sei noch erwhnt, dass die Verfahren zur Lsung eines linearen Gleia o chungssystems auch fr die Bestimmung der inversen Matrix A1 verwendet werden u knnen, wenn man die N Gleichungssysteme (i = 1, 2, . . . , N ) o 1i (A1 )1i A11 A12 . . . A1N A21 A22 . . . A2N (A1 )2i 2i (5.2) = . . . . . . . . . . . . . . . . . . N i (A1 )N i AN 1 AN 2 . . . AN N lst. o

5.1.1

Das Eliminationsverfahren von Gau

Der Algorithmus Beim Gauschen Eliminationsverfahren zur Lsung eines linearen Gleichungssystems o wird durch geeignete Vertauschung und Linearkombination von Zeilen des Gleichungssystems (5.2) die Matrix A schrittweise auf Dreiecksgestalt gebracht: r11 r12 . . . r1N c1 x1 0 r22 . . . r2N x2 c2 (5.3) . . . . . = . . . . . . . . . . . . . . cN xN 0 0 . . . rN N

5.1. LINEARE GLEICHUNGSSYSTEME

43

Die Bestimmung des Lsungsvektors x aus einem Gleichungssystem mit Dreiecksgestalt o ist einfach. Man erhlt: a 1 xi = rii
N

ci

ril xl
=i+1

, i = N, N 1, . . . , 1 .

(5.4)

Die Erzeugung eines aquivalenten linearen Gleichungssystems mit Dreiecksgestalt ist ein elementarer Prozess, welcher in N 1 Schritten leicht erreicht werden kann. Zur Illustration des Prozesses zur Umformung des Gleichungssystems betrachten wir den i-ten Schritt, A(i) x = c(i) = A(i+1) x = c(i+1) . (5.5) Hierbei ist c(i) der aus b nach i Schritten abgeleitete Vektor der rechten Seite von (5.2) und A(i) bis zur Zeile i bereits eine obere Dreiecksmatrix, d.h. (i) (i) (i) (i) (i) (i) a1i+1 . . . a1N a1i a11 a12 . . . a1i1 (i) (i) (i) (i) (i) a2i a2i+1 . . . a2N 0 a22 . . . a2i1 . . . . . ... . . . . . . 0 . . . . (i) (i) (i) (i) 0 . . . ai1i1 ai1i ai1i+1 . . . ai1N 0 A(i) = (5.6) (i) (i) (i) 0 aii+1 . . . aiN 0 ... 0 aii (i) (i) (i) 0 0 ... 0 ai+1i ai+1i+1 . . . ai+1N . . . . . . . . . . . . . . . . . . . . . . . . 0 0 ... 0 aN i
(i)

aN i+1

(i)

...

aN N .

(i)

Startpunkt ist A(1) = A und c(1) = b. Um die entsprechenden Umformungen des i-ten Schrittes (5.5) durchzufhren, sind drei Teilschritte erforderlich: u a) Suche eines geeigneten Pivotelementes rii . Hier wollen wir uns auf die Spalten-Pivotsuche beschrnken, d.h., man sucht das a (i) Element mit dem grten Absolutwert aus der i-ten Teilspalte aji , j = i, . . . , N . o (i) Sei dieses das Element der r-ten Zeile, dann setzt man den Pivot rii = ari . (i) Existiert kein nichtverschwindendes Element in der i-ten Teilspalte, d.h. aji = 0 j, j = i, . . . , N , so ist die Matrix A singulr. a b) Vertauschen der r-ten mit der i-ten Zeile in A(i) und c(i) . Bezeichnet man mit A(i) und (i) die Matrix A(i) und den Vektor c(i) nach Verc tauschen der Zeilen, so lautet nun das Gleichungssystem A(i) x = (i) . c c) Berechnen der Elemente von A(i+1) und c(i+1) . Die unteren N i Zeilen sind von der Neuberechnung betroen. Man zieht dabei von der m-ten Zeile ein Vielfaches der i-ten Zeile der Matrix A(i) ab, sodass (i+1) u das Matrixelement ami = 0 wird. Dies wird fr alle m = i + 1, i + 2, . . . , N durchgefhrt. u

44

KAPITEL 5. LINEARE ALGEBRA Die Matrixelemente der ersten i Zeilen bleiben unverndert, d.h., amn a (i) (i+1) (i) amn = rmn und cm = c fr alle m = 1, 2, . . . , i und n = 1, 2, . . . , N . u
(i+1)

Die Transformation der Matrixelemente der ubrigen Zeilen m = i + 1, i + 2, . . . , N erfolgt nach der Vorschrift a(i+1) = a(i) mi ain , mn mn mit mi a = mi rii
(i) (i)

n = 1, 2, . . . , N

(5.7)

fr alle m = i + 1, i + 2, . . . , N . u

(5.8)

Die Transformation der ubrigen Zeilen des Vektors c(i) erfolgt nach der Vor schrift c(i+1) = c(i) mi ci , m m
(i)

fr alle m = i + 1, i + 2, . . . , N . u

(5.9)

Nach N 1 Schritten ergibt sich fr A(N ) die gewnschte obere Dreiecksmatrix und der u u (N ) entsprechende Vektor c , sodass man mittels (5.4) den Lsungsvektor x des linearen o Gleichungssystems (5.2) erhlt. Wie man durch Abzhlen der erforderlichen Operatioa a nen in diesem Algorithmus sieht, erhht sich mit steigender Zahl N der Unbekannten o der Aufwand proportional zu N 3 . Betrachtet man nun den Algorithmus in seiner Gesamtheit, so stellt man fest, dass die Multiplikationsfaktoren mn mit mm = 1 eine untere Dreiecksmatrix L bilden. Nimmt man keine Zeilenvertauschungen im Rahmen der Pivotsuche vor, dann gilt der Zusammenhang LR = A , (5.10) wobei die Bezeichnung R = A(N ) verwendet wurde. Im Gauschen Eliminationsverfahren wird also eine Darstellung der Matrix A als Produkt einer unteren mit einer oberen Dreiecksmatrix realisiert. Ohne Pivotsuche lsst sich daher der Eliminationsala gorithmus kompakt darstellen
i1

rik = aik ki 1 = rii

ij rjk
j=1 i1

k = i, i + 1, . . . , N ,

(5.11)

aki

kj rji
j=1

k = i + 1, i + 2, . . . , N .

(5.12)

Zur Berechnung der Matrixelemente rik , ik knnen die Indices in unterschiedlicher o Reihenfolgen durchlaufen werden. Dementsprechend lassen sich zwei unterschiedliche Algorithmen formulieren und zwar jenen nach Banachiewicz und das Verfahren nach Crout. In den Beschreibungen der Routinen von Programmbibliotheken gibt es daher stets Hinweise auf den aktuell verwendeten Algorithmus.

5.1. LINEARE GLEICHUNGSSYSTEME

45

Abschlieend soll noch festgehalten werden, dass im Gauschen Eliminationsalgorithmus durch die Zerlegung in Dreiecksmatrizen auch die Determinante der Matrix A gegeben ist,
N

det A =

rii .
i=1

(5.13)

Pivotsuche und Rundungsfehlereinuss In Hinblick auf die numerische Genauigkeit, d.h. die Minimierung von Rundungsfehlern, ist die Wahl des Pivot ausschlaggebend. Dies lsst sich leicht an einem kleinem Beispiel a demonstrieren, das wir auf zwei Stellen Gleitkommagenauigkeit berechnen wollen.

Abhngigkeit der Genauigkeit von Pivotwahl a Wir betrachten in zweistelliger Gleitpunktrechnung das Gleichungssystem 5000 x = 9950 = 0.503 0.5 x 0.5 102 1 = exakte Lsung g o = 4950 1.0 y 1 1 y = 9950 = 0.497 r11 = 0.005 0.005 1 0 200 r11 = 1 1 1 0 1 x y x y 0.5 99.0 x= y=
0 200 99 200

= Lsung o

= 0.00 = 0.50

1.0 0.5

= Lsung o

x= y=

5 10 5 10

= 0.50 = 0.50

Aus dem Beispiel knnte der falsche Eindruck entstehen, dass die Wahl des grten o o Elements als Pivot (wie es auch im oben ausgefhrten Algorithmus enthalten ist) zu u dem geringsten Rundungsfehler fhrt. Dies ist aber im allgemeinen nicht der Fall, da u es auf die Gesamtheit der involvierten Restmatrix ankommt. Neben der Teilpivotsuche oder Spaltenpivotsuche wie sie im oben besprochenen Algorithmus verwendet wurde, gibt es noch die Totalpivotsuche. Bei letzterer wird das absolut grte Matrixelement der gesamten Restmatrix (gebildet aus i-ter bis N -ter o Zeile und Spalte) als Pivotelement rii verwendet. Die Totalpivotsuche ist allerdings programmtechnisch wesentlich aufwndiger und erfordert nicht nur ein Vertauschen a der Zeilen, sondern auch der Spalten. Dies impliziert einen wesentlich hheren Verwalo tungsaufwand, da man auch die Reihenfolge der Elemente in den Vektoren x und b umstellen und registrieren muss.

46

KAPITEL 5. LINEARE ALGEBRA

In der Householder Transformation sind alle Zeilen der jeweiligen Restmatrix gleichermaen involviert. Durch die Unitaritt der Transformation bleiben die Lngen jedes a a Spaltenvektors konstant und man erhlt eine niedrige Konditionszahl des Algorithmus, a d.h., die Rundungsfehler bleiben minimal. Fr Details der Transformation von Houu seholder und Schmidt wird auf die Literatur in Numerischer Mathematik verwiesen (siehe z.B. Stoer [7]).

Beim Verfahren von Householder und Schmidt werden unitre Matrizen P (i) , i = a 1, 2, . . . , N 1 bestimmt, welche die folgenden Transformationen vermitteln (i) aii rii N (i) 0 2 (i) (i) ai+1i (5.14) aji . P . = . mit |rii | = . . . . j=i (i) 0 a
Ni

5.1.2

Lineare Gleichungssysteme mit Tridiagonaler Matrix


werden auf die Lsung von Gleichungssystemen mit tridiagonaler Mao a12 0 a22 a23 ... ... ... 0 ... ... 0 0 0 0 ... ... ... ... 0 ... 0 0 0 0 x1 x2 . . . . . . b1 b2 . . . . . .

(5.15) zurckgefhrt. Die spezielle Strukur der Matrix erlaubt eine wesentliche Reduktion u u der Rechenzeit. Zunchst machen wir den Ansatz einer linearen Rekursionsvorschrift a zwischen den Unbekannten xi+1 = i xi + i , (5.16) wobei i und i noch zu bestimmende Gren sind. Einsetzen des Ansatzes (5.16) in o das lineare Gleichungssystem (5.15) liefert fr die i-te Zeile u aii1 xi1 + aii xi + aii+1 xi+1 = aii1 xi1 + aii xi + aii+1 (i xi + i ) = bi . (5.17)

Viele Probleme trix a11 a21 0 A= 0 0 0

aN 1N 2 aN 1N 1 aN 1N 0 aN N 1 aN N

xN 1 xN

= bN 1 bN

Separation von xi und Vergleich der Koezienten liefert die Rekursionsvorschrift fr u die Koezienten i und i i1 = aii1 , aii + aii+1 i i1 = i aii+1 bi . aii + aii+1 i (5.18)

Den Rekursionsbeginn erhlt man aus einer nheren Betrachtung der letzten Zeile a a aN N 1 xN 1 + aN N xN = bN = xN = bN aN N 1 xN 1 + = N 1 xN 1 + N 1 . aN N aN N (5.19)

5.2. ITERATIVE METHODEN

47

Vergleich mit der Rekursionsvorschrift (5.18) zeigt, dass man diese Werte am einfachsten erhlt, wenn man N = N = 0 verwendet. a Die Lsung des Gleichungssystems mit tridiagonaler Matrix erfordert 2N Schritte. o Beginnend mit dem Ansatz N = N = 0 berechnet man nun i und i fr i = u N 1, N 2, . . . , 1 uber die Rekursionsvorschrift (5.18). Mit der Kenntnis von 1 und 1 lsst sich die Unbekannte x1 berechnen, a x1 = b1 a12 1 . a11 + a12 1 (5.20)

Anschlieend kann man uber die Rekursionsvorschrift (5.16) die Unbekannten x2 , x3 , . . . , xN berechnen.

5.2

Iterative Methoden

Das Konzept der iterativen Methoden lsst sich an der einfachen linearen Gleichung a (1 a)x = b demonstrieren. Wir versuchen diese Gleichung mit der Iterationsvorschrift x(r+1) = ax(r) + b mit r = 0, 1, . . . (5.21)

zu lsen, wobei x(r) der Wert der Lsung nach dem r-ten Schritt ist. Geht man von o o (0) einem beliebigen Startwert x aus, so erhlt man durch Einsetzen die Iterationsfolge a x(1) = ax(0) + b , x(2) = ax(1) + b = a2 x(0) + ab + b , ... = ......... (r+1) x = ax(r) + b = ar+1 x(0) + (ar + ar1 + + a + 1)b . Ist |a| < 1 so gelten die Grenzwerte
r k=0

(5.22)

lim a

r+1

= 0 und

ak =

1 , 1a

(5.23)

sodass bei fortlaufender Iteration die Gre x(r) gegen die Lsung der linearen Gleio o chung b (1 a)x = b = x = (5.24) 1a strebt. Allerdings konvergiert das iterative Verfahren nur fr |a| < 1. Dies erkennt man u auch aus der Berechnung des Fehlers des Algorithmus nach r Schritten e(r) = x x(r) = ar (x x(0) ) = ar e(0) , (5.25)

welcher nur fr |a| < 1 mit fortlaufender Iteration abnimmt. Bei |a| 1 divergiert das u uber die Vorschrift (5.21) gegebene iterative Verfahren.

48

KAPITEL 5. LINEARE ALGEBRA

Um den Konvergenzbereich der iterativen Verfahren zu vergrern, modizieren wir o die Iterationsvorschrift (5.21) indem wir eine Gewichtung mit dem jeweils vorhergehenden Iterationsschritt vornehmen x(r+1) = (ax(r) + b) + (1 )x(r) = (1 (1 a))x(r) + b mit r = 0, 1, . . . . (5.26) Geht man nun von einem beliebigen Startwert x(0) aus, so konvergiert nun diese Iterationsfolge zu b b = , (5.27) x= 1 [1 (1 a)] 1a

falls |1 (1 a)| < 1, d.h. wir haben ein konvergentes Iterationsverfahren falls 0 < (1 a) < 2 gilt. Die beste Konvergenz ergibt sich, wenn wir fr den Relaxationsfaktor u den Wert 1 = (5.28) 1a whlen, denn dann ist der die Konvergenz bestimmende Faktor c = 1 (1 a) = 0 a und der erste Iterationsschritt fhrt bereits zum exakten Wert der Lsung. Es gibt also u o einen optimalen -Wert, bei dem die Anzahl der erforderlichen Iterationsschritte zur Erreichung einer vorgegebenen Genauigkeit minimal wird. Die Ubertragung des Iterationskonzeptes auf lineare Gleichungssysteme ist einfach und soll am Beispiel eines Systems mit drei Unbekannten demonstriert werden, a11 x1 + a12 x2 + a13 x3 = b1 a21 x1 + a22 x2 + a23 x3 = b2 a31 x1 + a32 x2 + a33 x3 = b3

(5.29) .

Um zu einer Iterationsvorschrift zu kommen, separiert man in jeder Gleichung von (5.29) eine Unbekannte, d.h. man erhlt ein Gleichungssystem von der Form a x1 = + c12 x2 + c13 x3 + d1 x2 = c21 x1 + c23 x3 + d2 x3 = c31 x1 + c32 x2 + d3

(5.30)

wobei cii = 0, cij = aij /aii fr i = j und di = bi /aii fr i, j = 1, 2, 3 sind. Wie man aus u u (5.30) sieht, zerfllt das Gleichungssystem in zwei Teile, einen mit einer linken unteren a Matrix L und einen mit einer rechten oberen Matrix R 0 c12 c13 0 0 0 (5.31) L = c21 0 0 und R = 0 0 c23 . 0 0 0 c31 c32 0 Die Unbekannten x1 , x2 , x3 fassen wir im Vektor x und die Komponenten d1 , d2 , d3 im Vektor d zusammen. Mit diesen Denitionen sind wir nun in der Lage vier verschiedene Iterationsverfahren zur Lsung eines linearen Gleichungssystems anzugeben: o

5.3. DER LANCZOS ALGORITHMUS

49

a) Das Gesamtschrittverfahren, oft als Methode von Jacobi oder J-Methode bezeichnet, x(r+1) = Rx(r) + Lx(r) + d , (5.32) b) das Einzelschrittverfahren, oft als Methode von Gauss und Seidel oder GSMethode bezeichnet, x(r+1) = Rx(r) + Lx(r+1) + d , (5.33) c) das Gesamtschrittverfahren mit Uberrelaxation, oft als JOR-Methode bezeichnet, ist im Englischen als simultaneous overrelaxation method bekannt, x(r+1) = Rx(r) + Lx(r) + d + (1 )x(r) , (5.34)

d) das Einzelschrittverfahren mit Uberrelaxation, oft als SOR-Methode bezeichnet, ist im Englischen als successive overrelaxation method bekannt, x(r+1) = Rx(r) + Lx(r+1) + d + (1 )x(r) . (5.35)

Fr die numerische Implementierung sind die GS- und die SOR-Methode angenehu mer, da sie keine Zwischenspeicherung der Lsung bentigen; allerdings ist dies meist o o kein entscheidendes Kriterium fr die Auswahl eines bestimmten Verfahrens. Fr die u u Diskussion der Konvergenzeigenschaften wird auf die Standardliteratur aus Numerischer Mathematik verwiesen.

5.2.1

Einbinden von Bibliotheksprogrammen

Die Lsung von linearen Gleichungssystemen ist eine der wichtigsten Problemstellungen o im Zusammenhang mit der numerischen Behandlung physikalischer Fragen. Die verschiedenen Facetten solcher Gleichungssysteme erfordern zum Teil spezielle Algorithmen, um auch die geforderten Genauigkeiten zu erreichen. Es ist daher im Allgemeinen sinnvoll fr die Lsung von Problemen der linearen Algebra auf Programmbibliotheken u o zurckzugreifen, die spezielle und ausgereifte Algorithmen enthalten. Beispiel fr eine u u allgemein zugngliche Programmbibliothek ist die CERNLIB, welche insbesondere die a fr die numerische Physik relevanten Algorithmen enthlt. u a

5.3

Der Lanczos Algorithmus

ist eine Methode zur ezienten Berechnung des kleinsten Eigenwertes und seines Eigenvektors. Stellt man den Hamiltonoperator eines Systems als Matrix dar, entspricht dies der Bestimmung der Gundzustandsenergie und -wellenfunktion (siehe KapitelSG). Im letzten Abschnitt uber die linearen Gleichungssysteme haben wir gesehen, dass die Handhabung von Matritzen in tridiagonaler Form besonders einfach ist. Dies kann man sich auch zu Nutze machen, wenn man das Eigensystem einer Matrix bestimmen

50

KAPITEL 5. LINEARE ALGEBRA

mchte. Im Lanczos Algorithmus wird eine spezielle Basis bestimmt, in der die untero suchte Matrix tridiagonal ist. Die Ezienz des Verfahrens beruht darauf, dass diese Transformation der Matrix auf speziell ausgewhlten kleinen Unterrumen geschieht, a a die solange vergrert werden, bis die Grundzustandsenergie konvergiert ist. o

5.3.1

Rayleigh-Quotient & Gram-Schmidt Orthonormierung

Sei A eine n n hermitesche Matrix mit reellen Eigenwerten 1 [A] n [A] und x n , dann ist der Rayleigh Quotient deniert als xT Ax (x, A) = T x x und die extremalen Eigenwerte 1 [A] und n [A] knnen geschrieben werden als o 1 [A] = min (x, A) n [A] = max (x, A) (5.37) (5.36)

Das kann man nachvollziehen, wenn man den Rayleigh Quotienten umschreibt mittels des orthonormierten Eigensystems vi von A. Damit folgt mit U = [v1 vn ], dass 1 ... (5.38) U T AU = . n Schreiben wir nun x als Linearkombination der vi an, x = U z, folgt fr den Rayleigh u Quotienten 2 z 2 1 + + z n n zT U T AU z (5.39) = 1 2 (x, A) = T T 2 z U Uz z1 + + zn

a u wobei z m und Q eine m n Matrix ist. Die beste Nherung fr die Eigenwerte von A erhlt man dann aus der Diagonalisierung der m m Matrix H a H = QT AQ . (5.41)

und damit der Zusammenhang (5.37). Sei weiters [q1 , , qm ] eine allgemeine orthonormale Basis auf m wobei qi n und m n , dann kann jeder Vektor x n als Linearkombination der qi geschrieben werden x = [q1 , , qm ]z = Qz (5.40)

Die orthonormale Basis [q1 , , qm ] kann man nun aus einem beliebigen Satz linear unabhngiger Vektoren Sm = [s1 , , sm ] mit si n konstruieren. Man benutzt dazu a

5.3. DER LANCZOS ALGORITHMUS

51

das Verfahren von Gram-Schmidt, bei welchem die Vektoren qi , ausgehend von einem beliebigen normierten Startvektor q1 = s1 /|s1 | sukzessive konstruiert werden
i1

q i = si

j=1

qj (qj si )

qi =

q i |q i |

(5.42)

oder, als Faktorisierung von S = QR geschrieben wobei R eine m m obere Dreiecksmatrix ist |q 1 | q1 s1 q1 sm 0 |q 2 | q2 sm [s1 , , sm ] = [q1 , , qm ] . . . . ... . . . . . . 0 0 |q m |

(5.43)

An diesem Punkt halten wir fest, dass wir die extremalen Eigenwerte 1 [A] und n [A] der nn Matrix A annhern knnen, indem wir eine kleinere mm Matrix H = QT AQ a o diagonalisieren und damit als Eigenwerte 1 [H] und m [H] erhalten. Die entsprechenden (genherten) Eigenvektoren von A sind dann gegeben durch vi = Qgi (i = 1, m), a wobei gi die Eigenvektoren von H sind.

5.3.2

Krylov-Basis und Lanczos Rekursionsformel

Der letzte Schritt des verfahrens besteht darin, eine Basis zu whlen, in der H besona ders einfach diagonalisiert werden kann. Wir werden sehen, dass diese Basis durch die sogenannte Krylov Matrix gegeben ist. Sei Sm der Krylov Unterraum, der durch die Krylov Matrix aufgespannt wird Km (f ) = [f , Af , A2 f , , Am1 f ] (5.44)

wobei f n . Mit dieser Denition folgt, dass die Faktorisierung (5.43) von Km (f ) = Qm R eine Matrix Qm liefert, fr welche u Tm = QT AQm m (5.45)

eine tridiagonale Matrix ist. Dies kann man sich folgendermaen klarmachen: Fr u T i > j + 1 gilt qi (Aqj ) = 0 da zum einen per denitionem Aqj eine Teilmenge des Krylov Unterraumes Sj+1 ist Aqj Sj+1 . Darber hinaus ist durch die Gram-Schmidt u Orthonormierung sichergestelt, da qi fr i > j + 1 orthogonal zu allen Vektoren sj+1 u ist: qi sj+1 fr i > j + 1. u Durch die Hermitizitt von A gilt des weiteren qT (Aqj ) = qT (AT qi ) = qT (Aqi ) = a i j j

52

KAPITEL 5. LINEARE ALGEBRA

wobei wir die Elemente der tridiagonalen Matrix folgendermaen denieren j = qT Aqj j j = j = 1, , m

0 fr j > i + 1 bzw. i < j 1. Damit folgt: u 1 1 1 2 2 ... ... ... Tm = m2 m1 m1 m1 m

(5.46)

qT Aqj j+1

j = 1, , m 1

Aus der Tridiagonalitt folgt, dass a Aqi = i1 qi1 + i qi + i qi+1 (2 i m 1) (5.47)

Denieren wir auerdem q0 = 0, dann gilt Gleichung (5.47) auch fr i = 1. Sei nun u ri i qi+1 , dann knnen wir schreiben o ri = Aqi i1 qi1 i qi (1 i m 1) (5.48)

Mit diesen Voraussetzungen knnen wir den eigentlichen Lanczos Algorithmus o formulieren als: Gegeben: r0 , 0 = |r0 | (q0 = 0)

for i = 1 to m do qi ri1 /i1 ri Aqi i1 qi1 i q T ri i ri ri i q i i = |ri | (dann wenn i m 1) end for

Man erhht dann die Dimension des Krylov Unterraumes solange, bis 1 [T ] konvergiert o ist.

Kapitel 6 Gewhnliche o Dierentialgleichungen


6.1 Einleitung

Viele physikalische und technische Probleme erfordern in ihrer mathematischen Formulierung die Lsung einer Dierentialgleichung. Im einfachsten Fall ist eine diereno zierbare Funktion y(x) gesucht, welche von einer reellen Vernderlichen x abhngt und a a die Gleichung y = f (x, y) (6.1) erfllt. Wir beschrnken uns hier ausschlielich auf diese sogenannten gewhnlichen u a o Dierentialgleichungen 1. Ordnung. Im Allgemeinen wird die Dierentialgleichung (6.1) von unendlich vielen Funktionen y(x) gelst. Fr eine eindeutige Lsung sind immer o u o zustzliche Forderungen, wie Rand- oder Anfangswertbedingungen erforderlich. Je nach a Problemstellung spricht man von Anfangs- oder Randwertproblemen. Fr die numerische Lsung gewhnlicher Dierentialgleichungen stehen heute eiu o o ne Vielzahl von allgemeinen und speziellen Verfahren zur Verfgung, die wichtigsten u Klassen von Algortihmen sind: a. Einschrittverfahren b. Mehrschrittverfahren c. Extrapolationsverfahren d. Variationsverfahren Im Rahmen dieser Lehrveranstaltung behandeln wir Einschrittverfahren, das Konzept von Mehrschrittverfahren und das Numerov-Verfahren, eine eziente Methode zur Lsung spezieller Dierentialgleichungen 2. Ordnung. Fr vertiefte Behandlung und o u weitere Algorithmen sei auf die einschlgige Literatur der Numerischen Mathematik, a z.B. Stoer [7], verwiesen. In den ersten Kapiteln des Abschnitts Simulation werden Anwendungen der Methoden zur Lsung von gewhnlichen Dierentialgleichungen an zwei typischen Frao o gestellungen der Physik diskutiert. Zunchst werden wir uns mit grundlegenden Fraa gestellungen zu Schwingungsphnomenen beschftigen, welche im Zusammenhang mit a a 53

54

KAPITEL 6. GEWOHNLICHE DIFFERENTIALGLEICHUNGEN

verschiedenen Variationen eines Pendels behandelt werden. Danach wird am Beispiel des Wassersto-Atoms die Lsungen von Bindungs- und Streuproblemen in einfachen o quantenmechanischen Systemen vorgestellt.

6.2

Systeme gewohnlicher Dierentialgleichungen erster Ordnung


y1 = f1 (x, y1 , . . . , yn ) y2 = f2 (x, y1 , . . . , yn ) . . . . . . yn = fn (x, y1 , . . . , yn )

Ein System von gewhnlichen Dierentialgleichungen erster Ordnung hat die Form o

(6.2)

wobei die Dierentialgleichungen durch n Funktionen gegeben sind, fi , i = 1, . . . , n. Das Dierentialgleichungssystem lsst sich durch eine Vektornotation kompakt anschreiben a y = f (x, y) . Die Vektoren sind dabei wie folgt deniert y1 f1 (x, y1 , . . . , yn ) . . . y = . und f (x, y) = . . . yn fn (x, y1 , . . . , yn ) (6.3)

(6.4)

Es ist wichtig festzuhalten, dass man jedes Anfangswertproblem einer Einzeldierentialgleichung n-ter Ordnung, y (n) = f (x, y, y , y , . . . , y (n1) ) , (6.5)

auf ein Anfangswertproblem eines Systems von n Dierentialgleichungen erster Ordnung zurckfhren kann. Deniert man nun u u z1 = y , z2 = y , ... , zn = y (n1) (6.6)

so ergibt sich das System von Dierentialgleichungen erster Ordnung


z1 = z2 z2 = z3 . . . . . . zn = fn (x, z1 , . . . , zn )

(6.7)

In jedem System von gewhnlichen Dierentialgleichungen erster Ordnung lsst sich o a durch die zustzliche Denition von y0 = x, die unabhngig Vernderliche x auf der a a a

6.3. EINSCHRITTVERFAHREN rechten Seite eliminieren, d.h., man erhlt ein System der Form a
y0 = 1 y1 = f1 (y0 , y1 , . . . , yn ) y2 = f2 (y0 , y1 , . . . , yn ) . . . . . . yn = fn (y0 , y1 , . . . , yn )

55

(6.8)

Dies wird als autonomes System von Dierentialgleichungen bezeichnet und vereinfacht die numerische Implementierung ohne Genauigkeitsverlust. Explizite Einschrittverfahren zur Lsung von gewhnlichen Dierentialgleichungen o o sind durch die Rekursionsvorschrift y(xi+1 ) = y(xi ) + hi+1 (xi , y(xi ); hi+1 ) mit y(x0 ) = y(xa ) (6.9)

gegeben, wobei xi , i = 0, . . . , N adquat gewhlte Sttzstellen im zu untersuchenden a a u Intervall [xa , xe ], hi+1 = xi+1 xi und y(xi ) der Wert der Lsung y(x) an der Stelle o u x = xi sind. Die Funktion (x, y(x), h) ist charakteristisch fr das verwendete Einschrittverfahren. Beginnend vom Anfangs- bzw. Randwert y(xa ) lsst sich die Lsung a o y(x) sukzessive berechnen. In den folgenden Unterkapiteln werden die einfachsten Einschrittverfahren kurz beschrieben.

6.3
6.3.1

Einschrittverfahren
Einschrittverfahren erster und zweiter Ordnung

Das einfachste Einschrittverfahren ist ohne Zweifel das Euler- oder Polygonzugverfahren, welches wir hier am Beispiel einer Einzeldierentialgleichung, y = f (x, y) , (6.10)

betrachten wollen. Ist y hinreichend oft dierenzierbar, so kann man eine Reihenentwicklung der Lsung y(x) durchfhren o u
m

y(x + h) =
k=0

hk (k) hm+1 (m+1) y (x) + y (x + h) mit 0 1 . k! (m + 1)!

(6.11)

Man bentigt in dieser Entwicklung die Kenntnis der Ableitungen y (k) (x). Die niedo rigsten Ableitungen lassen sich einfach aus der Funktion f (x, y) bestimmen: f (x, y) , df df dy d2 y = + = fx + fy f , y = 2 dx dx dy dx 2 y (3) = fxx + 2f fxy + fyy f 2 fx fy + f fy , y = (6.12) (6.13) (6.14) (6.15)

56

KAPITEL 6. GEWOHNLICHE DIFFERENTIALGLEICHUNGEN

Je nach der Wahl von m lassen sich unter Vernachlssigung des Resttermes verschiedene a Verfahren ableiten. Das Euler- oder Poligonzugverfahren ergibt sich bei der Wahl m = 1. Vernachlssia gung des Resttermes fr m = 1 fhrt auf die Rekursionsbeziehung, u u y(x + h) = y(x) + hf (x, y(x)) d.h. (x, y; h) = f (x, y) . (6.16)

Beim Euler- oder Polygonzugverfahren wird also der Dierentialquotient durch den Dierenzenquotienten ersetzt, d.h., y y(x + h) y(x) h (6.17)

Will man die Entwicklung (6.11) bis m = 2 bercksichtigen, so setzt man die u Funktion in folgender Form an, (x, y; h) = a1 f (x, y) + a2 f (x + p1 h, y + p2 hf (x, y)) Eine Entwicklung von (6.18) bis zur ersten Ordnung in h liefert (x, y; h) = (a1 + a2 )f (x, y) + a2 h [p1 fx (x, y) + p2 fy (x, y)f (x, y)] + O(h2 ) . (6.19) (6.18)

1 Whlt man a1 + a2 = 1 und p1 a2 = p2 a2 = 2 so sind die Terme der Reihenentwicklung a (6.11) bis m = 2 durch die Funktion f (x, y) ausgedrckt. Man erhlt damit das Veru a fahren von Heun, welches auch als verbessertes Polygonzugverfahren bezeichnet wird,

a1 = a2 = (x, y; h) =

1 2

p1 = p2 = 1 (6.20)

1 [f (x, y) + f (x + h, y + hf (x, y))] , 2

und das modizierte Euler-Verfahren a1 = 0 ; a2 = 1 ; p 1 = p 2 = 1 2 1 1 (x, y; h) = f (x + 2 h, y + 2 hf (x, y)) . (6.21)

Betrachtet man die Ausdrcke fr die Funktion , so sieht man, dass in den letzten u u beiden Verfahren die Funktion f (x, y) zweimal aufgerufen werden muss, whrend im a Euler-Verfahren nur ein Aufruf von f (x, y) pro Schritt erforderlich ist.

6.3.2

Konsistenz und Konvergenz von Einschrittverfahren

Bei der Diskussion der Gte eines Einschrittverfahrens muss man zwischen Konsisu tenz und Konvergenz des Verfahrens unterscheiden. Die Konsistenz eines Verfahrens bezieht sich auf die Eigenschaften der Funktion , whrend Konvergenz die Lsung a o der Dierentialgleichung betrit. Man nennt das Einschrittverfahren konsistent, wenn die Funktion der Bedingung gengt u lim (x, y; h) = f (x, y), x[a, b], y R . (6.22)
h0

6.3. EINSCHRITTVERFAHREN Man spricht von einem Verfahren der Ordnung p, falls (x, y; h) = (x, y; h) (x, y; h) = O(hp ) gilt, wobei der Dierenzenquotient folgendermaen deniert ist (x, y; h) =
z(y+h)z(x) h

57

(6.23)

f (x, y)

h = 0, h = 0,

(6.24)

und z(x) die exakte Lsung der Dierentialgleichung ist. o Durch Einsetzen in die entsprechenden Ausdrcke sieht man, dass das Euleru Verfahren konsistent in 1. Ordnung ist, whrend das Verfahren von Heun und das a modizierte Eulerverfahren konsistent in 2. Ordnung sind. Neben der Konsistenz eines Verfahrens gibt es noch den Begri der Konvergenz. Ein Einschrittverfahren heit an der Stelle x[xa , xe ] konvergent, wenn
h0 h lim (yi ) z(x)) = 0 fr xi = x[xa , xe ] , u

(6.25)

h wobei yi die numerische Lsung an der Stelle xi und z(x = xi ) die exakte Lsung der o o Dierentialgleichung ist. Das Einschrittverfahren heit konvergent zur Ordnung p > 0, wenn h u (6.26) yi z(x) = O(hp ) fr h 0, j = 0, 1, . . . , N

gilt. Bei Einschrittverfahren lt sich leicht ein Zusammenhang zwischen Konsistenza und Konvergenzordnung herstellen. Es gilt folgender Satz: Fr eine Einzeldierentialgleichung y = f (x, y) sei ein Einschrittverfahren (x, y; h) u mit folgenden Eigenschaften gegeben: (x, y; h) ist bezglich aller Vernderlicher (x, y; h) stetig fr xa x xe , < u a u y < +, 0 h h0 , wobei h0 hinreichend klein ist, Das Verfahren sei konsistent von der Ordnung p > 0, Die Funktion (x, y; h) erflle bezglich y eine Lipschitzbedingung: Es gibt eine u u Konstante L > 0 sodass |f (x) f (x + h)| < L|h|. Einschrittverfahren mit diesen Eigenschaften, sind konvergent von der Ordnung p.

6.3.3

Runge-Kuttaverfahren

Die Standardmethode Eine der beliebtesten Methoden zur Integration von gewhnlichen Dierentialgleio chungen ist das Verfahren von Runge-Kutta. Dieses Verfahren wurde 1895 erstmals formuliert und basiert auf einen allgmeinen Ansatz fr die Funktion (x, y; h). In der u Standardform ist das Runge-Kutta-Verfahren fr eine Funktion y = f (x, y) durch u folgende Funktion (x, y; h) gegeben:

58

KAPITEL 6. GEWOHNLICHE DIFFERENTIALGLEICHUNGEN

Die Standardform des Runge-Kutta-Verfahrens (x, y; h) = 1 [k1 + 2k2 + 2k3 + k4 ] + O(h5 ) 6 k1 = f (x, y) k3 = f (x + h , y + h k2 ) 2 2 k2 = f (x + h , y + h k1 ) 2 2 k4 = f (x + h, y + h k3 )

Entwickelt man (x, y; h) in eine Taylorreihe nach h, so ndet man, dass die oben angegebene Form des Runge-Kutta-Verfahrens konsistent in vierter Ordnung ist. Der Beweis der Konsistenzordnung ist trivial, erfordert aber eine lngere Rechnung. a Das Runge-Kutta-Verfahren ist einfach, ezient und bestens geeignet, wenn an die Genauigkeit der Lsungen nicht allzu groe Anforderungen gestellt werden. Fr o u hohe Anforderungen an die Genauigkeit, sollte man auf eine Predictor-KorrektorMethode ubergehen [7]. Das Runge-Kutta-Verfahren lsst sich auch auf Systeme von a Dierentialgleichungen erster Ordnung in analoger Weise anwenden. Die Funktionen (x, y; h), k1 , k2 , k3 und k4 sowie die Variable y erhalten dann Vektorcharakter (siehe 6.2). Die Programmierung wird besonders einfach, wenn man auf ein autonomes Gleichungssystem ubergeht, d.h. man deniert die unabhngige Variable x als die nullte a Komponente des Lsungsvektors y (siehe Gleichung (6.8)). o Runge-Kutta-Methode mit angepasster Schrittweite Ein guter Algorithmus fr die Integration gewhnlicher Dierentialgleichungen sollte u o die Gte der Lsung laufend kontrollieren und entsprechende Adaptierung der Parameu o ter selbst vornehmen, um eine bestimmte vorgegebene Genauigkeit zu garantieren. In Einschrittverfahren lsst sich die Genauigkeit uber die Schrittweite kontrollieren. In Bea reichen starker Anderung der Lsung y(x) wird man zur Erreichung einer bestimmten o Genauigkeit viele kleine Schritte bentigen, whrend man in Bereichen eines weitgeo a hend glatten Funktionsverlaufes von y(x) mit wenigen groen Schritten das Auslangen ndet. Sieht man eine entsprechende Anpassung der Schrittweite im Algorithmus vor, so kann man die Ezienz des Algorithmus wesentlich steigern (je nach Funktion y(x) sind Ezienzsteigerungen von 100 und mehr mglich). o Die Festlegung einer der jeweiligen Lsung angepassten Schrittweite erfordert die o Bereitstellung einer Information uber die Gte der Lsung bei jedem Integrationsu o schritt. Bei der Standard Runge-Kutta-Methode (konsistent in vierter Ordnung) erreicht man dies am einfachsten durch Verdopplung der Schritte, d.h., man rechnet jeden Schritt zweimal, einmal in einem Schritt und einmal in zwei Schritten, y(x + 2h) = y1 (x) + (2h)5 + O(h6 ) + , y(x + 2h) = y2 (x) + 2h5 + O(h6 ) + . (6.27) (6.28)

Die exakte Lsung wurde mit y(x), bezeichnet, die numerischen Lsungen, y1 , y2 , wuro o den mit einer Schrittweite 2h bzw. h gerechnet. Insgesamt erfordert jeder Schritt 11

6.3. EINSCHRITTVERFAHREN

59

Aufrufe der Funktion f (x, y). Dies muss man vergleichen mit 8 Aufrufen, wenn man mit der Schrittweite h integriert. Die Rechenzeit erhht sich zwar um den Faktor 1.375, o aber der Algorithmus mit Schrittverdopplung liefert einen Parameter, = y2 y1 , der die Gte der Lsung charakterisiert. Die Forderung, dass kleiner als ein vorgegebeu o ner Genauigkeitsparameter acc ist, erlaubt eine automatisierte Schrittweitenanpassung des Runge-Kutta-Verfahrens. Erfllt die gewhlte Schrittweite das Kriterium <acc u a nicht, so wird die Schrittweite verkleinert und die Integration noch einmal ausgefhrt. u Ist das Kriterium <acc erfllt, so kann y2 als Wert der Lsung verwendet werden u o und man fhrt den nchsten Integrationsschritt aus. Alternativ lsst sich auch ein u a a korrigierter Wert der Lsung angeben, o = y2 y1 = 30h5 + O(h6 ) , 1 y (corr) = y2 (x) + + O(h6 ) . 15 (6.29) (6.30)

Die neue Abschtzung ist nun fnfter Ordnung und wird allgemein als lokale Approxia u mation bezeichnet. Man kann nun mit diesem Wert die Lsung fortsetzen. o Eine alternative Konstruktion eines Dierentialgleichungsintegrators mit automatisierter Schrittweitenanpassung beruht auf den von Fehlberg abgeleiteten Eingebetteten Runge-Kutta-Formeln. Fehlberg entdeckte eine Methode fnfter Ordnung, welche sechs u 1 Aufrufe von f (x, y) erfordert ,
i1

ki = hf (xn + ai h, yn +
j=1 6

bij kj ) j = 1, . . . , 6 ,

(6.31) (6.32)

yn+1 = yn +
i=1

ci ki + O(h6 ) .

Die Koezienten ai , bij , ci sind in Tab. 6.1 gegeben. Eine andere Kombination der gleichen sechs Aufrufe liefert ein Verfahren vierter Ordnung,
6

yn+1 = yn +
j=1

cj kj + O(h5 ) ,

(6.33)

Durch Dierenzbildung erhlt man wieder ein Kriterium fr die Gte und damit fr a u u u die Schrittweitenanpassung,
6

= yn+1 yn+1 =

j=1

(cj cj ) kj .

(6.34)

Abweichend von den Koezienten von Fehlberg, haben sich die von Cash und Karp [8] angegebenen Werte (siehe Tab. 6.1) im allgemeinen bewhrt. a
Allgemein lsst sich sagen, dass ein Runge-Kutta-Verfahren M. Ordnung zumindest M Aufrufe a von f (x, y), aber niemals mehr als M + 2 Aufrufe erfordert.
1

60

KAPITEL 6. GEWOHNLICHE DIFFERENTIALGLEICHUNGEN i 1 2 3 4 5 6 ai 0


1 5 3 10 3 5 1 5 3 40 3 10 11 54 1631 55296 9 40 9 10 5 2 175 512 6 5 70 27 575 13824

bij

ci
37 378

ci
2825 27648

1
7 8

35 27 44275 110592

250 621 125 594

253 4096

512 1771

18575 48384 13525 55296 277 14336 1 4

Tabelle 6.1: Parameter von Cash und Karp [8] fr die eingebettete Runge-Kuttau Methode fnfter Ordnung. u

6.4

Rundungsfehler

Die Abschtzung der Verlsslichkeit numerischer Lsungen ist fr die Beurteilung der a a o u Gte eines Resultates unerlsslich. Bei numerischen Rechnungen lassen sich verschieu a dene Klassen von Fehlern unterscheiden: Unsicherheit in den Eingabedaten: Diese knnen im Allgemeinen in der nuo merischen Rechnung nicht beeinusst werden. Man muss jedoch die Stabilitt a bezglich solcher Unsicherheiten diskutieren. u Abbrechfehler: Darunter versteht man Fehler durch Vernachlssigung von Resta termen bzw. nicht vollstndig durchgefhrte Iterationen. Solche Fehler lassen sich a u uber den verwendeten Algorithmus steuern. Rundungsfehler: Diese werde durch die Abbildung der numerischen Werte auf die Menge der Maschinenzahlen verursacht. Durch Auslschungseekte kann es zu o einer unerwnschten Verstrkung dieser Fehler kommen. u a In Unterkapitel 6.3.2 haben wir die Konvergenz der Verfahren betrachtet. Im nchsa ten Schritt wollen wir die Gesamtheit aller Fehler, und zwar Rundungs- und Verfahrensfehler gemeinsam betrachten. Sei z(x) die exakte Lsung und i die numerische o Lsung an der Stelle xi , dann gelten die Beziehungen o Numerische Lsung: o Exakte Lsung: o i+1 = i + h(xi , i ; h) + i+1 , z(xi+1 ) = z(xi ) + h(xi , zi ; h) + O(hp+1 ) , (6.35) (6.36)

wobei i+1 der gesamte Rundungsfehler fr die Integration von xi nach xi+1 ist. Subu traktion der beiden Gleichungen liefert, ri+1 = i+1 z(xi+1 ) = i z(xi ) + h [(xi , i ; h) (xi , z(xi ); h)] i+1 + O(hp+1 ). (6.37)

6.5. NUMEROV VERFAHREN

61

Lsung dieser Dierenzengleichung liefert o |ri | M hp +

Die Gre des Gesamtfehlers lsst sich unter der Annahme einer Lipschitz Bedingung o a fr abschtzen u a |ri+1 | |ri | + h L|ri ||i+1 | + M hp+1 . (6.38) |i | eiM (xe xa ) 1 . h L

(6.39)

Diese Abschtzung ist fr praktische Anwendungen zu grob und hat daher nur qualia u tativen Wert. Sie zeigt aber das wesentliche Verhalten der Abhngigkeit des Gesamta fehlers von der Schrittweite. Es gibt einen optimalen Wert fr die Schrittweite h. Wird u h kleiner, so steigt aufgrund der Rundungsfehler der Gesamtfehler an (Abb. 6.1).
0.0001 1e05 |r | 1e06 1e07 1e08 1e05
i

y = 200 x y Exakte Lsung

Anfangsbed.:

y(1) = 1/101

y(x) =1/(1 + 100 x 2 )

0.0001

0.001

0.01

0.1

Abbildung 6.1: Beispiel fr den Gesamtfehler bei der numerischen Lsung einer Dieu o rentialgleichung

6.5

Numerov Verfahren

Viele Fragestellungen der Quantenphysik und der Elektrodynamik lassen sich auf eine gewhnliche Dierentialgleichung zweiter Ordnung der Form o d2 + w(x) y(x) = S(x) dx2 (6.40)

zurckfhren. Dabei ist w(x) eine Funktion, welche die Strke des Response angibt und u u a S(x) stellt einen Quellterm dar. Die numerische Lsung der Dierentialgleichung (6.40) kann im Prinzip durch ein o Einschrittverfahren, z.B. das Runge-Kutta-Verfahren, erfolgen. Diese Vorgangsweise ist zweckmig, falls neben der Funktion y(x) auch die Ableitung dy/dx in der weiteren a Rechnung bentigt wird. In den meisten Fllen geht allerdings die erste Ableitung nicht o a explizit ein.

62

KAPITEL 6. GEWOHNLICHE DIFFERENTIALGLEICHUNGEN

Eine sehr einfache Methode zur numerischen Lsung von Dierentialgleichungen o von Typ (6.40) geht auf Numerov [9] zurck. Man bezeichnet den Algorithmus auch u als Cowling Methode oder Fox-Godwin-Verfahren [10]. Wir denieren ein aquidistantes Gitter {xn = x0 +nh}, n = 0, 1, 2, . . . mit der Schrittweite h auf dem Denitionsbereich und entwickeln die Lsung y(x) an der Stelle yn = y(xn ) in eine Taylor-Reihe. Man o erhlt a
yn1 = yn h yn +

h5 (v) h2 h3 h4 (iv) yn yn + yn y + O(h6 ) . 2 6 24 120 n

(6.41)

Aus Gleichung (6.41) ergibt sich der Ausdruck yn+1 2 yn + yn1 h2 (iv) = yn + y + O(h4 ) . h2 12 n (6.42)

Die zweite Ableitung yn kann also als Dierenzenausdruck plus einem Korrekturterm dargestellt werden, welcher die vierte Ableitung der Funktion enthlt. Der charaktea ristische Schritt des Numerov-Verfahrens besteht nun in der Darstellung der vierten Ableitung durch die Dierentialgleichung (6.40),

y (iv) =

d2 d2 y = 2 [w(x)y(x) + S(x)] . dx2 dx

(6.43)

Damit lsst sich der Korrekturterm wieder durch die rechte Seite der Dierentialgleia chung ausdrcken, sodass wir nun folgenden Dierenzenausdruck fr die Lsung der u u o Dierentialgleichung erhalten, yn+1 2yn + yn1 yn+1 2yn + yn1 h2 (iv) yn + O(h4 ) = 2 h 12 h2 2 h wn+1 yn+1 2wn yn + wn1 yn1 Sn+1 2Sn + Sn1 + O(h2 ) + 12 h2 h2 = wn yn + Sn + O(h4 ) . (6.44)

yn =

Ordnet man die Terme, so ergibt sich die Grundgleichung fr die Lsung der Dierenu o tialgleichung (6.40) im Numerov-Verfahren yn+1 1 + h2 10h2 h2 wn+1 yn 2 wn + yn1 1 + wn1 12 12 12

h2 = [Sn+1 + 10Sn + Sn1 ] + O(h6 ) . 12

(6.45)

Das Numerov-Verfahren ist konsistent und konvergent in vierter Ordnung und eignet sich bestens fr die Lsung von Anfangswertproblemen. u o Fr den Start des Verfahrens sollte die Funktion y(x) an zwei nebeneinanderlieu genden Sttzstellen bekannt sein. Dies entspricht auch den erforderlichen zwei Anu fangsbedingungen fr die eindeutige Lsung gewhnlicher Dierentialgleichung zweiter u o o

6.6. MEHRSCHRITTVERFAHREN

63

Ordnung. So kann z.B. die Kenntnis von y(x) und y (x) an einer Sttzstelle x durch u einen linearisierten Zusammenhang zur Berechnung der Funktion an zwei Sttzstellen u ausgentzt werden. yj = y() + (xj x)y () fr j = n, n + 1. u x x u Fr die praktische Rechnung ist es zweckmig, die Gre Q(r) zu denieren, u a o Qn = 1 + h2 w n yn . 12 (6.46)

Die Rekursionsformel (6.45) reduziert sich dann auf die einfache Form Qn+1 + 10Qn + Qn1 12yn = h2 [Sn+1 + 10Sn + Sn1 ] + O(h6 ) , 12 (6.47)

welche eine Rekursionsvorschrift fr die Hilfsgre Q(r) darstellt. Bei der praktischen u o Anwendung muss man allerdings beachten, dass die Funktion Q(x) auch bei verschwindendem Funktionswert der Lsung y(x) einen endlichen Wert aufweisen kann, falls w(x) o eine Singularitt an dieser Stelle hat. a

6.6

Mehrschrittverfahren

Das Numerov-Verfahren ist ein spezieller Algorithmus fr gewhnliche Dierentialu o gleichungen zweiter Ordnung. Ein Integrationsschritt erfordert stets die Kenntnis der Lsung an zwei Sttzstellen, d.h., es gehrt weder zur Gruppe der Einschrittverfaho u o ren, welche in 6.3 dargestellt wurden, noch ist es eine einfache Erweiterung dieser Algorithmen. Im nchsten Unterabschnitt werden Beispiele fr Mehrschrittverfahren a u angefhrt, deren Konstruktion als eine Erweiterung der Einschrittverfahren angesehen u werden knnen. o

6.6.1

Konstruktion einfacher Mehrschrittverfahren

Wir betrachten wieder das Anfangswertproblem y = f (x, y) , y(x0 ) = y0 . (6.48)

Die Lsung mittels eines Mehrschrittverfahrens geht davon aus, dass Nherungswero a te k fr die Lsung y(xk ) an k = j, j + 1, ..., j + r 1 quidistanten Sttzstellen u o a u xk = x0 + k h bereits bekannt sind. Mit diesen Werten und der Dierentialgleichung lsst sich dann ein weiterer Nherungswert j+r fr die Lsung y(xj+r ) bestimmen. a a u o Fr r > 1 spricht man dann von einem Mehrschrittverfahren. Beim Start eines solu chen Algorithmus bentigt man also bereits an r Sttzstellen Nherungswerte fr die o u a u Lsung. Diese knnen z.B. uber Einschrittverfahren generiert werden. Wir wollen hier o o eine einfache Gruppe von Einschrittverfahren besprechen, an Hand derer die prinzipiellen Anwendungsmglichkeiten gut dargestellt werden knnen. o o

64

KAPITEL 6. GEWOHNLICHE DIFFERENTIALGLEICHUNGEN

Zur Darstellung der Konstruktion dieser Algorithmen integrieren wir zunchst die a Dierentialgleichung (6.48)
xp+k

y(xp+k ) y(xpj ) =

dtf (t, y(t)) ,


xpj

(6.49)

Im nchsten Schritt ersetzt man den Integranden durch ein interpolierendes Polynom a Pq (x) vom Grad q, welches die Interpolationsvorschrift Pq (xi ) = f (xi , y(xi )) , mit i = p, p 1, ..., p q
q

(6.50)

erfllt. Verwendung der Lagrangeschen Interpolationsformeln u


q

Pq (x) =
i=0

f (xpi , ypi )Li (x) ,

mit Li (x) =

x xp xpi xp =0,=i

(6.51)

fhrt auf die Grundformel eines Mehrschrittverfahrens, u


q xp+k

yp+k ypj

f (xpi , ypi )
i=0 q xpj

dxLi (x) (6.52)

= h
i=0

qi f (xpi , ypi ) +s , i =0,=i


q

mit 1 qi := h

xp+k

dxLi (x) =
xpj j

ds

i = 0, 1, ..., q ,

(6.53)

wobei x = xp + s h. Ersetzt man nun die Werte der Lsung yi = y(xi ) durch die Nheo a rungswerte i , so erhlt man einen einfachen Algorithmus eines Mehrschrittverfahrens a
q

p+k = pj + h
i=0

qi fpi ,

mit fi = f (xi , i ) .

(6.54)

Durch die Wahl von k, j und q erhlt man verschiedene Lsungsalgorithmen. Insbesona o dere ergibt sich fr k = 1, j = 0 und q = 0 das einfache Euler- oder Polygonzugverfahu ren. Wir wollen uns nun einige charakteristische Verfahren ansehen. Prediktor-Verfahren Ein Prediktor-Verfahren erlaubt die explizite Berechnung eines Nherungswertes der a Lsung fr eine Sttzstelle. Als Beispiele sollen hier die Verfahren von Adams-Bashforth o u u genannt werden, welche durch die Wahl k = 1, j = 0 und q = 0, 1, 2, ... charakterisiert sind. p+1 = p + h [q0 fp + q1 f1 + + qq fq ] (6.55)

6.6. MEHRSCHRITTVERFAHREN

65

qi 0i 21i 122i 243i 7204i

i=0 1 3 23 55 1901

i=1 -1 -16 -59 -2774

i=2

i=3

i=4

5 37 2616

-9 -1274

251

Tabelle 6.2: Koezienten der Mehrschritt-Verfahren nach Adam-Bashforth

mit qi :=
0

ds

+s , i =0,=i

i = 0, 1, 2, ..., q .

(6.56)

Es handelt sich dabei um r = q + 1-Schritt Verfahren. In Tab. 6.2 sind die entsprechenden Koezienten qi angegeben. Ein weiteres Prediktor-Verfahren ist der Algorithmus von Nystrm, welchen man o mit k = 1 und j = 1 erhlt a p+1 = p1 + h [q0 fp + q1 fp1 + + qq fpq ] mit qi =
1 +1

(6.57)

ds

+s , i =0,=i

i = 0, 1, . . . , q .

(6.58)

Korrektor-Verfahren Ein Korrektor-Verfahren erlaubt im Allgemeinen keine explizite Berechnung eines Nherungswertes der Lsung, weil diese auch in die entsprechenden Funktionen als a o Argumentwerte eingehen und daher nicht separiert werden knnen. Man spricht dao her von impliziten Verfahren, welche sich zur Korrektur/Verbesserung einer bereits vorhandenen Nherungslsung eignen. a o Mit der Wahl k = 0 und j = 1 ergeben sich die Verfahren von Adams-Moulton, p = p1 + h [q0 fp + q1 fp1 + + qq fpq ] , (6.59)

Umbenennung des Index p p + 1 liefert die Standardform fr die numerische Impleu mentierung p+1 = p + h [q0 fp+1 + q1 fp + + qq fp+1q ] (6.60) mit
0

q,i :=
1

ds

+s . i =0,=1

(6.61)

Die Koezienten fr das Adams-Moulton-Verfahren sind bis q = 4 in Tab. 6.3 angegeu ben.

66

KAPITEL 6. GEWOHNLICHE DIFFERENTIALGLEICHUNGEN

qi 0i 21i 122i 243i 7204i

i=0 1 1 5 9 251

i=1 1 8 19 646

i=2

i=3

i=4

-1 -5 -264

1 106

-19

Tabelle 6.3: Koezienten der Mehrschritt-Verfahren nach Adams-Moulton

In der Rekursionsformel (6.60) erscheint nun p+1 auf beiden Seiten der Gleichung, wobei p+1 auf der rechten Seite als Argument in der Funktion f (x, y) auftritt. Im Allgemeinen bewirkt diese Funktion einen nichtlinearen Zusammenhang, sodass eine direkte Berechnung von p+1 nicht mglich ist. Man bezeichnet daher das Verfahren o von Adams-Moulton als implizites Verfahren. Mit einem impliziten Verfahren kann nun ein iteratives Verfahren deniert werden, welches den Funktionswert p+1 verbessert, p+1 = p + h q0 f (xp+1 , p+1 ) + q1 fp + + qq fp+1q .
(i+1) (i)

(6.62)

Man spricht daher von einem Korrektor-Verfahren, weil man durch die Iteration den Wert von p+1 korrigiert bzw. verbessert. Eine weitere Gruppe von Korrektorverfahren geht auf Milne-Thompson zurck und u ist durch k = 0, j = 2 charakterisiert. Ersetzt man wieder p durch p + 1, so ergibt sich p+1 = p1 + h [q0 fp+1 + q1 fp + + qq fp+1q ] mit q,i :=
2 0

(6.63)

ds

+s . i =0,=1

(6.64)

Analog zu (6.62) wird auch (6.63) durch Iteration gelst. o

6.6.2

Allgemeine Mehrschrittverfahren

Alle besprochenen Mehrschritt- und Einschrittverfahren lassen sich gemeinsam in der folgenden Form beschreiben j+r + ar1 j+r1 + + a0 j = hF (xj ; j+r , j+r1 , . . . , j ; h; f ) . (6.65)

Ein durch (6.65) gegebenes Mehrschrittverfahren wird als r-Schrittverfahren bezeichnet. Die im vorhergehenden Unterabschnitt 6.6.1 beschriebenen Verfahren sind lineare r-Schrittverfahren, weil F linear von der Funktion f abhngt, a F (xj ; j+r , j+r1 , . . . , j ; h; f ) = br f (xj+r , j+r + + b0 f (xj , j ) , (6.66)

6.6. MEHRSCHRITTVERFAHREN

67

wobei bi , i = 0, . . . , r Konstanten sind. Betrachten wir als Beispiel das r = q + 1-Schrittverfahren von Adams-Bashforth, so haben die Koezienten die folgenden Werte: qq = 1 , und bqi = qi =
0

aq1 = = a0 = 0 ,
1 q

bq+1 = 0

(6.67)

ds

+s . i =0,=i

(6.68)

6.6.3

Konsistenz und Konvergenz von Mehrschrittverfahren

Wie bei Einschrittverfahren kann man den lokalen Diskretisierungfehler (x, y; h) eines Mehrschrittverfahrens (6.65) denieren, (x, y; h) := 1 [z(x + rh) + h
r1

ai z(x + ih)
i=0

hF (x; z(x + rh), z(x + (r 1)h), . . . , z(x); h; f )] , wobei z(x) die Lsung des Anfangswertproblems ist. o

(6.69)

Konsistenz eines Mehrschrittverfahrens: Ein Mehrschrittverfahren heit konsistent, falls fr jedes f F1 (a, b) eine Funktion u (h) existiert mit lim (h) = 0, sodass
h0

| (x, y; h)| (h) fr alle x [a, b] . u Man spricht von einem Verfahren p-ter Ordnung, falls fr f Fp (a, b) u p die Beziehung (h) = O(h ) gilt.

Dabei ist Fp (a, b) die Menge aller auf [a, b] p-mal stetig dierenzierbaren Funktionen. Davon zu unterscheiden ist die Konvergenz des Mehrschrittverfahrens, die sich auf die Gte der numerischen Lsung (x, ; h) bezieht. Die numerischen Nherungswerte u o a der Lsungen hngen von der Sttzstellenschrittweite h und den Fehlern i = i y(xi ) o a u an den r im Mehrschrittverfahren vorzugebenden Sttzstellen ab. Fr ein konvergentes u u Verfahren kann man nun erwarten, dass der globale Diskretisierungsfehler e(x, ; h) := (x; ; h) y(x) (6.70)

bei festem x fr h = hn = (x x0 )/n und n = 1, 2, . . . gegen 0 konvergiert, wenn auch u die Fehler (x, h) mit h 0 beliebig klein werden. Die Konvergenz des Mehrschrittverfahrens kann daher wie folgt deniert werden:

68

KAPITEL 6. GEWOHNLICHE DIFFERENTIALGLEICHUNGEN

Konvergenz eines Mehrschrittverfahrens: Ein Mehrschrittverfahren heit konvergent, falls


n

lim (x; ; hn ) = y(x) ,

hn :=

xx0 n

, mit n = 1, 2, . . . ,

falls fr alle x [a, b], fr alle f F1 (a, b) und alle Funktionen (z; h), fr die es u u u ein (h) gibt, die folgenden Beziehungen gengen, u |(z, h)| (h) fr alle z Rh und lim (h) = 0 . u
h0

Dabei ist die Menge Rh = {x0 + ih|i = 0, 1, 2, . . . }.

6.7

Extrapolationsverfahren

Eine weitere Technik zur Lsung von Anfangswertproblemen von gewnlichen Dieo o rentialgleichungen sind die sogenannten Extrapolationsverfahren. Diese sind besonders eektiv fr Diskretisierungsverfahren, die asymptotische Entwicklungen besitzen und u bei denen nur gerade Potenzen von h auftreten. Im Zusammenhang mit Extrapolationsverfahren spielt die sogenannte Graggsche Funktion S(x; h) eine entscheidende Rolle, 1 (6.71) S(x; h) = [(x h; h) + 2(x; h) + (x + h; h)] , 4 wobei (x; h) der erzielte Nherungswert der Lsung y(x) ist. a o Das Konzept der Extrapolationsverfahren beruht auf der asymptotischen Entwicklung des globalen Diskretisierungsfehlers fr lineare Mehrschrittverfahren. Dies kann u man am Beispiel des Anfangswertproblems y = f (x, y) , mit y(x0 ) = y0 und x0 [a, b] (6.72)

zeigen. Wir nehmen nun an, dass x {x0 + ih|i = 0, 1, 2, . . . } und berechnen die genherte Lsung (x; h) in folgender Weise, a o (x0 ; h) = y0 (x0 + h; h) = y0 + hf (x0 , y0 ) (x + h; h) = (x h; h) + 2hf (x, (x, (x; h))

(6.73)

Es wurde von Gragg [11] bewiesen, dass dieser Algorithmus auf [a, b] zu folgender Nherung (x; h) der exakten Lsung y(x) fhrt, a o u
N

(x; h) = y(x) +
k=1

h2k uk (x) + (1)x/h vk (x) + E2N +2 (x; h) .

(6.74)

6.7. EXTRAPOLATIONSVERFAHREN

69

Die Funktionen uk (x) und vk (x) sind unabhngig von h und das Restglied E2N +2 bleibt a bei festem x fr alle h beschrnkt. Der Fehler e(x; h) = (x; h) y(x) ist in erster u a Nherung a h2 u1 (x) + (1)x/h v1 (x) (6.75) und zeigt ein oszillierendes Verhalten in Bezug auf n = x/h. Die Graggsche Funktion erlaubt die Elimination der Oszillation im fhrenden Fehlerterm. Der in (6.74) gegebene u Algorithmus fhrt fr die Graggsche Funktion zu folgendem Zusammenhang u u S(x; h) = 1 [(x; h) + (x h; h) + hf (x, (x; h)] 2 1 = [(x; h) + (x + h; h) hf (x, (x; h)] 2 1 [(x + h; h) + 2(x; h) + (x h; h)] . = 4 1 [y(x + h) + y(x h)] 2

(6.76)

Setzt man die Entwicklung (6.74) in den Ausdruck (6.76) ein, so erhlt man a S(x; h) = 1 2 y(x) +
N

(6.77)

1 + 2

1 h2k uk (x) + [uk (x + h) + uk (x h)] 2 k=1


N x/h k=1

+ (1)

h2k vk (x) +

1 [vk (x + h) + vk (x h)] + O(h2N +2 ) 2

Entwickelt man nun y(x h), uk (x h) und vk (x, h) in Taylorreihen nach h, so erhlt a man den Ausdruck S(x; h) = y(x) + h2 u1 (x) +
N

1 d2 y (x) 2 dx2 (6.78)

+
k=2

h2k uk (x) + (1)x/h vk (x) + O(h2N +2 ) ,

welcher keinen oszillierenden Faktor im fhrenden Term enthlt. u a Der Algorithmus von Gragg lsst sich sehr einfach anwenden. Will man die Lsung a o an der Stelle x = x0 + H, so kann man fr ein h = H/n die Rekursion durchfhren u u 0 = y0 1 = 0 + hf (x0 , 0 ) , x1 = x0 + h , j+1 = j1 + 2hf (xj , j ) , xj+1 = xj + h fr j = 1, 2, . . . , n 1 u (6.79) (6.80)

Mit diesen Werte lsst sich die Graggsche Funktion fr das gegebene n bestimmen, a u S(; h) = x 1 [n + n 1 + hf (xn , n )] . 2 (6.81)

70

KAPITEL 6. GEWOHNLICHE DIFFERENTIALGLEICHUNGEN

Bei einem Extrapolationsverfahren berechnet man nun eine Folge von Funktionswerte mit n = 2, 4, 6, 8, . . . fr die Graggsche Funktion, d.h., man erhlt S(; hi ), u a x i = 1, 2, 3, . . . . Gem Gl. (6.78) ist die Abhngigkeit von S(x; h) bekannt, a a S(x; h) = a0 + a1 h2 + + ak h2k , (6.82)

sodass man unter Anwendung des Neville Algorithmus auf h = 0 extrapolieren kann.

6.8

Vergleich der Verfahren zur Lsung von Ano fangswertprobleme

In diesem Kapitel habe wir drei Klassen von Verfahren besprochen (a) Einschrittverfahren (b) Mehrschrittverfahren (c) Extrapolationsverfahren Einschritt-Verfahren und Extrapolationsverfahren erlauben eine optimale, an die jeweilige Lsung angepasste, Wahl der Schrittweite h. Nachteil der Einschrittverfaho ren ist die starre Festlegung der Ordnung und der relativ hohe Rechenaufwand (man bentigt zumindest p Aufrufe der Funktion f (x, y) bei einem Verfahren p-ter Ordo nung. Mehrschritt-Verfahren haben auch eine starre Ordnung, der Rechenaufwand ist zumindest bei linearen Mehrschrittverfahren im allgemeinen geringer. Allerdings hat man eine fest vorgegebene Schrittweite, sodass eine Adaptierung an das betrachtete Problem meist schwierig ist. Auerdem mssen die ersten Funktionswerte mittels eines u Einschrittverfahrens berechnet werden. Extrapolationsverfahren haben keine feste Ordnung. Durch Anhngen einer weitea ren Spalte lassen sich hohe Genauigkeiten mit relativ geringem Aufwand erreichen. Bei einfachen Problemen wirken sich allerdings die Vorteile nicht voll aus, sodass man die Lsung der Dierentialgleichung besser mit einem Einschrittverfahren durchfhrt. Bei o u komplexen Problemen sind Extrapolationsverfahren meist uberlegen.

Teil B Anwendungen: Simulation

71

Kapitel 7 Schwingungsbewegung
7.1 Die Bewegungsgleichung und ihre Lsung o

Wir betrachten zunchst eine an einer Feder aufgehngte Masse m, wie sie in Abb. 7.1 a a dargestellt ist. Im Gravitationsfeld der Erde sei die Ruhelage der Feder bei z = 0 . Bei Abweichung von der Ruhelage erfllt das System die Bewegungsgleichung u m d2 z = C(z 0 ) , dt2 (7.1)

wobei C die Federkonstante ist. Der lineare Zusammenhang zwischen Kraft und Auslenkung ist bei Federn in einem weiten Bereich erfllt. Die Wirkung der Gravitationskraft u ist dabei in der Ruheauslenkung 0 bereits bercksichtigt. Die Lsung von Gl. (7.1) ist u o

Abbildung 7.1: Anordnung einer Masse m an einer Feder mit Federkonstante C 73

111111111111111 000000000000000 111111111111111 000000000000000 111111111111111 000000000000000 111111111111111 000000000000000 1 z 0 1 0 1 0 1 0 1 0 1 0 1 0 ~ z 1 0 1 0 1 0 1 z 0 ~ 1 0 0 1 111111 000000 m 1 0 1 0 1 0 1 0
0

Bewegung der Masse m

74

KAPITEL 7. SCHWINGUNGSBEWEGUNG

ein Standardbeispiel bei der Behandlung von Dierentialgleichungen zweiter Ordnung. Man erhlt die allgemeine Lsung a o z(t) = A sin(0 t + ) , welche eine ungedmpfte Schwingung mit der Eigenfrequenz a 0 = C m (7.3) (7.2)

darstellt. Die Gren A und ergeben sich aus den Anfangsbedingungen, die stets o integraler Bestandteil einer Problemstellung im Zusammenhang mit einer Dierentialgleichung sein mssen. u

7.2

Lagrangeformalismus und Zustand im Phasenraum

Die Bewegungsgleichung (7.1) entspricht im Lagrange-Formalismus der EulerLagrange-Gleichung d L L = 0, (7.4) z dt z wobei z = folgt
dz dt

und L(z, z, t) die Lagrangefunktion des Systems ist. Aus Gleichung (7.1)

2L (7.5) = m = L(z, z, t) = 1 mz 2 + R(z, t)z + S(z, t) . 2 z z Die Integrationskonstanten R und S knnen dabei nur von z und t abhngen. Aus der o a Bewegungsgleichung lassen sich R(z, t) und S(z, t) nicht vollstndig bestimmen, da die a Lagrangefunktion nur bis auf eine Eichtransformation bestimmt werden kann, d.h., d L(z, z, t) = L(z, z, t) + (z, t) dt (7.6)

erfllt dieselbe Euler-Lagrange-Gleichungen wie L(z, z, t), wobei (z, t) eine beliebige u Eichfunktion ist. Insbesondere ergibt sich aus (7.5) und (7.6) 1 z + S(z, t) + . L(z, z, t) = 2 mz 2 + R(z, t) + z t (7.7)

Ausntzen der Eichfreiheit erlaubt ohne Einschrnkung der Allgemeinheit die Annahu a me = 0. (7.8) R(z, t) = R(z, t) + z Stellt man nun die Euler-Lagrange-Gleichung mit L auf und vergleicht die Terme mit jenen der Bewegungsgleichung (7.1), so ergibt sich 1 S(z, t) = S(z, t) + = C z 2 + D(t) , t 2 (7.9)

7.2. LAGRANGEFORMALISMUS UND ZUSTAND IM PHASENRAUM

75

E3 E2

E1 ~ z

Abbildung 7.2: Phasendiagramm ungedmpfter Schwingungsbewegungen (mathematia sches Pendel) mit unterschiedlichen Gesamtenergien E3 > E2 > E1 . wobei Wie man aus Gleichung (7.9) erkennt, hat man in S(z, t) noch eine Eichfreiheit, sodass ohne Einschrnkung der Allgemeinheit D(t) = 0 gesetzt werden kann. Damit ergibt a sich die Lagrange-Funktion der in Abb. 7.1 dargestellten Anordnung mit
1 L(z, z, t) = 1 mz 2 2 C z 2 , 2

z = z 0 .

(7.10)

(7.11)

wobei wir hier die Unterscheidung zwischen L und L unterdrckt haben. Mit dem u verallgemeinerten Impuls des Systems, p= L = mz , z (7.12)

erhlt man uber die Legendre-Transformation die Hamiltonfunktion des linearen hara monischen Oszillators
1 H(z, p, t) = z p L(z, z, t) = 1 mz 2 + 2 C z 2 . 2

(7.13)

Da die Hamiltonfunktion keine explizite Zeitabhngigkeit aufweist, ist die Gesamtenera gie des Systems eine Erhaltungsgre. o Fr eine eingehende physikalische Diskussion ist es sinnvoll, die Bewegung des Sysu tems im Phasenraum zu betrachten. Die allgemeine Lsung (7.2) liefert im Phaseno raumdiagramm eine Ellipse (siehe Abb. 7.2), welche durch die Gesamtenergie charakterisiert werden kann. Das Auftreten einer geschlossenen Kurve (im gegenstndlichen a Fall eine Ellipse) im Phasenraum zeigt eine periodische Bewegung des Systems an.

76

KAPITEL 7. SCHWINGUNGSBEWEGUNG

7.2.1

Die gedmpfte Schwingungsbewegung a

In realistischen Systemen ist stets eine Dmpfung vorhanden, sodass die Energie keine a Erhaltungsgre ist. Ein typischer Dmpfungsterm ist der Luftwiderstand, welcher in o a einer laminaren Strmung proportional zur Geschwindigkeit der Masse ist. Die Beweo gungsgleichung (7.1) muss nun um diesen Reibungsterm ergnzt werden, a m d2 z = C(z 0 ) z , dt2 (7.14)

wobei ein konstanter Dmpfungskoezient ist. Fr diesen einfachen Reibungsterm a u lsst sich wieder eine allgemeine Lsung der Bewegungsgleichung angeben, a o z(t) = A exp(t) sin(t + ) , welche eine gedmpfte Schwingung mit der Frequenz a = C m 2m
2

(7.15)

(7.16)

darstellt. Die Gren A und ergeben sich wieder aus den Anfangsbedingungen. Die o Abweichung der Frequenz von der Eigenfrequenz 0 des ungedmpften Systems steigt a mit steigender Dmpfung. Auerdem bewirkt die Dmpfung eine exponentiell fallende a a Amplitude der Lsung, sodass die Masse m schlielich zum Stillstand kommt. o Der Dmpfungsterm kann nicht durch eine Lagrange-Funktion beschrieben werden, a sondern geht in die Euler-Lagrange-Gleichung als nichtkonservativer Term ein, d L z dt L z = z . (7.17)

Dabei ist die Lagrange-Funktion jene der ungedmpften Bewegung (7.11) und der vera allgemeinerte Impuls durch (7.12) gegeben. Die Dmpfung bewirkt eine stndige Vera a ringerung der Schwingungsenergie, sodass sich eine zum Koordinatenursprung laufende Kurve im Phasenraum ergibt. Diese ist in Abb. 7.3 gemeinsam mit der zeitlichen Entwicklung der Auslenkung dargestellt.

7.2.2

Frequenzspektrum

Neben der zeitlichen Entwicklung interessiert bei allgemeinen Schwingungsbewegungen vor allem das Frequenzspektrum Z(). Dieses ergibt sich uber Fouriertransformation aus der zeitlichen Entwicklung
+

Z() =

z(t)eit dt

(7.18)

Ist die Funktion z(t) reell-wertig, so hat die Fouriertransformation die Symmetrie Z() = Z() .

7.2. LAGRANGEFORMALISMUS UND ZUSTAND IM PHASENRAUM


1.0 0.8 0.6 0.4 0.2 0 0.2 0.4 0.6 0.8 1.0 6

77
(b)

(a)

4 2 p(t) 0 2 4

z(t)

t 0.5 0 0.5 1.0

10

15

20

25

6 1.0

z(t)

Abbildung 7.3: Die gedmpfte Schwingung. (a) Zeitliche Bewegung; (b) Phasendiaa gramm der gedmpfter Schwingung. a Setzt man fr z(t) die Lsung (7.2) des ungedmpften Pendels ein, so ergibt sich u o a die Fouriertransformierte
+

Z() =

dteit A sin(0 t + ) = iA ei ( 0 ) ei ( + 0 ) .

(7.19)

Wir haben dabei angenommen, dass die Schwingung zu allen Zeiten im Gang ist. Nimmt man an, dass die Auslenkung z(t) = 0 fr t < 0, so erhlt man auf Grund der Identitt, u a a
0

dteit =

1 2

dteit ,

(7.20)

fr die Fouriertransformierte u
+

Z() =
0

dteit A sin(0 t + ) = i A ei ( 0 ) ei ( + 0 ) . 2

(7.21)

In beiden Fllen zeigt das Spektrum die typische Form einer periodischen Bewegung, a nmlich das Auftreten von Delta-Funktionen bei = 0 . a Hat das Pendel eine Dmpfung, so hat man die Fouriertransformierte der Lsung a o (7.15) zu bilden, 1 ei ei Z() = A 2 ( + 0 ) + i ( 0 ) + i . (7.22)

Je nach Strke der Dmpfung kommt es zu einer Verschiebung (Gleichung (7.16) und a a Verbreiterung der Resonanz (Abb. 7.4). Fr die in diesem Kapitel behandelten Beispiele haben wir nur die Realteile der u Fouriertransformierten betrachtet, Z() =
0

dtz(t) cos(t) .

(7.23)

Diese sind leicht darzustellen und zeigen bei einer periodischen Bewegung (ungedmpfte a Federschwingung, periodische erzwungene Federschwingung) gem (7.21) das Auftrea ten einer Linie in der Spektralverteilung. Bei einer gedmpften Schwingung kommt es a zu einer Verbreiterung der Linie (siehe Abb. 7.4).

78
1.0 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0.0

KAPITEL 7. SCHWINGUNGSBEWEGUNG
=0.01 =0.05 =0.25

0.6

0.8

1.0

/ 0

1.2

1.4

1.0 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0.0

(/ )0

(/ )0

0.5

1.5 1.0 / 0

Abbildung 7.4: Die Spektralanalyse einer (a) freien ungedmpften [ = 0.01 Nsm1 ] a und gedmpften Federbewegung [ = 0.05, 0.025 Nsm1 ] (b) einer getriebenen Feder. a Die Verteilungen sind normiert auf den Maximalwert. Die Frequenz ist in Einheiten der Eigenfrequenz gegeben.

7.3

Das getriebene physikalische Pendel

Abschlieend zu diesem Kapitel wollen wir kurz das getriebene physikalische Pendel betrachten (Abb. 7.5). Wir nehmen dabei an, dass eine Masse m an einer Stange mit fester Lnge L beweglich aufgehngt ist und eine Schwingung im Gravitationsfeld in a a einer Ebene ausfhrt. Unter Bercksichtigung des xen Abstandes L zwischen Masse u u und Aufhngungspunkt, reduziert sich die Bewegungsgleichung zu a mL d2 d + mg sin() = F sin(t + ) , + L 2 dt dt (7.24)

wobei g die Erdbeschleunigung, F und die Strke bzw. die Frequenz der treibena den Kraft und deren Phasenverschiebung sind. Es ist dabei festzuhalten, dass die Treiberkraft auf die Masse in Richtung der Drehbewegung angreift. Nach der mathematischen Formulierung des physikalischen Problems ist der erste Schritt bei der numerischen Umsetzung die Suche nach einer geeigneten Skalierung des Systems, sodass die Variablen in natrlichen Einheiten des betrachteten Systems anu gegeben werden. Beim physikalischen Pendel bietet sich die Eigenfrequenz des Pendels fr die Denition der Zeiteinheit an, d.h., = t/t0 mit u t0 = 1 = 0 L . g (7.25)

Damit ergibt sich die nichtlineare Dierentialgleichung zweiter Ordnung fr den Ausu lenkwinkel (t) in Radian d2 d + + sin() = f sin( + ) , 2 d d 0 (7.26)

7.3. DAS GETRIEBENE PHYSIKALISCHE PENDEL

79

Aufhngung des Pendels Antrieb des Pendels F

Bewegung der Masse m

m (t) mg Gravitationskraft

Abbildung 7.5: Anordnung eines getriebenen physikalischen Pendels wobei die dimensionslosen Koezienten und f durch = m L g und f = F mL (7.27)

gegeben sind. Wir betrachten zunchst das freie physikalische Pendel, d.h., F = 0. Bei kleiner a Auslenkung ergibt sich zunchst das gleiche Bild wie bei der einfachen Schwingungsa bewegung. Erhht man die Auslenkung der Schwingung auf uber 90 Grad, so erkennt o man im zeitlichen Verlauf deutliche Abweichungen von einer Sinuskurve (Abb. 7.6), die sich auch im Phasenraum bemerkbar macht. Im Frequenzspektrum erkennt man nun bei greren Auslenkungen auch das Auftreten von Oberwellen, die der Eigenfrequenz o uberlagert sind. Das Auftreten von Oberwellen ist eine direkte Konsequenz der Nicht linearitt der Gleichung. Die Dmpfung fhrt wie im Fall der Schwingungsgleichung a a u wieder zu einer Verbreiterung der Eigenresonanz. Fhrt man eine periodische Treiberkraft ein, so kann es bei ausreichend starker u Treiberkraft zu einem Uberschlag des Pendels kommen, d.h., der Auslenkwinkel uber steigt die Grenzen des Intervall [, ]. Bei ausreichend starker Treiberkraft erfolgt der Ubergang zu einer chaotischen Bewegung, welche durch ein exponentiell abfallendes Spektrum charakterisiert ist (siehe Abb. 7.7).

80

KAPITEL 7. SCHWINGUNGSBEWEGUNG

4 3 2 1 0 1 2 3 4 4 3 2 1 0 1 2 3 4 4 3 2 1 () 0 1 2 3 4 0 0 0

(=0) = 179

10

15

20

25

30

35

40

45

50

1.0 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0.0 1.0 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0.0

(=0) = 179

|()|

()

(=0) = 90

(=0) = 90

10

15

20

25

30

35

40

45

50

|()|

()

(=0) = 20

10

15

20

25

30

35

40

45

50

2.5 2.0 1.5 1.0 0.5 . 0.0 0.5 1.0 1.5 2.0 2.5

Abbildung 7.6: Die Schwingungen eines freien physikalischen Pendels. In der linken Spalte sind die Lsungen fr ( ) fr verschiedene Startwerte ( = 0) gezeigt. In o u u der rechten Spalte sind die Spektralanalysen der Lsungen mit den Startwerten ( = o 0) = 179 und 90 Grad angegeben. Ein Phasendiagramm des physikalischen Pendels ist in der rechten Spalte unten gezeigt.

7.3. DAS GETRIEBENE PHYSIKALISCHE PENDEL

81

2.5 2.0 1.5 1.0 0.5 0.0 0.5 1.0 1.5 2.0 2.5 2.0 1.5 1.0 0.5 0.0 0.5 1.0 1.5

F=2 N

50 100 150 200 250 300 350 400 450 500

100 0 100 200 300 400 500 600 700 800 3 2 1

F=7 N

50 100 150 200 250 300 350 400 450 500

2 2.5 2.0 1.5 1.0 0.5 0.0 0.5 1.0 1.5 2.0 2.5 1.0 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0.0 0 1 2 3 4 5

1 2 3 4 200 1.0 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0.0 150 100 50 0 50

|()|

|()|

Abbildung 7.7: Lsung, Phasendiagramm und Spektralanalyse fr ein mit 2 bzw. 7 N o u getriebenes ungedmpftes physikalisches Pendel. Die Treiberfrequenz ist mit = 3.2 a s1 angenommen. Man erkennt die beiden Extremflle: (a) eine erzwungene Schwingung a mit Schwebungserscheinungen und (b) den Ubergang zu chaotischer Bewegung bei groer Treiberkraft.

82

KAPITEL 7. SCHWINGUNGSBEWEGUNG

Kapitel 8 Das Wasserstoatom


8.1 Die radiale Schrdingergleichung und ihre o Lsungen o

Fr explizit zeitunabhngige Hamiltonoperatoren ist es zweckmig die Schrdingeru a a o gleichung H = i (8.1) t durch den Ansatz stationrer Lsungen = exp(iEt/ ) in die zeitunabhngige a o a Schrdingergleichung uberzufhren. Fr ein Einteilchenproblem erhlt man dann o u u a
2

2m

2 + V (r) (r) = E(r) ,

(8.2)

wobei V (r) die Wechselwirkung ist, die ein Teilchen der Masse m erfhrt. a Im folgenden beschrnken wir uns auf sphrisch symmetrische Potentiale, d.h., a a V (r) = V (r), sodass eine Entwicklung von (r) nach Kugelchenfunktionen Ym (, ) a zweckmig ist, a + u (r) am Ym (, ) . (8.3) (r) = r m= =0 Die Gren am sind geeignet gewhlte Vorfaktoren, welche vom betrachteten physikao a lischen Problem anhngen. Einsetzen von (8.3) in (8.2) und Ausntzen der Orthogoa u nalitt der Kugelchenfunktionen a a
2

d sin
0 0

dYm (, )Y m (, ) = mm

(8.4)

fhrt zur sogenannten radialen Schrdingergleichung, u o


2

2m

( + 1) d2 2 dr r2

+ V (r) u (r) = Eu (r) . 83

(8.5)

84

KAPITEL 8. DAS WASSERSTOFFATOM

In praktischen Rechnungen wird diese Gleichung meist in geeigneter Form skaliert, d.h., es werden die Einheiten an das betrachtete Problem angepasst. Bedingt durch den Zentrifugalwall (+1)/r2 tritt deshalb fr = 0 eine Singularitt u a bei r = 0 auf. Wie bereits in den Methoden der theoretischen Physik gezeigt wurde, sprechen wir bei r = 0 von einer auerwesentlichen singulren Stelle. Die Lsung kann a o an dieser Stelle als verallgemeinerte Potenzreihe angesetzt werden, d.h., u (r) =
i=0

ci r+i .

(8.6)

Einsetzen des Potenzreihenansatzes (8.6) in die radiale Schrdingergleichung (8.5) und o 2 Vergleich der Koezienten der niedrigsten Potenz r liefert die zwei mglichen Werte o fr . Bezglich des Verhaltens bei r = 0 unterscheidet man daher zwei Typen von u u Lsungen: o
r0

lim (r)r(+1) = a
r0

regulre Lsung , a o irregulre Lsung . a o

(8.7) (8.8)

lim (r)r = b

wobei a und b Konstanten sind. Abgesehen von der Normierung ist die regulre Lsung a o durch die Randbedingung (8.7) eindeutig bestimmt. Im Gegensatz dazu bilden die irregulren Lsungen (8.8) eine eindimensionale Mannigfaltigkeit. Unter den irregulren a o a Lsungen sind besonders die Jostlsungen hervorzuheben, weil sie in analytischen Beo o handlungen eine wichtige Rolle spielen. Die Jostlsungen sind durch die Randbedino gungen lim eikr f (k, r) = 1 (8.9)
r

gegeben. Eine lineare Dierentialgleichung 2. Ordnung hat zwei linear unabhngige a Lsungen. Die beiden Jostlsungen f+ (k, r) und f (k, r) stellen ein derartiges Duppel o o dar. Zwei Funktionen (k, r) und (k, r) sind linear unabhngig, wenn ihre Wronskia Determinante W { , } = (8.10) nicht verschwindet. Die Wronski-Determinante der beiden Jostlsungen ergibt o + W {f , f } = 2ik, die beiden Jostlsungen sind deshalb linear unabhngige Funko a tionen.

8.2

Die numerische Lsung der radialen Schrdino o gergleichung

Im folgenden beschrnken wir uns auf die Betrachtung der radialen Schrdingergleia o chung, welche auf die Form 6.40 mit verschwindenden Quellterm S(x) = 0 gebracht werden kann, wobei wir im Hinblick auf die Interpretation fr die Variable x die Vau riable r verwenden. Fr zwei Teilchen, die uber ein Potential V (r) = v(|r2 r1 |) u

8.2. DIE NUMERISCHE LOSUNG DER RADIALEN SCHRODINGERGLEICHUNG85 wechselwirken, hat w(r) die Form w(r) = 2
2

(E V (r))

( + 1) . r2

(8.11)

Dabei ist die reduzierte Masse des Systems, die Bahndrehimpulsquantenzahl und E die Energie im Schwerpunktsystem. Die Wellenfunktion physikalischer Probleme ist meist die regulre Lsung. Gem Gl. (8.7) ist die regulre Lsung durch die Randbea o a a o dingung am Ursprung charakterisiert,
r0

lim y(r) = r+1 .

(8.12)

Dies bedeutet, dass die regulre Lsung y(r) bei r = 0 unabhngig von der Bahndrea o a himpulsquantenzahl verschwindet, d.h., y0 = y(r = 0) = 0. An der ersten Sttzstelle u wird vorerst ein beliebiger Wert y1 = y(r = h) = a fr die Lsung angesetzt. Dies u o stellt keine Einschrnkung dar, da aufgrund der Linearitt der Schrdingergleichung a a o die Lsung nachtrglich auf den richtigen Wert normiert werden kann. Ausgehend von o a den Anfangswerten y0 = 0 und y1 = a und den damit bekannten Werten der Hilfsfunktion, Q0 und Q1 , wird dann die Lsung yn , n = 2, 3, . . . rekursiv uber die Gleichung o (6.47) konstruiert: Q2 = 12y1 10Q1 Q0 Q3 = 12y2 10Q2 Q1 ...... Qn+1 = 12yn 10Qn Qn1 ...... und yn+1 = Qn+1 1 + h2 wn+1 12
1

und und

y2 = Q2 1 + y3 = Q3

h2 w2 12

(8.13) (8.14) (8.15) (8.16) (8.17)

h2 1 + w3 12

Die Durchfhrung dieser Rekursion ist unproblematisch. Einzig bei der Bestimmung u von Q0 muss die Singularitt des Zentrifugalwalls bercksichtigt werden. Eine genauere a u Betrachtung liefert: Q0 h2 ( + 1) y(r) = lim 1 r0 12 r2 h2 ( + 1) +1 = a0 r 12 r2 1 = y1 ,1 , 6

(8.18)

wobei wir die Reihenentwicklung fr y1 = a0 h2 eingesetzt haben. Der Wert der Hilfsu funktion bei r = 0 weicht also nur bei = 1 von Null ab.

86

KAPITEL 8. DAS WASSERSTOFFATOM

Ein Beispiel sind die mit diesem Verfahren bestimmten regulren Lsungen der a o radialen Schrdingergleichung mit V = 0 bei verschiedenen Bahndrehimpulsquanteno zahlen . Fr die numerische Rekursion wurde eine Schrittweite von h = = 0.1 veru wendet. Die erhaltenen Lsungen entsprechen den sphrischen Besselfunktionen und o a weisen bei dieser Gitterannahme eine mittlere Abweichung von weniger als 0.1% auf. Im Rahmen theoretischer Rechnungen ist auch die Berechnung von irregulren a Lsungen erforderlich. Diese sind im allgemeinen durch asymptotische Randbedino gungen, d.h., bei r , deniert. Betrachten wir als Beispiel die Berechnung der Jostlsungen f (). Diese sind durch die asymptotische Randbedingung o f () =1 H () lim (8.19)

festgelegt, wobei H () die einlaufenden () und auslaufenden (+) Hankelfunktionen sind. Fr die numerische Rechnung der Jostlsungen geht man daher von Sttzu o u punkten rN und rN +1 aus, die auerhalb des Wechselwirkungsbereiches liegen, d.h., VN = VN +1 = 0. An diesen Sttzstellen sind daher die Lsungen durch u o yN = f (krN ) = H (k, rN )

und

yN +1 = f (krN +1 ) = H (krN +1 )

(8.20)

gegeben. Die Werte der Lsung yn fr n = N 1, N 2, . . . , 1 werden nach Gleichung o u (6.47) durch Einwrtsrekursion a Qn1 = 12yn 10Qn Qn+1 und yn1 = Qn1 h2 1 + wn1 12
1

(8.21)

rekursiv bestimmt. Der Funktionswert y0 kann abgesehen von = 0 nicht bestimmt werden. Dies entspricht dem singulren Verhalten irregulrer Lsungen fr r 0. a a o u

8.3

Berechnung von Bindungszustnden a

Ein wichtiges Problem in der Atom- und Kernphysik ist die Bestimmung von Bindungszustnden von Einteilchenproblemen. Dabei ist es unwesentlich, ob ein tatschlia a ches Einteilchenproblem wie im H-Atom oder ein eektives Einteilchenproblem (z.B. Hartree-Fock-Modell) vorliegt. Die Einteilchenzustnde stellen den Ausgangspunkt fr a u Berechnungen der Atom- und Kernstruktur jedes Vielteilchensystems dar. Die mathematische Problemstellung beteht fr Bindungszustnde in der Bestimmung der Eigenu a zustnde und Eigenwerte im diskreten Spektrum des Einteilchen-Hamiltonoperators H. a Fr ein sphrisch symmetrisches Potential V (r) lautet die radiale Schrdingergleichung u a o d2 ( + 1) + V (r) un (r) = n un (r). 2 2 dr r2
0 2

(8.22)

Die Eigenfunktionen sind unter der Nebenbedingung der Normierbarkeit dru2 (r) = 1 n (8.23)

8.3. BERECHNUNG VON BINDUNGSZUSTANDEN

87

zu bestimmen. Die Forderung der quadratischen Normierbarkeit der Lsung un (r) o liefert eine Einschrnkung auf diskrete Energieeigenwerte n (siehe z.B. die analya tische Ableitung der Bindungsenergien im Wasserstoatom). Gilt fr das Potentiu al limr V (r) = 0, dann haben alle Bindungszustnde negative Energieeigenwerte, a n < 0. Aufgrund ihrer Normierbarkeitsforderung sind die Eigenfunktionen fr Bindungsu zustnde regulre Lsungen der radialen Schrdingergleichung zu einer vorerst unbea a o o kannten Bindungsenergie n . Fr r 0 hat un (r) die Eigenschaft u
r0

lim un (r)r(+1) = an ,

(8.24)

wobei an eine Konstante ist, die dazu dient, die Normierungsbedingung (8.23) zu erfllen. Fr asymptotische r-Werte muss die Bindungswellenfunktion dem Grenzwert u u un (r) + r H (in r) n lim gengen, wobei u n = 2n
2

= lim

un (r) = An r en r

(8.25)

(8.26)

Durch Integration der radialen Schrdingergleichung von groen r-Werten begino ned, lsst sich Q0 bestimmen. Ein Energieeigenwert ist dann gefunden, wenn Q0 = a 1 1 un (h) erfllt. Der Energieeigenwert lsst sich also als Nullstellensuche der Funku a 6 tion Q0 (n ) formulieren. Man bezeichnet solche Verfahren allgemein auch als Schieverfahren.

88

KAPITEL 8. DAS WASSERSTOFFATOM

Kapitel 9 Finite-Dierenzen-Methode
Ein numerisch einfacher Weg zur Lsung gewhnlicher und partieller Dierentialgleio o chungen ist die Verwendung der Finite-Dierenzen-Methode (FDM). Sie basiert auf der Kombination der Formeln fr Ableitungen aus Abschnitt 2.2 (Umwandlung von u Dierentialen in Dierenzenquotienten) mit den Methoden der linearen Algebra, die wir in Kapitel 5 kennen gelernt haben. Als Beispiel werden wir mithilfe der FDM Nherungen an die Lsungen der staa o tionren und zeitabhngigen Schrdingergleichung nden. Die dabei verwendeten Mea a o thoden knnen natrlich auf alle quivalenten Probleme angewendet werden. o u a

9.1

Stationre Schrdingergleichung a o
2

Die Schrdingergleichung in einer Dimension lautet o i t (x; t) = H(x; t) =


2 x + V (x; t) (x; t) .

2M

(9.1)

Ist der Hamiltonoperator H zeitunabhngig, kann man die Dierentialgleichung durch a einen Separationsansatz (x; t) = (x)(t) vereinfachen und erhlt fr den ortsa u abhngigen Teil die stationre Schrdingergleichung a a o H(x) = d2 + V (x) (x) = E(x) . 2M dx2
2

(9.2)

Erster Schritt bei der Lsung einer Dierentialgleichung mithilfe der FDM ist die o Wahl der Gitterpunkte xi = x0 + i x, auf denen die Lsungsfunktion berechnet o werden soll. Diese Wahl hngt von der gewnschten Rechengenauigkeit und den zur a u Verfgung stehenden Ressourcen (Arbeitsspeicher, Rechenzeit) ab. Ist ein passendes u Gitter festgelegt, so kann z.B. die zweite Ableitung von an der Stelle xi durch (xi1 ) 2(xi ) + (xx+1 ) d2 (xi ) 2 dx x2 89

90

KAPITEL 9. FINITE-DIFFERENZEN-METHODE

angenhert werden. Damit ergibt sich fr die Schrdingergleichung a u o 1 [(xi+1 ) 2(xi ) + (xi1 )] + [V (xi ) E](xi ) = 0 , 2M x2
2

(9.3)

die in eine Rekursionsvorschrift fr die Amplitude der Wellenfunktion an den Gitteru punkten (xi ) umgewandelt wird, (xi+1 ) = 2+ 2M x2
2

[V (xi ) E] (xi ) (xi1 ) .

(9.4)

Gl. 9.4 ist die gesuchte Finite-Dierenzen-Gleichung, die unter Bercksichtigung der u Randbedingungen rekursiv gelst wird (vgl. Numerov-Verfahren, Abschnitt 6.5). o Als Beispiel betrachten wir die Grundzustandswellenfunktion des harmonischen Oszillators mit (skalierter) Kreisfrequenz = 1 und berechnet mit unterschiedlicher Schrittweite x (Abb. 9.1). Wie in Kapitel 6 ausgefhrt, ist eine verringerte Schrittweiu te nicht gleichbedeutend mit vergrerter Genauigkeit, weshalb eine zum verwendeten o Zahlentyp (hier Fortran95 REAL) passende Schrittweite gewhlt werden muss. a

Abbildung 9.1: Lsung der stationren Schrdingergleichung fr den harmonischen o a o u Oszillator fr unterschiedliche Schrittweiten x. Verkleinerung von x fhrt nicht u u unbedingt zu einer genaueren Berechnung der Wellenfunktion (siehe Abb. 6.1). Als Alternative zur Verwendung des Schieverfahrens zur Suche nach Eigenwerten und Eigenfunktionen von H kann Gl. 9.4 auch als Matrixgleichung angeschrieben werden, indem man (x) in einen Vektor verwandelt, dessen Komponenten der Wel-

9.2. ZEITABHANGIGE SCHRODINGERGLEICHUNG lenfunktion an den Stellen xi entsprechen, (x) =

91

(x0 ) (x1 ) . . . (xN )

Setzt man fr V (x0 ) und V (xN ) groe Zahlenwerte ein, bendet sich das System in u einem (fast) unendlich tiefen Potentialtopf, was gleichbedeutend mit der Wahl von Dirichlet-Randbedingungen (x0 ) = (xN ) = 0 ist. Damit sind alle Bausteine zur Konstruktion der Hamiltonmatrix H vorhanden und die Berechnung z.B. der Grundzustandsenergie und -wellenfunktion reduziert sich auf die Suche nach dem kleinsten Eigenwert samt zugehrigem Eigenvektor der (N + 1) (N + 1)-Matrix o 2 1 0 ... 0 V (x0 ) 0 ... 0 1 2 1 0 ... 2 0 V (x1 ) 0 ... 0 1 2 1 . . . + H= . . ... 2 . 2M x . . ... . . 0 ... 0 V (xN ) 0 ... 0 1 2 (9.7) Z.B. kann man sich einer Variante des Lanczos-Verfahrens bedienen, in der die Dimension des Krylov-Raumes auf m = 2 beschrnkt ist (Abschnitt 5.3.2), wobei jeweils a der Eigenvektor zum kleineren der beiden Eigenwerte als Startvektor der folgenden Iteration verwendet wird, bis das Konvergenzkriterium erfllt ist. u

Das Potential V (x) wirkt lokal an den Gitterpunkten xi und wird durch eine Diagonalmatrix beschrieben V (x0 ) 0 ... 0 0 V (x1 ) 0 ... V (x) = (9.6) . . ... . . 0 ... 0 V (xN )

Damit wird die zweite Ableitung von an allen Stellen xi als Matrix-VektorMultiplikation formuliert, 2 1 0 ... 0 (x0 ) 1 2 1 0 ... (x1 ) 1 0 d2 1 2 1 . . . (9.5) (x) . . 2 2 . dx x . . ... . . (xN ) 0 ... 0 1 2

9.2

Zeitabhngige Schrodingergleichung a

Hngt der Hamiltonoperator (z.B. durch ein externes, zeitabhngiges Potential V (x; t)) a a von der Zeit ab, oder will man die Propagation eines Wellenpaketes beschreiben, muss

92

KAPITEL 9. FINITE-DIFFERENZEN-METHODE

die zeitabhngige Schrdingergleichung gelst werden. Auch die Zeitachse wird jetzt a o o diskretisiert, ti = t0 + it, und eine Finite-Dierenzen-Gleichung in der Zeit abgeleitet. Die Zeitentwicklung des Systems uber eine kleine Zeitspanne t (dabei wird ange nommen, dass H whrend t konstant bleibt) wird durch den Zeitentwicklungsoperator a U (t t + t) = eiHt (x; t + t) = eiHt (x; t)

beschrieben, wobei die e-Funktion der Hamiltonmatrix ebenfalls eine Matrix ist. Ihre nherungsweise Berechnung ist die Basis verschiedener Methoden zur Propagation von a (x; t), eiHt

iHt . . . explizites, implizites Eulerverfahren


iHt/2 +iHt/2

. . . Crank-Nicolson-Verfahren

(9.8)

Ausgehend von der zuvor berechneten Wellenfunktion (x; t0 ) werden die aus Gl. 9.8 resultierenden Finite-Dierenzen-Gleichungen gelst, die hier in Matrixform angegeben o werden.

9.2.1

explizites Eulerverfahren

Fr das explizite Eulerverfahren (auch Euler-Vorwrtsverfahren; entspricht dem Pou a lygonzugverfahren aus Abschnitt 6.3) wird die Entwicklung der Propagationsmatrix U nach dem zweiten Glied abgebrochen. Die Zeitpropagation reduziert sich auf eine Abfolge von Matrix-Vektor-Multiplikationen 2 1 0 ... 0 1 2 1 0 . . . i 2 t 0 1 2 1 . . . (xk ; t). (xi ; t + t) ik [1 itV (xk )] + 2M x2 . ... . . 0 ... 0 1 2 (9.9) Dieses Verfahren ist zwar konsistent (siehe Kapitel 6), allerdings nur fr kleine Zeitu schritte t x2 /2 auch numerisch stabil. Weiters ist die Propagationsmatrix nicht unitr, sodass die Wellenfunktion nach jedem Zeitschritt normiert werden muss. a

9.2.2

implizites Eulerverfahren

Angenommen, man kennt die Wellenfunktion zum Zeitpunkt t + t, so kann man mithilfe eines Schrittes zurck in der Zeit U (t+t t) = exp(+iHt) die Wellenfunktion u (x; t) bestimmen, was formal als Gleichung eiHt (x; t + t) = (x; t)

9.2. ZEITABHANGIGE SCHRODINGERGLEICHUNG

93

angeschrieben werden kann. Da in der Simulation aber (x; t) bekannt ist und sich a eiHt + iHt berechnen lsst, ist statt der Matrix-Vektor-Multiplikation des expliziten Eulerverfahrens im impliziten Eulerverfahren (auch Euler-Rckwrtsverfahren) u a ein lineares Gleichungssystem 2 1 0 ... 0 1 2 1 0 . . . 2 i t 0 1 2 1 . . . (xi ; t + t) (xk ; t) ik [1 + itV (xk )] 2M x2 . ... . . 0 ... 0 1 2

(9.10) zu lsen, was einen nur geringen numerischen Mehraufwand bedeutet. Der Vorteil des o Verfahrens liegt darin, dass es immer numerisch stabil ist. Auch im impliziten Eulerverfahren muss die Wellenfunktion nach jedem Zeitschritt normiert werden.

9.2.3

Crank-Nicolson-Verfahren

Das Crank-Nicolson-Verfahren besteht aus einer Kombination der beiden Eulerverfahren, d.h., fr die Propagation der Wellenfunktion um einen Zeitschritt t wird u das Ergebnis eines expliziten Eulerschrittes als Lsungsvektor fr den impliziten Euo u lerschritt verwendet. Dieses Verfahren verbindet (numerische) Einfachheit mit relativ groer Genauigkeit. Zudem ist es konsistent, numerisch stabil und die Normierung der Wellenfunktion bleibt erhalten (unitr). Fr zu groe Zeitschritte (t x2 /2) a u knnen allerdings strende Oszillationen auftreten. o o Der Fehler pro Zeitschritt ist wegen 1 x/2 x2 x3 x4 = 1x+ + ... 1 + x/2 2 4 8 x2 x3 x4 ex = 1 x + + ... 2 6 24 von der Ordnung O(t3 ) und damit um eine Ordnung besser als in den beiden Eulerverfahren. Der Preis fr diese Verbesserung ist der hhere Rechenaufwand zur Lsung u o o von (9.11) ( + iHt)(x; t + t) = ( iHt)(x; t) , der durch den Ausfall des Normierungsschrittes nicht ausgeglichen wird. Betrachten wir als Beispiel die Simulation der Streuung des Gauschen Wellenpaketes 1/4 2 2 2 e(xx0 ) /a eik0 x (x; 0) = 2 a

an einem Potentialwall (Abb. 9.2). Die Wellenzahl k0 und der Breiteparameter a des Wellenpaketes zum Zeitpunkt t = 0 wurden auf 1 gesetzt. Im Bild ist die Aufenthaltswahrscheinlichkeit |(x; t)|2 zu den Zeitpunkten t = 0 25 a.u. zu sehen. Wie erwartet, wird ein Teil des Wellenpaketes reektiert, ein Teil uberwindet die Barriere.

94

KAPITEL 9. FINITE-DIFFERENZEN-METHODE

Abbildung 9.2: Streuung eines Wellenpaketes mit einer Geschwindigkeit von v = 1 a.u. an einem Potentialwall der Hhe 0.5 a.u. und Breite 5 a.u., dessen Position durch den o grauen Bereich zwischen x = 0 und x = 5 angedeutet ist. Atomare Einheiten (a.u.) sind durch e = = Me = 1 deniert, 1 a.u. Lnge 0.5 , 1 a.u. Energie = 27.21 a A eV. In diesen Einheiten ist der Impuls eines Elektrons wegen Me = 1 gleich seiner Geschwindigkeit.

9.2. ZEITABHANGIGE SCHRODINGERGLEICHUNG

95

9.2.4

Andere Propagationsmethoden

Natrlich stellt Gl. 9.8 nicht die einzige Methode dar, die Zeitentwicklungsmatrix anu zunhern. Z.B. kann man auch a die Entwicklung der Exponentialfunktion erst nach hheren Termen abbrechen, o alle N Eigenwerte i und -vektoren |i (x) der Hamiltonmatrix und damit einen vollstndigen Satz von Basisvektoren berechnen. Ist H nicht zeitabhngig, kann a a man mithilfe der Identitt a
N

iHt

=
1

|i (x) eii t i (x)|

die Propagationsmatrix (numerisch) exakt bestimmen und speichern. Der zustza liche Rechenaufwand muss gegen die Vereinfachung der Berechnung der einzelnen Zeitschritte (nur eine Matrix-Vektor-Multiplikation) abgewogen werden. Vorsicht: Wegen ei = cos + i sin sollte das Produkt i t < sein, was entweder die Wahl eines sehr kleinen Teilschrittes oder den Abbruch der Summation fr u groe i bedingt. eine sogenannt split-operator-Methode verwenden, fr die die Hamiltonmatrix u in beliebige Bestandteile zerlegt wird. Damit ergibt sich als weitere Nherungsa formel fr die Exponentialfunktion u eiHt eiH1 t/2 eiH2 t eiH1 t/2 , die bedeutende numerische Vorteile bieten kann. Betrachten wir die Aufspaltung von H = T + V , so sind eiT t/2 und eiV t in der Impuls- bzw. Ortsdarstellung exakt berechenbare Diagonalmatrizen. Fouriertransformationen (FFT) der Wellenfunktion zwischen den Multiplikationen erlauben den Wechsel zwischen den Darstellungen. Die Fouriertransformationen kann man umgehen, wenn man fr zeitabhngige u a Strungen (z.B. ein Laserpuls) eine Auftrennung in H = H0 + V (t) vornimmt. o Dann kann eiH0 t/2 mit der zuvor beschriebenen Methode berechnet werden und eiV (t)t ist wieder eine Diagonalmatrix. Ein Zeitschritt entspricht damit drei Matrix-Vektor-Multiplikationen. Die Gre des Fehlers der Split-Operator-Methode ist von der Ordnung O(t3 ) o und hngt vom Kommutator [H1 , H2 ] ab. a

96

KAPITEL 9. FINITE-DIFFERENZEN-METHODE

Kapitel 10 Monte-Carlo-Simulationen
Ein aus der Statistischen Physik motiviertes Verfahren zur Berechnung von Integralen mit Hilfe von Zufallszahlen ist die Monte-Carlo-Methode. Dieses Verfahren ist uerst a allgemein und erlaubt es zumindest im Prinzip jedes Problem der Statistischen Physik zu lsen (zu simulieren). In der Physik werden heutzutage mit Hilfe von Monteo Carlo-Simulationen beispielsweise Teilchenstrme am CERN simuliert oder korrelierte o (wechselwirkende) Elektronen in Festkrpern. Monte-Carlo-Simulationen werden aber o nicht nur in der Physik sondern in vielen Bereichen von den Ingenieur-Wissenschaften uber die medizinische Bildverarbeitung bis hin zu den Sozialwissenschaften angewandt. In Abschnitt 10.1 wird als Motivation zunchst das Ising-Modell, das wir spter a a simulieren wollen, vorgestellt. Abschnitt 10.2 rekapituliert einige grundlegende Beziehungen der Statistischen Physik. In Abschnitt 10.3 wird die Monte-Carlo-Methode zunchst als allgemeine Methode zur Integration hochdimensionaler Integrale eina gefhrt. Im Abschnitt 10.4 wird die Physik des Ising-Modells besprochen und in Abu schnitt 10.5 dessen Monte-Carlo-Simulation vorgestellt. Wie man aus den Monte-CarloErgebnissen mit Hilfe von Beziehungen aus der Renormierungsgruppentheorie die kritische Temperatur und die kritischen Exponenten genau bestimmt, wird in Abschnitt 10.6 besprochen. Weiterfhrende Literatur zu diesem Kapitel: u Werner Krauth, Statistical Mechanics: Algorithms and Computations, Oxford University Press, Oxford (2006), ISBN-0-19-851536-7. Kurt Binder, Monte Carlo methods in statistical physics, Springer, Berlin (1979), ISBN 3-540-09018-5. Die Bilder dieses Kapitels und viele Anregungen wurden dankenswerterweise von Dr. Nils Blmer zur Verfgung gestellt. u u

10.1

Motivation: Ising-Modell

Das Ising-Modell ist ein einfaches Modell wechselwirkender Spins fr den Ferromagneu tismus, das Ernst Ising in seiner Dissertation 1924 [12] bei Wilhelm Lenz (auch bekannt 97

98

KAPITEL 10. MONTE-CARLO-SIMULATIONEN

vom Runge-Lenz-Vektor) erstmals studierte. Interessanterweise wurde das Modell von Ising und Lenz zunchst verworfen, da sie das eindimensionale Modell untersuchten a und bei Temperaturen T > 0 keinen Ferromagnetismus fanden. Ising wurde spter a Lehrer und emigrierte wegen seiner jdischen Wurzeln via Luxemburg in die USA. u Lars Onsager lste 1944 das zweidimensionale Ising-Modell [13], das Ferromagnetiso mus zeigt. Das Ising-Modell wurde daraufhin berhmt und Ernst Ising Professor an u der Bradley University, Peoria, Illinois, wo er aber keine weiteren wissenschaftlichen Arbeiten publizierte. Das Ising-Modell fr (klassische) Spins i {+1, 1} = {, } auf N Gitterpltzen u a i, j im magnetischen Feld B lautet: H = J i j B B i .
i

(10.1)

ij

Hierbei bezeichnet ij die Summation uber alle Gitterpltze i und deren jeweiligen a Nachbarn j. Die (quantenmechanische) Verallgemeinerung ist das Heisenberg-Modell H = J Si Sj B B Siz ,
i

(10.2)

ij

x das auch Terme Six Sj bzw. mit Spin-Leiteroperatoren Si+ Sj enthlt. a Die Kopplung der Spins ist fr J > 0 (J < 0) ferromagnetisch (antiferromagneu tisch) und beschreibt fr J = 0 den trivialen Fall einzelner nicht-gekoppelter Spins. u Die Eigenschaften hngen, wie wir spter sehen werden, stark vom zugrundeliegenden a a Gitter (und insbesondere von dessen Dimensionalitt) ab. Die Kopplungskonstante J a kann beispielsweise mit Hilfe der Dichtefunktionaltheorie (DFT) abgeschtzt werden a als Dierenz der Grundzustandsenergie einer ferromagnetischen und antiferromagnetischen Lsung. Das Heisenberg- bzw. Ising-Modell hat die gleiche Energiedierenz o (Erwartungswert) zwischen vollstndig polarisiertem ferromagentischen Grundzustand a und antiferromagnetisch-alternierenden Spins (Nel-Zustand). Sowohl das Ising- als e auch das Heisenberg-Modell nehmen aber an, dass die Elektronen im Festkrper als o Spins an den Gitterpltzen lokalisiert sind. Diese Annahme ist fr einige Isolatoren gea u eignet, aber sicherlich nicht fr Metalle, da dort die delokalisierten Leitungselektronen u magebend sind. In diesem Sinne ist es ein einfaches Modell fr den Magnetismus. u Zwecks einer genaueren Beschreibung kann das Ising-(Heisenberg-)-Modell auch auf beliebige Wechselwirkungen zwischen den Spins verallgemeinert werden:

1 H = Jij i j B B 2 i,j=1

i .
i=1

(10.3)

Beachte: Die Symmetrie des Heisenberg-Modells ist SU(2), whrend das Ising-Model a eine sogenante Z2 -Symmetrie (up/down) hat. Die Spins des Ising-Modells knnen als o klassische Zahlen (+1/-1 fr Spin up/down) behandelt werden, und der Hamiltonu Operator ist in dieser Basis direkt diagonal. D.h., wie bei einem Modell der klassischen

10.2. WIEDERHOLUNG: STATISTISCHE PHYSIK

99

statistischen Mechanik ist die Energie einfach eine Funktion der Spinkonguration, ein quantenmechanischer Operator wird nicht wirklich bentigt. Es gibt keine fr ein o u quantenmechanisches Problem typische Dynamik in der Zeit mit einer Anderung der Wellenfunktion. Statt Spins kann man sich auch vorstellen (und dies ist tatschlich a auch eine Anwendung), dass das Ising-Modell zwei Sorten Atome A und B (up und down) beschreibt, die an Gitterpltzen xiert sind. Das Magnetfeld B beschreibt a dann die energetisch unterschiedliche Bevorzugung (chemisches Potential) der beiden Atomspezies und die Kopplungskosntante J > 0 (J < 0) die energetische Bevorzugung (Benachteiligung) einer Clusterbildung. Aus diesen Grnden bezeichnet man das Isingu Modell auch manchmal als Modell klassischer Spins, obwohl das Konzept eines Spins natrlich quantenmechanisch ist. u

10.2

Wiederholung: Statistische Physik

In diesem Abschnitt stellen wir einige grundlegende Beziehungen der Statistischen Physik als Wiederholung kurz zusammen. Die quantenmechanische Zustandssumme lt a sich berechnen als Spur Z = T r{eH } (10.4)
1 mit inverser Temperatur = kB T und Hamilton-Operator H . Ahnlich ergibt sich fr u eine physikalische Observable O in der Quantenmechanik:

O =

1 T r{OeH }. Z

(10.5)

In der klassischen Mechanik haben wir einen hnlichen Ausdruck als Integration a uber den Phasenraum mit orts- und impulsabhngiger Energie E(x1 , p1 ...xN , pN ): a Z= 1 N !h3N d 3 x1 d3 p1 ... d 3 xN d3 pN eE(x1 ,p1 ...xN ,pN ) , (10.6)

wobei N die Anzahl der Teilchen und h die Plancksche Konstante ist. Entsprechend gilt fr die physikalische Observable u O = Z N ! N d d ... d N d N O( , ...N , N)
3N E( , ...N ,N)

(10.7) Hierbei lsst sich der Faktor h als Phasenvolumen quantenmechanischer Teilchen, a die hier klassisch behandelt werden, deuten. Der Faktor 1/N ! bercksichtigt die quanu tenmechanische Ununterscheidbarkeit der Teilchen. Analog knnen wir die Zustandssumme des im letzten Abschnitt eingefhrten Isingo u Modells fr N Spins angeben: u Z=
1 =1

eHIsing (1 N ) .
N =1

(10.8)

100

KAPITEL 10. MONTE-CARLO-SIMULATIONEN

Hierbei ist der Hamilton-Operator bzw. die Hamilton-Funktion, die fr vorgegebene u Spin-Kongutration {i } die Energie angibt HIsing = J
ij

i j B B

i
i

(10.9)

Observablen O des Ising-Modells lassen sich demnach wie folgt berechnen: O = 1 Z


1 =1

N =1

O( N )eHIsing (1 N ) .

Ein (naheliegendes) Beispiel einer Observablen ist z.B. die Magnetisierung O(1 N ) = B N i . i=1 Aus der Zustandssumme lassen sich durch entsprechende Ableitungen alle thermodynamischen Gren berechnen wie z.B. o die freie Energie F = kB T ln Z , (10.10) die Innere Energie Z E(x)eE(x) E= H = = E(x) Z xe (ln Z) (F ) F = = =F + F = F + TS , =F T T
x

(10.11)

wobei x die Quantenmechanischen Eigenfunktionen bzw. die klassischen Orts- und Impulskoordinaten bezeichnet, und die Entropie S F S= , (10.12) T die spezische Wrme a C= E H2 H E = = T T (kB T )2
2

(10.13)

und die Magnetisierung (hier fr das Ising-Modell) u M = B


i

i =

1 (ln Z) ; B

m=

M . N B

(10.14)

Phasenubergnge a Ein anderes wichtiges Konzept der statistischen Physik ist das der Phasenbergnge. u a Diese machen sich als Singularitten in thermodynamischen Gren bemerkbar. a o

10.2. WIEDERHOLUNG: STATISTISCHE PHYSIK Klassikation nach Ehrenfest 1. Ordnung: 1. Ableitung von F nicht kontinuierlich 2. Ordnung: 1. Ableitung von F kontinuierlich; 2. Ableitung nicht kontinuierlich (mglicherweise divergent) o

101

Observablen wie z.B. die Magnetisierung sind bei Phasenbergngen 1. Ordung kontiu a nuierlich, nicht jedoch bei Phasenbergngen 2. Ordnung. Nach Ehrenfest spricht man u a bei Divergenzen in hheren (z.B. in der N ten) Ableitungen von F auch von einem o entsprechenden Phasenbergang N ter Ordung. In einer moderneren Beschreibung unu terscheidet man jedoch nur noch diskontinuierliche (1. Ordung) und kontinuierliche (2. Ordnung bzw. hherer Ordnung). o Beachte: Fr ein endliches System gibt es keine Phasenbergnge. Beispielsweise u u a haben wir fr ein Ising-Modell mit endlich vielen Gitterpltzen N die Zustandssumme u a Z=
1 =1

e
N =1

HIsing (1 N )

(10.15)

Dies ist eine (endliche) Summe von N Exponentialfunktionen und daher eine analytische (-oft ableitbare) Funktion. Daher ist die Analyse von Phasenbergngen mit u a numerischen Methoden fr endliche Systeme besonders schwierig. Sprich, ein nite size u scaling d.h. die (numerische) Untersuchung des Grenzwerts N ist essentiell und muss sorgfltig durchgefhrt werden. a u In der Nhe von Phasenbergngen folgen physikalische Obervable universellen a u a Gesetzmigkeiten die durch kritische Exponenten charakterisiert werden: a Magnetisierung Suszeptibilitt a Spezische Wrme a Korrelationslnge a Magnetisierung bei Tc m = m 0 = 0 C = C0 = 0 1 m B

= 1

T . Tc

(10.16)

Universalitt bedeutet dabei, dass die Exponenten nicht vom zugrundeliegenden Modell a abhngen sondern nur von der Dimension und von der Symmetrie des Ordnungsparaa meters.1 Das bedeutet z.B., dass die kritischen Exponenten (nicht aber die kritische Temperatur) des Ising-Modells auf dem zweidimensionalen Quadrat- und DreiecksGitter gleich sind, aber unterschiedlich von denen eines dreidimensionalen kubischen Gitters. Auerdem haben Ising- und Heisenberg-Modell eine unterschiedliche Symmetrie fr den (magnetischen) Ordnungsparameter, Z2 vs. SU(2), und damit unterschiedu liche kritische Exponenten.
Der Ordnungsparameter ist die charakteristische physikalische Gre fr den Phasenbergang: o u u diese ist vor dem Ubergang Null ist und steigt danach sprunghaft (1. Ordnung) oder mit kritischen Exponenten stark an (2. Ordnung). Fr den ferromagentischen Phasenbergang ist beispielsweise die u u Magnetisierung der Ordnungsparameter.
1

102

KAPITEL 10. MONTE-CARLO-SIMULATIONEN

10.3

Monte-Carlo-Integration

Wir wollen uns nun dem Monte-Carlo-Verfahren als allgeinem Verfahren zur Lsung o von Integralen (oder Summen) zuwenden. Solche Integrale oder Summen treten beispielsweise aber natrlich nicht nur in der Statistischen Physik auf (s. vorheriger u Abschnitt). Das generische Problem ist dabei das Integral I einer Funktion f (x) uber das d-dimensionale Volumen V : I=
V

dd xf (x);

V d .

(10.17)

Deterministische Verfahren
Die bislang in der Vorlesung behandelten Verfahren sind deterministisch, d.h., es wird ein xes Raster an Sttzstellen xn verwendet. Z.B. wird in Newton-Cotes-Verfahren das u Integral durch eine Summe approximiert (numerische Integration fr d Dimensionen) u I hd f (xn )
n xn V

(10.18)

mit dem homogenen (und isotropen) Gitter mit Abstand h xn = hn Fr hochdimensionale Integrale, wie sie in der Statistischen Physik auftauchen, ist u die Anwendung dieser deterministischen Verfahren aber problematisch. Der Fehler I ist je nach Grad der Newton-Cotes-Regel proportional zu hs (z.B. h2 bei der Trapez Regel). Der Aufwand t, der zur Berechnung des Integrals notwendig ist, d.h. die Anzahl der bentigten Rechenoperationen bzw. die Rechenzeit, skaliert andererseits proporo tional zur Anzahl der berechneten Funktionswerte f (x) bzw. ist er proportional zur Anzahl der Sttzstellen. Fr ein d-dimensionales Volumen ergibt sich: u u V t d hd , (10.20) h Dies kann man umrechnen in den Fehler, den man nach der Rechenzeit t erhlt: a Fr groe Dimensionen d bedeutet dies, dass der Fehler extrem langsam abnimmt und u daher extrem lange Rechenzeiten bentigt werden. Betrachten wir beispielsweise die o Trapez-Regel mit s = 2 und d = 200, so muss man, um den Fehler zu halbieren, die Rechenzeit um den Faktor 2d/s = 2100 1030 (10.22) I hs t d .
s

(n

(10.19)

(10.21)

erhhen. D.h., in der Praxis lassen sich keine hochdimensionalen Integrale berechnen. o Solche hochdimensionalen Integrale tauchen in der Statistischen Physik jedoch typischerweise auf. Wollen wir beispielsweise die Zustandssumme (10.6) fr 33 Teilchen u berechnen, so erfordern die (pro Teilchen) drei Impuls- und drei Orts-Koordinaten also ein d = 33 6 = 198-dimensionales Integral.

10.3. MONTE-CARLO-INTEGRATION

103

Alternative: Stochastische Verfahren


(i) Monte-Carlo-Integration (MC) ohne Gewichtung (simple Monte Carlo) Alternativ knnen wir das Integral dadurch berechnen, dass wir die Funktion an N o zuflligen Punkten berechnen und aufaddieren: a 1 IN = V N
N

f (xi ).
i=1

(10.23)

Hierbei sollen alle Punkte x zunchst die gleiche Wahrscheinlichkeit a p(x) = 1 V (10.24)

haben und zufllig gewhlt werden. Auf dem Computer mssen wir hierzu einen a a u Zufallszahlen-Generatoren benutzen, um die Kongurationen xi auszuwrfeln. u Der Zentrale Grenzwertsatz besagt nun, dass IN I
N

(10.25)

wobei der Fehler durch die Standardabweichung f der Funktion f im Volumen V gegeben ist: f N (10.26) IN = 0. N Ubersetzten wir dies in die Rechenzeitabhngigkeit des Fehlers, so ergibt sich: a IN t 2 .
1

(10.27)

D.h., ab d 5 konvergiert die Monte-Carlo-Integration schneller als die Trapez-Regel mit IW t5/2 . Nehmen wir wiederum das 200-dimensionale Integral als Beispiel, so ergibt sich, dass man den Fehler halbieren kann bei einer lediglich 4-fach lngeren a Rechenzeit (statt einer 1030 -fach lngeren Rechenzeit der Trapez-Regel). a Ein einfaches wenn auch lediglich zweidimensionales Beipiel ist die Berechnung der Zahl :
1 1

/4 = I =
0

dx
0

dy (1 x2 y 2 )

(10.28)

Dieses Integral kann man einfach am Strand mit Hilfe der Monte-Carlo-Interation gem Gl. (10.23) berechnen: Man markiert einen Viertelkreis in einem Rechteck, wirft a Steinchen ins Rechteck und zhlt den Anteil der Steinchen, die im Viertelkreis landen a 2 (d.h. -Funktion (1 x y 2 ) = 1); siehe Abb. 10.1. (ii) Monte Carlo mit Gewichtung (importance sampling) Problem: Oft ist die Standardabweichung f gro. Inbesondere bei Anwendungen aus der Statistischen Physik mit einem exponentiellen Boltzmann-Faktor exp{E(x)}/Z variiert die zu integrierende Funktion f (x) = O(x) exp{E(x)}/Z typischerweise um mehrere Grenordnungen. o

104

KAPITEL 10. MONTE-CARLO-SIMULATIONEN

Abbildung 10.1: Berechnung von am Strand eine beliebte Urlaubsbeschftigung. a Idee: Um dieses Problem zu beseitigen, konzentriert man die erzeugten xi auf die Regionen, in denen f besonders gro ist. Diese Regionen mssen besonders genau u erfasst werden, da sie fr das Integral besonders wichtig sind (importance sampling). u In Regionen mit sehr kleinem f braucht man dagegen pro Volumen weniger Punkte xi . Mathematisch separiert man f (x) = p(x) o(x) in zwei Anteile: eine Wahrscheinlichkeitsverteilung p(x) > 0 mit V dd x p(x) = 1 und eine Observable o(x): I =
V

dd xf (x) =
V N

dd x p(x)o(x)

(10.29)

1 N

o(xi );
i=1

xi Zufallskongurationen nach p(x) .

(10.30)

Die Punkte xi werden jetzt gem der Wahrscheinlichkeitsverteilung p(x) generiert. a Typisches Beispiel einer Wahrscheinlichkeitsverteilung ist natrlich der Boltzmannu Faktor exp{E(x)}/Z, aber man kann auch andere Funktionen whlen wie z.B. die a violette Pimp Kurve in der Abbildung 10.2 zur Veranschaulichung des importance sampling. Der Vorteil ist, dass sich der Fehler jetzt aus der Standardabweichung der Observablen o(x) ergibt, die um Grenordnungen kleiner sein kann als die Standardabweichung o von f o IN = ; mit o f (!) fr eine geschickte Wahl von o(x), p(x)(10.31) u N (iii) Markov-Kette, Metropolis-Algorithmus Es verbleibt das Problem, zufllige Kongurationen (Punkte) xi gem einer vorgegea a benen Wahrscheinlichkeitsverteilung p(x) zu generieren. Man kann beispielsweise eine sogenannte Markov-Kette an Punkten x1 , x2 , . . . , xn generieren (hier und im Folgenden werden wir ubersichtshalber die Vektor-Pfeile unterdrcken). u

10.3. MONTE-CARLO-INTEGRATION

105

Abbildung 10.2: Statt wie beim einfachen Monte-Carlo die Punkte zur Berechnung des Integrals homogen im gesamt Volumen (Phom ) auszuwrfeln ist es eektiver, huger u a Punkte in Bereichen mit groem (wichtigem) Funktionswert f zu berechnen ( import ance sampling) beispielsweise mit dem Pimp der Skizze. Denition Markov-Kette: Jede Konguration xn hngt nur vom Vorgnger in a a der Kette xn1 ab; d.h es ist kein Gedchtnis alterer Kongurationen vorhanden. a Bezeichnen wir mit W (x |x) die Wahrscheinlichkeit xn = x als ntes Element der Kette zu erhalten, falls der Vorgnger xn1 = x war. Dann gilt die folgende Mastera Gleichung fr die Wahrscheinlichkeitsverteilung pn (x) der Kongurationen in Schritt u n, wenn im Vorgnger-Schritt n 1 die Verteilung pn1 (x) vorlag: a pn (x) = pn1 (x) +
x

W (x|x )pn1 (x )

W (x |x)pn1 (x).

(10.32)

Eine hinreichendes (aber nicht notwendiges) Kriterium fr die Stationaritt von u a pn (x) (d.h. einer sich mit n n + 1 nicht mehr ndernden Wahrscheinlichkeitsverteia lung pn (x) peq (x)) ist die detailed balance (detailliertes Gleichgewicht): W (x|x )peq (x ) = W (x |x)peq (x) x, x . (10.33) In diesem Fall heben sich die beiden Integrale/Summen in Gl. (10.32) fr jedes x u einzeln auf. Notwendig wre aber nur, dass sich die Summen/Integrale uber x fr a u jedes x der linken Seite aufheben. Markov-Ketten Monte-Carlo Algorithmus Wir konstruieren eine Markov-Kette d.h. entsprechende Ubergangswahrscheinlichkei ten W (x |x) mit (i) stationrem p(x) (aufgrund der detailed balance) und (ii) a Ergodizitt (d.h. alle Kongurationen knnen von jedem Startpunkt durch eine enda o liche Anzahl von Ubergngen erreicht werden). In diesem Fall folgen die erzeugten a

106

KAPITEL 10. MONTE-CARLO-SIMULATIONEN

Kongurationen xn (fr n gro genug) der stationren (Gleichgewichts-) Wahrscheinu a lichkeitsverteilung peq (x) aus Gl. (10.33). Hierbei muss n gro genug sein, denn pn muss erst gegen peq konvergieren. Die ersten Kongurationen hngen noch stark von der anfangs gewhlten Wahrscheinlichkeitsvera a teilung p1 ab, die oftmals eine -Funktion ist. Sprich, wir geben ein ganz bestimmtes x1 x vor. Der Metropolis-Algorithmus W (x |x) = min{1, r}; mit r = peq (x ) peq (x) (10.34)

ist eine mgliche Wahl fr W (x |x) um die detailed balance zu erfllen. Das o u u Metropolis-Verfahren hat die grt-mglichen Ubergangsraten W (x |x). Eine alternao o tive ist das heat bath (Wrme-Bad-Verfahren) mit a W (x |x) = r/(1 + r); mit r = peq (x ) . peq (x) (10.35)

In der Statistischen Physik nimmt man typischerweise das Boltzmann-Gewicht peq (x) = eE(x) /Z. Da nur Quotienten peq (x ) eingehen, hebt sich die Zustandssumme Z auf, peq (x) muss also nicht explizit berechnet werden. Wir wollen jetzt den Algorithmus fr die Monte-Carlo-Integration mit importance u sampling kurz vorstellen: Algorithmus: 0. Initialisiere (whle) Konguration x a 1. Whle neue Konguration x a 2. Berechne Energiedierenz E = E(x ) E(x) und r = eE 3. Erzeuge Zufallszahl rand [0, 1) 4. Wenn rand <= min(1, r) akzeptiere neue Konguration x = x , sonst lasse x unverndert. a 5. Nach einigen runs (Durchlufen)2 , berechne Observablen a 6. Solange noch nicht genug runs gehe zu Schritt 1.) Bemerkungen: (i) Im kontinuierlichem Fall (z.B. klassische Statistische Physik) ist eine mgliche Wahl o fr die neue Konguration x = x + (rand 0.5) stepsize (in d Dimensionen: hnliche u a Zufallnderung in allen d Richtungen). (ii) Zustandssumme Z und freie Energie lassen a sich auf diese Weise nicht messen.
Wie oben erwhnt, hngen die ersten Kongurationen von der Wahl der Ausgangs-Konguration a a in Schritt 0.) ab (pn = peq erst nach einigen Schritten n). Typischerweise werden die ersten 1%10% runs deshalb verworfen. Man spricht von warm-up runs im Unterschied zu den spteren a Mess-runs fr die Messung der Observablen mit Kongurationen gem peq (x). u a
2

10.4. PHYSIK DES ISING-MODELLS

107

10.4

Physik des Ising-Modells

Mean-eld Lsung o
Bei der mean-eld (MF) oder Molekularfeld-Approximation werden Korrelationen zwischen den Gitterpltzen vernachlssigt. D.h., die Abweichung der Spina a Konguration von ihrem Mittelwert i auf Gitterplatz i ist unabhngig von der a Abweichung auf Gitterplatz j: (i i )(j j ) 0
MF

(10.36)

Diese Gleichung kann man auch schreiben als (eine hnliche Beziehung erhlt man in a a der Hartree-Approximation fr die Elektronendichten): u i j
MF

= i j .

(10.37)

Fr ein homogenes System ist der Mittelwert auf allen Gitterpltzen gleich, d.h. u a i = j = m. Ubertragen auf den Hamilton-Operator bedeutet die MFNherung folgende Vereinfachung (B 1): a H
Eq. (10.37)

ij

i j B i
i

i
i

HM F = J

j j NN. of i

B i .

i
i

(10.38)

= (B + qJ )
Bef f

D.h., H hat bei Anwendung von Gl. (10.37) den gleichen Energie-Erwartungswert wie HM F ; q ist hierbei die Koordinationszahl (Anzahl nchster Nachbarn). Beachte: a HM F hngt vom Spinerwartungswert ab, der mit Hilfe von HM F selbstkonsistent a berechnet werden muss: =
=1

e(B+qJ

/
=1

e(B+qJ

(10.39)

Statt knnen wir auch zunchst die Zustandssumme o a Z= = B + qJ exp i kB T =1


i

B + qJ 2 cosh kB T

(10.40)

berechnen. Deren Ableitung nach B liefert die Magnetisierung, d.h. m= 1 Z 1 B + qJ M = = = tanh N B N kB T (10.41)

108

KAPITEL 10. MONTE-CARLO-SIMULATIONEN

Abbildung 10.3: Links: Graphische mean-eld Lsung. Rechts: Magnetisierung als o Funktion der Temperatur. wie in Gl. (10.39). Abbildung 10.3 veranschaulicht die graphische Lsung dieser Gleio chung. Fr kB Tc < qJ ergeben sich Lsungen mit endlicher Magnetisierung. u o Beachte: In unendliche vielen Dimensionen, d.h. fr d oder fr q , wird u u die mean-eld Lsung exakt. Dies lsst sich mit Hilfe des Zentralen Grenzwertsatzes o a zeigen. Dieser besagt, dass Korrekturen zur mittleren Magnetisierung auf den q Nach bargitterpltzen wie 1/ q abnehmen. Daher kann fr q die Spinkonguration a u auf allen Nachbargitterpltzen durch das Mittel M ersetzt werden. a

eindimensionale Lsung o
In einer Dimension hat bereits Ernst Ising das nach ihm benannte Modell gelst. Durch o eine einfache Variablentransformation ist dies mglich. Betrachten wir oene Randbeo dingungen (kein Magnetfeld) so haben wir: H = J Z=
1 =1 2 =1 N 1 i=1 N

i i+1 = J ...
N =1

i1 i ,
i=2

(10.42) .

H {i }

Der Trick ist nun, neue Variblen {si } einzufhren, die wie folgt deniert sind: u s1 = 1 ; si = i i1 fr i 2 u
i

(10.43) (10.44)

i =

j=1

sj i+1 i = si+1

In den neuen Variablen {si } nimmt der Hamilton-Operator die einfache Form
N

H = J

si
i=2

(10.45)

10.4. PHYSIK DES ISING-MODELLS

109

an. D.h., in den si ist jeder Gitterplatz unabngig, und die Zustandssumme lsst sich a a berechnen als Z=
s1 =1 s2 =1 N 1 N

eJs2
s3 =1

eJs3 . . .
sN =1 N 1

eJsN (10.46)

= 2 2 cosh(J)

= 2 [cosh(J)]

Aus der Ableitung der Zustandssumme lassen sich nun alle thermodynamischen Gren o bestimmen wie z.B. die Energie ln Z = (N 1)J tanh(J) , J E(T ) = (N 1)J tanh . kB T E() =

(10.47)

Fr 0 < T < ist die Energie damit eine analytische Funktion und unendlich oft u dierenzierbar. Daraus folgt direkt: Es gibt keinen Phasenbergang bei endlicher Temu peratur. Ahnlich (mithilfe sogenannter Bindungstransfer-Matrizen) lsst sich auch der Fall a periodischer Randbedingungen und einem Magnetfeld behandeln. Tatschlich gibt es a bei T = 0 einen Ubergang zu einem vollstndig polarisierten (m = 1) Grundzustand. a Aufgrund dieser Uberlegungen haben Ising and Lenz das Modell als irrelevant fr den u Ferromagnetismus verworfen.

2d Quadratgitter
Wie bereits in Abschnitt 10.1 erwhnt, lste Onsager 1944 das zweidimensionale Isinga o Modell exakt, d.h., er berechnete die Zustandssumme und die spezische Wrme des a Ising-Modells auf dem Quadratgitter. Der Lsungsweg besteht aus einer Kombination o von Hoch- und Tieftemperatur-Entwicklung [14] und benutzt, dass das duale (reziproke) Gitter des Quadratgitters wieder das Quadratgitter ist. Der etwas kompliziertere Lsungsweg soll hier nicht behandelt werden, wir fassen aber die wichtigsten Ergebnisse o zusammen: Fr die kritische Temperatur ergibt sich u 1 1 J = arcsinh(1) = ln( 2 + 1) 0.4407 (10.48) kB Tc 2 2 bzw. Tc 2.2692 Die kritischen Exponenten lauten: 7 1 (10.50) = 0, = 1, = , = , = 15 . 8 4 Beachte, im Gegensatz zum Ising-Modell kann das Heisenberg-Modell nur in einer Dimension exakt gelst werden. o J . kB (10.49)

110

KAPITEL 10. MONTE-CARLO-SIMULATIONEN

10.5

Monte-Carlo-Simulation des Ising-Modells

Randbedingungen
Wenn wir das Ising-Modell auf einem endlichen Gitter mit Hilfe des Monte-CarloVerfahrens simulieren wollen, mssen wir Randbedingungen whlen. Im Folgenden solu a len einige Randbedingungen kurz vorgestellt werden. 1. konventionelle Wahl: Periodische Randbedingungen

alle Gitterpltze quivalent a a 2. anderes Extrem: oene Randbedingungen

innere Gitterpltze und Oberchen Gitterpltze a a a

10.5. MONTE-CARLO-SIMULATION DES ISING-MODELLS 3. verdrehte Randbedingungen: einfach in 1d Array zu realisieren

111

4. Antiperiodische Randbedingungen: entgegengesetztes Vorzeichen der Wechselwirkung entlang (einiger) Rnder a

ungerade Anzahl an Domain-Wnden a 5. Fixierte oder mean-eld Randbedingungen:

Randpltze koppeln an externes Feld a Die verschiedenen Mglichkeiten knnen auch kombiniert/gemischt werden . . . o o

112

KAPITEL 10. MONTE-CARLO-SIMULATIONEN

Algorithmus
Fr die Monte-Carlo-Integration bzw. -Simulation des Ising-Modells ergibt sich ein hnu a licher Algorithmus wie fr die allgemeine Monte-Carlo-Integration auf Seite 106. Der u Hauptunterschied besteht darin, dass wir es nun mit diskreten Varibablen (Spins 1) zu tun haben. Der Algorithmus ist besonders ezient, wenn sich die Kongurationen x and x nur um einen einzigen Spin (auf Gitterplatz i) unterscheiden (single-spinip Algorithmus). In diesem Fall ist die Berechnung von r = peq (x )/peq (x) besonderes einfach und schnell, da lediglich Gitterplatz i und seine Nachbarn betrachtet werden mssen. Der Algorithmus ist damit wie folgt: u 0. Whle Anfangs-Spin-Konguration x = {l } a 1. Whle Gitterplatz i, x ist ident mit x auer dem entgegengesetzten Spin auf i: a i i 2. Berechne E = Ex Ex 3. Markov-Schritt: Erzeuge Zufallszahl rand [0, 1) wenn rand < r = e sonst: behalte x bei
E k T B

: ippe Spin (i i ), d.h. x = x

4. Nach den warm-up sweeps wird die Observable gemessen (nach jedem Messsweep nicht nach jedem single-spin-ip)3 nsum + = 1 msum + = m{l } Esum + = E{l } . . . 5. genug sweeps? ja: Berechne Mittelwerte und ggf. Fehler nein: zurck zu Schritt 1. u
Als einen sweep bezeichnet man N ( Anzahl der Gitterpltze) versuchte Spin-Flips. Erst nach a einem sweep ist eine weitestgehend unabhngige neue Konguration erzeugt worden (man kann a auch eine genauere Analyse mit Hilfe der Autokorrelationszeit durchfhren). Daher bietet es sich an u die Rechenoperation zur Berechnung der Observablen, die erhebliche Rechenzeit kosten, erst nach einem sweep durchzufhren. u
3

(10.51)

10.6. FINITE-SIZE SCALING

113

Kritische Temperaturen
Die folgende Tabelle fasst die kritischen Temperaturen des ferromagnetischen IsingModells mit nchst-Nachbar-Wechselwirkung zusammen. Die meisten Werte stammen a aus [15]. Beachte: Es gibt Phasenbergnge fr alle Gitter mit d > 1. u a u Tc
q Jq kB

wie in der mean eld Lsung. o dim 1 2 lattice chain/ring honeycomb square triangular diamond cubic bcc fcc hypercubic q 2 3 4 6 4 6 8 12 8
k B Tc J k B Tc qJ

0 1.52 2.269 3.64 2.704 4.512 6.35 9.79 6.68

0 0.5 0.57 0.61 0.68 0.75 0.79 0.82 0.84 1.0

Kritische Exponenten
Im Folgenden wollen wir auch kurz die kritischen Exponenten des Ising-Modells in drei Dimensionen angeben (aus [16]). = 0.110(1); = 4.789(2); = 0.3265(3); = 0.6301(4); = 1.2372(5); = 0.0364(5);

Zum Vergleich: kritische Exponenten in der mean eld-Approximation: = 0, = 1 1 , = 1, = 2 . Diese Exponenten gelten allgemein fr d 4. Nochmals zur Wiederu 2 1 holung in d = 2: = 1, = 8 , = 7 , = 15 und = 0 (logarithmische Divergenz). 4

10.6

Finite-size scaling

Ziel des nite-size scaling ist es, die kritische Temperatur und auch das kritische Verhalten, also insbesondere die kritischen Exponenten aus den numerischen Simulationen endlicher Gitter zu bestimmen, d.h. die Extrapolation zum thermodynamischen Limes N . Die besondere Schwierigkeit besteht darin, das singulre Verhalten am a

114

KAPITEL 10. MONTE-CARLO-SIMULATIONEN

Phasenbergang fr N aus dem nicht singulren Verhalten bei endlichem N zu u u a gewinnen. Um die kritischen Exponenten genau zu berechnen, muss man sich eines grundlegendes Konzepts der Theoretischen Physik bedienen, das mit den Begrien Renormierungsgruppentheorie, Skaleninvarianz und Universalitt verknpft ist. Dieses geht a u insbesondere auf K. Wilson zurck, dessen Arbeiten [17] zu einem wesentlich besseu rem Verstndnis von Phasenbergngen fhrten und mit dem Nobelpreis fr Physik a u a u u ausgezeichnet wurden. Wir knnen diese Konzepte hier nur kurz anreien, aber nicht o wirklich herleiten und verweisen auf weiterfhrende Literatur z.B. [18]. u

10.6.1

Renormierungsgruppe, Skaleninvarianz und Universalitt a

Bei der Renormierungsgruppentheorie betrachtet man einen Hamilton-Operator wie z.B. das Ising-Modell auf N = L L Gitterpltzen a H N (J) = J i j
ij

(10.52)

und untersucht die (wiederholte) Abbildung (Gruppentransformation) auf einen neuen Hamilton-Operator mit weniger Freiheitsgraden z.B. auf N/4 = L/2 L/2 Gitterpltzen: a H N (J) H N/4 (J )
N N/4 N/4N/16

H N/16 (J )

(10.53)

Man kann sich dies z.B. so vorstellen, dass man jeweils einen Block von 4 Spins durch einen einzigen neuen Spin im Modell mit weniger Gitterpltzen ersetzt. Im Allgemeia nen wird der Hamilton-Operator mit weniger Freiheitsgraden komplizierter (nicht nur J; nicht nur Spin up/down) sein mssen, um zumindest die Niederenergiephysik koru rekt zu beschreiben. In der Nhe von Phasenbergngen sind aber oftmals nur ganz a u a bestimmte Wechselwirkungen fr das kritische/singulre Verhalten relevant (z.B. die u a ferromagnetische Kopplung). Durch die Verkleinerung des Systems andert sich diese Kopplung, was man durch eine Dierentialgleichung fr J beschreiben kann, die typiu scherweise in folgender Form geschrieben wird: dJ = (J) , dlnN (10.54)

wobei die Skalierungsfunktion (J) von der Art des betrachteten Problems abhngt. a Im thermodynamischen Limes mit unendlich vielen Renormierungsschritten wird J immer mehr ab- oder zunehmen und gegen einen sogenannten Fixpunkt J Jx konvergieren. Gegen welchen Fixpunkt wir konvergieren, hngt vom Startwert, also dem a J des untersuchten Ising-Modells, ab. Im Ising-Modell gibt es die folgenden Fixpunkte (man beachte, die neben J einzig andere Energieskala ist die Temperatur, die wir o.B.d.A. T 1 setzten knnen, da die Physik nur von J/T abhngt): o a

10.6. FINITE-SIZE SCALING

115

Jx = 0: paramagnetische Phase; die Spins sind unabhngig, es gibt nur thermia sche Fluktuationen. Ising-Modelle, deren J gegen Jx = 0 konvergieren, zeigen zwar auf kleineren Lngenskalen Spin-Korrelationen aufgrund J > 0. Auf grea o ren Lngenskalen nimmt das eektive J aber immer mehr ab und konvergiert a gegen Jx = 0. Das bedeutet, dass grere Blcke an Spins untereinander nicht o o mehr korreliert sind (mit Jx = 0 wechselwirken). Jx = : ferromagnetische Phase; die Spins sind parallel ausgerichtet. Jx = Jcritical : J > Jcritical nimmt J immer weiter zu und konvergiert gegen Jx = ; J < Jcritical nimmt J immer weiter ab und konvergiert gegen Jx = 0. Daneben gibt es genau einen Punkt Jcritical fr den J weder zu- noch abnimmt, u fr dieses Jcritical bendet sich das Ising-Modell am Phasenbergang zwischen u u paramagnetischer und ferromagnetischer Phase. Skaleninvarianz: Aus den obigen Uberlegungen sehen wir, dass das Ising-Modell fr die kritische Kopplungsstrke Jcritical skaleninvariant ist. Die Kopplung zwischen u a sehr groen Spin-Blcken auf groen Lngenskalen (nach einigen Renormierungsschrito a ten) ist die gleiche wie die zwischen den ursprnglichen Spins auf kleinen Lngenskalen u a nmlich Jx . D.h., das physikalische Verhalten, z.B. die Spin-Spin-Korrelationsfunktion a i j , (10.55)

ist auf kleinen und groen Lngen-Skalen gleich. Ein bekanntes skaleninvariantes Oba jekt ist ein Fraktal, das auf allen Lngenskalen gleich aussieht. Das gleiche gilt fr die a u Korrelationsfunktion des Ising-Modells am Fixpunkt. Untersucht man die unmittelbare Umgebung des Fixpunktes, so kann die Korrelationsfunktion durch eine Korrelationslnge beschrieben werden a i j e|ij|/ . Die Korrelationslnge divergiert am kritischen Punkt a
JJcritical

(10.56) .

Universalitt wiederum bedeutet, dass viele Modelle in der Nhe des kritischen a a Punktes das gleiche kritische Verhalten insbesondere die gleichen kritischen Exponenten haben (auch ist das Verhalten der -Funktion, Gl. (10.54) in der Nhe des enta sprechenden Jcritical gleich). Es wird allgemein davon ausgegangen (alle bislang gewonnenen Ergebnisse sprechen dafr), dass alle Modelle mit der gleichen Symmetrie des u Ordnungsparameters und in der gleichen Dimension die gleichen kritischen Exponenten haben. Die Hypothese fr das singulre Verhalten der Freien Energie an einem Phau a senbergang 2. Ordnung ist nun, dass dieses nur von der Korrelationslnge und nicht u a mehr von mikroskopischen Lngen L0 des Modells wie z.B. der Gitterdistanz, auf der a die Wechselwirkung J wirkt, abhngt (nach ein paar Renormierungsgruppenschritten a

116

KAPITEL 10. MONTE-CARLO-SIMULATIONEN

liegt diese Information nicht mehr vor). Die numerischen Ergebnisse fr ein hyperkuu d bisches Gitter mit N = L Pltzen (d = 2 fr Quadratgitter) hngen daher nur vom a u a Verhltnis Gesamtgre(lnge) des untersuchten Modells zur Korrelationslnge, L , ab. a o a a Die Korrelationslnge hngt wiederum fr xes J von T ab (Hier und im Folgenden a a u setzten wir J 1 statt wie oben T 1. Beides ist mglich, da nur das Verhltnis T /J o a relevant ist.). Auf Basis von Wilsons Renormierungsgruppentheorie knnen wir daher o davon ausgehen, dass in fhrender Ordnung in 1/L der singulre (s) Teil der Freien u a Energie nur von L/(T ) abhngt: a f (s) (L, T ) = 1 (s) 1 L F (L, T ) , V V (T ) T . (T ) = 0 ; = 1 Tc mit (10.57)

Letztere Gleichung beschreibt die Divergenz der Korrelationslnge am Phasenbergang a u mit kritischem Exponenten . Dies erlaubt die Umformung der dimensionslosen Lnge: a L 1 = 0 L .
1 1

(10.58)

Wenn wir die mikroskopische Lngenskala L0 einfhren, ergibt sich hieraus direkt: a u L 0 L0 = L L0 . (10.59)

1 Alle Exponenten und die Abhngigkeit von L/ bzw. von (L/L0 ) sind unia versell, d.h., sie hngen nur von Dimension und Symmetrie des Ordnungsparameters a ab. Ableitungen der freien Energie bzw. von erlauben es nun, auch entsprechende Skalierungsgleichungen fr die Observablen zu bestimmen (mit L0 1): u

m(L, T ) = m(L )L , (L, T ) = (L )L , 1 C(L, T ) = C(L )L .


1

(10.60)

Hierbei treten die kritischen Exponenten aus Gl. (10.16) auf. Mit Hilfe von Renormierungsgruppenmethoden lassen sich auch Beziehungen zwischen den kritischen Exponenten herleiten: + 2 + = 2 Rushbrooke = ( 1) Widom d = 2 Josephson = (2 ) Fisher Beachte: 1. Die Skalengesetze gelten nur asymptotisch fr 0 und B 0. u In der Praxis knnen Korrekturen bei endlichem sehr signikant sein. o 2. Im Allgemeinen gibt es auch noch einen weiteren, regulren Anteil der Freien a Energie, der aber am Phasenbergang nicht divergiert. u

10.6. FINITE-SIZE SCALING

117

10.6.2

Anwendung der Skalierung fur das nite-size scaling

Eine praktische Anwendung der Skalengesetze (10.60) besteht darin, sich diese fr das u nite-size scaling zunutze zu machen. Denieren wir mL (x L ) m(L, T (x, L))L ,
1 1

(10.61)

wobei m(L, T (x, L)) die bei L und T = (+1)Tc = (x/L +1)Tc gemessene (simulierte) Magnetisierung ist. Dieses mL (x) konvergiert fr L gegen die universelle Kurve u m(x) (wir haben lediglich Gl. (10.60) umgeschrieben)
L

lim mL (x) = m(x)

(10.62)

D.h., fr hinreichend groes L kollabieren alle Kurven mL (x) auf eine einzige uniu verselle Kurve m(x). Ein solches Kollabieren von experimentellen oder am Computer berechneten Kurven macht man sich oftmals beim Untersuchen bzw. beim Nachweis von universellem Verhalten zu nutze. Das Problem dabei ist, dass fr eine solche Untersuchung , also die kritische temu peratur Tc (die nicht universell ist), bereits bekannt sein muss. Auch die Exponenten sind oftmals nicht oder nicht genau bekannt. Die Lsung dieses Problems ist es nun, o Observablen zu bilden, die mit L nicht renormiert werden. Mit M 2 (Ld L )2 und M 4 (Ld L )4
M =Ld m

(10.63)

M4 (Ld )422 = L0 (10.64) 2 2 M nicht renormiert. Wir knnen diesen Quotienten oder die Binder Kumulante o

wird der Quotient

U4 = 1

m4 3 m2

(10.65)

Dies erlaubt eine genaue Bestimmung der kritischen Temperatur, siehe Abb. 10.4. Sobald Tc bekannt ist, lassen sich die kritischen Exponenten bestimmen. Nach den Skalengesetzen (10.60) ist die Magnetisierung fr T = Tc gegeben durch u m(L, Tc ) = m(0)L . Das bedeutet

bilden und U4 (T ) fr verschiedene L plotten. Diese Kurven kreuzen sich asymptotisch u (d.h. fr L ) bei T = Tc . Das asymptotische Verhalten ist u 2 fr T < Tc u 3 L U 0.61 fr T = Tc u U4 (10.66) 0 fr T > Tc u

(10.67)

(10.68) log m(L, Tc ) log(L) und der Quotient / folgt durch einen einfachen (doppelt) logarithmischen Plot, siehe Abb. 10.5.

118

KAPITEL 10. MONTE-CARLO-SIMULATIONEN

Abbildung 10.4: Binder-Kumulaten vs. Temperatur. Die Kurven fr verschiedene Sysu temgren kreuzen sich bei der kritischen Temperatur Tc . o

Abbildung 10.5: Berechnung des kritischen Exponenten bzw. / (beachte = 1 u / = 8 , da = 1 fr das 2D Ising-Modell.)

Literaturverzeichnis
[1] W.H. Press, S.A. Teukolsky, W.T. Vetterling, B.P. Flannery, Numerical Recipes, (Cambridge University Press, 2007); http://www.nrbook.com [2] M. Abramowitz and I.A. Stegun, Handbook of Mathematical Functions (National Bureau of Standards, Washington, 1972). [3] Gillman und Fiebig, Computers in Physics, Jn/Feb (1988) 62. a [4] C.F. Gerald und P.O. Wheatley, Applied Numerical Analysis (Addison-Wesley, Reading, 1989). [5] C. Uberhuber, Computernumerik I und II (Springer, 1995) [6] http://www.cs.sunysb.edu/algorith/les/random-numbers.shtml Hinweise) (Downloads,

[7] J. Stoer, Einfhrung in die Numerische Mathematik I (Springer, Berlin-Heidelberg, u 1972); Numerische Mathematik II (Springer, Heidelberg, 1980). [8] J.R. Cash, A.H. Karp, ACM Trans. Math. Software 16, 201 (1990). [9] B. Numerov, Publs. observatoire central astrophys. Russ. 2, 188 (1933). [10] L. Fox, E. T. Goodwin, Proc. Camb. Phil. Soc. 45, 373 (1949). [11] W. Gragg, J. SIAM Numer. Anal. Ser. B 2, 384 (1965). [12] E. Ising, PhD Thesis, Universitt Hamburg (1924). a [13] L. Onsager, Phys. Rev. 65, 117 (1944). [14] H. A. Kramers, G.H . Wannier, Phys. Rev. 60, 252 (1941). [15] P. Meyer, PhD Thesis, University of Derby (2000). [16] A. Pelissetto, E. Vicari, Physics Reports 368, 549 (2002). [17] K. Wilson, Phys. Rev. B 4, 3174 (1971). [18] K. Wilson, Phys. Mod. Phys. 47, 773 (1975).

119