skrip tum

127
Skriptum zur VU 138.094 Numerische Methoden und Simulation K. Held, H. Leeb, C. Lemell, H. M¨ uller Fakult¨ at f¨ ur Physik Technische Universit¨ at Wien Diplomstudiengang f¨ ur Technische Physik Version vom 12. M¨ arz 2013

Upload: benpesen

Post on 13-Aug-2015

34 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Skrip Tum

Skriptum zur VU 138.094Numerische Methoden und Simulation

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

Fakultat fur Physik

Technische Universitat Wien

Diplomstudiengang fur Technische Physik

Version vom

12. Marz 2013

Page 2: Skrip Tum

ii

Page 3: Skrip Tum

Inhaltsverzeichnis

Vorwort vii

A Grundlagen: Numerische Methoden 1

1 Spezielle Funktionen 31.1 Einleitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.2 Gamma-Funktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.3 Legendre Polynome und Kugelflachenfunktionen . . . . . . . . . . . . . 51.4 Spharische Besselfunktionen . . . . . . . . . . . . . . . . . . . . . . . . 71.5 andere orthogonale Polynome . . . . . . . . . . . . . . . . . . . . . . . 8

2 Interpolation, Differentiation und Integration 112.1 Interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2.1.1 Motivation und Klassifikation . . . . . . . . . . . . . . . . . . . 112.1.2 Polynominterpolation . . . . . . . . . . . . . . . . . . . . . . . . 122.1.3

”Spline“-Interpolation . . . . . . . . . . . . . . . . . . . . . . . 15

2.2 Differentiation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172.2.1 Ableitungen uber Interpolationspolynome . . . . . . . . . . . . 172.2.2 Ableitungen bei gleichmaßig verteilten Datenpunkten . . . . . . 18

2.3 Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182.3.1 Newton-Cotes Integrationsalgorithmen . . . . . . . . . . . . . . 192.3.2 Gauß-Integration . . . . . . . . . . . . . . . . . . . . . . . . . . 19

3 Zufallszahlen 233.1 Generierung von Zufallszahlen . . . . . . . . . . . . . . . . . . . . . . . 24

3.1.1 Generierung”wahrer“ Zufallszahlen . . . . . . . . . . . . . . . . 24

3.1.2 Pseudozufallszahlen . . . . . . . . . . . . . . . . . . . . . . . . . 243.1.3 Andere Methoden . . . . . . . . . . . . . . . . . . . . . . . . . . 253.1.4 Bibliotheksfunktionen . . . . . . . . . . . . . . . . . . . . . . . 26

3.2 Haufigkeitsverteilungen . . . . . . . . . . . . . . . . . . . . . . . . . . . 263.2.1 Zuruckweisungsmethode . . . . . . . . . . . . . . . . . . . . . . 273.2.2 Transformationsmethode . . . . . . . . . . . . . . . . . . . . . . 273.2.3 Poissonverteilte Zufallszahlen und Exponentialverteilung . . . . 28

iii

Page 4: Skrip Tum

iv INHALTSVERZEICHNIS

3.2.4 Gaußverteilte Zufallzahlen . . . . . . . . . . . . . . . . . . . . . 29

3.2.5 Auf benutzerdefinierte Intervalle beschrankte (ganzzahlige) Zufallszahlen 30

3.2.6 Beliebig normierte (Gleitkomma-) Zufallszahlen . . . . . . . . . 30

4 Nullstellenbestimmung und χ2-Anpassung 33

4.1 Nullstellenbestimmung . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

4.1.1 Bracketing und Bisektionsverfahren . . . . . . . . . . . . . . . . 33

4.1.2 Newton-Raphson-Verfahren . . . . . . . . . . . . . . . . . . . . 34

4.1.3 Sekanten-Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . 34

4.1.4 Nullstellenbestimmung nach Brent . . . . . . . . . . . . . . . . 35

4.1.5 Nullstellen von Polynomen . . . . . . . . . . . . . . . . . . . . . 35

4.2 χ2-Anpassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

4.2.1 Lineare Regression . . . . . . . . . . . . . . . . . . . . . . . . . 40

5 Lineare Algebra 41

5.1 Lineare Gleichungssysteme . . . . . . . . . . . . . . . . . . . . . . . . . 41

5.1.1 Das Eliminationsverfahren von Gauß . . . . . . . . . . . . . . . 42

5.1.2 Lineare Gleichungssysteme mit Tridiagonaler Matrix . . . . . . 46

5.2 Iterative Methoden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

5.2.1 Einbinden von Bibliotheksprogrammen . . . . . . . . . . . . . . 49

5.3 Der Lanczos Algorithmus . . . . . . . . . . . . . . . . . . . . . . . . . . 49

5.3.1 Rayleigh-Quotient & Gram-Schmidt Orthonormierung . . . . . 50

5.3.2 Krylov-Basis und Lanczos Rekursionsformel . . . . . . . . . . . 51

6 Gewohnliche Differentialgleichungen 53

6.1 Einleitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

6.2 Systeme gewohnlicher Differentialgleichungen erster Ordnung . . . . . . 54

6.3 Einschrittverfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

6.3.1 Einschrittverfahren erster und zweiter Ordnung . . . . . . . . . 55

6.3.2 Konsistenz und Konvergenz von Einschrittverfahren . . . . . . . 56

6.3.3 Runge-Kuttaverfahren . . . . . . . . . . . . . . . . . . . . . . . 57

6.4 Rundungsfehler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

6.5 Numerov Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

6.6 Mehrschrittverfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

6.6.1 Konstruktion einfacher Mehrschrittverfahren . . . . . . . . . . . 63

6.6.2 Allgemeine Mehrschrittverfahren . . . . . . . . . . . . . . . . . 66

6.6.3 Konsistenz und Konvergenz von Mehrschrittverfahren . . . . . . 67

6.7 Extrapolationsverfahren . . . . . . . . . . . . . . . . . . . . . . . . . . 68

6.8 Vergleich der Verfahren zur Losung von Anfangswertprobleme . . . . . 70

Page 5: Skrip Tum

INHALTSVERZEICHNIS v

B Anwendungen: Simulation 71

7 Schwingungsbewegung 737.1 Die Bewegungsgleichung und ihre Losung . . . . . . . . . . . . . . . . . 737.2 Lagrangeformalismus und Zustand im Phasenraum . . . . . . . . . . . 74

7.2.1 Die gedampfte Schwingungsbewegung . . . . . . . . . . . . . . . 767.2.2 Frequenzspektrum . . . . . . . . . . . . . . . . . . . . . . . . . 76

7.3 Das getriebene physikalische Pendel . . . . . . . . . . . . . . . . . . . . 78

8 Das Wasserstoffatom 838.1 Die radiale Schrodingergleichung und ihre Losungen . . . . . . . . . . . 838.2 Die numerische Losung der radialen Schrodingergleichung . . . . . . . . 848.3 Berechnung von Bindungszustanden . . . . . . . . . . . . . . . . . . . . 86

9 Finite-Differenzen-Methode 899.1 Stationare Schrodingergleichung . . . . . . . . . . . . . . . . . . . . . . 899.2 Zeitabhangige Schrodingergleichung . . . . . . . . . . . . . . . . . . . . 91

9.2.1 explizites Eulerverfahren . . . . . . . . . . . . . . . . . . . . . . 929.2.2 implizites Eulerverfahren . . . . . . . . . . . . . . . . . . . . . . 929.2.3 Crank-Nicolson-Verfahren . . . . . . . . . . . . . . . . . . . . . 939.2.4 Andere Propagationsmethoden . . . . . . . . . . . . . . . . . . 95

10 Monte-Carlo-Simulationen 9710.1 Motivation: Ising-Modell . . . . . . . . . . . . . . . . . . . . . . . . . . 9710.2 Wiederholung: Statistische Physik . . . . . . . . . . . . . . . . . . . . . 9910.3 Monte-Carlo-Integration . . . . . . . . . . . . . . . . . . . . . . . . . . 10210.4 Physik des Ising-Modells . . . . . . . . . . . . . . . . . . . . . . . . . . 10710.5 Monte-Carlo-Simulation des Ising-Modells . . . . . . . . . . . . . . . . 11010.6 “Finite-size scaling” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

10.6.1 Renormierungsgruppe, Skaleninvarianz und Universalitat . . . . 11410.6.2 Anwendung der Skalierung fur das “finite-size scaling” . . . . . 117

Page 6: Skrip Tum

vi INHALTSVERZEICHNIS

Page 7: Skrip Tum

Vorwort

Die Beschreibung von beobachteten Phanomenen und Zusammenhangen mittels ma-thematischer Methoden ist ein wichtiges Anliegen der Physik und stellt auch die Basisfur deren Anwendung in der Technik dar. Die quantitative Auswertung der entspre-chenden Theorien erfordert numerische Rechnungen, die in der ersten Halfte des letz-ten Jahrhunderts durch die beschrankte Schnelligkeit des Menschen auf wenige sche-matische Beispiele bzw. grobe Naherungen beschrankt waren. Die Entwicklung vonComputern in den letzten Jahrzehnten, in letzter Zeit insbesondere die Leistungsstei-gerung durch Einsatz von massivem Parallelismus, hat die Losungskapazitat wesentlicherhoht, sodass wir heute auch komplexere Probleme quantitativ erfassen konnen. Dieshat im Bereich der Physik hat der Einsatz von Computern zum Teil auch methodischeVeranderungen bewirkt. Durch die Moglichkeit der Simulation von komplexen Syste-men konnte sich ein neuer Zweig der Physik, die Numerische Physik etablieren.

Numerische Methoden zur Losung der ein physikalisches Problem beschreibendenmathematischen Zusammenhange sind die Grundvoraussetzung fur den Einsatz vonRechnern in der Physik. Die Lehrveranstaltung Numerische Methoden und Simulati-on soll die wichtigsten numerischen Techniken vermitteln. Lehrziel der Lehrveranstal-tung ist das Verstandnis der grundlegenden Algorithmen wie sie in der Physik zumEinsatz kommen, die Verwendung von Programmbibliotheken und die konkrete Um-setzung physikalischer Problemstellungen. Der pragmatische Zugang steht dabei imVordergrund, wahrend die Behandlung im Sinne der Numerischen Mathematik nur aufdas Notwendigste beschrankt wird. In der Lehrveranstaltung konnen nur sehr weni-ge Methoden behandelt werden. Fur einen umfassenderen Uberblick wird z.B. auf dieNumerical Recipes [1] verwiesen, die nicht nur eine Beschreibung der mathematischenGrundlagen geben, sondern auch entsprechende Programme in C++ (altere Versionendes Buches mit Programmen in FORTRAN77, Fortran90/95 und C konnen auf derwebseite des Verlages gefunden werden).

vii

Page 8: Skrip Tum

viii VORWORT

Page 9: Skrip Tum

Teil A

Grundlagen: Numerische Methoden

1

Page 10: Skrip Tum
Page 11: Skrip Tum

Kapitel 1

Spezielle Funktionen

1.1 Einleitung

In diesem Kapitel uber Spezielle Funktionen wollen wir einige fur die mathematischeBehandlung physikalischer Probleme nutzliche Funktionen naher betrachten. Speziellwerden wir auf die Generierung der Gamma-Funktion, der Legendre-Polynome und derspharischen Bessel- und Neumannfunktionen eingehen. Weitere Spezielle Funktionenfindet man in Programmbibliotheken wie z.B. der cernlib oder der gsl (gnu scientificlibrary) oder den kommerziell verfugbarendie NAG, IMSL oder MKL Bibliotheken. DieProgramme dieser Bibliotheken sind meist sehr umfangreich, da sie als Black Boxesverwendet werden und eine sorgfaltige Kontrolle der Genauigkeit, auch fur Sonderfalle,garantieren mussen. Bei den nachstehend angefuhrten Funktionen skizzieren wir nur diemathematischen Grundlagen, welche fur die numerische Darstellung verwendet werdenkonnen.

1.2 Gamma-Funktion

In vielen Problemen der Physik und der Statistik wird die Gamma-Funktion Γ(z), dieverallgemeinerte Faktorielle, benotigt. Sie tritt z.B. in quantenmechanischen Problemender Atom- und Kernphysik in Normierungskonstanten auf. Die Gamma-Funktion istuber das Integral

Γ(z) =

∫ ∞

0

dt tz−1e−t (1.1)

definiert. Ist das Argument eine naturliche Zahl, z = n (n ∈ N ), so entspricht dieGamma-Funktion der Faktoriellen,

n! = Γ(n+ 1) . (1.2)

Fur allgemeines z erfullt die Gamma-Funktion die Rekursionsbeziehung

Γ(z + 1) = z Γ(z) (1.3)

3

Page 12: Skrip Tum

4 KAPITEL 1. SPEZIELLE FUNKTIONEN

Kennt man die Gamma-Funktion fur z-Werte in der gesamten Halbebene Rez > 1, solassen sich uber die Reflexionsformel

Γ(1− z) = π

Γ(z) sin(πz)=

πz

Γ(1 + z) sin(πz)(1.4)

auch die Werte der Gamma-Funktion fur Rez < 1 bestimmen. Die Gamma-Funktionhat Pole bei z = 0 und bei allen negativen ganzen Zahlen.

Fur die numerische Berechnung von Γ(z) kann man von einer der speziellen Dar-stellungen fur bestimmte Intervalle ausgehen (siehe z.B. [2], Kapitel 6) und durchAnwendung der Rekursionsbeziehung (1.3) und der Reflexionsformel (1.4) die gesamtekomplexe z-Ebene abdecken. Eine der Naherungen fur reelle Argumentwerte x aus demIntervall [1, 2[ ist von der Form

Γ(x) ≈8∑

k=0

ak(x− 1)k , (1.5)

mit den Konstanten

a0 = 1.000000 a3 = −0.897057 a6 = 0.482199a1 = −0.577192 a4 = 0.918207 a7 = −0.193528a2 = 0.988206 a5 = −0.756704 a8 = 0.035868

Im Allgemeinen ist es gunstiger den Logarithmus der Funktion, ln Γ(z), numerischzu implementieren. Dadurch lasst sich ein floating point overflow des Rechners vermei-den. Die Rekursionsbeziehung (1.3) reduziert sich dann zu einer Summe

ln Γ(z +N) =N−1∑

n=0

ln(z + n) + ln Γ(z) . (1.6)

Wahlt man nun die Zahl N hinreichend groß, so kann man die folgende asymptotischeForm zur Berechnung von ln Γ(z +N) verwenden (siehe [2])

ln Γ(z) ≈ (z − 12) ln z − z + 1

2ln(2π) +

1

12z− 1

360z2+

1

1260z5− 1

1680z7+ · · · (1.7)

mit z = z+N →∞ in | arg z| < π (vgl. Stirling-Formel lnn! ≈ n lnn−n). Fur Rez < 1muss zusatzlich noch die Reflexionsformel (1.4) eingesetzt werden.

Zum Abschluss sei noch die spezielle Naherung von Lanczos genannt [2],

Γ(1 + z) = (z + γ + 12)z+0.5e−(z+γ+0.5)

×√2π

[

1 +c1

z + 1+

c2z + 2

+c5

z + 5+ ǫ

]

fur Rez > 0 (1.8)

mit γ = 5 und den Konstanten

c1 = 76.18009173 c2 = −86.50532033 c3 = 24.01409822c4 = −1.231739516 c5 = 0.00120858003 c6 = 0.000053682

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

Page 13: Skrip Tum

1.3. LEGENDRE POLYNOME UND KUGELFLACHENFUNKTIONEN 5

1.3 Legendre Polynome und Kugelflachenfunktio-

nen

Kugelflachenfunktionen, Yℓm(θ, ϕ) werden in einer Vielzahl physikalischer Problemeverwendet. Ihre Verwendung ist besonders dann vorteilhaft, wenn das betrachtete Pro-blem eine spharische Symmetrie aufweist, wie dies z.B. in vielen Fragestellungen derAtom- und Kernphysik der Fall ist.

Die Kugelflachenfunktionen sind auf der Einheitskugel definiert und stellen einenorthonormierten Satz von Basisfunktionen dar,

∫ 2π

0

∫ +1

−1

d(cos θ)Y ∗ℓ′,m′(θ, ϕ)Yℓm(θ, ϕ) = δℓ′ℓδmm′ , (1.9)

wobei (*) komplexe Konjungation bedeutet.Die Kugelflachenfunktionen haben die Form

Yℓm(θ, ϕ) =

2ℓ+ 1

(ℓ−m)!

(ℓ+m)!Pmℓ (cos θ)eimϕ (1.10)

und es gilt die Beziehung

Yℓ,−m(θ, ϕ) = (−1)mY ∗ℓm(θ, ϕ) . (1.11)

Die Abhangigkeit der Kugelflachenfunktionen vom Winkel θ ist durch die assoziier-ten Legendre Polynome, Pm

ℓ (cos θ), gegeben. Diese hangen uber die Beziehung

Pmℓ (x) = (−1)m(1− x2)m/2 d

m

dxmPℓ(x) (1.12)

mit den gewohnlichen Legendre Polynomen, Pℓ(x), zusammen. An dieser Stelle sollbemerkt werden, dass die Position der magnetischen Quantenzahl m als oberer oderunterer Index beachtet werden muss. Es gilt

Pℓm(x) = (−1)mPmℓ (x) . (1.13)

Die assoziierten Legendre Polynome niedriger Ordnung und die entsprechenden Ku-gelflachenfunktionen haben eine einfache Form und sind in der Tabelle 1.3 angegeben.

Bei der Berechnung der assoziierten Legendre Polynome sollte man nicht versuchen,die Polynomdarstellung numerisch zu implementieren, da dies zu Ausloschungsfehlernbei der Addition benachbarter Terme mit entgegengesetztem Vorzeichen fuhrt. Außer-dem werden bei hoheren Legendre Polynomen die Einzelterme wesentlich großer als dieSumme, sodass die Genauigkeit zusatzlich verringert wird. Auf diese Art konnen beidoppelt genauer Rechnung (REAL*8) nur Polynome bis etwa ℓ = 18 berechnet werden.

Page 14: Skrip Tum

6 KAPITEL 1. SPEZIELLE FUNKTIONEN

P00(x) = 1 Y00 =√

14π

P11(x) = (1− x2)1/2 Y11 = −√

38π

sin θeiϕ

P10(x) = x Y10 =√

34π

cos θ

P22(x) = 3(1− x2) Y22 =14

√152π

sin2 θe2iϕ

P21(x) = 3x(1− x2)1/2 Y21 = −√

158π

sin θeiϕ

P20(x) =12(3x2 − 1) Y20 =

√54π(32cos2 θ − 1

2)

Tabelle 1.1: Assoziierte Legendre Polynome und Kugelflachenfunktionen niedrigsterOrdnung

Ein in Hinblick auf die numerische Genauigkeit robusterer Algorithmus kann aufder Basis der Rekursionsbeziehung

(ℓ−m)Pℓm(x) = (2ℓ− 1)xPℓ−1,m(x)− (ℓ+m− 1)Pℓ−2,m(x) (1.14)

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

Pℓℓ(x) = (2ℓ− 1)!!(1− x2)ℓ/2 (1.15)

gegeben sind. Setzt man außerdem Pℓ,m=ℓ+1 = 0, so lasst sich die Rekursion bis zuhochsten ℓ-Werten stabil durchfuhren. Man geht dabei in folgender Reihenfolge vor:

m Berechnung Berechnung ubernach (1.15) Rekursionsformel (1.14)

0 P00 P10, P20, P30, P40, . . .1 P11 P21, P31, P41, . . .2 P22 P32, P42, . . .3 P33 P43, . . ....

......

Abschließend soll noch darauf aufmerksam gemacht werden, dass nicht jede Re-kursionsformel zu einem stabilen Algorithmus fuhrt. Wir werden diesen Punkt nochgenauer bei den spharischen Besselfunktionen behandeln.

Page 15: Skrip Tum

1.4. SPHARISCHE BESSELFUNKTIONEN 7

1.4 Spharische Besselfunktionen

Ein wichtiges Funktionensystem bei der Losung der Schrodingergleichung stellen diespharischen Bessel- und Neumannfunktionen dar. Diese sind Losungen der gewohnli-chen Differentialgleichung

d2

dρ2+

2

ρ

d

dρ+ 1− ℓ(ℓ+ 1)

ρ2

Rℓ(ρ) = 0 , (1.16)

der radialen Schrodingergleichung fur ein freies Teilchen. Die Differentialgleichung(1.16) hat zwei linear unabhangige Losungen. Diese unterscheiden sich durch ihr Ver-halten bei ρ = 0,

• regulare Losung bei ρ = 0: sparische Besselfunktion jℓ(ρ)

• irregulare Losung bei ρ = 0: spharische Neumannfunktion nℓ(ρ)

Die mathematischen Eigenschaften der spharischen Bessel- und Neumannfunktionensind gut untersucht. Wichtige mathematische Zusammenhange sind z.B. im Tabellen-werk von Abramowitz und Stegun [2] zusammengefasst. Die Funktionen zeigen unteranderem das folgende Verhalten am Ursprung

jℓ(ρ)ρ→0−→ ρℓ

(2ℓ+ 1)!!

(

1− ρ2

2(2ℓ+ 3)+O(ρ4)

)

, (1.17)

nℓ(ρ)ρ→0−→ (2ℓ− 1)!!

ρℓ+1

(

1 +ρ2

2(2ℓ− 1)+O(ρ4)

)

. (1.18)

Das asymptotische Verhalten ist durch

jℓ(ρ)ρ→∞−→ sin(ρ− ℓπ

2)

ρ, (1.19)

nℓ(ρ)ρ→∞−→ −cos(ρ− ℓπ

2)

ρ(1.20)

gegeben. Fur die Bessel- und Neumannfunktionen konnen geschlossene Ausdrucke an-gegeben werden,

ℓ = 0 j0(ρ) = + sin ρρ

, n0(ρ) = − cos ρρ

,

ℓ = 1 j1(ρ) = − cos ρρ

+ sin(ρ)ρ2

, n1(ρ) = − sin ρρ− cos(ρ)

ρ2,

ℓ = 2 j2(ρ) = −3 cos ρρ2

+(

3ρ3− 1

ρ

)

sin ρ , n2(ρ) = −3 sin ρρ2−(

3ρ3− 1

ρ

)

cos ρ .

Die numerische Berechnung der sparischen Bessel- und Neumannfunktionen erfolgtuber die Rekursionsformeln

gℓ+1(ρ) + gℓ−1(ρ) =2ℓ+ 1

ρgℓ(ρ) , (1.21)

Page 16: Skrip Tum

8 KAPITEL 1. SPEZIELLE FUNKTIONEN

wobei gℓ(ρ) fur eine spharische Bessel- oder Neumannfunktion steht. Analog zu derBerechnung der Legendrefunktionen fuhrt man auch fur die spharischen Neumann-funktionen eine Rekursion durch, wobei man von n0(ρ) und n1(ρ) ausgeht. Bei denspharischen Neumannfunktionen ist die Vorwartsrekursion stabil und fuhrt fur alleArgumentwerte auf zuverlassige Ergebnisse.

Fur die Bestimmung von jℓ(ρ) ist die Vorwartsrekursion leider nicht ausreichendstabil fur ℓ > ρ. Die Ursache fur die Probleme bei der Vorwartsrekursion lasst sich ausder Umformung der Rekursionsvorschrift erkennen,

jℓ+1(ρ)− 2jℓ(ρ) + jℓ−1(ρ) =2ℓ+ 1− 2ρ

ρjℓ(ρ) . (1.22)

Gleichung (1.22) kann auch als Differenzendarstellung der Differentialgleichung

d2

dλ2jλ(ρ) =

2λ+ 1− 2ρ

ρjλ(ρ) (1.23)

aufgefasst werden. Eine solche Differentialgleichung hat zwei linear unabhangige Losun-gen. Ist (2λ + 1 − 2ρ) < 0, so erhalt man 2 in λ oszillierende Losungen. Bei(2λ + 1 − 2ρ) > 0 erhalt man eine exponentiell in λ ansteigende und eine abfallen-de Losung. Fur die Verlasslichkeit des Rekursionsverfahrens ist es nun maßgebend,dass die divergierende Losung unterdruckt wird. Dies ist bei der Vorwartsrekursion derspharischen Neumannfunktionen der Fall, nicht aber bei der Rekursion der spharischenBesselfunktionen, d.h., bei ansteigenden λ > ρ wird der divergierende Term ab einemgewissen Punkt dominant werden.

Diese prinzipielle Eigenschaft der Rekursion kann man zur Berechnung der sphari-schen Besselfunktion ausnutzen, indem man eine sogenannte Ruckwertsrekursiondurchfuhrt. Man startet die Rekursion bei einem sehr hohen ℓ-Wert, ℓ = L > ρ.Fur die numerische Rechnung kann man aufrund des oben Gesagten annehmen, dassdie divergierende Losung sicherlich den numerischen Ansatz dominiert. Man kann da-her beliebige Werte fur jL(ρ) und jL+1(ρ) ansetzen. Fuhrt man nun die Rekursionruckwarts durch, d.h., man berechnet sukzessive jL−1, jL−2, . . . j1, j0 uber die Rekursi-onsformel (1.21), so verschwindet der divergierende Anteil sehr rasch und es verbleibtnur die fur die spharischen Besselfunktionen relevante Losung. Die erhaltenen Wertesind allerdings noch Vielfaches der entsprechenden jℓ-Werte und mussen durch Ver-gleich mit j0(ρ) normiert werden. Mehr Details uber die Ruckwartsrekursion wurdenvon Gillman und Fiebig [3] angegeben.

1.5 andere orthogonale Polynome

Zahlreiche spezielle Funktionen lassen sich leicht durch Rekursionsbeziehungen von derBauart

a1nfn+1(x) = (a2n + a3nx)fn(x)− a4nfn−1(x) (1.24)

Page 17: Skrip Tum

1.5. ANDERE ORTHOGONALE POLYNOME 9

berechnen. Rekursionsanfang sowie die Faktoren ain liegen in tabellierter Form vor[2]. Z.B. findet man fur die Legendrepolynome Pn(x) (vgl. Gl. 1.14 fur m = 0)

a1n = n+ 1, a2n = 0, a3n = 2n+ 1, a4n = n . (1.25)

Die resultierenden orthogonalen Polynome sind Losungen spezieller, in der Physikauftretender Differentialgleichungen (z.B. sind die Hermitepolynome Hn(x) Teil derLosung der Schrodingergleichung des harmonischen Oszillators) und bilden auch dieGrundlage der Gauß-Integration, die in Abschnitt 2.3.2 besprochen wird.

Page 18: Skrip Tum

10 KAPITEL 1. SPEZIELLE FUNKTIONEN

Page 19: Skrip Tum

Kapitel 2

Interpolation, Differentiation undIntegration

2.1 Interpolation

2.1.1 Motivation und Klassifikation

Ein zentrales Thema bei der numerischen Behandlung von Fragestellungen stellt dieWahl einer geeigneten Interpolation zur Darstellung von Funktionen im Computer dar.Die Motivation fur die Verwendung von Interpolationen ist vielfaltig, z.B.

• die Zahl der Messpunkte ist gering,

• der Aufwand zur Berechnung eines Datenpunktes ist sehr hoch, d.h., man ver-sucht moglichst wenige Punkte zu berechnen,

• die numerische Methode verlangt ein bestimmtes Gitter, die Mess- oder Rechen-punkte liegen aber auf einem anderen Gitter vor.

Diese Probleme treten sowohl in der Auswertung von Messreihen als auch bei numeri-schen Rechnungen im Rahmen einer Theorie oder eines vorgegebenen Modells auf. DerAusgangspunkt fur eine Interpolation ist stets ahnlich:

• Gegeben ist eine unabhangige Variable x, und fur eine Menge von Werten xiaus einem Intervall I sind Funktionswerte f(xi) = fi bekannt. Gesucht ist eineFunktion f(x) (eventuell geschlossener Ausdruck), sodass fur beliebiges x aus Imit f(x) eine sinnvolle Naherung an f(x) errechnet werden kann.

• Ziel der Interpolation ist nicht nur die Verwendung von f(x) zur naherungsweisenBerechnung von Funktionswerten f(x) mit x ∈ I (Interpolation), sondern auchals Ausgangspunkt naherungsweiser Integrations-, Differentiations- und in einigenFallen Extrapolationsmethoden.

11

Page 20: Skrip Tum

12 KAPITEL 2. INTERPOLATION, DIFFERENTIATION UND INTEGRATION

Die entsprechende mathematische Problemstellung lasst sich kompakt wie folgtformulieren:

Interpolationsproblem:

Eine Funktion f(x) sei an n+ 1 unterschiedlichen Argumentwerten xi, i = 0, 1, . . . , n,xi 6= xk gegeben, fi = f(xi). Ein Interpolationsproblem liegt dann vor, wenn fureine vorgegebene Funktionenklasse φ(x; a0, a1, . . . , an) die Parameter ai so bestimmtwerden sollen, dass

φ(xi; a0, a1, . . . , an) = fi ∀i = 0, 1, . . . , n

Die Paare (xi, fi) werden als Stutzstellen bezeichnet.

Eine besondere Klasse sind lineare Interpolationsprobleme. Bei diesen hangt dieInterpolationsfunktion φ(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 Polynominterpo-lation und (b) die Spline-Interpolation, gehoren beide der Klasse der linearen Interpo-lationsprobleme an. Beispiele fur nichtlineare Interpolationsprobleme sind die Interpo-lation mit rationalen Funktionen sowie die Interpolation mit Exponentialsummen.

2.1.2 Polynominterpolation

Bei der Polynominterpolation wahlt man die Interpolationsfunktion aus Πn, der Mengeder reellen oder komplexen Polynome p(x) vom Grad ≤ n,

φ(x; a0, a1, . . . , an) = p(x) = a0 + a1x+ a2x2 + · · ·+ anx

n . (2.2)

Das Interpolationsproblem besteht nun darin, dass man zu (n + 1) beliebig vorgege-benen Stutzstellen (xi, fi) ein Polynom p(x) ∈ Πn bestimmt, welches an den (n + 1)Stutzstellen mit der vorgegebenen Funktion ubereinstimmt, d.h. p(xi) = f(xi) = fi furi = 0, 1, 2, . . . , n.

Es lasst sich mithilfe eines indirekten Beweises zeigen, dass ein eindeutig bestimm-tes Polynom p(x) existiert, welches dieses Interpolationsproblem lost:

Angenommen, es existierten zwei Polynome p1, p2 ∈ Πn fur die gilt:p1(xi) = p2(xi) = fi fur alle i = 0, 1, 2, . . . , n. Daraus wurde folgen, dass das Polynomp(x) = p1(x)−p2(x) ∈ Πn zumindest n+1 Nullstellen [ p(xi) = 0, i = 0, 1, . . . , n] hatte.Da p ∈ Πn nur maximal n Nullstellen haben kann, folgt p(x) ≡ 0 und p1(x) ≡ p2(x).

Page 21: Skrip Tum

2.1. INTERPOLATION 13

Das Polynom p(x), welches das Interpolationsproblem lost, kann durch die LagrangeInterpolationsformel

p(x) =n∑

i=0

fiLi(x) (2.3)

berechnet werden, wobei Li(x) die Lagrangeschen Interpolationspolynome sind

Li(x) =n∏

k=0,k 6=i

x− xkxi − xk

fur i = 0, 1, . . . , n . (2.4)

Da alle Li(x) ∈ Πn sind und Li(xk) = δik gilt, liefert die Lagrangesche Interpolations-formel offensichtlich das gewunschte Interpolationspolynom.

Da die zu interpolierenden Funktionen selbst meist keine Polynome sind, wird beider Interpolation ein Fehler gemacht. Sei pn(x) das Interpolationspolynom vom Gradn, 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].Fur die praktische Verwendung in einem Computerprogramm ist die Lagrangesche

Interpolationsformel ungeeignet. Sie benotigt viele arithmetischen Operationen und istdaher auch anfallig fur Rundungsfehler. Je nachdem ob man die Funktion an einem odermehreren Argumentwerten interpolieren will, bieten sich verschiedene Alternativen an.

Der Algorithmus von Neville

Will man den interpolierten Funktionswert f(x) nur an einem (wenigen) zusatzlichenArgumentwert(en) berechnen, bietet sich der Algorithmus von Neville zur Losung desInterpolationsproblems an. Der Algorithmus ist flexibel bezuglich der Zahl der Daten-punkte und aufgrund der rekursiven Formulierung leicht implementierbar.

Wieder sei die Funktion an (n + 1) Stutzstellen (xi, fi), i = 0, 1, . . . , n gegeben.Ausgehend von Polynomen nullten Grades

Pi(x) = f(xi) = fi ∀ x , (2.6)

konnen wir mit der Rekursionsvorschrift

Pijij+1...ij+k(x) =

(x− xij)Pij+1...ij+k(x)− (x− xij+k

)Pij ...ij+k−1(x)

xij+k− xij

(2.7)

den interpolierten Wert der Funktion an der Stelle x ermitteln,

pn(x) = Pi0i1...in(x) . (2.8)

Der Algorithmus von Neville lasst sich in einem Schema ubersichtlich darstellen undnumerisch leicht implementieren. Als Beispiel betrachten wir das Schema fur n = 3

Page 22: Skrip Tum

14 KAPITEL 2. INTERPOLATION, DIFFERENTIATION UND INTEGRATION

k = 0 k = 1 k = 2 k = 3x0 f0 = P0(x)

P01(x)x1 f1 = P1(x) P012(x)

P12(x) P0123(x)x2 f2 = P2(x) P123(x)

P23(x)x3 f3 = P3(x)

Man rechnet dabei spaltenweise und arbeitet sich zur hoheren Ordnung (nach rechts)vor.

Newtonsche Interpolationsformel

Benotigt man die Funktion f(x) an mehreren Punkten, bzw. will man das Polynomselbst bestimmen, eignet sich der Algorithmus von Newton, welcher auf der Basis Di-vidierter Differenzen arbeitet.

Die Dividierte Differenz (divided difference) erster Ordnung zwischen zwei Stutz-stellen (xi, fi) und (xj, fj) ist folgendermaßen definiert

f [xi, xj ] =fi − fjxi − xj

= f [xj, xi]. (2.9)

Ausgehend von der Dividierten Differenz nullter Ordnung, f [xi] = fi, konnen nunrekursiv Dividierte Differenzen hoherer Ordnung definiert werden,

f [xi, xi+1, . . . , xi+k] =f [xi+1, . . . , xi+k]− f [xi, xi+1, . . . , xi+k−1]

xi+k − xi. (2.10)

Das gesuchte Interpolationspolynom pn(x), welches durch die (n+1) Stutzstellen (xi, fi)geht, lautet

pn(x) = a0+(x−x0)a1+(x−x0)(x−x1)a2+· · ·+(x−x0)(x−x1) . . . (x−xn−1)an, (2.11)

wobei die Koeffizienten ai durch

ai = f [x0, x1, . . . , xi]. (2.12)

gegeben sind. Die rekursive Bestimmung der f [x0, x1, . . . , xi] und somit der ai gemaßGl. 2.10 macht eine sehr einfache numerische Bestimmung der Polynomkoeffizientenmoglich.

Der rekursive Algorithmus (Gl. 2.10) kannin ein symmetrisches Schema gebrachtwerden. Fur die Stutzstellen (3.2, 22.0), (2.7, 17.8), (1.0, 14.2), (4.8, 38.3), (5.6, 51.7)ergeben sich folgende Werte:

Page 23: Skrip Tum

2.1. INTERPOLATION 15

xi fi = f [xi] f [xi, xi+1] f [xi, . . . , xi+2] f [xi, . . . , xi+3] f [xi, . . . , xi+4]3.2 22.02.7 17.8

8.4002.856

1.0 14.22.118

2.012-0.5280

0.2564.8 38.3

6.3422.263

0.0865

5.6 51.716.750

Man nennt dies ein Differenzenschema nach Newton, bei dem die Dividierten Differen-zen spaltenweise und dann von links nach rechts fortschreitend betimmt werden.

Haben die Stutzstellen xi gleichen Abstand voneinander, so ergeben sich wesentlicheVereinfachungen.

2.1.3”Spline“-Interpolation

Motivation

In manchen Fallen kann die Interpolation eines vorgegebenen Satzes von Funktions-werten aufgrund der Oszillation von Polynomen hoher Ordnung zu unerwunschtenErgebnissen fuhren. Eine Verbesserung der Situation kann erreicht werden, indem manabschnittsweise (d.h. fur eine kleine Untermenge der xi) Polynome interpoliert, wobeiman zusatzliche Randbedingungen an den Kontaktstellen der Polynome fordert.

Im Fall der (kubischen) Spline-Interpolation wird in jedem der Teilintervalle, ge-geben durch [xi, xi+1], ein kubisches Polynom mit unbekannten Koeffizienten ai, bi, ciund di definiert, 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 Abszissenwertenmit hi = (xi+1 − xi) und die zweiten Ableitungen der Polynome an den Stutzstellen(xi, fi) mit Si.

Aus der Stetigkeitsbedingung fur die Funktion f(x) ergibt sich

f(xi) = di = fi

f(xi+1) = ai(xi+1 − xi)3 + bi(xi+1 − xi)2 + ci(xi+1 − xi) + di

= aih3i + bih

2i + cihi + di = fi+1. (2.14)

Gleichheit der ersten und zweiten Ableitungen der Polynome an den Intervallgrenzenfuhrt fur Si und Si+1 auf

Si = 2bi und Si+1 = 6aihi + 2bi. (2.15)

Mithilfe dieser beiden Relationen lassen sich die unbekannten Koeffizienten ai und bifolgendermaßen ausdrucken:

bi =1

2Si und ai =

1

6hi(Si+1 − Si). (2.16)

Page 24: Skrip Tum

16 KAPITEL 2. INTERPOLATION, DIFFERENTIATION UND INTEGRATION

Die Koeffizienten ai, bi und di sind somit bestimmt, die noch unbestimmtenKoeffizienten ci ergeben sich aus Gl. 2.14. Man erhalt explizit

ci =fi+1 − fi

hi− 2hiSi + hiSi+1

6. (2.17)

Anpassung der ersten Ableitungen der Polynome an der Stelle xi fuhrt fur das rechts-bzw. linksseitige Polynom auf:

f ′(xi) = ci

f ′(xi) = 3ai−1(xi − xi−1)2 + 2bi−1(xi − xi−1) + ci−1

= 3ai−1h2i−1 + 2bi−1hi−1 + ci−1. (2.18)

Gleichsetzen dieser beiden Relationen und Substitution der Ausdrucke fur ai, bi, ci unddi ergibt

fi+1 − fihi

− 2hiSi + hiSi+1

6= 3

(Si − Si−1

6hi−1

)

h2i−1 + 2

(Si−1

2

)

hi−1

+fi − fi−1

hi−1

− 2hi−1Si−1 + hi−1Si

6, (2.19)

beziehungsweise, vereinfacht,

hi−1Si−1 + (2hi−1 + 2hi)Si + hiSi+1 = 6

(fi+1 − fi

hi− fi − fi−1

hi−1

)

. (2.20)

Insgesamt gibt es damit (n−1) Gleichungen fur die (n+1) Unbekannten Si. Es werdenalso noch zwei weitere Angaben fur S0 und Sn benotigt, die auf Annahmen beruhen.Eine der folgenden Festlegungen der Randwerte wird ublicherweise verwendet:

• S0 = Sn = 0 (”naturlicher spline“).

• S0 = S1 und Sn = Sn−1.

• S0 ist ein aus S1 und S2 linear extrapolierter Wert; ebenso ist Sn ein aus Sn−1

und Sn−2 linear extrapolierter Wert.

• Schatzwerte fur die Anstiege an den beiden Enden werden vorgegeben.

Vor- und Nachteile jeder dieser Annahmen mussen im Anlassfall genau untersuchtwerden.

Das resultierende Gleichungssystems ist tridiagonal, d.h., dass jedes Si (ausgenom-men S0 und Sn) nur an seine Nachbarn Si−1 und Si+1 durch lineare Relationen gekoppeltist. Das macht die Berechnung der Si nicht nur einfach, sondern auch schnell (Anzahlder rechenschritte ∝ N ,

”O(N)-Algorithmus“, siehe Kapitel 5). Sind alle Si bestimmt,

werden die unbekannten Koeffizienten der Interpolations Polynome folgendermaßenbestimmt:

Page 25: Skrip Tum

2.2. DIFFERENTIATION 17

ai =1

6hi(Si+1 − Si) (2.21)

bi =1

2Si (2.22)

ci =fi+1 − fi

hi− 2hiSi + hiSi+1

6(2.23)

di = fi (2.24)

2.2 Differentiation

Die genaue Bestimmung der Ableitungen einer Funktion, die durch einen Satz vongegebenen Datenpunkten (xi, fi) beschrieben ist, gehort zu den grundlegenden Vor-aussetzungen jeder Kurvendiskussion. Weiters kann sie z.B. bei der Losung von Diffe-rentialgleichungen von großer Bedeutung sein.

2.2.1 Ableitungen uber Interpolationspolynome

Unter der Annahme, dass eine Funktion hinreichend gut durch ihr Interpolationspoly-nom approximiert wird (siehe vorhergehender Abschnitt), kann man hoffen, dass dieseNaherung auch fur die erste Ableitung verwendbar ist. Der Fehler in der ersten Ablei-tung ist allerdings großer als bei den Funktionswerten.

Ist das Interpolationspolynom z.B. durch die Newtonsche Interpolationsformel be-stimmt, 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− xn−1) + E(x) ,

so ergibt sich fur f ′(x)

f ′(x) = f [x0, x1] + f [x0, x1, x2](2x− x0 − x1) + · · · (2.26)

f [x0, x1, . . . , xn]n−1∑

k=0

(x− x0) · · · (x− xn−1)

(x− xk)+ E(x).

Die Abschatzung fur E(x) ist komplizierter als jene fur E(x). Unter gewissen Vor-aussetzungen lassen sich aber geschlossene Ausdrucke fur diese Fehler angeben [4], ausdenen ersichtlich ist, dass E(x) großer als E(x) ist.

Hohere Ableitungen von f(x) lassen sich formal leicht aus den obigen Ausdruckenherleiten.

Page 26: Skrip Tum

18 KAPITEL 2. INTERPOLATION, DIFFERENTIATION UND INTEGRATION

2.2.2 Ableitungen bei gleichmaßig verteilten Datenpunkten

Sind die Datenpunkte auf einem regelmaßigen Gitter vorgegeben (aquidistanteDatenpunkte), also xi = x0 + ih, i = 1, . . . , n, konnen folgende Ausdrucke fur dieersten und zweiten Ableitungen von f(x) verwendet werden:

erste Ableitungen:

f ′(x0) =f1 − f0h

+O(h) (2.27)

f ′(x0) =f1 − f−1

2h+O(h2) (2.28)

f ′(x0) =−f2 + 4f1 − 3f0

2h+O(h2) (2.29)

f ′(x0) =−f2 + 8f1 − 8f−1 + f−2

12h+O(h4); (2.30)

zweite Ableitungen:

f ′′(x0) =f2 − 2f1 + f0

h2+O(h) (2.31)

f ′′(x0) =f1 − 2f0 + f−1

h2+O(h2) (2.32)

f ′′(x0) =−f3 + 4f2 − 5f1 + 2f0

h2+O(h2) (2.33)

f ′′(x0) =−f2 + 16f1 − 30f0 + 16f−1 − f−2

12h2+O(h4) . (2.34)

Durch Indextransformation in den obigen Ausdrucken konnen Ableitungen fur jedender n Datenpunkte angegeben werden. Zu beachten ist, dass bei Randpunkten einigeder Ausdrucke mangels vorhandener Funktionswerte nicht anwendbar sind. GenauereAngaben fur die Fehler sind in [2] zu finden.

2.3 Integration

Um das bestimmte Integral

I =

∫ b

a

f(x) dx

zu losen, werden im Folgenden zwei Klassen von Methoden diskutiert: einerseits so-genannte Newton-Cotes Integrationsalgorithmen, die auf der analytischen Integrationstuckweis aneinandergereihter Interpolationspolynome durch aquidistante Datenpunk-te (xi, fi) beruhen, andererseits Gauß’sche Integrationsmethoden, fur die die Abszis-sen xi der Stutzstellen durch die Wahl der Methode vorbestimmt sind.

Page 27: Skrip Tum

2.3. INTEGRATION 19

2.3.1 Newton-Cotes Integrationsalgorithmen

Wir beschranken uns hier auf Integrationsalgorithmen, die sich auf Satze von Daten-punkten (xi, fi) mit aquidistanten xi-Werten beziehen, also x0(= a), . . . , xn(= b) mitxi = x0 + ih. Die grundlegende Idee ist, dass durch die Punkte (xi, fi) stuckwei-se Polynome gelegt werden, die dann uber den x-Bereich der Datenpunkte integriertwerden. Der dadurch ermittelte Wert ist ein Naherungswert fur das Integral uber diedurch die Datenpunkte dargestellte Funktion.

Je nachdem, ob man die Funktion f(x) zwischen den Stutzstellen durch Polynomeersten, zweiten oder dritten Grades ersetzt, erhalt man folgende Ausdrucke

∫ b

a

dx f(x) =h

2(f0 + 2f1 + 2f2 + · · · 2fn−1 + fn)−

b− a12

h2f ′′(ξ), (2.35)

∫ b

a

dx f(x) =h

3(f0 + 4f1 + 2f2 + 4f3 · · · 2fn−2 + 4fn−1 + fn) (2.36)

−b− a180

h4f IV (ξ),∫ b

a

dx f(x) =3h

8(f0 + 3f1 + 3f2 + 2f3 + 3f4 + 3f5 · · · 3fn−1 + fn) (2.37)

−b− a80

h4f IV (ξ).

Die jeweils letzten Terme in den obigen Gleichungen erlauben eine Fehler-abschatzung mit ξ ∈ [a, b].

Die erste Integrationsregel wird in der Literatur Trapezregel genannt, die Zahl derStutzstellen n ist beliebig. Bei der zweiten Regel (Simpson-Regel) muss n durch zweiteilbar sein, bei der dritten Regel (Simpson 3/8 Regel) muss n durch drei teilbar sein.

2.3.2 Gauß-Integration

Gleichungen 2.35–2.37 zeigen, dass sich bei der Wahl aquidistanter Stutzstellen dieNaherungsformeln fur die Integrale durch Summen uber die Funktionswerte an diesenStutzstellen multipliziert mit geeigneten Vorfaktoren (Gewichtsfaktoren) schreiben las-sen. Die Gauß-Integration erweitert diese Idee folgendermaßen: geht man von den aqui-distanten Stutzstellen ab, lasst man also die Wahl der n Stutzstellen offen, so gewinntman weitere n freie Parameter, die man im Sinne einer Optimierung der Naherungs-formeln wahlt. So kann ein Polynom bis zum Grad (2n− 1) durch die zu integrierendeFunktion gelegt werden. Die Naherungsformeln, die auf dieser Idee basieren, werdenGauß-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 fur n = 2 veranschaulicht.Gegeben sei das Integral

∫ b

adx f(x), wobei a und b endliche Werte haben sollen. Nach

Page 28: Skrip Tum

20 KAPITEL 2. INTERPOLATION, DIFFERENTIATION UND INTEGRATION

der Variablensubstitution

x =b− a2

t+b+ a

2, dx =

b− a2

dt (2.38)

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

∫ b

a

dx f(x) =b− a2·∫ 1

−1

dt f(t) =b− a2· [a1f(t1) + a2f(t2)] (2.39)

mit unbekannten Gewichtsfaktoren a1 und a2 und unbekannten Stutzstellen t1 und t2.Da diese Formel fur Polynome bis zum Grad (2n − 1) = 3 gelten muss, konnen diesevier unbekannten Parameter aus folgenden Gleichungen bestimmt werden:

f(t) = t3 :

∫ 1

−1

dt t3 = 0 = a1t31 + a2t

32, (2.40)

f(t) = t2 :

∫ 1

−1

dt t2 = 2/3 = a1t21 + a2t

22,

f(t) = t1 :

∫ 1

−1

dt t = 0 = a1t1 + a2t2,

f(t) = 1 :

∫ 1

−1

dt = 2 = a1 + a2.

Losung dieser vier Gleichungen fuhrt auf

a1 = a2 = 1 t2 = −t1 =√

1

3= 0.5773 (2.41)

und somit ∫ 1

−1

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

Ist f(t) ein beliebiges Polynom dritten Grades, so ist diese Formel – konstruktions-gemaß – exakt.

Die Formeln fur die Gauß-Integration lassen sich fur beliebiges n erweitern: sielauten dann (beachten Sie im Unterschied zu den vorhergehenden Abschnitten denveranderten Startindex i = 1)

∫ 1

−1

dtf(t) =n∑

i=1

wif(ti) , (2.43)

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

n∑

i=1

=

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

k+1k = 0, 2, . . . , 2n− 2

(2.44)

Page 29: Skrip Tum

2.3. INTEGRATION 21

bestimmt werden. Es zeigt sich, dass die gesuchten ti die Nullstellen des Legendre-Polynoms Pn(t) vom Grad n sind und dass die wi durch

wi = [Pn−1(ti) · P ′n(ti)]

−1(2.45)

gegeben sind. Die Legendre-Polynome werden mithilfe der rekursiven Relation

(n+ 1)Pn+1(t)− (2n+ 1) t Pn(t) + nPn−1(t) = 0 (2.46)

mit

P0(t) = 1, und P1(t) = t (2.47)

bestimmt. Die Legendre-Polynome sind auf dem Intervall [−1, 1] orthogonal, d.h., esgilt

∫ 1

−1

Pn(t)Pm(t)dt =

0 n 6= m> 0 n = m

. (2.48)

Konkret ergibt sich P2(t) aus (2.46) und (2.47) zu

P2(t) =3

2t2 − 1

2(2.49)

und

wi = [P1(ti) · P ′2(ti)]

−1= [ti · 3ti]−1 . (2.50)

Aus Gl. 2.49 sieht man, dass die Nullstellen von P2(t) tatsachlich durch ti = ±√

1/3gegeben sind. Setzt man diese Werte in Gl. 2.50 ein, so erhalt man w(ti) = 1 (vgl. Gl.2.41).

In der nachfolgenden Tabelle sind die Legendre-Polynome vom Grad n ≤ 4, ihrejeweiligen Nullstellen ti und die Werte der Gewichtsfaktoren, w(ti), angegeben.

n Ln(t) Nullstellen ti Gewichtsfaktoren w(ti)0 1 – –1 t 0.0 12 1

2(3t2 − 1) -0.57735 1

0.57735 13 1

2(5t3 − 3t) -0.77459 0.55555

0.0 0.888880.77459 0.55555

4 18(35t4 − 30t2 + 3) -0.86113 0.34785

-0.33998 0.652140.33998 0.652140.86113 0.34785

Ganz allgemein kann die Gauß-Integration auf Integrale vom Typ∫ b

adx W (x)f(x)

erweitert werden. Die Naherungsformel lautet dann

Page 30: Skrip Tum

22 KAPITEL 2. INTERPOLATION, DIFFERENTIATION UND INTEGRATION

∫ b

a

dxW (x)f(x) ≈n∑

i=1

wif(xi). (2.51)

Dieser Ausdruck ist exakt, wenn f(x) ein Polynom ist, dessen Grad kleiner odergleich (2n− 1) ist. W (x) wird Gewichtsfunktion genannt.

Die Berechnung der Gewichte wi erfolgt mit Hilfe der zu W (x) assoziierten or-thogonalen Polynome pi(x). Ist W (x) und ein Intervall I = [a, b] gegeben, so heißenPolynome pi(x), i = 0, 1, 2 . . . , orthonormiert bezuglich W (x) auf I, wenn gilt

∫ b

a

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

Die Abszissen xi sind die Nullstellen von pn(x), die Gewichte sind gegeben durch

wi = [pn−1(xi)p′n(xi)]

−1. (2.53)

Die Gauß-Integration erfolgt also bei vorgegebener Gewichtsfunktion W (x) undIntervall 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 Gewichtewi.

Abschließend wird die Summe Gl. 2.51 berechnet.Fur spezielle Gewichtsfunktionen W (x) sind die orthogonalen Polynome bekannt,

z.B.

W (x) I Polynom1 [−1, 1] Pn(x) . . . Legendre-Polynomee−x [0,∞] Ln(x) . . . Laguerre-Polynome

e−x2

[−∞,∞] Hn(x) . . . Hermite-Polynome

xα, α > −1 [−1, 1] Pα,02n . . . Jakobi-Polynome

Page 31: Skrip Tum

Kapitel 3

Zufallszahlen

Die moderne Physik hat ein grundlegendes Uberdenken elementarer Stutzen der klas-sischen Philosophie bewirkt, insbesondere des Kausalitatsprinzips. Als Physiker akzep-tieren wir gewisse quantenmechanische Phanomene als statistisch im Sinne der prin-zipiellen Unvorhersagbarkeit des Einzelereignisses. Ein Beispiel ist die Ungewissheitdes genauen Zeitpunkts der Relaxation eines angeregten Atoms oder eines radioakti-ven Zerfallsakts, die sich im Experiment mit einem einfachen Geigerzahler anschaulichzeigen lasst: die Zeitabstande aufeinanderfolgender ticks sind im Einzelfall prinzipiellunvorhersehbar und zufallig, sie gehorchen aber statistischen Gesetzmaßigkeiten. Wirdefinieren wahre Zufallszahlen als Zahlenfolgen, deren Einzelwerte im physikalischenSinn prinzipiell unvorhersehbar sind, deren Haufigkeitsverteilung und statistische Er-wartungswerte aber physikalischen Gesetzmaßigkeiten folgen. Mathematisch formuliertklingt das so:

”. . . ein k-Tupel von Zahlen, das mit der statistischen Hypothese in Ein-

klang steht, eine Realisierung eines zufalliges Vektors mit unabhangigen, identisch nacheiner Verteilungsfunktion v verteilten Komponenten zu sein, nennt man ein k-Tupelvon nach v verteilten Zufallszahlen.“[5].

”Zufalle nennt man in der Natur, was beim Menschen Freiheit heißen wurde.“ (Goethe,1811)

Viele Großen, die landlaufig als statistisch angesehen werden, lassen sich auf prin-zipiell determinierte Vorgange zuruckfuhren, die jedoch entweder aus praktischenGrunden nicht im Detail einzeln verfolgt werden oder aber grundsatzlich unzugang-lich sind, wie z.B. in chaotische Vorgangen, wo die Anfangsbedingungen einer Zu-standsanderung nicht vollstandig und ausreichend genau bestimmbar sind. Beispielesind viele Messfehler oder die Trajektorien eines Einzelmolekuls im Gas. Wenn dar-aus resultierende Zahlenfolgen den Gesetzmaßigkeiten der Folge wahrer Zufallszahlengehorchen, heißen sie (experimentelle) Pseudozufallszahlen. Analog sind (algorithmi-sche) Pseudozufallszahlen Zahlenfolgen, die aus sorgfaltig entwickelten Algorithmengewonnen werden. Algorithmen fur Pseudozufallszahlen und ihre Anwendung sind Ge-genstand der folgenden Ausfuhrungen [6].

23

Page 32: Skrip Tum

24 KAPITEL 3. ZUFALLSZAHLEN

3.1 Generierung von Zufallszahlen

3.1.1 Generierung”wahrer“ Zufallszahlen

Manche Computer sind mit einem physikalischen Zufallszahlengenerator ausgestat-tet, der aus dem Rauschen einer Widerstandsmessung oder mithilfe einer radio-aktiven Quelle eine zufallige Bitfolge bestimmen. Leichter zuganglich ist die (Ton-)Aufnahmefunktion vieler Computer, die in Abwesenheit eines Eingangssignals eben-falls ein zufalliges Signal produziert, das in eine Sequenz echter Zufallszahlen umge-wandelt werden kann.

3.1.2 Pseudozufallszahlen

Lineare Kongruenz Methode nach D.H. Lehmer, 1949 (Linear Congruential Genera-tor). Sie liegt den meisten Routineanwendungen zu Grunde und ist Basis vieler Biblio-theksfunktionen. Ihr Kern ist die Rekursionsvorschrift

ai+1 = (ai · b+ c)modm, (3.1)

die eine Folge von naturlichen Pseudozufallszahlen a1, a2, a3, . . . liefert.Die Parameter b, c sind geeignet gewahlte naturliche Zahlen. Der Startwert a0

ist eine beliebige naturliche Zahl im Bereich [0,m− 1]. Oft wird c = 0 (bei passendenWerten fur b und m) verwendet.

Beispiel: m = 32, b = 7, c = 1, a0 = 0 (das sind einfache Demo-Parameter.Empfohlene Parameter fur reale Anwendungen: siehe Tabelle 3.1):

a1 = (0 · 7 + 1) mod 32 = 1%32 = 1

a2 = (1 · 7 + 1) mod 32 = 8%32 = 8

a3 = (8 · 7 + 1) mod 32 = 57%32 = 25...

(3.2)

Wie man sieht, liegen die so gewonnenen Zufallszahlen im Bereich (0,m− 1). Willman große Zufallszahlen erzeugen, muss m groß sein, was nur bei entsprechend großenWerten von (aib + c) moglich ist. Hier besteht das Problem darin, dass dieser Zwi-schenwert maschinenintern durch die großte darstellbare Integerzahl begrenzt ist unddie Gefahr eines Speicheruberlaufs besteht (overflow). Dieser ist schwer erkennbar, weilkeine Fehlermeldungen oder Warnungen erzeugt werden und mit den niedrigstelligen(least significant) Bits weitergerechnet wird. Abhilfe durch geeignete Algorithmen istmoglich.

Die von der linearen Kongruenzmethode gelieferten Zahlenfolgen sind grundsatzlichperiodisch. Bei schlechter Parameterwahl ist die Periode sehr kurz und das Verfah-ren mit diesen Parametern unbrauchbar, z.B. a0 = 0, b = 19, c = 1,m = 381 =⇒0, 1, 20, 0, 1, 20, ... Ein anderes Beispiel fur eine schlechte Parameterwahl ist a0 =108, a = 31415821, b = 1,m = 1234567. Damit ergibt sich die Folge 35884508, 80001069,

Page 33: Skrip Tum

3.1. GENERIERUNG VON ZUFALLSZAHLEN 25

overflow bei m b c overflow bei m b c

220 6075 106 1283 227 121500 1021 25673222 7875 211 1663 227 259200 421 54773222 7875 421 1663223 6075 1366 1283 228 117128 1277 24749223 6655 936 1399 228 121500 2041 25673223 11979 430 2531 228 312500 741 66037224 14406 967 3041 229 145800 3661 30809224 29282 419 6173 229 175000 2661 36979224 53125 171 11213 229 233280 1861 49297

229 244944 1597 51749225 12960 1741 2731225 14000 1541 2957 230 139968 3877 29573225 21870 1291 4621 230 214326 3613 45289225 31104 625 6571 230 714025 1366 150889225 139968 205 29573

231 134456 8121 28411226 29282 1255 6173 231 259200 7141 54773226 81000 421 17117226 134456 281 28411 232 233280 9301 49297

232 714025 4096 150889227 86436 1093 18257

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

63512650, 43635651, 1034472, 87181513, 6917174, 209855, 67115956, 59939877, . . . ,bei der die letzte Stelle jeweils um 1 wachst. Die Ermittlung guter Parametersatzeist aufwandig, und es sollten nur erprobte Algorithmen und Parameterkombinationeneingesetzt werden.

3.1.3 Andere Methoden

• Kombinationsmethoden verwenden Kombinationen von Zufallszahlen verschie-dener Generatoren. Mitunter konnen damit sehr große Periodenlangen erzieltwerden. Zum unten angefuhrten non-linear additive feedback random number ge-nerator siehe die Dokumentation in Linux. Ausfuhrliche Beschreibungen von Al-gorithmen finden sich u.a. in [1, 6].

• Fibonacci-Generator: an+1 = (an + an−1) mod m

• von Neumann Generator (”Quadratmittengenerator“): Man quadriert eine Zahl,

schneidet aus der Mitte der Ziffernfolge eine Zahl heraus, die man wieder qua-driert, usw.).

Page 34: Skrip Tum

26 KAPITEL 3. ZUFALLSZAHLEN

3.1.4 Bibliotheksfunktionen

In ANSI-C werden die Funktionen int rand() [in Linux/GNU oft long rand()] undsrand() verwendet (include math.h). Sie beruhen haufig auf der linearen Kongru-enzmethode. Der maximale Wert der darstellbaren Zufallszahl ist durch die systemde-finierte Makro-Variable RAND MAX gegeben; sie ist oft gleich INT MAX (oder LONG MAX,fur long rand()). Die ANSI-Norm verlangt ein RAND MAX von lediglich 32767, wasfur technisch-wissenschaftliche Anwendungen vollig unzureichend ist. Wird die linea-re Kongruenzmethode verwendet, entspricht RAND MAX dem Parameter m. Die großteerreichbare Zufallszahl ist daher RAND MAX-1, die kleinste Null.

Die oben erwahnte Unzulanglichkeit des Mindeststandards in der ANSI-Normhat in der Unix-/Linux-Welt zur Implementierung von alternativen Funktionen (z.B.dem non-linear additive feedback random number generator) gefuhrt. Statt ran()

und srand() werden random() und srandom() eingesetzt (relativ große Periode von(16 ∗ (231 − 1)), sowie die Hilfsfunktionen initstate() und setstate(). Hier bestehtin der Qualitat der Zufallszahlen kein Unterschied zwischen low bytes und high bytes.

In FORTRAN77 sieht der Standard keinen intrinsischen Zufallszahlengenerator vor,allerdings gibt es eine Vielzahl frei erhaltlicher Bibliotheken mit Zufallszahlengenerato-ren. Unter Linux sind - compilerabhangig - fur FORTRAN77 oft die gleichen Genera-toren wie unter C verfugbar. Der Fortran2003-Standard definiert die Routinen RAND,

IRAND und RANDOM NUMBER samt der dazugehorigen Initialisierungsroutinen SRAND bzw.RANDOM SEED).

Fur komplexere Anwendungen, z.B. Monte-Carlo Methoden, sind mitunter auchgute Standard-Bibliotheksfunktionen nicht ausreichend, und eine sorgfaltige Vorarbeitist unabhangig von der gewahlten Programmiersprache unerlasslich.

Anfangswerte

Die Funktion srand(int/long Anfangswert) ist die seed-Funktion, die im Rahmender Initialisierungen (Programmstart) den Anfangswert der Zufallsfolge festlegt, alsodas a0 in der oben verwendeten Bezeichnungsweise. Vorsicht: Wenn im Code kei-ne Vorkehrungen getroffen werden, lauft ein Programm immer mit der gleichen Zu-fallszahlenfolge ab. Dieses Verhalten kann zwar wahrend der Programmentwicklungwunschenswert sein, wird aber ein zufalliger Anfangswert gewunscht, bietet sich z.B.die Funktion time(NULL) an, die als Ruckgabewert die seit dem 1.1.1970, 0.00 Uhr(‘Unix-Urknall’) vergangene Sekundenanzahl liefert. srand() setzt eine globale Sys-temvariable und wirkt daher auf alle rand()-Aufrufe im Programm unabhangig vonihrer Position im Code.

3.2 Haufigkeitsverteilungen

Die meisten Standardgeneratoren (und Bibliotheksfunktionen) liefern gleichverteilteZufallszahlen, d.h. jede Integerzahl (oder jedes beliebige Sub-Intervall bei floating pointZahlen) tritt mit gleicher Wahrscheinlichkeit und damit naherungsweise gleich haufig

Page 35: Skrip Tum

3.2. HAUFIGKEITSVERTEILUNGEN 27

auf. Manchmal will man aber ungleichverteilte Zahlenfolgen generieren, deren Wertegemaß einer bestimmten Haufigkeitsverteilung auftreten, z.B. einer Gaußverteilung,Exponentialverteilung, logarithmischen Verteilung, dem Planck’schen Strahlungsge-setz, einer eigenen Vorschrift folgend, usw.

3.2.1 Zuruckweisungsmethode

Diese Methode ist allgemein anwendbar und leicht zu implementieren, mitunter aberineffizient. Die vorgegebene Verteilungsfunktion y = v(x) sei im Intervall A ≤ x ≤ Banzuwenden und habe darin einen maximalen Funktionswert ymax. Nun werden zweiunabhangige, gleichverteilte Zufallszahlen R1 und R2 im Intervall (0, Rmax) generiert.

• Die erste wird auf das Intervall (A,B) abgebildet und wahlt darin einen zufalligenx-Wert aus: xR1 = A+R1(B−A)/(Rmax). Nun wird der Funktionswert an dieserStelle bestimmt: v(xR1

).

• Dann wird R2 auf den Bereich der Funktionswerte von v(x), also (0, ymax) ab-gebildet und gepruft, ob R2/Rmax < v(xR1

)/ymax ist. Bildlich entspricht das derFrage, ob der (auf ymax normierte) Zufallswert unterhalb des Funktionsgraphen,also unter v(xR1

) liegt oder daruber.

• Gegebenenfalls wird R1 als gultiger Wert akzeptiert. Andernfalls, also wennR2/Rmax > v(xR1

)/ymax ist, wird der gesamte Schritt verworfen.

Es fuhrt also nicht jeder Schritt zum Erfolg, insbesondere ist die Methode dannaußerst ineffizient, wenn v(x) nur eine lokale Spitze hat und uberall sonst sehr kleinist, weil dann fast jeder Schritt verworfen werden muss. Eine mogliche Verbesserungfur solche Falle besteht darin, eine Funktion V (x) zu suchen, deren Werte im IntervallA ≤ x ≤ B leicht berechenbar sind und die eine moglichst eng anliegende Hulle umv(x) bildet: an jeder Stelle muß aber V (x) ≥ v(x) sein. An die Stelle des VergleichsR2/Rmax < v(xR1

)/ymax tritt der Vergleich R2/Rmax < v(xR1)/V (xR1

). Die FunktionV (x) kann auch stuckweise zusammengesetzt werden und braucht lediglich eindeutigberechenbar zu sein; sie muss insbesondere nicht stetig sein.

3.2.2 Transformationsmethode

Hier wird versucht, jene Funktion f(R) von Zufallszahlen R explizit zu finden, mit derdie Werte xi = f(Ri) einer vorgegebenen Wahrscheinlichkeitsdichte (Haufigkeitsvertei-lung) v(x) auftreten. Beispielsweise liefern gaußverteilte Zufallsfolgen mit

v(x) =1√2π

exp(

− (x− x0)22

)

(3.3)

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

Page 36: Skrip Tum

28 KAPITEL 3. ZUFALLSZAHLEN

1):x=+∞∫

x=−∞

v(x)dx =1√2π

x=+∞∫

x=−∞

exp(

− (x− x0)22

)

= 1 (3.4)

Analoges gilt fur eine Wahrscheinlichkeitsdichte (Haufigkeitsverteilung) Z(R) vongleichverteilten Zufallszahlen R, die von R unabhangig ist, fur die also Z(R) = const =1. Nach einer Transformation Z(R) → v(x) mit Hilfe von x = f(R) muß jede Wahr-scheinlichkeit Z(R)dR einer Wahrscheinlichkeit v(x)dx entsprechen, und es muss injedem Intervall

∣∣∣Z(R)dR

∣∣∣ =

∣∣∣v(x)dx

∣∣∣→ v(x) = Z(R)

∣∣∣∣∣

dR

dx

∣∣∣∣∣= f(R) (3.5)

sein. Mit Z(R) = 1 wird

dR

dx= v(x)→ R =

v(x)dx = W (x)→ x = W−1(R) (3.6)

Die praktische Anwendbarkeit der Transformationsmethode hangt davon ab, wie leichtW−1(R) berechenbar oder in einem Computeralgorithmus (eventuell naherungsweise)darstellbar ist.

3.2.3 Poissonverteilte Zufallszahlen und Exponentialvertei-lung

Die Poissonverteilung P (n) beschreibt die Wahrscheinlichkeit fur das Auftreten vonn zufallsbedingten Ereignissen in einem dimensionslosen Intervall (interpretierbar alsZeit, Strecke, Raum, auch das Auftreten von x Fehlern in einer Produktionscharge,usw.). Sie hat einen einzigen Parameter, λ, der gleichzeitig Mittelwert und Standard-abweichung darstellt und eine Rate (mittlere Anzahl von Ereignissen in einem Intervall)angibt:

Pn(n) =λn

n!e−λ , n ∈ N . (3.7)

n sind ganze Zahlen. Fur große Werte (>10) von λ wird die Poissonverteilung nahe-rungsweise zur Gaußverteilung mit σ2 = λ. Ersetzt man λ fur physikalische Anwen-dungen durch ein Produkt aus (Mittelwert/Einheitsintervall) × Intervallgroße, z.B. λt[s−1] (Ereignisse pro Zeiteinheit, Rate) × Zeitintervallgroße t [s], ist λtt wieder einedimensionslose Zahl und man erhalt

Px(x) =(λtt)

x

x!e−λtt . (3.8)

Mit der Poissonverteilung eng verknupft ist die Exponentialverteilung, welche diedimensionslose Intervalllange (beispielsweise als Wartezeit interpretierbar) bis zum Ein-treten des nachsten (ersten) Ereignisses angibt. Wahlt man wieder Zeitintervalle, muss

Page 37: Skrip Tum

3.2. HAUFIGKEITSVERTEILUNGEN 29

man dazu die obige Gleichung nach der Zeit differenzieren und erhalt

Pt(t) = λte−λtt . (3.9)

Der Erwartungswert und die Standardabweichung sind beide gleich 1/λ [s]. Fur die Ex-ponentialverteilung lassen sich das Integral W (t) und die Umkehrfunktion W−1 leichtberechnen (Transformationsmethode):

W (t) = R =

λte−λttdt = 1− e−λtt ,

t = W−1(1−R) = − 1

λtln(1−R)→ − 1

λtlnR . (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 Zerfalle pro Sekunde, bilden die Werte ti = −0.01 · ln(Ri)eine Folge von exponentialverteilten Wartezeiten, die aus gleichverteilten ZufallszahlenRi berechnet werden kann.

3.2.4 Gaußverteilte Zufallzahlen

Gaußverteilte Zufallzahlen folgen der Verteilungsfunktion

v(x) =1√2πe−x

2/2 . (3.11)

Es ist keine analytische Darstellung der in der Transformationsmethode definiertenFunktionen W und W−1bekannt, aber es gibt einige effiziente Algorithmen:

• Box-Muller Algorithmus: (ohne Beweis)

– Generiere zwei gleichverteilte, auf 1 normierte Zufallszahlen R1 und R2.

– Berechne ω = 2πR1 und = −2 ln(R2)

– Berechne X1 =√ cosω und X2 =

√ sinω

X1 und X2 sind die gesuchten gaußverteilten Zufallszahlen. Es werden also Paarevon gleichverteilten Zufallszahlen benotigt, um Paare von gaußverteilten Zufalls-zahlen zu erhalten.

• Polarmethode von Marsaglia: (ohne Beweis)

– Generiere zwei gleichverteilte, auf 1 normierte Zufallszahlen R1 und R2.

– Setze S = 2R1 − 1 und T = 2R2 − 1

– Berechne W 2 = S2 + 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)).

Page 38: Skrip Tum

30 KAPITEL 3. ZUFALLSZAHLEN

X1 und X2 sind die gesuchten gaußverteilten Zufallszahlen. Wiederum fuhrt einPaar von gleichverteilten Zufallszahlen zu einem Paar gaußverteilter Zufallszah-len. Da es sich um eine Version der Verwerfungsmethode handelt, ergibt nichtjede Kombination von Werten R1 und R2 ein Paar X1 und X2. Die Polarmetho-de ist gegenuber dem Box-Muller-Algorithmus vorteilhaft, wenn die Berechnungvon Winkelfunktionen zu zeitaufwandig ist.

3.2.5 Auf benutzerdefinierte Intervalle beschrankte (ganzzah-lige) Zufallszahlen

Die mit Bibliotheksfunktionen generierten, ganzzahligen Zufallszahlen liegen im Be-reich von 0 und einem Maximalwert, der z.B. in C fur rand() durch das Ma-kro RAND MAX gegeben ist. Will man den Bereich einschranken (etwa auf die Wer-te (1, 2, 3, 4, 5, 6) zur Simulation eines Wurfels), liegt eine Modulo-Division nahe:1 + rand()%m mit m = 6. Die Methode hat zwei Nachteile: erstens beruht das Er-gebnis auf den least significant bits, was, wie erwahnt, bei manchen Generatoren un-vorteilhaft ist. Zweitens ist im allgemeinen der interessierende Bereich (mit Startwert0 : 0, 1, 2, 3, 4, 5) nicht ganzzahlig in RAND MAX enthalten. Es gibt also einige Zahlen,die ein Mal ofter vorkommen als andere, namlich die zwischen m ∗ (int)(RAND MAX/m)und RAND MAX. Im vorliegenden Fall ist das nicht kritisch, weil RAND MAX/5 sehr großim Vergleich zum gewahlten Bereich der Zufallszahlen ist. Ist aber entweder RAND MAX

klein oder der gewunschte Bereich groß, kann das Probleme ergeben. Man muss kor-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 Nor-mierung auf 1 erfolgt durch (double) rand()/(RAND MAX+1.0) oder (double)

rand()/(double)(RAND MAX)) je nachdem, ob RAND MAX die großtmogliche Zufallszahlmiteinschließt oder nicht und ob im Ergebnis der Wert 1 inkludiert sein soll (letzte-res meist nicht). Man beachte den Dezimalpunkt nach 1., der den Ausdruck zu einerdouble Große macht. Weglassen erzeugt moglicherweise eine kleine Katastrophe, weilRAND MAX oft gleich LONG MAX ist und RAND MAX+1 dann durch overflow −2147483648ergibt!

Andere Normierungen

Grundsatzlich gilt das oben Gesagte. Die Linux-Dokumentation empfiehlt furden non-linear additive feedback random number generator mit Bezug aufdie Numerical recipies [1] als Beispiel fur die Normierung auf 10 j=1+(int)

(10.0*rand()/(RAND MAX+1.0)); Beachten Sie, dass sowohl der Token 1.0 als auch

Page 39: Skrip Tum

3.2. HAUFIGKEITSVERTEILUNGEN 31

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

Page 40: Skrip Tum

32 KAPITEL 3. ZUFALLSZAHLEN

Page 41: Skrip Tum

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

f(x) dx ≈n∑

i=1

wif(xi) (4.1)

die Notwendigkeit der Bestimmung der Nullstellen der den Berechnungen zugrundelie-genden Polynome ergeben.

Wir werden uns daher diesem numerischen Problem zuwenden und die gangigstenMethoden vorstellen. Die Vorgangsweise wird in jedem Fall sehr ahnlich sein und kannwie folgt zusammengefasst werden:

1. finde einen Bereich, der (zumindest) eine Nullstelle enthalt

2. wahle eine geeignete Methode der Nullstellenbestimmung.

4.1.1 Bracketing und Bisektionsverfahren

Die uberwiegende Zahl von Nullstellen lasst sich durch den Vorzeichenwechsel derFunktion f(x) an x0 charakterisieren. Ausnahmen bilden komplexe Nullstellen (z.B.x2 + a = 0, a > 0), doppelt zu zahlende Nullstellen (z.B. x2 = 0) oder Singularitatender Form f(x) = 1/g(x) mit ungerader Funktion g(x). Es gibt keine Methode, die fureine unbekannte Funktion f(x) mit Sicherheit eine Nullstelle finden konnte. Es ist daherratsam, sich vor Beginn des Programmierens mit Form und Art der zu untersuchendenFunktionen vertraut zu machen.

33

Page 42: Skrip Tum

34 KAPITEL 4. NULLSTELLENBESTIMMUNG UND χ2-ANPASSUNG

Den Vorzeichenwechsel von f(x) macht man sich beim Bracketing zunutze, indemman, ausgehend von einem vorgegebenen Ausgangspunkt xi, durch sukzessive Ver-großerung des Intervalls [xi, xf ] das erste xf bestimmt, fur das die Bedingung

f(xi) · f(xf ) ≤ 0 (4.2)

erfullt ist. Anschließend kann man unter Wahrung der Bedingung 4.2 das Intervall wie-der verkleinern und dadurch die (eine der) eingeschlossene(n) Nullstelle(n) auf beliebigeGenauigkeit bestimmen (Bisektionsverfahren).

4.1.2 Newton-Raphson-Verfahren

Ist die analytische Form der ersten Ableitung von f(x) bekannt, so empfiehlt sich dieVerwendung des Newton-Raphson-Verfahrens. Es basiert auf der Taylorreihenentwick-lung von f(x) in der Nahe der Nullstelle x0 = x+∆x

f(x+∆x) ≈ f(x) + f ′(x)∆x+f ′′(x)

2∆x2 + . . . . (4.3)

Wegen f(x + ∆x) = 0 folgt (unter Vernachlassigung aller Terme O(∆x2)) ∆x =−f(x)/f ′(x). Die Iterationsvorschrift fur xi lautet daher

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 signifikanten Stellen verdoppelt. Istdie analytische Form der ersten Ableitung von f(x) nicht bekannt und muss durch einDifferenzenverfahren bestimmt werden, verschlechtert sich die Effizienz dramatisch. Indiesem Fall empfiehlt sich die Verwendung anderer Verfahren, die ohne Berechnung derAbleitung auskommen.

Nachteil des Newton-Raphson-Verfahrens: Da in Gleichung 4.3 alle Terme O(∆x2)vernachlassigt werden, kann es bei Startwerten, die weit von der Nullstelle entfernt sind,zu unvorhersagbaren Ergebnissen kommen. Liegen weiters Extrema von f(x) zwischendem Startwert xi und der Nullstelle x0 vor, so sind ebenfalls numerische Instabilitaten(wegen f ′(x)→ 0) moglich.

4.1.3 Sekanten-Verfahren

Drei eng miteinander verwandte Verfahren begnugen sich mit der Auswertung derFunktion an zwei bzw. drei Werten fur x, um eine iterative Annaherung an x0 zufinden.

Das Sekanten-Verfahren und die regula-falsi-Methode nahern f(x) in der Umgebungder Nullstelle durch die Sekante definiert durch die Funktionswerte an den Grenzenvon [xi−1, xi] an. Der Schnittpunkt der Sekante mit der x-Achse definiert den neuen

Page 43: Skrip Tum

4.1. NULLSTELLENBESTIMMUNG 35

Naherungswert xi+1, der entweder den Grenzwert xi−1 (Sekantenverfahren) ersetzt oderdas Suchintervall so umdefiniert, dass Bedingung 4.2 erfullt bleibt (regula-falsi).

Die Konvergenz von regula-falsi ist oft besser als linear, fuhrt aber sicher zum Er-folg. Im Sekantenverfahren muss die Moglichkeit der Divergenz aufgrund des lokalenVerhaltens der Funktion f(x) gegen die bessere Konvergenz (∝ ǫ1.618) abgewogen wer-den.

Eine interssante Variante der regula-falsi-Methode, die Sicherheit und Schnelligkeit(∝ ǫ

√2) verbindet, ist die Nullstellenbestimmung nach Ridder. Zunachst wird f nicht

nur an den Stellen xi−1 und xi sondern auch in der Mitte des Intervalls xm = (xi−1 +xi)/2 berechnet.

Nach Abspalten eines Exponentialfaktors (fur Details der Ableitung siehe z.B. [1])erhalt man fur den neuen Wert xi+1

xi+1 = xm + (xm − xi−1)sgn[f(xi−1)− f(xi)]f(xm)√

f(xm)2 − f(xi−1)f(xi). (4.5)

4.1.4 Nullstellenbestimmung nach Brent

Garantierte Konvergenz bei gutem Konvergenzverhalten bietet das Verfahren nachBrent, das, grob gesprochen, die Kombination eines leicht veranderten Sekantenver-fahrens und eingeschobener Bisektionsschritte darstellt. Ausgehend von den drei Zah-lenpaaren [xa, f(xa)], [xb, f(xb)] und [xc, f(xc)], wobei xb die bisher beste Annaherungan x0 sei, errechnet man den neuen Naherungswert durch

x = xb +S[T (R− T )(xc − xb)− (1−R)(xb − xa)]

(T − 1)(R− 1)(S − 1). (4.6)

Die Hilfsgroßen S, R und T sind durch

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 durchdas Resultat eines Bisektionsschrittes.

4.1.5 Nullstellen von Polynomen

Bekannterweise haben Polynome vom Grad n ebensoviele Nullstellen und konnen alsProdukt

pn(x) = (x− x1)(x− x2) . . . (x− xn), xn ∈ C (4.8)

angeschrieben werden. Da komplexe Nullstellen paarweise auftreten (x0 = a ± ib),ist leicht einsichtig, dass Polynome ungeraden Grades zumindest eine reelle Nullstelleaufweisen. Nachdem diese abgespalten wurde (Polynomdivision, siehe unten), muss dieNullstellensuche auf die komplexe Zahlenebene ausgedehnt werden.

Page 44: Skrip Tum

36 KAPITEL 4. NULLSTELLENBESTIMMUNG UND χ2-ANPASSUNG

Bei Mullers Methode handelt es sich um eine komplexe Verallgemeinerung der Se-kantenmethode, wobei aber eine quadratische statt der linearen Interpolation ange-wandt wird. Ausgehend von drei x-Werten (konnen aquidistant auf der reellen Achseliegen) kommt folgende Iterationsformel zur Anwendung:

xi+1 = xi − (xi − xi−1)2C

B ±√B2 − 4AC

, (4.9)

wobei die Hilfsgrossen q, A, B und C durch

q =xi − xi−1

xi−1 − xi−2

A = qPn(xi)− q(1 + q)Pn(xi−1) + q2Pn(xi−2)

B = (2q + 1)Pn(xi)− (1 + q)2Pn(xi−1) + q2Pn(xi−2)

C = (1 + q)Pn(xi) (4.10)

gegeben sind. Das Vorzeichen in Gleichung 4.9 wird so gewahlt, dass der Betrag desNenners maximal wird.

Ein weiteres, von Laguerre entwickeltes Verfahren beruht auf einer gewagtenAbschatzung fur den Abstand der tatsachlichen Nullstellen vom derzeit untersuchtenPunkt x. Zunachst definiert man wiederum zwei Hilfsgrossen

d ln |pn(x)|dx

=n∑

i=1

1

x− xi=p′npn

= G , (4.11)

−d2 ln |pn(x)|dx2

=n∑

i=1

1

(x− xi)2=

(p′npn

)2

− p′′npn

= H . (4.12)

Unter der Annahme, dass die Nullstelle x1 einen Abstand a, alle anderen Nullstellenaber Abstand b von x haben, konnen die Ausdrucke fur G und H wesentlich vereinfachtwerden

1

a+n− 1

b= G , (4.13)

1

a2+n− 1

b2= H . (4.14)

Damit ergibt sich fur a

a =n

G±√

(n− 1)(nH −G2)(4.15)

was zum neuen Iterationswert xi+1 = xi − a fuhrt. Auch in Gl. 4.15 wird der Nennermaximiert. Ahnlich wie das Bisektionsverfahren konvergiert das Laguerre-Verfahrenimmer zu einer der reellen Nullstellen. Fur komplexe Nullstellen ist ein Misserfolg sehrunwahrscheinlich.

Page 45: Skrip Tum

4.1. NULLSTELLENBESTIMMUNG 37

Auffinden mehrerer/aller Nullstellen von Polynomen

Eine einfache Methode, die fur reelle Nullstellen funktioniert, besteht darin, dass mandas zu untersuchende Intervall in n Unterintervalle teilt und diese auf einen Vorzeichen-wechsel der Funktion innerhalb deren Grenzen untersucht. Danach werden durch eineder oben beschriebenen Methoden in den gefundenen Unterintervallen die Nullstellenvon f(x) bestimmt.

Aus Polynomen konnen Nullstellen auch abdividiert werden. Dadurch wird ein Poly-nom geringeren Grades erzeugt und die Prozedur wiederholt. Im Falle eines komplexenPaares 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 Naherung an dietatsachlichen Nullstellen des Polynoms betrachtet werden sollten, da sich numerischeFehler mit jeder Division aufaddieren. Alle gefundenen Nullstellen sollten daher nachBeendigung der Routine

”aufpoliert“ werden.

• Einschub: einfache algebraische Manipulation von Polynomen:

Fur ein Polynom vom Grad n, das durch pn =∑n

i=0 cixi gegeben ist, fuhrt man

eine Multiplikation mit dem Faktor (x− a) durch einen Programmteil durch, der

1. cn zu cn+1 macht und

2. eine Zeile enthalt, die den neuen Koeffizienten cj durch cj−1−cj∗a berechnet(von j = n beginnend).

Will man das Polynom pn durch (x− a) dividieren, sind folgende Rechenschritteerforderlich:

1. cn in einem Zwischenspeicher ZS1 ablegen und cn = 0 setzen (der Grad desPolynoms wird um eins erniedrigt)

2. von j = n−1 beginnend cj in ZS2 ablegen und auf cj = ZS1 setzen. Danachwird ZS1 durch ZS1 = ZS2 + ZS1 ∗ a neu berechnet.

Der Vollstandigkeit halber sei noch die Moglichkeit erwahnt, die Nullstellen einesPolynoms durch die Berechnung der Eigenwerte einer Matrix A zu bestimmen. Sie istdefiniert durch die Gleichung

Pn(x) = det[A− x1] . (4.17)

Fur Polynome hohen Grades und auf fur lineare Algebra optimierten Computern kannsich dies als die schnellste und stabilste Methode herausstellen.

Page 46: Skrip Tum

38 KAPITEL 4. NULLSTELLENBESTIMMUNG UND χ2-ANPASSUNG

4.2 χ2-Anpassung

Bevor wir zur Beschreibung der Anpassungsmethoden kommen, sollten ein paar Wortedaruber gesagt werden, worum es bei einer Anpassung eigentlich geht. Es ist nichtdas Ziel einer Fitprozedur, durch eine Reihe von Datenpunkten eine moglichst glatteKurve zu legen, um die graphische Darstellung zu optimieren, sondern es handelt sichbei der χ2-Anpassung um eine Methode zu entscheiden, wie gut das physikalische Bild,das man sich von einem Prozess gemacht hat, die gemessene Realitat erklaren kann.Eine Fitprozedur alleine kann Ihnen niemals eine Erklarung fur die gemessenen Datenliefern. Zwei Beispiele:

• Sie untersuchen den radioaktiven Zerfall einer Ihnen unbekannten Substanz. DaSie wissen, dass Zerfallsprozesse durch eine abklingende Exponentialkurve be-schrieben werden konnen, passen Sie eine Funktion der Form c · e−Γt an IhreDatenpunkte an, ermitteln daraus z.B. die Zerfallsrate des Materials und bestim-men mithilfe einer Datensammlung das untersuchte Element.

• Sie haben eine Experiment durchgefuhrt, fur dessen Ergebnis Ihnen zwei moglicheErklarungen einfallen. Ein Fit kann Ihnen die Wahl zwischen den beiden Modellenerleichtern, kann Ihnen aber auch sagen, dass keines der beiden Modelle in derLage ist, die gemessenen Daten zufriedenstellend zu erklaren.

Hat man also einen Satz von N Datenpunkten (xi, yi) gemessen und hat man dieVermutung, dass die Daten durch eine Funktion mit M Fitparametern

y(x) = y(x; a1 . . . aM) (4.18)

beschrieben werden konnen, so sollte die Fitprozedur 1. die Parameter ai, 2. eineAbschatzung uber den Fehler jedes einzelnen Parameters und 3. ein statistisches Maßfur die Qualitat der Fitfunktion liefern. Geben Sie sich niemals mit dem ersten Punktalleine zufrieden, oftmals tauscht die graphische Darstellung das Auge uber die Un-zulanglichkeit des zugrundegelegten Modells hinweg (eine geschickt gewahlte Darstel-lung der Daten hilft oft zu verschleiern, dass man keine Ahnung hat, was man gemessenoder gerechnet hat!). Selbstverstandlich sollte die Anzahl der Fitparameter moglichstgering sein, um den Wert eines Modells abschatzen zu konnen. Den leider oftmalsbegangenen Irrweg, ein fehlerhaftes Modell durch zusatzliche Parameter ai zu retten,sollten Sie tunlichst vermeiden.

Definiert man als Maß fur die Abweichung

χ2 =N∑

i=1

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

σi

)2

, (4.19)

wobei die Parameter σi in Gl. 4.19 die individuelle Standardabweichungen zu je-dem Messpunkt (xi, yi) bedeuten, so besteht die Aufgabe in der Minimierung von χ2

bezuglich der Fitparameter ai.

Page 47: Skrip Tum

4.2. χ2-ANPASSUNG 39

Kennt man σi nicht und muss/kann man von einer fur alle Datenpunkte identischenStandardabweichung ausgehen, setzt man zunachst alle σi auf eins, minimiert Gl. 4.19und errechnet aus dem Ergebnis σ mittels

σ2 =

∑Ni=1[yi − y(xi; a1 . . . aM)]2

N −M . (4.20)

Numerisch gesehen geht es bei einer χ2-Anpassung darum, die Nullstellen der MAbleitungen von Gl. 4.19 nach den Fitparametern ak zu finden, also das Gleichungs-system

0 =N∑

i=1

(yi − y(xi)

σi

)(∂y(xi; . . . ak . . .)

∂ak

)

k = 1, . . . ,M (4.21)

zu losen.Wir wollen uns hier auf Modelle beschranken, die linear in den Fitparametern ai

sind, also Summen von Produkten der ai mit beliebigen Basisfunktionen Xi. Handeltes sich bei den Xi z.B. um Potenzen von x, fitten wir unsere Daten an ein Polynom an,bei Xi = sin(αix) oder Xi = cos(αix) an eine harmonische Serie. Damit sieht unsereursprungliche Gl. 4.19 nun folgendermaßen aus:

χ2 =N∑

i=1

(

yi −∑M

k=1 akXk(xi)

σi

)2

. (4.22)

Definiert man das Problem durch Definition einer N -Zeilen ×M -Spalten Matrix A undeines Vektors ~b mit N Komponenten durch

Aij =Xj(xi)

σi, bi =

yiσi

(4.23)

um, wird Gl. 4.22 zuχ2 = |A · ~a−~b|2. (4.24)

Setzt man weiters die Basisfunktionen Xi in Gl. 4.21 ein, fuhrt dies auf das Gleichungs-system

0 =N∑

i=1

1

σ2i

(

yi −M∑

j=1

ajXj(xi)

)

Xk(xi) k = 1, . . . ,M (4.25)

das aquivalent zu(AT ·A

)

M×M· ~aM = AT

M×N ·~bN (4.26)

ist. Die Losung eines Gleichungssystems der Form A~a = ~c gehort zu den Standardpro-blemen der linearen Algebra und kann getrost den optimierten Bibliotheksfunktionenuberlassen werden. Die Auswahl der geeigneten Routine hangt im wesentlichen davonab, welche Zahlenwerte die Matrixelemente Aij haben. Dabei ist fur die χ

2-Anpassungdie Methode der singular value decomposition am wenigsten empfindlich auf Rundungs-fehler.

Page 48: Skrip Tum

40 KAPITEL 4. NULLSTELLENBESTIMMUNG UND χ2-ANPASSUNG

Was die Abschatzung der Fehler der Fitparameter betrifft, die wir zu Beginn alsBedingung fur eine sinnvolle Fitprozedur gefordert hatten, so haben wir Gluck. Siefallen als Nebenprodukt der Berechnung an, denn die Varianzen der ai sind durch

σ2(ai) = Cii mit C =(ATA

)−1(4.27)

gegeben. Hat man das einmal akzeptiert, glaubt man auch, dass es sich bei den Ne-bendiagonalelementen Cij um die Kovarianzen zwischen ai und aj handelt.

Der dritte Punkt unserer Liste war die Abschatzung der Gute des Fits. Sie wird alsχ2-Wahrscheinlichkeitsfunktion Q(χ2|ν) bezeichnet. Vereinfacht gesagt beschreibt siedie Wahrscheinlichkeit, dass man trotz eines richtigen Modells fur die Anpassung einenbesseren Wert fur χ2 finden kann und sollte daher moglichst klein sein. Berechnet wirdsie mithilfe der unvollstandigen Γ-Funktion

Q(a, x) =

∫∞xe−tta−1 dt

∫∞0e−tta−1 dt

=1

Γ(a)

∫ ∞

x

e−tta−1 dt , (4.28)

wobei fur a = (N −M)/2 und fur x = χ2/2 einzusetzen sind.

4.2.1 Lineare Regression

Die einzige Anwendung der χ2-Anpassung, fur die man ublicherweise keine Bibliotheks-funktion verwendet, ist die Anpassung einer Geraden an Datenpunkte. D.h., dass dieFitfunktion durch

y(x) = y(x; a, b) = a+ b · x (4.29)

gegeben ist. Fur diesen einfachen Fall ergibt sich fur die Funktion χ2 sowie ihre Ablei-tungen nach a und b

χ2 =N∑

j=1

(yj − a− bxj

σj

)2

dχ2

da= 0 = −2∑N

j=1yj−a−bxj

σj,

dχ2

db= 0 = −2∑N

j=1xj(yj−a−bxj)

σj.

(4.30)

Unter Verwendung der Hilfsgroßen

S =N∑

j=1

1

σ2j

, Sx =N∑

j=1

xjσ2j

, Sx =N∑

j=1

yjσ2j

, Sxx =N∑

j=1

x2jσ2j

und Sxy =N∑

j=1

xjyjσ2j

lassen sich die Koeffizienten a und b aus dem Gleichungssystem

aS + bSx =Sy

aSx + bSxx=Sxy

a= SxxSy−SxSxy

SSxx−S2x

b= SSxy−SxSy

SSxx−S2x

(4.31)

berechnen. Gl. 4.31 vereinfacht sich weiter, wenn die Standardabweichungen σj unbe-kannt sind und σj = 1 gesetzt werden konnen. In diesem Fall ist S gleich der Anzahlder Datenpunkte, S = N .

Page 49: Skrip Tum

Kapitel 5

Lineare Algebra

Im ersten Teil dieses Kapitels behandeln wir Methoden zur Losung von linearen Glei-chungssystemen - eines der zentralen Probleme in der numerischen Mathematik. Imzweiten Teil des Kapitel lernen wir den iterativen Lanczos Algorithmus kennen, mitwelchem Eigenwert und Eigenvektor des Grundzustandes einer hermiteschen Matrixberechnet werden konnen.

5.1 Lineare Gleichungssysteme

In der numerischen Mathematik werden viele Probleme, z.B. die Interpolation vonFunktionen, die Losung von Differentialgleichungen, die Losung von Integralgleichun-gen, etc., auf die Losung eines linearen Gleichungssystem zuruckgefuhrt. Lineare Glei-chungssysteme sind mathematisch bestens untersucht und konnen unter vorgegebenen(meist schwachen) Bedingungen gelost werden. Die Eigenschaften linearer Gleichungs-systeme finden auch in der formalen Mathematik in vielen Beweisen ihre Anwendung.

Ein lineares Gleichungssystem fur die Unbekannten x1, x2, . . . , xN ist von der Form

Ax = b ⇐⇒

A11 A12 . . . A1N

A21 A22 . . . A2N...

......

...AM1 AM2 . . . AMN

x1x2x3...xN

=

b1b2...bM

, (5.1)

wobei x und b Vektoren der Dimension N sind und A eine M × N Matrix ist. DieMatrix A und der Vektor b werden als bekannt vorausgesetzt. Man muss nun diefolgenden Falle unterscheiden:

• M < N oder M = N, detA = 0 → Das Gleichungssystem ist unterbestimmt,

• M = N, detA 6= 0 → Das Gleichungssystem ist eindeutig losbar,

• M > N → Das Gleichungssystem ist uberbestimmt, ausgenommen fur den Fall,dass M −N Gleichungen uber lineare Abhangigkeiten reduziert werden konnen.

41

Page 50: Skrip Tum

42 KAPITEL 5. LINEARE ALGEBRA

Im Folgenden beschranken wir uns auf den FallM = N , sodass A eine quadratischeMatrix ist. Ist nun detA = 0 so spricht man von einem singularen Gleichungssystem,welches nicht eindeutig nach x aufgelost werden kann. Nichtsingulare Gleichungssyste-me, d.h. detA 6= 0, konnen im Prinzip eindeutig gelost werden. Bei der numerischenRechnung hat man aber Schwierigkeiten mit der Genauigkeiten zu erwarten, wenndetA sehr klein wird, bzw. wenn die Eigenwerte von A eine hohe Dynamik aufweisen,d.h., sich ihre Zahlenwerte uber viele Großenordnungen erstrecken.

Zur Losung von linearen Gleichungssystemen gibt es je nach Form von A eineVielzahl spezieller Verfahren, welche in zwei Gruppen unterteilt werden konnen,

a direkte Verfahren,

b iterative Verfahren.

Direkte Verfahren liefern in endlich vielen Schritten das exakte Ergebnis, wenn manvon Rundungsfehlern absieht. Bei iterativen Verfahren erreicht man das exakte Er-gebnis erst nach unendlich vielen Schritten. Im vorliegenden Kapitel beschranken wiruns auf die Darstellung von zwei direkten Verfahren, und zwar (a) den GaußschenEliminationsalgorithmus und (b) eine spezielle Methode fur tridiagonale Matrizen.

Bei den sogenannten iterativen Verfahren nahert man sich, ausgehend von einerStartnaherung, schrittweise der gesuchten Losung an, bis ein festgelegtes Konvergenz-kriterium erreicht ist. Beispiele fur solche iterative Methoden sind das Jacobi- bzw. dasGauß-Seidel-Verfahren. Besonders bei dunnbesetzten Matrizen konnen diese Verfahrensehr effizient sein.

Abschließend sei noch erwahnt, dass die Verfahren zur Losung eines linearen Glei-chungssystems auch fur die Bestimmung der inversen Matrix A−1 verwendet werdenkonnen, wenn man die N Gleichungssysteme (i = 1, 2, . . . , N)

A11 A12 . . . A1N

A21 A22 . . . A2N...

......

...AN1 AN2 . . . ANN

(A−1)1i(A−1)2i

...(A−1)Ni

=

δ1iδ2i...δNi

(5.2)

lost.

5.1.1 Das Eliminationsverfahren von Gauß

Der Algorithmus

Beim Gaußschen Eliminationsverfahren zur Losung eines linearen Gleichungssystemswird durch geeignete Vertauschung und Linearkombination von Zeilen des Gleichungs-systems (5.2) die Matrix A schrittweise auf Dreiecksgestalt gebracht:

r11 r12 . . . r1N0 r22 . . . r2N...

......

...0 0 . . . rNN

x1x2...xN

=

c1c2...cN

. (5.3)

Page 51: Skrip Tum

5.1. LINEARE GLEICHUNGSSYSTEME 43

Die Bestimmung des Losungsvektors x aus einem Gleichungssystem mit Dreiecksgestaltist einfach. Man erhalt:

xi =1

rii

(

ci −N∑

ℓ=i+1

rilxl

)

, i = N,N − 1, . . . , 1 . (5.4)

Die Erzeugung eines aquivalenten linearen Gleichungssystems mit Dreiecksgestaltist ein elementarer Prozess, welcher in N −1 Schritten leicht erreicht werden kann. ZurIllustration des Prozesses zur Umformung des Gleichungssystems betrachten wir deni-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.

A(i) =

a(i)11 a

(i)12 . . . a

(i)1i−1 a

(i)1i a

(i)1i+1 . . . a

(i)1N

0 a(i)22 . . . a

(i)2i−1 a

(i)2i a

(i)2i+1 . . . a

(i)2N

... 0. . .

......

......

0 0 . . . a(i)i−1i−1 a

(i)i−1i a

(i)i−1i+1 . . . a

(i)i−1N

0 0 . . . 0 a(i)ii a

(i)ii+1 . . . a

(i)iN

0 0 . . . 0 a(i)i+1i a

(i)i+1i+1 . . . a

(i)i+1N

......

......

......

......

0 0 . . . 0 a(i)Ni a

(i)Ni+1 . . . a

(i)NN .

(5.6)

Startpunkt ist A(1) = A und c(1) = b. Um die entsprechenden Umformungen des i-tenSchrittes (5.5) durchzufuhren, sind drei Teilschritte erforderlich:

a) Suche eines geeigneten Pivotelementes rii.Hier wollen wir uns auf die Spalten-Pivotsuche beschranken, d.h., man sucht dasElement mit dem großten Absolutwert aus der i-ten Teilspalte a

(i)ji , j = i, . . . , N .

Sei dieses das Element der r-ten Zeile, dann setzt man den Pivot rii = a(i)ri .

Existiert kein nichtverschwindendes Element in der i-ten Teilspalte, d.h. a(i)ji =

0 ∀j, j = i, . . . , N , so ist die Matrix A singular.

b) Vertauschen der r-ten mit der i-ten Zeile in A(i) und c(i).Bezeichnet man mit A(i) und c(i) die Matrix A(i) und den Vektor c(i) nach Ver-tauschen der Zeilen, so lautet nun das Gleichungssystem A(i)x = c(i).

c) Berechnen der Elemente von A(i+1) und c(i+1).

Die unteren N − i Zeilen sind von der Neuberechnung betroffen. Man zieht dabeivon der m-ten Zeile ein Vielfaches der i-ten Zeile der Matrix A(i) ab, sodassdas Matrixelement a

(i+1)mi = 0 wird. Dies wird fur alle m = i + 1, i + 2, . . . , N

durchgefuhrt.

Page 52: Skrip Tum

44 KAPITEL 5. LINEARE ALGEBRA

• Die Matrixelemente der ersten i Zeilen bleiben unverandert, d.h., a(i+1)mn =

a(i)mn = rmn und c

(i+1)m = c(i) fur alle m = 1, 2, . . . , i und n = 1, 2, . . . , N .

• Die Transformation der Matrixelemente der ubrigen Zeilen m = i + 1, i +2, . . . , N erfolgt nach der Vorschrift

a(i+1)mn = a(i)mn − λmia

(i)in , n = 1, 2, . . . , N (5.7)

mit

λmi =a(i)mi

riifur alle m = i+ 1, i+ 2, . . . , N . (5.8)

• Die Transformation der ubrigen Zeilen des Vektors c(i) erfolgt nach der Vor-schrift

c(i+1)m = c(i)m − λmic

(i)i , fur alle m = i+ 1, i+ 2, . . . , N . (5.9)

Nach N−1 Schritten ergibt sich fur A(N) die gewunschte obere Dreiecksmatrix und derentsprechende Vektor c(N), sodass man mittels (5.4) den Losungsvektor x des linearenGleichungssystems (5.2) erhalt. Wie man durch Abzahlen der erforderlichen Operatio-nen in diesem Algorithmus sieht, erhoht sich mit steigender Zahl N der Unbekanntender Aufwand proportional zu N3.

Betrachtet man nun den Algorithmus in seiner Gesamtheit, so stellt man fest, dassdie Multiplikationsfaktoren λmn mit λmm = 1 eine untere Dreiecksmatrix L bilden.Nimmt man keine Zeilenvertauschungen im Rahmen der Pivotsuche vor, dann gilt derZusammenhang

LR = A , (5.10)

wobei die Bezeichnung R = A(N) verwendet wurde. Im Gaußschen Eliminationsver-fahren wird also eine Darstellung der Matrix A als Produkt einer unteren mit eineroberen Dreiecksmatrix realisiert. Ohne Pivotsuche lasst sich daher der Eliminationsal-gorithmus kompakt darstellen

rik = aik −i−1∑

j=1

λijrjk k = i, i+ 1, . . . , N , (5.11)

λki =1

rii

(

aki −i−1∑

j=1

λkjrji

)

k = i+ 1, i+ 2, . . . , N . (5.12)

Zur Berechnung der Matrixelemente rik, λik konnen die Indices in unterschiedlicherReihenfolgen durchlaufen werden. Dementsprechend lassen sich zwei unterschiedlicheAlgorithmen formulieren und zwar jenen nach Banachiewicz und das Verfahren nachCrout. In den Beschreibungen der Routinen von Programmbibliotheken gibt es daherstets Hinweise auf den aktuell verwendeten Algorithmus.

Page 53: Skrip Tum

5.1. LINEARE GLEICHUNGSSYSTEME 45

Abschließend soll noch festgehalten werden, dass im Gaußschen Eliminationsalgo-rithmus durch die Zerlegung in Dreiecksmatrizen auch die Determinante der Matrix Agegeben ist,

detA =N∏

i=1

rii . (5.13)

Pivotsuche und Rundungsfehlereinfluss

In Hinblick auf die numerische Genauigkeit, d.h. die Minimierung von Rundungsfehlern,ist die Wahl des Pivot ausschlaggebend. Dies lasst sich leicht an einem kleinem Beispieldemonstrieren, das wir auf zwei Stellen Gleitkommagenauigkeit berechnen wollen.

Abhangigkeit der Genauigkeit von Pivotwahl

Wir betrachten in zweistelliger Gleitpunktrechnung das Gleichungssystem(

0.5× 10−2 11 1

)(xy

)

=

(0.51.0

)

=⇒ exakte Losung gx = 5000

9950= 0.503

y = 49509950

= 0.497

r11 = 0.005(

0.005 10 −200

)(xy

)

=

(0.5−99.0

)

=⇒ Losungx = 0

200= 0.00

y = 99200

= 0.50

r11 = 1(

1 10 1

)(xy

)

=

(1.00.5

)

=⇒ Losungx = 5

10= 0.50

y = 510

= 0.50

Aus dem Beispiel konnte der falsche Eindruck entstehen, dass die Wahl des großtenElements als Pivot (wie es auch im oben ausgefuhrten Algorithmus enthalten ist) zudem geringsten Rundungsfehler fuhrt. Dies ist aber im allgemeinen nicht der Fall, daes auf die Gesamtheit der involvierten Restmatrix ankommt.

Neben der Teilpivotsuche oder Spaltenpivotsuche wie sie im oben besprochenen Al-gorithmus verwendet wurde, gibt es noch die Totalpivotsuche. Bei letzterer wird dasabsolut großte Matrixelement der gesamten Restmatrix (gebildet aus i-ter bis N -terZeile und Spalte) als Pivotelement rii verwendet. Die Totalpivotsuche ist allerdingsprogrammtechnisch wesentlich aufwandiger und erfordert nicht nur ein Vertauschender Zeilen, sondern auch der Spalten. Dies impliziert einen wesentlich hoheren Verwal-tungsaufwand, da man auch die Reihenfolge der Elemente in den Vektoren x und bumstellen und registrieren muss.

Page 54: Skrip Tum

46 KAPITEL 5. LINEARE ALGEBRA

Beim Verfahren von Householder und Schmidt werden unitare Matrizen P (i), i =1, 2, . . . , N − 1 bestimmt, welche die folgenden Transformationen vermitteln

P (i)

a(i)ii

a(i)i+1i...

a(i)Ni

=

rii0...0

mit |rii| =

√√√√

N∑

j=i

(

a(i)ji

)2

. (5.14)

In der Householder Transformation sind alle Zeilen der jeweiligen Restmatrix gleicher-maßen involviert. Durch die Unitaritat der Transformation bleiben die Langen jedesSpaltenvektors konstant und man erhalt eine niedrige Konditionszahl des Algorithmus,d.h., die Rundungsfehler bleiben minimal. Fur Details der Transformation von Hou-seholder und Schmidt wird auf die Literatur in Numerischer Mathematik verwiesen(siehe z.B. Stoer [7]).

5.1.2 Lineare Gleichungssysteme mit Tridiagonaler Matrix

Viele Probleme werden auf die Losung von Gleichungssystemen mit tridiagonaler Ma-trix

A =

a11 a12 0 0 . . . 0a21 a22 a23 0 . . . 0

0. . . . . . . . . 0 0

0 0. . . . . . . . . 0

0 . . . 0 aN−1N−2 aN−1N−1 aN−1N

0 . . . 0 0 aNN−1 aNN

x1x2......

xN−1

xN

=

b1b2......

bN−1

bN

(5.15)zuruckgefuhrt. Die spezielle Strukur der Matrix erlaubt eine wesentliche Reduktionder Rechenzeit. Zunachst machen wir den Ansatz einer linearen Rekursionsvorschriftzwischen den Unbekannten

xi+1 = αixi + βi , (5.16)

wobei αi und βi noch zu bestimmende Großen sind. Einsetzen des Ansatzes (5.16) indas lineare Gleichungssystem (5.15) liefert fur die i-te Zeile

aii−1xi−1 + aiixi + aii+1xi+1 = aii−1xi−1 + aiixi + aii+1(αixi + βi) = bi. (5.17)

Separation von xi und Vergleich der Koeffizienten liefert die Rekursionsvorschrift furdie Koeffizienten αi und βi

αi−1 = −aii−1

aii + aii+1αi

, βi−1 = −βiaii+1 − biaii + aii+1αi

. (5.18)

Den Rekursionsbeginn erhalt man aus einer naheren Betrachtung der letzten Zeile

aNN−1xN−1 + aNNxN = bN =⇒ xN = −aNN−1

aNN

xN−1 +bNaNN

= αN−1xN−1 + βN−1 .

(5.19)

Page 55: Skrip Tum

5.2. ITERATIVE METHODEN 47

Vergleich mit der Rekursionsvorschrift (5.18) zeigt, dass man diese Werte am einfachs-ten erhalt, wenn man αN = βN = 0 verwendet.

Die Losung des Gleichungssystems mit tridiagonaler Matrix erfordert 2N Schritte.Beginnend mit dem Ansatz αN = βN = 0 berechnet man nun αi und βi fur i =N − 1, N − 2, . . . , 1 uber die Rekursionsvorschrift (5.18). Mit der Kenntnis von α1 undβ1 lasst sich die Unbekannte x1 berechnen,

x1 =b1 − a12β1a11 + a12α1

. (5.20)

Anschließend kann man uber die Rekursionsvorschrift (5.16) die Unbekanntenx2, x3, . . . , xN berechnen.

5.2 Iterative Methoden

Das Konzept der iterativen Methoden lasst sich an der einfachen linearen Gleichung(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 losen, wobei x(r) der Wert der Losung nach dem r-ten Schritt ist. Geht man voneinem beliebigen Startwert x(0) aus, so erhalt man durch Einsetzen die Iterationsfolge

x(1) = ax(0) + b ,

x(2) = ax(1) + b = a2x(0) + ab+ b , (5.22)

. . . = . . . . . . . . .

x(r+1) = ax(r) + b = ar+1x(0) + (ar + ar−1 + · · ·+ a+ 1)b .

Ist |a| < 1 so gelten die Grenzwerte

limr→∞

ar+1 = 0 und∞∑

k=0

ak =1

1− a , (5.23)

sodass bei fortlaufender Iteration die Große x(r) gegen die Losung der linearen Glei-chung

(1− a)x = b =⇒ x =b

1− a (5.24)

strebt. Allerdings konvergiert das iterative Verfahren nur fur |a| < 1. Dies erkennt manauch aus der Berechnung des Fehlers des Algorithmus nach r Schritten

e(r) = x− x(r) = ar(x− x(0)) = are(0) , (5.25)

welcher nur fur |a| < 1 mit fortlaufender Iteration abnimmt. Bei |a| ≥ 1 divergiert dasuber die Vorschrift (5.21) gegebene iterative Verfahren.

Page 56: Skrip Tum

48 KAPITEL 5. LINEARE ALGEBRA

Um den Konvergenzbereich der iterativen Verfahren zu vergroßern, modifizieren wirdie Iterationsvorschrift (5.21) indem wir eine Gewichtung mit dem jeweils vorhergehen-den 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 Itera-tionsfolge zu

x =ωb

1− [1− ω(1− a)] =b

1− a , (5.27)

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 fur den Relaxationsfaktorω den Wert

ω =1

1− a (5.28)

wahlen, denn dann ist der die Konvergenz bestimmende Faktor c = 1 − ω(1 − a) = 0und der erste Iterationsschritt fuhrt bereits zum exakten Wert der Losung. Es gibt alsoeinen optimalen ω-Wert, bei dem die Anzahl der erforderlichen Iterationsschritte zurErreichung einer vorgegebenen Genauigkeit minimal wird.

Die Ubertragung des Iterationskonzeptes auf lineare Gleichungssysteme ist einfachund soll am Beispiel eines Systems mit drei Unbekannten demonstriert werden,

a11x1 + a12x2 + a13x3 = b1

a21x1 + a22x2 + a23x3 = b2 (5.29)

a31x1 + a32x2 + a33x3 = b3 .

Um zu einer Iterationsvorschrift zu kommen, separiert man in jeder Gleichung von(5.29) eine Unbekannte, d.h. man erhalt ein Gleichungssystem von der Form

x1 = + c12x2 + c13x3 + d1

x2 = c21x1 + c23x3 + d2 (5.30)

x3 = c31x1 + c32x2 + d3

wobei cii = 0, cij = −aij/aii fur i 6= j und di = bi/aii fur i, j = 1, 2, 3 sind. Wie man aus(5.30) sieht, zerfallt das Gleichungssystem in zwei Teile, einen mit einer linken unterenMatrix L und einen mit einer rechten oberen Matrix R

L =

0 0 0c21 0 0c31 c32 0

und R =

0 c12 c130 0 c230 0 0

. (5.31)

Die Unbekannten x1, x2, x3 fassen wir im Vektor x und die Komponenten d1, d2, d3 imVektor d zusammen.

Mit diesen Definitionen sind wir nun in der Lage vier verschiedene Iterationsver-fahren zur Losung eines linearen Gleichungssystems anzugeben:

Page 57: Skrip Tum

5.3. DER LANCZOS ALGORITHMUS 49

a) Das Gesamtschrittverfahren, oft als Methode von Jacobi oder J-Methode bezeich-net,

x(r+1) = Rx(r) + Lx(r) + d , (5.32)

b) das Einzelschrittverfahren, oft als Methode von Gauss und Seidel oder GS-Methode 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)

Fur die numerische Implementierung sind die GS- und die SOR-Methode angeneh-mer, da sie keine Zwischenspeicherung der Losung benotigen; allerdings ist dies meistkein entscheidendes Kriterium fur die Auswahl eines bestimmten Verfahrens. Fur dieDiskussion der Konvergenzeigenschaften wird auf die Standardliteratur aus Numeri-scher Mathematik verwiesen.

5.2.1 Einbinden von Bibliotheksprogrammen

Die Losung von linearen Gleichungssystemen ist eine der wichtigsten Problemstellungenim Zusammenhang mit der numerischen Behandlung physikalischer Fragen. Die ver-schiedenen Facetten solcher Gleichungssysteme erfordern zum Teil spezielle Algorith-men, um auch die geforderten Genauigkeiten zu erreichen. Es ist daher im Allgemeinensinnvoll fur die Losung von Problemen der linearen Algebra auf Programmbibliothekenzuruckzugreifen, die spezielle und ausgereifte Algorithmen enthalten. Beispiel fur eineallgemein zugangliche Programmbibliothek ist die CERNLIB, welche insbesondere diefur die numerische Physik relevanten Algorithmen enthalt.

5.3 Der Lanczos Algorithmus

ist eine Methode zur effizienten Berechnung des kleinsten Eigenwertes und seines Ei-genvektors. Stellt man den Hamiltonoperator eines Systems als Matrix dar, entsprichtdies der Bestimmung der Gundzustandsenergie und -wellenfunktion (siehe KapitelSG).

Im letzten Abschnitt uber die linearen Gleichungssysteme haben wir gesehen, dassdie Handhabung von Matritzen in tridiagonaler Form besonders einfach ist. Dies kannman sich auch zu Nutze machen, wenn man das Eigensystem einer Matrix bestimmen

Page 58: Skrip Tum

50 KAPITEL 5. LINEARE ALGEBRA

mochte. Im Lanczos Algorithmus wird eine spezielle Basis bestimmt, in der die unter-suchte Matrix tridiagonal ist. Die Effizienz des Verfahrens beruht darauf, dass dieseTransformation der Matrix auf speziell ausgewahlten kleinen Unterraumen geschieht,die solange vergroßert werden, bis die Grundzustandsenergie konvergiert ist.

5.3.1 Rayleigh-Quotient & Gram-Schmidt Orthonormierung

Sei A eine n× n hermitesche Matrix mit reellen Eigenwerten λ1[A] ≤ · · · ≤ λn[A] undx ∈ Rn, dann ist der Rayleigh Quotient definiert als

ρ(x,A) = xTAxxTx

(5.36)

und die extremalen Eigenwerte λ1[A] und λn[A] konnen geschrieben werden als

λ1[A] = min ρ(x,A) λn[A] = max ρ(x,A) (5.37)

Das kann man nachvollziehen, wenn man den Rayleigh Quotienten umschreibt mittelsdes orthonormierten Eigensystems vi von A. Damit folgt mit U = [v1 · · ·vn], dass

UTAU =

λ1. . .

λn

. (5.38)

Schreiben wir nun x als Linearkombination der vi an, x = Uz, folgt fur den RayleighQuotienten

ρ(x,A) = zTUTAUzzTUTUz

=z21λ1 + · · ·+ z2nλnz21 + · · ·+ z2n

(5.39)

und damit der Zusammenhang (5.37).Sei weiters [q1, · · · ,qm] eine allgemeine orthonormale Basis auf Rm wobei qi ∈ Rn

und Rm ⊂ R

n, dann kann jeder Vektor x ∈ Rn als Linearkombination der qi geschriebenwerden

x = [q1, · · · ,qm]z = Qz (5.40)

wobei z ∈ Rm und Q eine m × n Matrix ist. Die beste Naherung fur die Eigenwertevon A erhalt man dann aus der Diagonalisierung der m×m Matrix H

H = QTAQ . (5.41)

Die orthonormale Basis [q1, · · · ,qm] kann man nun aus einem beliebigen Satz linearunabhangiger Vektoren Sm = [s1, · · · , sm] mit si ∈ Rn konstruieren. Man benutzt dazu

Page 59: Skrip Tum

5.3. DER LANCZOS ALGORITHMUS 51

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

q′i = si −

i−1∑

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 Dreiecks-matrix ist

[s1, · · · , sm] = [q1, · · · ,qm]

|q′1| q1 · s1 · · · q1 · sm0 |q′

2| · · · q2 · sm...

.... . .

...0 · · · 0 |q′

m|

. (5.43)

An diesem Punkt halten wir fest, dass wir die extremalen Eigenwerte λ1[A] und λn[A]der n×nMatrixA annahern konnen, indem wir eine kleinerem×mMatrixH = QTAQdiagonalisieren und damit als Eigenwerte λ1[H] und λm[H] erhalten. Die entsprechen-den (genaherten) Eigenvektoren von A sind dann gegeben durch vi = Qgi (i = 1,m),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 wahlen, in der H beson-ders einfach diagonalisiert werden kann. Wir werden sehen, dass diese Basis durch diesogenannte Krylov Matrix gegeben ist.

Sei Sm der Krylov Unterraum, der durch die Krylov Matrix aufgespannt wird

Km(f) = [f ,Af ,A2f , · · · ,Am−1f ] (5.44)

wobei f ∈ Rn. Mit dieser Definition folgt, dass die Faktorisierung (5.43) von Km(f) =QmR eine Matrix Qm liefert, fur welche

Tm = QTmAQm (5.45)

eine tridiagonale Matrix ist. Dies kann man sich folgendermaßen klarmachen: Furi > j + 1 gilt qT

i (Aqj) = 0 da zum einen per definitionem Aqj eine Teilmenge desKrylov Unterraumes Sj+1 ist Aqj ⊂ Sj+1. Daruber hinaus ist durch die Gram-SchmidtOrthonormierung sichergestelt, daß qi fur i > j + 1 orthogonal zu allen Vektoren sj+1

ist: qi⊥sj+1 fur i > j + 1.

Durch die Hermitizitat von A gilt des weiteren qTi (Aqj) = qT

j (ATqi) = qTj (Aqi) =

Page 60: Skrip Tum

52 KAPITEL 5. LINEARE ALGEBRA

0 fur j > i+ 1 bzw. i < j − 1. Damit folgt:

Tm =

α1 β1β1 α2 β2

. . . . . . . . .

βm−2 αm−1 βm−1

βm−1 αm

(5.46)

wobei wir die Elemente der tridiagonalen Matrix folgendermaßen definieren

αj = qTj Aqj j = 1, · · · ,m

βj = qTj+1Aqj j = 1, · · · ,m− 1

Aus der Tridiagonalitat folgt, dass

Aqi = βi−1qi−1 + αiqi + βiqi+1 (2 ≤ i ≤ m− 1) (5.47)

Definieren wir außerdem q0 = 0, dann gilt Gleichung (5.47) auch fur i = 1. Sei nunri ≡ βiqi+1, dann konnen wir schreiben

ri = Aqi − βi−1qi−1 − αiqi (1 ≤ i ≤ m− 1) (5.48)

Mit diesen Voraussetzungen konnen wir den eigentlichen Lanczos Algorithmusformulieren als:

Gegeben: r0, β0 = |r0| (q0 = 0)

for i = 1 to m doqi ← ri−1/βi−1

ri ← Aqi − βi−1qi−1

αi ← qTi ri

ri ← ri − αiqi

βi = |ri| (dann wenn i ≤ m− 1)end for

Man erhoht dann die Dimension des Krylov Unterraumes solange, bis λ1[T ] konvergiertist.

Page 61: Skrip Tum

Kapitel 6

GewohnlicheDifferentialgleichungen

6.1 Einleitung

Viele physikalische und technische Probleme erfordern in ihrer mathematischen For-mulierung die Losung einer Differentialgleichung. Im einfachsten Fall ist eine differen-zierbare Funktion y(x) gesucht, welche von einer reellen Veranderlichen x abhangt unddie Gleichung

y′ = f(x, y) (6.1)

erfullt. Wir beschranken uns hier ausschließlich auf diese sogenannten gewohnlichenDifferentialgleichungen 1. Ordnung. Im Allgemeinen wird die Differentialgleichung (6.1)von unendlich vielen Funktionen y(x) gelost. Fur eine eindeutige Losung sind immerzusatzliche Forderungen, wie Rand- oder Anfangswertbedingungen erforderlich. Je nachProblemstellung spricht man von Anfangs- oder Randwertproblemen.

Fur die numerische Losung gewohnlicher Differentialgleichungen stehen heute ei-ne Vielzahl von allgemeinen und speziellen Verfahren zur Verfugung, die wichtigstenKlassen von Algortihmen sind:

a. Einschrittverfahrenb. Mehrschrittverfahrenc. Extrapolationsverfahrend. Variationsverfahren

Im Rahmen dieser Lehrveranstaltung behandeln wir Einschrittverfahren, das Konzeptvon Mehrschrittverfahren und das Numerov-Verfahren, eine effiziente Methode zurLosung spezieller Differentialgleichungen 2. Ordnung. Fur vertiefte Behandlung undweitere Algorithmen sei auf die einschlagige Literatur der Numerischen Mathematik,z.B. Stoer [7], verwiesen.

In den ersten Kapiteln des Abschnitts Simulation werden Anwendungen der Me-thoden zur Losung von gewohnlichen Differentialgleichungen an zwei typischen Fra-gestellungen der Physik diskutiert. Zunachst werden wir uns mit grundlegenden Fra-gestellungen zu Schwingungsphanomenen beschaftigen, welche im Zusammenhang mit

53

Page 62: Skrip Tum

54 KAPITEL 6. GEWOHNLICHE DIFFERENTIALGLEICHUNGEN

verschiedenen Variationen eines Pendels behandelt werden. Danach wird am Beispieldes Wasserstoff-Atoms die Losungen von Bindungs- und Streuproblemen in einfachenquantenmechanischen Systemen vorgestellt.

6.2 Systeme gewohnlicher Differentialgleichungen

erster Ordnung

Ein System von gewohnlichen Differentialgleichungen erster Ordnung hat die Form

y′1 = f1(x, y1, . . . , yn)y′2 = f2(x, y1, . . . , yn)...

...y′n = fn(x, y1, . . . , yn)

, (6.2)

wobei die Differentialgleichungen durch n Funktionen gegeben sind, fi, i = 1, . . . , n. DasDifferentialgleichungssystem lasst sich durch eine Vektornotation kompakt anschreiben

y′ = f(x, y) . (6.3)

Die Vektoren sind dabei wie folgt definiert

y =

y1...yn

und f(x, y) =

f1(x, y1, . . . , yn)...

fn(x, y1, . . . , yn)

. (6.4)

Es ist wichtig festzuhalten, dass man jedes Anfangswertproblem einer Einzeldiffe-rentialgleichung n-ter Ordnung,

y(n) = f(x, y, y′, y′′, . . . , y(n−1)) , (6.5)

auf ein Anfangswertproblem eines Systems von n Differentialgleichungen erster Ord-nung zuruckfuhren kann. Definiert man nun

z1 = y , z2 = y′ , . . . , zn = y(n−1) (6.6)

so ergibt sich das System von Differentialgleichungen erster Ordnung

z′1 = z2z′2 = z3...

...z′n = fn(x, z1, . . . , zn)

. (6.7)

In jedem System von gewohnlichen Differentialgleichungen erster Ordnung lasst sichdurch die zusatzliche Definition von y0 = x, die unabhangig Veranderliche x auf der

Page 63: Skrip Tum

6.3. EINSCHRITTVERFAHREN 55

rechten Seite eliminieren, d.h., man erhalt ein System der Form

y′0 = 1y′1 = f1(y0, y1, . . . , yn)y′2 = f2(y0, y1, . . . , yn)...

...y′n = fn(y0, y1, . . . , yn)

. (6.8)

Dies wird als autonomes System von Differentialgleichungen bezeichnet und vereinfachtdie numerische Implementierung ohne Genauigkeitsverlust.

Explizite Einschrittverfahren zur Losung von gewohnlichen Differentialgleichungensind 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 adaquat gewahlte Stutzstellen im zu untersuchendenIntervall [xa, xe], hi+1 = xi+1 − xi und y(xi) der Wert der Losung y(x) an der Stellex = xi sind. Die Funktion Φ(x, y(x), h) ist charakteristisch fur das verwendete Ein-schrittverfahren. Beginnend vom Anfangs- bzw. Randwert y(xa) lasst sich die Losungy(x) sukzessive berechnen. In den folgenden Unterkapiteln werden die einfachsten Ein-schrittverfahren kurz beschrieben.

6.3 Einschrittverfahren

6.3.1 Einschrittverfahren erster und zweiter Ordnung

Das einfachste Einschrittverfahren ist ohne Zweifel das Euler- oder Polygonzugverfah-ren, welches wir hier am Beispiel einer Einzeldifferentialgleichung,

y′ = f(x, y) , (6.10)

betrachten wollen. Ist y hinreichend oft differenzierbar, so kann man eine Reihenent-wicklung der Losung y(x) durchfuhren

y(x+ h) =m∑

k=0

hk

k!y(k)(x) +

hm+1

(m+ 1)!y(m+1)(x+ θh) mit 0 ≤ θ ≤ 1 . (6.11)

Man benotigt in dieser Entwicklung die Kenntnis der Ableitungen y(k)(x). Die nied-rigsten Ableitungen lassen sich einfach aus der Funktion f(x, y) bestimmen:

y′ = f(x, y) , (6.12)

y′′ =d2y

dx2=df

dx+df

dy

dy

dx= fx + fyf , (6.13)

y(3) = fxx + 2ffxy + fyyf2fxfy + ff 2

y , (6.14)

· · · · · · · · · (6.15)

Page 64: Skrip Tum

56 KAPITEL 6. GEWOHNLICHE DIFFERENTIALGLEICHUNGEN

Je nach der Wahl vonm lassen sich unter Vernachlassigung des Resttermes verschiedeneVerfahren ableiten.

Das Euler- oder Poligonzugverfahren ergibt sich bei der Wahl m = 1. Vernachlassi-gung des Resttermes fur m = 1 fuhrt auf die Rekursionsbeziehung,

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 Differentialquotient durch denDifferenzenquotienten ersetzt, d.h.,

y′ ≈ y(x+ h)− y(x)h

(6.17)

Will man die Entwicklung (6.11) bis m = 2 berucksichtigen, so setzt man dieFunktion Φ in folgender Form an,

Φ(x, y;h) = a1f(x, y) + a2f(x+ p1h, y + p2hf(x, y)) (6.18)

Eine Entwicklung von (6.18) bis zur ersten Ordnung in h liefert

Φ(x, y;h) = (a1 + a2)f(x, y) + a2h [p1fx(x, y) + p2fy(x, y)f(x, y)] +O(h2) . (6.19)

Wahlt man a1 + a2 = 1 und p1a2 = p2a2 =12so sind die Terme der Reihenentwicklung

(6.11) bis m = 2 durch die Funktion f(x, y) ausgedruckt. Man erhalt damit das Ver-fahren von Heun, welches auch als verbessertes Polygonzugverfahren bezeichnet wird,

a1 = a2 = 12, p1 = p2 = 1

Φ(x, y;h) =1

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

und das modifizierte Euler-Verfahren

a1 = 0 ; a2 = 1 ; p1 = p2 =12

Φ(x, y;h) = f(x+ 12h, y + 1

2hf(x, y)) . (6.21)

Betrachtet man die Ausdrucke fur die Funktion Φ, so sieht man, dass in den letztenbeiden Verfahren die Funktion f(x, y) zweimal aufgerufen werden muss, wahrend imEuler-Verfahren nur ein Aufruf von f(x, y) pro Schritt erforderlich ist.

6.3.2 Konsistenz und Konvergenz von Einschrittverfahren

Bei der Diskussion der Gute eines Einschrittverfahrens muss man zwischen Konsis-tenz und Konvergenz des Verfahrens unterscheiden. Die Konsistenz eines Verfahrensbezieht sich auf die Eigenschaften der Funktion Φ, wahrend Konvergenz die Losungder Differentialgleichung betrifft.

Man nennt das Einschrittverfahren konsistent, wenn die Funktion Φ der Bedingunggenugt

limh→0

Φ(x, y;h) = f(x, y), xǫ[a, b], y ∈ R . (6.22)

Page 65: Skrip Tum

6.3. EINSCHRITTVERFAHREN 57

Man spricht von einem Verfahren der Ordnung p, falls

τ(x, y;h) = ∆(x, y;h)− Φ(x, y;h) = O(hp) (6.23)

gilt, wobei der Differenzenquotient folgendermaßen definiert ist

∆(x, y;h) =

z(y+h)−z(x)

hh 6= 0,

f(x, y) h = 0,(6.24)

und z(x) die exakte Losung der Differentialgleichung ist.Durch Einsetzen in die entsprechenden Ausdrucke sieht man, dass das Euler-

Verfahren konsistent in 1. Ordnung ist, wahrend das Verfahren von Heun und dasmodifizierte Eulerverfahren konsistent in 2. Ordnung sind.

Neben der Konsistenz eines Verfahrens gibt es noch den Begriff der Konvergenz.Ein Einschrittverfahren heißt an der Stelle xǫ[xa, xe] konvergent, wenn

limh→0

(yhi )− z(x)) = 0 fur xi = xǫ[xa, xe] , (6.25)

wobei yhi die numerische Losung an der Stelle xi und z(x = xi) die exakte Losung derDifferentialgleichung ist. Das Einschrittverfahren heißt konvergent zur Ordnung p > 0,wenn

yhi − z(x) = O(hp) fur h→ 0, j = 0, 1, . . . , N (6.26)

gilt.Bei Einschrittverfahren laßt sich leicht ein Zusammenhang zwischen Konsistenz-

und Konvergenzordnung herstellen. Es gilt folgender Satz:

Fur eine Einzeldifferentialgleichung y′ = f(x, y) sei ein Einschrittverfahren Φ(x, y;h)mit folgenden Eigenschaften gegeben:

• Φ(x, y;h) ist bezuglich aller Veranderlicher (x, y;h) stetig fur xa ≤ x ≤ xe, −∞ <y < +∞, 0 ≤ h ≤ h0, wobei h0 hinreichend klein ist,

• Das Verfahren sei konsistent von der Ordnung p > 0,

• Die Funktion Φ(x, y;h) erfulle bezuglich y eine Lipschitzbedingung:”Es gibt eine

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 gewohnlichen Differentialglei-chungen ist das Verfahren von Runge-Kutta. Dieses Verfahren wurde 1895 erstmalsformuliert und basiert auf einen allgmeinen Ansatz fur die Funktion Φ(x, y;h). In derStandardform ist das Runge-Kutta-Verfahren fur eine Funktion y′ = f(x, y) durchfolgende Funktion Φ(x, y;h) gegeben:

Page 66: Skrip Tum

58 KAPITEL 6. GEWOHNLICHE DIFFERENTIALGLEICHUNGEN

Die Standardform des Runge-Kutta-Verfahrens

Φ(x, y;h) = 16[k1 + 2k2 + 2k3 + k4] +O(h5)

k1 = f(x, y) k2 = f(x+ h2, y + h

2k1)

k3 = f(x+ h2, y + h

2k2) k4 = f(x+ h, y + h k3)

Entwickelt man Φ(x, y;h) in eine Taylorreihe nach h, so findet man, dass die obenangegebene Form des Runge-Kutta-Verfahrens konsistent in vierter Ordnung ist. DerBeweis der Konsistenzordnung ist trivial, erfordert aber eine langere Rechnung.

Das Runge-Kutta-Verfahren ist einfach, effizient und bestens geeignet, wenn andie Genauigkeit der Losungen nicht allzu große Anforderungen gestellt werden. Furhohe Anforderungen an die Genauigkeit, sollte man auf eine Predictor-Korrektor-Methode ubergehen [7]. Das Runge-Kutta-Verfahren lasst sich auch auf Systeme vonDifferentialgleichungen erster Ordnung in analoger Weise anwenden. Die FunktionenΦ(x, y;h), k1, k2, k3 und k4 sowie die Variable y erhalten dann Vektorcharakter (siehe6.2). Die Programmierung wird besonders einfach, wenn man auf ein autonomes Glei-chungssystem ubergeht, d.h. man definiert die unabhangige Variable x als die nullteKomponente des Losungsvektors y (siehe Gleichung (6.8)).

Runge-Kutta-Methode mit angepasster Schrittweite

Ein guter Algorithmus fur die Integration gewohnlicher Differentialgleichungen solltedie Gute der Losung laufend kontrollieren und entsprechende Adaptierung der Parame-ter selbst vornehmen, um eine bestimmte vorgegebene Genauigkeit zu garantieren. InEinschrittverfahren lasst sich die Genauigkeit uber die Schrittweite kontrollieren. In Be-reichen starker Anderung der Losung y(x) wird man zur Erreichung einer bestimmtenGenauigkeit viele kleine Schritte benotigen, wahrend man in Bereichen eines weitge-hend glatten Funktionsverlaufes von y(x) mit wenigen großen Schritten das Auslangenfindet. Sieht man eine entsprechende Anpassung der Schrittweite im Algorithmus vor,so kann man die Effizienz des Algorithmus wesentlich steigern (je nach Funktion y(x)sind Effizienzsteigerungen von 100 und mehr moglich).

Die Festlegung einer der jeweiligen Losung angepassten Schrittweite erfordert dieBereitstellung einer Information uber die Gute der Losung bei jedem Integrations-schritt. Bei der Standard Runge-Kutta-Methode (konsistent in vierter Ordnung) er-reicht man dies am einfachsten durch Verdopplung der Schritte, d.h., man rechnetjeden Schritt zweimal, einmal in einem Schritt und einmal in zwei Schritten,

y(x+ 2h) = y1(x) + (2h)5φ+O(h6) + · · · , (6.27)

y(x+ 2h) = y2(x) + 2h5φ+O(h6) + · · · . (6.28)

Die exakte Losung wurde mit y(x), bezeichnet, die numerischen Losungen, y1, y2, wur-den mit einer Schrittweite 2h bzw. h gerechnet. Insgesamt erfordert jeder Schritt 11

Page 67: Skrip Tum

6.3. EINSCHRITTVERFAHREN 59

Aufrufe der Funktion f(x, y). Dies muss man vergleichen mit 8 Aufrufen, wenn manmit der Schrittweite h integriert. Die Rechenzeit erhoht sich zwar um den Faktor 1.375,aber der Algorithmus mit Schrittverdopplung liefert einen Parameter, ∆ = y2−y1, derdie Gute der Losung charakterisiert. Die Forderung, dass ∆ kleiner als ein vorgegebe-ner Genauigkeitsparameter acc ist, erlaubt eine automatisierte Schrittweitenanpassungdes Runge-Kutta-Verfahrens. Erfullt die gewahlte Schrittweite das Kriterium ∆ <accnicht, so wird die Schrittweite verkleinert und die Integration noch einmal ausgefuhrt.Ist das Kriterium ∆ <acc erfullt, so kann y2 als Wert der Losung verwendet werdenund man fuhrt den nachsten Integrationsschritt aus. Alternativ lasst sich auch einkorrigierter Wert der Losung angeben,

∆ = y2 − y1 = 30h5φ+O(h6) , (6.29)

y(corr) = y2(x) +1

15∆ +O(h6) . (6.30)

Die neue Abschatzung ist nun funfter Ordnung und wird allgemein als lokale Approxi-mation bezeichnet. Man kann nun mit diesem Wert die Losung fortsetzen.

Eine alternative Konstruktion eines Differentialgleichungsintegrators mit automati-sierter Schrittweitenanpassung beruht auf den von Fehlberg abgeleiteten EingebettetenRunge-Kutta-Formeln. Fehlberg entdeckte eine Methode funfter Ordnung, welche sechsAufrufe von f(x, y) erfordert1,

ki = hf(xn + aih, yn +i−1∑

j=1

bijkj) j = 1, . . . , 6 , (6.31)

yn+1 = yn +6∑

i=1

ciki +O(h6) . (6.32)

Die Koeffizienten ai, bij , ci sind in Tab. 6.1 gegeben. Eine andere Kombination dergleichen sechs Aufrufe liefert ein Verfahren vierter Ordnung,

yn+1 = yn +6∑

j=1

cjkj +O(h5) , (6.33)

Durch Differenzbildung erhalt man wieder ein Kriterium fur die Gute und damit furdie Schrittweitenanpassung,

∆ = yn+1 − yn+1 =6∑

j=1

(cj − cj) kj . (6.34)

Abweichend von den Koeffizienten von Fehlberg, haben sich die von Cash und Karp[8] angegebenen Werte (siehe Tab. 6.1) im allgemeinen bewahrt.

1Allgemein lasst sich sagen, dass ein Runge-Kutta-Verfahren M. Ordnung zumindest M Aufrufevon f(x, y), aber niemals mehr als M + 2 Aufrufe erfordert.

Page 68: Skrip Tum

60 KAPITEL 6. GEWOHNLICHE DIFFERENTIALGLEICHUNGEN

i ai bij ci ci

1 0 37378

282527648

2 15

15

0 03 3

10340

940

250621

1857548384

4 35

310

− 910

65

125594

1352555296

5 1 −1154

52

−7027

3527

0 27714336

6 78

163155296

175512

57513824

44275110592

2534096

5121771

14

Tabelle 6.1: Parameter von Cash und Karp [8] fur die eingebettete Runge-Kutta-Methode funfter Ordnung.

6.4 Rundungsfehler

Die Abschatzung der Verlasslichkeit numerischer Losungen ist fur die Beurteilung derGute eines Resultates unerlasslich. Bei numerischen Rechnungen lassen sich verschie-dene Klassen von Fehlern unterscheiden:

• Unsicherheit in den Eingabedaten: Diese konnen im Allgemeinen in der nu-merischen Rechnung nicht beeinflusst werden. Man muss jedoch die Stabilitatbezuglich solcher Unsicherheiten diskutieren.

• Abbrechfehler: Darunter versteht man Fehler durch Vernachlassigung von Rest-termen bzw. nicht vollstandig durchgefuhrte Iterationen. Solche Fehler lassen sichuber den verwendeten Algorithmus steuern.

• Rundungsfehler: Diese werde durch die Abbildung der numerischen Werte auf dieMenge der Maschinenzahlen verursacht. Durch Ausloschungseffekte kann es zueiner unerwunschten Verstarkung dieser Fehler kommen.

In Unterkapitel 6.3.2 haben wir die Konvergenz der Verfahren betrachtet. Im nachs-ten Schritt wollen wir die Gesamtheit aller Fehler, und zwar Rundungs- und Verfah-rensfehler gemeinsam betrachten. Sei z(x) die exakte Losung und ηi die numerischeLosung an der Stelle xi, dann gelten die Beziehungen

Numerische Losung: ηi+1 = ηi + hΦ(xi, ηi;h) + εi+1 , (6.35)

Exakte Losung: z(xi+1) = z(xi) + hΦ(xi, zi;h) +O(hp+1) , (6.36)

wobei εi+1 der gesamte Rundungsfehler fur die Integration von xi nach xi+1 ist. Sub-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)

Page 69: Skrip Tum

6.5. NUMEROV VERFAHREN 61

Die Große des Gesamtfehlers lasst sich unter der Annahme einer Lipschitz Bedingungfur Φ abschatzen

|ri+1| ≤ |ri|+ h L|ri||εi+1|+Mhp+1 . (6.38)

Losung dieser Differenzengleichung liefert

|ri| ≤[

Mhp +|εi|h

]eiM(xe−xa) − 1

L. (6.39)

Diese Abschatzung ist fur praktische Anwendungen zu grob und hat daher nur quali-tativen Wert. Sie zeigt aber das wesentliche Verhalten der Abhangigkeit des Gesamt-fehlers von der Schrittweite. Es gibt einen optimalen Wert fur die Schrittweite h. Wirdh kleiner, so steigt aufgrund der Rundungsfehler der Gesamtfehler an (Abb. 6.1).

h

|r | i

y’ = − 200 x y Anfangsbed.: y(−1) = 1/101

Exakte Lösungy(x) =1/(1 + 100 x )2

1e−08

1e−07

1e−06

1e−05

1e−05 0.0001 0.001 0.01 0.11e−08

1e−07

1e−06

1e−05

1e−05 0.0001 0.001 0.01 0.1

0.0001

Abbildung 6.1: Beispiel fur den Gesamtfehler bei der numerischen Losung einer Diffe-rentialgleichung

6.5 Numerov Verfahren

Viele Fragestellungen der Quantenphysik und der Elektrodynamik lassen sich auf einegewohnliche Differentialgleichung zweiter Ordnung der Form

[d2

dx2+ w(x)

]

y(x) = S(x) (6.40)

zuruckfuhren. Dabei ist w(x) eine Funktion, welche die Starke des Response angibt undS(x) stellt einen Quellterm dar.

Die numerische Losung der Differentialgleichung (6.40) kann im Prinzip durch einEinschrittverfahren, z.B. das Runge-Kutta-Verfahren, erfolgen. Diese Vorgangsweise istzweckmaßig, falls neben der Funktion y(x) auch die Ableitung dy/dx in der weiterenRechnung benotigt wird. In den meisten Fallen geht allerdings die erste Ableitung nichtexplizit ein.

Page 70: Skrip Tum

62 KAPITEL 6. GEWOHNLICHE DIFFERENTIALGLEICHUNGEN

Eine sehr einfache Methode zur numerischen Losung von Differentialgleichungenvon Typ (6.40) geht auf Numerov [9] zuruck. Man bezeichnet den Algorithmus auchals Cowling Methode oder Fox-Godwin-Verfahren [10]. Wir definieren ein aquidistantesGitter xn = x0+nh, n = 0, 1, 2, . . . mit der Schrittweite h auf dem Definitionsbereichund entwickeln die Losung y(x) an der Stelle yn = y(xn) in eine Taylor-Reihe. Manerhalt

yn±1 = yn ± h y′n +h2

2y′′n ±

h3

6y′′′n +

h4

24y(iv)n ± h5

120y(v)n +O(h6) . (6.41)

Aus Gleichung (6.41) ergibt sich der Ausdruck

yn+1 − 2 yn + yn−1

h2= y′′n +

h2

12y(iv)n +O(h4) . (6.42)

Die zweite Ableitung y′′n kann also als Differenzenausdruck plus einem Korrekturtermdargestellt werden, welcher die vierte Ableitung der Funktion enthalt. Der charakte-ristische Schritt des Numerov-Verfahrens besteht nun in der Darstellung der viertenAbleitung durch die Differentialgleichung (6.40),

y(iv) =d2

dx2y′′ =

d2

dx2[−w(x)y(x) + S(x)] . (6.43)

Damit lasst sich der Korrekturterm wieder durch die rechte Seite der Differentialglei-chung ausdrucken, sodass wir nun folgenden Differenzenausdruck fur die Losung derDifferentialgleichung erhalten,

y′′n =yn+1 − 2yn + yn−1

h2− h2

12y(iv)n +O(h4) =

yn+1 − 2yn + yn−1

h2

+h2

12

[wn+1yn+1 − 2wnyn + wn−1yn−1

h2− Sn+1 − 2Sn + Sn−1

h2+O(h2)

]

= −wnyn + Sn +O(h4) . (6.44)

Ordnet man die Terme, so ergibt sich die Grundgleichung fur die Losung der Differen-tialgleichung (6.40) im Numerov-Verfahren

yn+1

[

1 +h2

12wn+1

]

− yn[

2− 10h2

12wn

]

+ yn−1

[

1 +h2

12wn−1

]

=h2

12[Sn+1 + 10Sn + Sn−1] +O(h6) .

(6.45)

Das Numerov-Verfahren ist konsistent und konvergent in vierter Ordnung und eignetsich bestens fur die Losung von Anfangswertproblemen.

Fur den Start des Verfahrens sollte die Funktion y(x) an zwei nebeneinanderlie-genden Stutzstellen bekannt sein. Dies entspricht auch den erforderlichen zwei An-fangsbedingungen fur die eindeutige Losung gewohnlicher Differentialgleichung zweiter

Page 71: Skrip Tum

6.6. MEHRSCHRITTVERFAHREN 63

Ordnung. So kann z.B. die Kenntnis von y(x) und y′(x) an einer Stutzstelle x durcheinen linearisierten Zusammenhang zur Berechnung der Funktion an zwei Stutzstellenausgenutzt werden. yj = y(x) + (xj − x)y′(x) fur j = n, n+ 1.

Fur die praktische Rechnung ist es zweckmaßig, die Große Q(r) zu definieren,

Qn =

[

1 +h2

12wn

]

yn . (6.46)

Die Rekursionsformel (6.45) reduziert sich dann auf die einfache Form

Qn+1 + 10Qn +Qn−1 − 12yn =h2

12[Sn+1 + 10Sn + Sn−1] +O(h6) , (6.47)

welche eine Rekursionsvorschrift fur die Hilfsgroße Q(r) darstellt. Bei der praktischenAnwendung muss man allerdings beachten, dass die Funktion Q(x) auch bei verschwin-dendem Funktionswert der Losung y(x) einen endlichen Wert aufweisen kann, falls w(x)eine Singularitat an dieser Stelle hat.

6.6 Mehrschrittverfahren

Das Numerov-Verfahren ist ein spezieller Algorithmus fur gewohnliche Differential-gleichungen zweiter Ordnung. Ein Integrationsschritt erfordert stets die Kenntnis derLosung an zwei Stutzstellen, d.h., es gehort weder zur Gruppe der Einschrittverfah-ren, welche in 6.3 dargestellt wurden, noch ist es eine einfache Erweiterung dieserAlgorithmen. Im nachsten Unterabschnitt werden Beispiele fur Mehrschrittverfahrenangefuhrt, deren Konstruktion als eine Erweiterung der Einschrittverfahren angesehenwerden konnen.

6.6.1 Konstruktion einfacher Mehrschrittverfahren

Wir betrachten wieder das Anfangswertproblem

y′ = f(x, y) , y(x0) = y0 . (6.48)

Die Losung mittels eines Mehrschrittverfahrens geht davon aus, dass Naherungswer-te ηk fur die Losung y(xk) an k = j, j + 1, ..., j + r − 1 aquidistanten Stutzstellenxk = x0 + k · h bereits bekannt sind. Mit diesen Werten und der Differentialgleichunglasst sich dann ein weiterer Naherungswert ηj+r fur die Losung y(xj+r) bestimmen.Fur r > 1 spricht man dann von einem Mehrschrittverfahren. Beim Start eines sol-chen Algorithmus benotigt man also bereits an r Stutzstellen Naherungswerte fur dieLosung. Diese konnen z.B. uber Einschrittverfahren generiert werden. Wir wollen hiereine einfache Gruppe von Einschrittverfahren besprechen, an Hand derer die prinzipi-ellen Anwendungsmoglichkeiten gut dargestellt werden konnen.

Page 72: Skrip Tum

64 KAPITEL 6. GEWOHNLICHE DIFFERENTIALGLEICHUNGEN

Zur Darstellung der Konstruktion dieser Algorithmen integrieren wir zunachst dieDifferentialgleichung (6.48)

y(xp+k)− y(xp−j) =

∫ xp+k

xp−j

dtf(t, y(t)) , (6.49)

Im nachsten Schritt ersetzt man den Integranden durch ein interpolierendes PolynomPq(x) vom Grad q, welches die Interpolationsvorschrift

Pq(xi) = f(xi, y(xi)) , mit i = p, p− 1, ..., p− q (6.50)

erfullt. Verwendung der Lagrangeschen Interpolationsformeln

Pq(x) =

q∑

i=0

f(xp−i, yp−i)Li(x) , mit Li(x) =

q∏

ℓ=0,ℓ6=i

x− xp−ℓ

xp−i − xp−ℓ

(6.51)

fuhrt auf die Grundformel eines Mehrschrittverfahrens,

yp+k − yp−j ≈q∑

i=0

f(xp−i, yp−i)

∫ xp+k

xp−j

dxLi(x)

= h

q∑

i=0

βqi · f(xp−i, yp−i) (6.52)

mit

βqi :=1

h

∫ xp+k

xp−j

dxLi(x) =

∫ k

−j

ds

q∏

ℓ=0,ℓ6=i

ℓ+ s

ℓ− i , i = 0, 1, ..., q , (6.53)

wobei x = xp+ s ·h. Ersetzt man nun die Werte der Losung yi = y(xi) durch die Nahe-rungswerte ηi, so erhalt man einen einfachen Algorithmus eines Mehrschrittverfahrens

ηp+k = ηp−j + h

q∑

i=0

βqi · fp−i , mit fi = f(xi, ηi) . (6.54)

Durch die Wahl von k, j und q erhalt man verschiedene Losungsalgorithmen. Insbeson-dere ergibt sich fur k = 1, j = 0 und q = 0 das einfache Euler- oder Polygonzugverfah-ren. Wir wollen uns nun einige charakteristische Verfahren ansehen.

Prediktor-Verfahren

Ein Prediktor-Verfahren erlaubt die explizite Berechnung eines Naherungswertes derLosung fur eine Stutzstelle. Als Beispiele sollen hier die Verfahren von Adams-Bashforthgenannt werden, welche durch die Wahl k = 1, j = 0 und q = 0, 1, 2, ... charakterisiertsind.

ηp+1 = ηp + h [βq0fp + βq1f1 + ·+ βqqfq] (6.55)

Page 73: Skrip Tum

6.6. MEHRSCHRITTVERFAHREN 65

βqi i = 0 i = 1 i = 2 i = 3 i = 4β0i 12β1i 3 -112β2i 23 -16 524β3i 55 -59 37 -9720β4i 1901 -2774 2616 -1274 251

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

mit

βqi :=

∫ 1

0

ds∏

ℓ=0,ℓ6=i

ℓ+ s

ℓ− i , i = 0, 1, 2, ..., q . (6.56)

Es handelt sich dabei um r = q+1-Schritt Verfahren. In Tab. 6.2 sind die entsprechen-den Koeffizienten βqi angegeben.

Ein weiteres Prediktor-Verfahren ist der Algorithmus von Nystrom, welchen manmit k = 1 und j = 1 erhalt

ηp+1 = ηp−1 + h [βq0fp + βq1fp−1 + · · ·+ βqqfp−q] (6.57)

mit

βqi =

∫ +1

−1

ds

q∏

ℓ=0,ℓ6=i

ℓ+ s

ℓ− i , i = 0, 1, . . . , q . (6.58)

Korrektor-Verfahren

Ein Korrektor-Verfahren erlaubt im Allgemeinen keine explizite Berechnung einesNaherungswertes der Losung, weil diese auch in die entsprechenden Funktionen alsArgumentwerte eingehen und daher nicht separiert werden konnen. Man spricht da-her von impliziten Verfahren, welche sich zur Korrektur/Verbesserung einer bereitsvorhandenen Naherungslosung eignen.

Mit der Wahl k = 0 und j = 1 ergeben sich die Verfahren von Adams-Moulton,

ηp = ηp−1 + h [βq0fp + βq1fp−1 + · · ·+ βqqfp−q] , (6.59)

Umbenennung des Index p→ p+ 1 liefert die Standardform fur die numerische Imple-mentierung

ηp+1 = ηp + h [βq0fp+1 + βq1fp + · · ·+ βqqfp+1−q] (6.60)

mit

βq,i :=

∫ 0

−1

ds

q∏

ℓ=0,ℓ6=1

ℓ+ s

ℓ− i . (6.61)

Die Koeffizienten fur das Adams-Moulton-Verfahren sind bis q = 4 in Tab. 6.3 angege-ben.

Page 74: Skrip Tum

66 KAPITEL 6. GEWOHNLICHE DIFFERENTIALGLEICHUNGEN

βqi i = 0 i = 1 i = 2 i = 3 i = 4β0i 12β1i 1 112β2i 5 8 -124β3i 9 19 -5 1720β4i 251 646 -264 106 -19

Tabelle 6.3: Koeffizienten 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. ImAllgemeinen bewirkt diese Funktion einen nichtlinearen Zusammenhang, sodass einedirekte Berechnung von ηp+1 nicht moglich ist. Man bezeichnet daher das Verfahrenvon Adams-Moulton als implizites Verfahren.

Mit einem impliziten Verfahren kann nun ein iteratives Verfahren definiert werden,welches den Funktionswert ηp+1 verbessert,

η(i+1)p+1 = ηp + h

[

βq0f(xp+1, η(i)p+1) + βq1fp + · · ·+ βqqfp+1−q

]

. (6.62)

Man spricht daher von einem Korrektor-Verfahren, weil man durch die Iteration denWert von ηp+1 korrigiert bzw. verbessert.

Eine weitere Gruppe von Korrektorverfahren geht auf Milne-Thompson zuruck undist durch k = 0, j = 2 charakterisiert. Ersetzt man wieder p durch p+ 1, so ergibt sich

ηp+1 = ηp−1 + h [βq0fp+1 + βq1fp + · · ·+ βqqfp+1−q] (6.63)

mit

βq,i :=

∫ 0

−2

ds

q∏

ℓ=0,ℓ6=1

ℓ+ s

ℓ− i . (6.64)

Analog zu (6.62) wird auch (6.63) durch Iteration gelost.

6.6.2 Allgemeine Mehrschrittverfahren

Alle besprochenen Mehrschritt- und Einschrittverfahren lassen sich gemeinsam in derfolgenden Form beschreiben

ηj+r + ar−1ηj+r−1 + · · ·+ a0ηj = hF (xj; ηj+r, ηj+r−1, . . . , ηj;h; f) . (6.65)

Ein durch (6.65) gegebenes Mehrschrittverfahren wird als r-Schrittverfahren bezeich-net. Die im vorhergehenden Unterabschnitt 6.6.1 beschriebenen Verfahren sind linearer-Schrittverfahren, weil F linear von der Funktion f abhangt,

F (xj; ηj+r, ηj+r−1, . . . , ηj ;h; f) = brf(xj+r, ηj+r + · · ·+ b0f(xj, ηj) , (6.66)

Page 75: Skrip Tum

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 Koeffizienten die folgenden Werte:

qq = −1 , aq−1 = · · · = a0 = 0 , bq+1 = 0 (6.67)

und

bq−i = βqi =

∫ 1

0

ds

q∏

ℓ=0,ℓ6=i

ℓ+ s

ℓ− i . (6.68)

6.6.3 Konsistenz und Konvergenz von Mehrschrittverfahren

Wie bei Einschrittverfahren kann man den lokalen Diskretisierungfehler τ(x, y;h) einesMehrschrittverfahrens (6.65) definieren,

τ(x, y;h) :=1

h[z(x+ rh) +

r−1∑

i=0

aiz(x+ ih)

−hF (x; z(x+ rh), z(x+ (r − 1)h), . . . , z(x);h; f)] , (6.69)

wobei z(x) die Losung des Anfangswertproblems ist.

Konsistenz eines Mehrschrittverfahrens:

Ein Mehrschrittverfahren heißt konsistent, falls fur jedes f ∈ F1(a, b) eine Funktionσ(h) existiert mit lim

h→0σ(h) = 0, sodass

|τ(x, y;h)| ≤ σ(h) fur alle x ∈ [a, b] .

Man spricht von einem Verfahren p-ter Ordnung, falls fur f ∈ Fp(a, b)die Beziehung σ(h) = O(hp) gilt.

Dabei ist Fp(a, b) die Menge aller auf [a, b] p-mal stetig differenzierbaren Funktionen.Davon zu unterscheiden ist die Konvergenz des Mehrschrittverfahrens, die sich auf

die Gute der numerischen Losung η(x, ǫ;h) bezieht. Die numerischen Naherungswerteder Losungen η hangen von der Stutzstellenschrittweite h und den Fehlern ǫi = ηi−y(xi)an den r im Mehrschrittverfahren vorzugebenden Stutzstellen ab. Fur ein konvergentesVerfahren kann man nun erwarten, dass der globale Diskretisierungsfehler

e(x, ǫ;h) := η(x; ǫ;h)− y(x) (6.70)

bei festem x fur h = hn = (x− x0)/n und n = 1, 2, . . . gegen 0 konvergiert, wenn auchdie Fehler ǫ(x, h) mit h → 0 beliebig klein werden. Die Konvergenz des Mehrschritt-verfahrens kann daher wie folgt definiert werden:

Page 76: Skrip Tum

68 KAPITEL 6. GEWOHNLICHE DIFFERENTIALGLEICHUNGEN

Konvergenz eines Mehrschrittverfahrens:

Ein Mehrschrittverfahren heißt konvergent, falls

limn→∞

η(x; ǫ;hn) = y(x) , hn := x−x0

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

falls fur alle x ∈ [a, b], fur alle f ∈ F1(a, b) und alle Funktionen ǫ(z;h), fur die esein ρ(h) gibt, die folgenden Beziehungen genugen,

|ǫ(z, h)| ≤ ρ(h) fur alle z ∈ Rh und limh→0

ρ(h) = 0 .

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

6.7 Extrapolationsverfahren

Eine weitere Technik zur Losung von Anfangswertproblemen von gewonlichen Diffe-rentialgleichungen sind die sogenannten Extrapolationsverfahren. Diese sind besonderseffektiv fur Diskretisierungsverfahren, die asymptotische Entwicklungen besitzen undbei denen nur gerade Potenzen von h auftreten. Im Zusammenhang mit Extrapola-tionsverfahren spielt die sogenannte Graggsche Funktion S(x;h) eine entscheidendeRolle,

S(x;h) =1

4[η(x− h;h) + 2η(x;h) + η(x+ h;h)] , (6.71)

wobei η(x;h) der erzielte Naherungswert der Losung y(x) ist.Das Konzept der Extrapolationsverfahren beruht auf der asymptotischen Entwick-

lung des globalen Diskretisierungsfehlers fur lineare Mehrschrittverfahren. Dies kannman 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 diegenaherte Losung η(x;h) in folgender Weise,

η(x0;h) = y0

η(x0 + h;h) = y0 + hf(x0, y0) (6.73)

η(x+ h;h) = η(x− h;h) + 2hf(x, η(x, η(x;h))

Es wurde von Gragg [11] bewiesen, dass dieser Algorithmus auf [a, b] zu folgenderNaherung η(x;h) der exakten Losung y(x) fuhrt,

η(x;h) = y(x) +N∑

k=1

h2k[uk(x) + (−1)x/hvk(x)

]+ E2N+2(x;h) . (6.74)

Page 77: Skrip Tum

6.7. EXTRAPOLATIONSVERFAHREN 69

Die Funktionen uk(x) und vk(x) sind unabhangig von h und das Restglied E2N+2 bleibtbei festem x fur alle h beschrankt. Der Fehler e(x;h) = η(x;h) − y(x) ist in ersterNaherung

h2[u1(x) + (−1)x/hv1(x)

](6.75)

und zeigt ein oszillierendes Verhalten in Bezug auf n = x/h. Die Graggsche Funktionerlaubt die Elimination der Oszillation im fuhrenden Fehlerterm. Der in (6.74) gegebeneAlgorithmus fuhrt fur die Graggsche Funktion zu folgendem Zusammenhang

S(x;h) =1

2[η(x;h) + η(x− h;h) + hf(x, η(x;h)]

=1

2[η(x;h) + η(x+ h;h)− hf(x, η(x;h)]

=1

4[η(x+ h;h) + 2η(x;h) + η(x− h;h)] . (6.76)

Setzt man die Entwicklung (6.74) in den Ausdruck (6.76) ein, so erhalt man

S(x;h) =1

2

y(x) +1

2[y(x+ h) + y(x− h)]

(6.77)

+1

2

N∑

k=1

h2k

uk(x) +1

2[uk(x+ h) + uk(x− h)]

+ (−1)x/hN∑

k=1

h2k

vk(x) +1

2[vk(x+ h) + vk(x− h)]

+O(h2N+2)

Entwickelt man nun y(x±h), uk(x±h) und vk(x,±h) in Taylorreihen nach h, so erhaltman den Ausdruck

S(x;h) = y(x) + h2[

u1(x) +1

2

d2y

dx2(x)

]

+N∑

k=2

h2k[uk(x) + (−1)x/hvk(x)

]+O(h2N+2) , (6.78)

welcher keinen oszillierenden Faktor im fuhrenden Term enthalt.Der Algorithmus von Gragg lasst sich sehr einfach anwenden. Will man die Losung

an der Stelle x = x0 +H, so kann man fur ein h = H/n die Rekursion durchfuhren

η0 = y0

η1 = η0 + hf(x0, η0) , x1 = x0 + h , (6.79)

ηj+1 = ηj−1 + 2hf(xj, ηj) , xj+1 = xj + h fur j = 1, 2, . . . , n− 1

(6.80)

Mit diesen Werte lasst sich die Graggsche Funktion fur das gegebene n bestimmen,

S(x;h) =1

2[ηn + ηn − 1 + hf(xn, ηn)] . (6.81)

Page 78: Skrip Tum

70 KAPITEL 6. GEWOHNLICHE DIFFERENTIALGLEICHUNGEN

Bei einem Extrapolationsverfahren berechnet man nun eine Folge von Funktions-werte mit n = 2, 4, 6, 8, . . . fur die Graggsche Funktion, d.h., man erhalt S(x;hi),i = 1, 2, 3, . . . . Gemaß Gl. (6.78) ist die Abhangigkeit von S(x;h) bekannt,

S(x;h) = a0 + a1h2 + · · ·+ akh

2k , (6.82)

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

6.8 Vergleich der Verfahren zur Losung von An-

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 diejeweilige Losung angepasste, Wahl der Schrittweite h. Nachteil der Einschrittverfah-ren ist die starre Festlegung der Ordnung und der relativ hohe Rechenaufwand (manbenotigt zumindest p Aufrufe der Funktion f(x, y) bei einem Verfahren p-ter Ord-nung. Mehrschritt-Verfahren haben auch eine starre Ordnung, der Rechenaufwand istzumindest bei linearen Mehrschrittverfahren im allgemeinen geringer. Allerdings hatman eine fest vorgegebene Schrittweite, sodass eine Adaptierung an das betrachteteProblem meist schwierig ist. Außerdem mussen die ersten Funktionswerte mittels einesEinschrittverfahrens berechnet werden.

Extrapolationsverfahren haben keine feste Ordnung. Durch Anhangen einer weite-ren Spalte lassen sich hohe Genauigkeiten mit relativ geringem Aufwand erreichen. Beieinfachen Problemen wirken sich allerdings die Vorteile nicht voll aus, sodass man dieLosung der Differentialgleichung besser mit einem Einschrittverfahren durchfuhrt. Beikomplexen Problemen sind Extrapolationsverfahren meist uberlegen.

Page 79: Skrip Tum

Teil B

Anwendungen: Simulation

71

Page 80: Skrip Tum
Page 81: Skrip Tum

Kapitel 7

Schwingungsbewegung

7.1 Die Bewegungsgleichung und ihre Losung

Wir betrachten zunachst eine an einer Feder aufgehangte Masse m, wie sie in Abb. 7.1dargestellt ist. Im Gravitationsfeld der Erde sei die Ruhelage der Feder bei z = ζ0. BeiAbweichung von der Ruhelage erfullt das System die Bewegungsgleichung

md2z

dt2= −C(z − ζ0) , (7.1)

wobei C die Federkonstante ist. Der lineare Zusammenhang zwischen Kraft und Auslen-kung ist bei Federn in einem weiten Bereich erfullt. Die Wirkung der Gravitationskraftist dabei in der Ruheauslenkung ζ0 bereits berucksichtigt. Die Losung von Gl. (7.1) ist

mζ 0

z

z~

z~

t

Bewegung der Masse m

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

73

Page 82: Skrip Tum

74 KAPITEL 7. SCHWINGUNGSBEWEGUNG

ein Standardbeispiel bei der Behandlung von Differentialgleichungen zweiter Ordnung.Man erhalt die allgemeine Losung

z(t) = A sin(ω0t+ α) , (7.2)

welche eine ungedampfte Schwingung mit der Eigenfrequenz

ω0 =

C

m(7.3)

darstellt. Die Großen A und α ergeben sich aus den Anfangsbedingungen, die stetsintegraler Bestandteil einer Problemstellung im Zusammenhang mit einer Differential-gleichung sein mussen.

7.2 Lagrangeformalismus und Zustand im Phasen-

raum

Die Bewegungsgleichung (7.1) entspricht im Lagrange-Formalismus der Euler-Lagrange-Gleichung

∂L

∂z− d

dt

(∂L

∂z

)

= 0 , (7.4)

wobei z = dzdt

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

∂2L

∂z∂z= m =⇒ L(z, z, t) = 1

2mz2 +R(z, t)z + S(z, t) . (7.5)

Die Integrationskonstanten R und S konnen dabei nur von z und t abhangen. Aus derBewegungsgleichung lassen sich R(z, t) und S(z, t) nicht vollstandig bestimmen, da dieLagrangefunktion nur bis auf eine Eichtransformation bestimmt werden kann, d.h.,

L(z, z, t) = L(z, z, t) +d

dtΩ(z, t) (7.6)

erfullt dieselbe Euler-Lagrange-Gleichungen wie L(z, z, t), wobei Ω(z, t) eine beliebigeEichfunktion ist. Insbesondere ergibt sich aus (7.5) und (7.6)

L(z, z, t) = 12mz2 +

[

R(z, t) +∂Ω

∂z

]

z +

[

S(z, t) +∂Ω

∂t

]

. (7.7)

Ausnutzen der Eichfreiheit erlaubt ohne Einschrankung der Allgemeinheit die Annah-me

R(z, t) = R(z, t) +∂Ω

∂z= 0. (7.8)

Stellt man nun die Euler-Lagrange-Gleichung mit L auf und vergleicht die Terme mitjenen der Bewegungsgleichung (7.1), so ergibt sich

S(z, t) = S(z, t) +∂Ω

∂t=

1

2Cz2 +D(t) , (7.9)

Page 83: Skrip Tum

7.2. LAGRANGEFORMALISMUS UND ZUSTAND IM PHASENRAUM 75

p

z~3E E

2

1

E

Abbildung 7.2: Phasendiagramm ungedampfter Schwingungsbewegungen (mathemati-sches Pendel) mit unterschiedlichen Gesamtenergien E3 > E2 > E1.

wobei

z = z − ζ0 . (7.10)

Wie man aus Gleichung (7.9) erkennt, hat man in S(z, t) noch eine Eichfreiheit, sodassohne Einschrankung der Allgemeinheit D(t) = 0 gesetzt werden kann. Damit ergibtsich die Lagrange-Funktion der in Abb. 7.1 dargestellten Anordnung mit

L(z, z, t) = 12mz2 − 1

2Cz2 , (7.11)

wobei wir hier die Unterscheidung zwischen L und L unterdruckt haben. Mit demverallgemeinerten Impuls des Systems,

p =∂L

∂z= mz , (7.12)

erhalt man uber die Legendre-Transformation die Hamiltonfunktion des linearen har-monischen Oszillators

H(z, p, t) = z · p− L(z, z, t) = 12mz2 + 1

2Cz2 . (7.13)

Da die Hamiltonfunktion keine explizite Zeitabhangigkeit aufweist, ist die Gesamtener-gie des Systems eine Erhaltungsgroße.

Fur eine eingehende physikalische Diskussion ist es sinnvoll, die Bewegung des Sys-tems im Phasenraum zu betrachten. Die allgemeine Losung (7.2) liefert im Phasen-raumdiagramm eine Ellipse (siehe Abb. 7.2), welche durch die Gesamtenergie charak-terisiert werden kann. Das Auftreten einer geschlossenen Kurve (im gegenstandlichenFall eine Ellipse) im Phasenraum zeigt eine periodische Bewegung des Systems an.

Page 84: Skrip Tum

76 KAPITEL 7. SCHWINGUNGSBEWEGUNG

7.2.1 Die gedampfte Schwingungsbewegung

In realistischen Systemen ist stets eine Dampfung vorhanden, sodass die Energie keineErhaltungsgroße ist. Ein typischer Dampfungsterm ist der Luftwiderstand, welcher ineiner laminaren Stromung proportional zur Geschwindigkeit der Masse ist. Die Bewe-gungsgleichung (7.1) muss nun um diesen Reibungsterm erganzt werden,

md2z

dt2= −C(z − ζ0)− γz , (7.14)

wobei γ ein konstanter Dampfungskoeffizient ist. Fur diesen einfachen Reibungstermlasst sich wieder eine allgemeine Losung der Bewegungsgleichung angeben,

z(t) = A exp(−γt) sin(ωt+ α) , (7.15)

welche eine gedampfte Schwingung mit der Frequenz

ω =

C

m−( γ

2m

)2

(7.16)

darstellt. Die Großen A und α ergeben sich wieder aus den Anfangsbedingungen. DieAbweichung der Frequenz ω von der Eigenfrequenz ω0 des ungedampften Systems steigtmit steigender Dampfung. Außerdem bewirkt die Dampfung eine exponentiell fallendeAmplitude der Losung, sodass die Masse m schließlich zum Stillstand kommt.

Der Dampfungsterm kann nicht durch eine Lagrange-Funktion beschrieben werden,sondern geht in die Euler-Lagrange-Gleichung als nichtkonservativer Term ein,

∂L

∂z− d

dt

(∂L

∂z

)

= γz . (7.17)

Dabei ist die Lagrange-Funktion jene der ungedampften Bewegung (7.11) und der ver-allgemeinerte Impuls durch (7.12) gegeben. Die Dampfung bewirkt eine standige Ver-ringerung der Schwingungsenergie, sodass sich eine zum Koordinatenursprung laufendeKurve im Phasenraum ergibt. Diese ist in Abb. 7.3 gemeinsam mit der zeitlichen Ent-wicklung der Auslenkung dargestellt.

7.2.2 Frequenzspektrum

Neben der zeitlichen Entwicklung interessiert bei allgemeinen Schwingungsbewegungenvor allem das Frequenzspektrum Z(ω). Dieses ergibt sich uber Fouriertransformationaus der zeitlichen Entwicklung

Z(ω) =

∫ +∞

−∞z(t)eiωtdt (7.18)

Ist die Funktion z(t) reell-wertig, so hat die Fouriertransformation die SymmetrieZ(−ω) = Z(ω)∗.

Page 85: Skrip Tum

7.2. LAGRANGEFORMALISMUS UND ZUSTAND IM PHASENRAUM 77

z(t)

(a)

p(t)

z(t)

t

(b)

−0.8−0.6−0.4−0.2

0 0.2 0.4 0.6 0.8

0 5 10 15 20 25−6

−4

−2

0

2

4

6

−0.5 0 0.5

1.0

−1.0−1.0 1.0

Abbildung 7.3: Die gedampfte Schwingung. (a) Zeitliche Bewegung; (b) Phasendia-gramm der gedampfter Schwingung.

Setzt man fur z(t) die Losung (7.2) des ungedampften Pendels ein, so ergibt sichdie Fouriertransformierte

Z(ω) =

∫ +∞

−∞dteiωtA sin(ω0t+ α) = iπA

[e−iαδ(ω − ω0)− eiαδ(ω + ω0)

]. (7.19)

Wir haben dabei angenommen, dass die Schwingung zu allen Zeiten im Gang ist. Nimmtman an, dass die Auslenkung z(t) = 0 fur t < 0, so erhalt man auf Grund der Identitat,

∫ ∞

0

dteiωt =1

2

∫ +∞

−∞dteiωt , (7.20)

fur die Fouriertransformierte

Z(ω) =

∫ +∞

0

dteiωtA sin(ω0t+ α) = iπ

2A[e−iαδ(ω − ω0)− eiαδ(ω + ω0)

]. (7.21)

In beiden Fallen zeigt das Spektrum die typische Form einer periodischen Bewegung,namlich das Auftreten von Delta-Funktionen bei ω = ±ω0.

Hat das Pendel eine Dampfung, so hat man die Fouriertransformierte der Losung(7.15) zu bilden,

Z(ω) =1

2A

[eiα

(ω + ω0) + iγ− e−iα

(ω − ω0) + iγ

]

. (7.22)

Je nach Starke der Dampfung γ kommt es zu einer Verschiebung (Gleichung (7.16) undVerbreiterung der Resonanz (Abb. 7.4).

Fur die in diesem Kapitel behandelten Beispiele haben wir nur die Realteile derFouriertransformierten betrachtet,

Z(ω) =

∫ ∞

0

dtz(t) cos(ωt) . (7.23)

Diese sind leicht darzustellen und zeigen bei einer periodischen Bewegung (ungedampfteFederschwingung, periodische erzwungene Federschwingung) gemaß (7.21) das Auftre-ten einer Linie in der Spektralverteilung. Bei einer gedampften Schwingung kommt eszu einer Verbreiterung der Linie (siehe Abb. 7.4).

Page 86: Skrip Tum

78 KAPITEL 7. SCHWINGUNGSBEWEGUNG

γγγ

ω/ω ω/ω

Ζ (ω

/ω )

Ζ (ω

/ω ) 0

2

0 0

20

0.10.20.30.40.50.60.70.80.9

0.6 0.8 1.2 1.4

=0.01=0.05=0.25

0.10.20.30.40.50.60.70.80.9

0 0.5 1.5 2

1.0

0.0

1.0

0.01.0 1.0

Abbildung 7.4: Die Spektralanalyse einer (a) freien ungedampften [γ = 0.01 Nsm−1]und gedampften Federbewegung [γ = 0.05, 0.025 Nsm−1] (b) einer getriebenen Feder.Die Verteilungen sind normiert auf den Maximalwert. Die Frequenz ist in Einheitender Eigenfrequenz gegeben.

7.3 Das getriebene physikalische Pendel

Abschließend zu diesem Kapitel wollen wir kurz das getriebene physikalische Pendelbetrachten (Abb. 7.5). Wir nehmen dabei an, dass eine Masse m an einer Stange mitfester Lange L beweglich aufgehangt ist und eine Schwingung im Gravitationsfeld ineiner Ebene ausfuhrt. Unter Berucksichtigung des fixen Abstandes L zwischen Masseund Aufhangungspunkt, reduziert sich die Bewegungsgleichung zu

mLd2α

dt2+ γL

dt+mg sin(α) = F sin(Ωt+ β) , (7.24)

wobei g die Erdbeschleunigung, F und Ω die Starke bzw. die Frequenz der treiben-den Kraft und β deren Phasenverschiebung sind. Es ist dabei festzuhalten, dass dieTreiberkraft auf die Masse in Richtung der Drehbewegung angreift.

Nach der mathematischen Formulierung des physikalischen Problems ist der ersteSchritt bei der numerischen Umsetzung die Suche nach einer geeigneten Skalierung desSystems, sodass die Variablen in

”naturlichen“ Einheiten des betrachteten Systems an-

gegeben werden. Beim physikalischen Pendel bietet sich die Eigenfrequenz des Pendelsfur die Definition der Zeiteinheit an, d.h., τ = t/t0 mit

t0 =1

ω0

=

L

g. (7.25)

Damit ergibt sich die nichtlineare Differentialgleichung zweiter Ordnung fur den Aus-lenkwinkel α(t) in Radian

d2α

dτ 2+ Γ

dτ+ sin(α) = f sin(

Ω

ω0

τ + β) , (7.26)

Page 87: Skrip Tum

7.3. DAS GETRIEBENE PHYSIKALISCHE PENDEL 79

α

F

m

(t)α

Aufhängung des Pendels

t

α Bewegung der Masse m

Gravitationskraftm g

Antrieb des Pendels

Abbildung 7.5: Anordnung eines getriebenen physikalischen Pendels

wobei die dimensionslosen Koeffizienten Γ und f durch

Γ =γ

m

L

gund f =

F

mL(7.27)

gegeben sind.Wir betrachten zunachst das freie physikalische Pendel, d.h., F = 0. Bei kleiner

Auslenkung ergibt sich zunachst das gleiche Bild wie bei der einfachen Schwingungs-bewegung. Erhoht man die Auslenkung der Schwingung auf uber 90 Grad, so erkenntman im zeitlichen Verlauf deutliche Abweichungen von einer Sinuskurve (Abb. 7.6), diesich auch im Phasenraum bemerkbar macht. Im Frequenzspektrum erkennt man nunbei großeren Auslenkungen auch das Auftreten von Oberwellen, die der Eigenfrequenzuberlagert sind. Das Auftreten von Oberwellen ist eine direkte Konsequenz der Nicht-linearitat der Gleichung. Die Dampfung fuhrt wie im Fall der Schwingungsgleichungwieder zu einer Verbreiterung der Eigenresonanz.

Fuhrt man eine periodische Treiberkraft ein, so kann es bei ausreichend starkerTreiberkraft zu einem Uberschlag des Pendels kommen, d.h., der Auslenkwinkel uber-steigt die Grenzen des Intervall [−π, π]. Bei ausreichend starker Treiberkraft erfolgtder Ubergang zu einer chaotischen Bewegung, welche durch ein exponentiell abfallen-des Spektrum charakterisiert ist (siehe Abb. 7.7).

Page 88: Skrip Tum

80 KAPITEL 7. SCHWINGUNGSBEWEGUNG

α(τ=0) = 90°

α(τ=0) = 179°

|Ζ(ω

)||Ζ

(ω)|

τ

τ

α(τ=0) = 179°

α(τ=0) = 90°

α(τ)

α(τ)

α(τ=0) = 20°

α(τ)

τ α

α

ω

ω

.

−4

−3

−2

−1

0

1

2

3

4

0 5 10 15 20 25 30 35 40 45 50

0.10.20.30.40.50.60.70.80.9

0 1 2 3 4 5

−4

−3

−2

−1

0

1

2

3

4

0 5 10 15 20 25 30 35 40 45 50

0.10.20.30.40.50.60.70.80.9

0 1 2 3 4 5

−4

−3

−2

−1

0

1

2

3

4

0 5 10 15 20 25 30 35 40 45 50−2.5

−1.5

−0.5

0.5

1.5

2.5

−3 −2 −1 0 1 2 3

1.0

0.0

1.0

0.0

2.0

1.0

0.0

−1.0

−2.0

Abbildung 7.6: Die Schwingungen eines freien physikalischen Pendels. In der linkenSpalte sind die Losungen fur α(τ) fur verschiedene Startwerte α(τ = 0) gezeigt. Inder rechten Spalte sind die Spektralanalysen der Losungen mit den Startwerten α(τ =0) = 179 und 90 Grad angegeben. Ein Phasendiagramm des physikalischen Pendels istin der rechten Spalte unten gezeigt.

Page 89: Skrip Tum

7.3. DAS GETRIEBENE PHYSIKALISCHE PENDEL 81

τ

αα

α α..

α

α

τ

ω ω

|Ζ(ω

)|

|Ζ(ω

)|

F=7 NF=2 N

−2.5

−1.5

−0.5

0.5

1.5

2.5

0 50 100 150 200 250 300 350 400 450 500−800

−700

−600

−500

−400

−300

−200

−100

0

100

0 50 100 150 200 250 300 350 400 450 500

−2

−1.5

−0.5

0.5

1.5

−2.5 −1.5 −0.5 0.5 1.5 2.5−4

−3

−2

−1

0

1

2

3

−200 −150 −100 −50 0 50

0.10.20.30.40.50.60.70.80.9

0 1 2 3 4 5

0.10.20.30.40.50.60.70.80.9

0 1 2 3 4 5

1.0

−1.0

2.0

−2.0

0.0

2.0

1.0

0.0

−1.0

−2.0 −1.0 1.0 2.00.0

1.0

0.0

1.0

0.0

Abbildung 7.7: Losung, Phasendiagramm und Spektralanalyse fur ein mit 2 bzw. 7 Ngetriebenes ungedampftes physikalisches Pendel. Die Treiberfrequenz ist mit Ω = 3.2s−1 angenommen. Man erkennt die beiden Extremfalle: (a) eine erzwungene Schwingungmit Schwebungserscheinungen und (b) den Ubergang zu chaotischer Bewegung beigroßer Treiberkraft.

Page 90: Skrip Tum

82 KAPITEL 7. SCHWINGUNGSBEWEGUNG

Page 91: Skrip Tum

Kapitel 8

Das Wasserstoffatom

8.1 Die radiale Schrodingergleichung und ihre

Losungen

Fur explizit zeitunabhangige Hamiltonoperatoren ist es zweckmaßig die Schrodinger-gleichung

HΨ = i~∂

∂tψ (8.1)

durch den Ansatz stationarer Losungen Ψ = ψ exp(−iEt/~) in die zeitunabhangigeSchrodingergleichung uberzufuhren. Fur ein Einteilchenproblem erhalt man dann

− ~2

2m∇2 + V (r)

ψ(r) = Eψ(r) , (8.2)

wobei V (r) die Wechselwirkung ist, die ein Teilchen der Masse m erfahrt.Im folgenden beschranken wir uns auf spharisch symmetrische Potentiale, d.h.,

V (r) = V (r), sodass eine Entwicklung von ψ(r) nach Kugelflachenfunktionen Yℓm(θ, ϕ)zweckmaßig ist,

ψ(r) =∞∑

ℓ=0

uℓ(r)

r

+ℓ∑

m=−ℓ

aℓmYℓm(θ, ϕ) . (8.3)

Die Großen aℓm sind geeignet gewahlte Vorfaktoren, welche vom betrachteten physika-lischen Problem anhangen. Einsetzen von (8.3) in (8.2) und Ausnutzen der Orthogo-nalitat der Kugelflachenfunktionen

∫ π

0

dθ sin θ

∫ 2π

0

dϕY ∗ℓm(θ, ϕ)Yℓ′m′(θ, ϕ) = δℓℓ′δmm′ (8.4)

fuhrt zur sogenannten radialen Schrodingergleichung,

− ~2

2m

(d2

dr2− ℓ(ℓ+ 1)

r2

)

+ V (r)

uℓ(r) = Euℓ(r) . (8.5)

83

Page 92: Skrip Tum

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 fur ℓ 6= 0 eine Singularitatbei r = 0 auf. Wie bereits in den Methoden der theoretischen Physik gezeigt wurde,sprechen wir bei r = 0 von einer außerwesentlichen singularen Stelle. Die Losung kannan dieser Stelle als verallgemeinerte Potenzreihe angesetzt werden, d.h.,

uℓ(r) =∞∑

i=0

cirα+i . (8.6)

Einsetzen des Potenzreihenansatzes (8.6) in die radiale Schrodingergleichung (8.5) undVergleich der Koeffizienten der niedrigsten Potenz rα−2 liefert die zwei moglichen Wertefur α. Bezuglich des Verhaltens bei r = 0 unterscheidet man daher zwei Typen vonLosungen:

limr→0

ϕℓ(r)r

−(ℓ+1)= a regulare Losung , (8.7)

limr→0

ϕℓ(r)r

ℓ= b irregulare Losung . (8.8)

wobei a und b Konstanten sind. Abgesehen von der Normierung ist die regulare Losungdurch die Randbedingung (8.7) eindeutig bestimmt. Im Gegensatz dazu bilden die ir-regularen Losungen (8.8) eine eindimensionale Mannigfaltigkeit. Unter den irregularenLosungen sind besonders die Jostlosungen hervorzuheben, weil sie in analytischen Be-handlungen eine wichtige Rolle spielen. Die Jostlosungen sind durch die Randbedin-gungen

limr→∞

e∓ikr f±

ℓ (k, r)= 1 (8.9)

gegeben. Eine lineare Differentialgleichung 2. Ordnung hat zwei linear unabhangigeLosungen. Die beiden Jostlosungen f+

ℓ (k, r) und f−ℓ (k, r) stellen ein derartiges Duppel

dar. Zwei Funktionen ϕℓ(k, r) und ηℓ(k, r) sind linear unabhangig, wenn ihre Wronski-Determinante

Wϕℓ, ηℓ = ϕℓη′ℓ − ϕ′

ℓηℓ (8.10)

nicht verschwindet. Die Wronski-Determinante der beiden Jostlosungen ergibtWf+

ℓ , f−ℓ = 2ik, die beiden Jostlosungen sind deshalb linear unabhangige Funk-

tionen.

8.2 Die numerische Losung der radialen Schrodin-

gergleichung

Im folgenden beschranken wir uns auf die Betrachtung der radialen Schrodingerglei-chung, welche auf die Form 6.40 mit verschwindenden Quellterm S(x) = 0 gebrachtwerden kann, wobei wir im Hinblick auf die Interpretation fur die Variable x die Va-riable r verwenden. Fur zwei Teilchen, die uber ein Potential V (r) = v(|~r2 − ~r1|)

Page 93: Skrip Tum

8.2. DIE NUMERISCHE LOSUNGDER 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 undE die Energie im Schwerpunktsystem. Die Wellenfunktion physikalischer Probleme istmeist die regulare Losung. Gemaß Gl. (8.7) ist die regulare Losung durch die Randbe-dingung am Ursprung charakterisiert,

limr→0

y(r) = rℓ+1 . (8.12)

Dies bedeutet, dass die regulare Losung y(r) bei r = 0 unabhangig von der Bahndre-himpulsquantenzahl ℓ verschwindet, d.h., y0 = y(r = 0) = 0. An der ersten Stutzstellewird vorerst ein beliebiger Wert y1 = y(r = h) = a fur die Losung angesetzt. Diesstellt keine Einschrankung dar, da aufgrund der Linearitat der Schrodingergleichungdie Losung nachtraglich auf den richtigen Wert normiert werden kann. Ausgehend vonden Anfangswerten y0 = 0 und y1 = a und den damit bekannten Werten der Hilfsfunk-tion, Q0 und Q1, wird dann die Losung yn, n = 2, 3, . . . rekursiv uber die Gleichung(6.47) konstruiert:

Q2 = 12y1 − 10Q1 −Q0 und y2 = Q2

[

1 +h2

12w2

]−1

(8.13)

Q3 = 12y2 − 10Q2 −Q1 und y3 = Q3

[

1 +h2

12w3

]−1

(8.14)

. . . . . . (8.15)

Qn+1 = 12yn − 10Qn −Qn−1 und yn+1 = Qn+1

[

1 +h2

12wn+1

]−1

(8.16)

. . . . . . (8.17)

Die Durchfuhrung dieser Rekursion ist unproblematisch. Einzig bei der Bestimmungvon Q0 muss die Singularitat des Zentrifugalwalls berucksichtigt werden. Eine genauereBetrachtung liefert:

Q0 = limr→0

[

1− h2

12

ℓ(ℓ+ 1)

r2

]

y(r)

= −h2

12

ℓ(ℓ+ 1)

r2a0r

ℓ+1

= −1

6y1δℓ,1 , (8.18)

wobei wir die Reihenentwicklung fur y1 = a0h2 eingesetzt haben. Der Wert der Hilfs-

funktion bei r = 0 weicht also nur bei ℓ = 1 von Null ab.

Page 94: Skrip Tum

86 KAPITEL 8. DAS WASSERSTOFFATOM

Ein Beispiel sind die mit diesem Verfahren bestimmten regularen Losungen derradialen Schrodingergleichung mit V = 0 bei verschiedenen Bahndrehimpulsquanten-zahlen ℓ. Fur die numerische Rekursion wurde eine Schrittweite von h = ∆ρ = 0.1 ver-wendet. Die erhaltenen Losungen entsprechen den spharischen Besselfunktionen undweisen bei dieser Gitterannahme eine mittlere Abweichung von weniger als 0.1% auf.

Im Rahmen theoretischer Rechnungen ist auch die Berechnung von irregularenLosungen erforderlich. Diese sind im allgemeinen durch asymptotische Randbedin-gungen, d.h., bei r → ∞, definiert. Betrachten wir als Beispiel die Berechnung derJostlosungen f±

ℓ (ρ). Diese sind durch die asymptotische Randbedingung

limρ→∞

f±ℓ (ρ)

H±ℓ (ρ)

= 1 (8.19)

festgelegt, wobei H±ℓ (ρ) die einlaufenden (−) und auslaufenden (+) Hankelfunktio-

nen sind. Fur die numerische Rechnung der Jostlosungen geht man daher von Stutz-punkten rN und rN+1 aus, die außerhalb des Wechselwirkungsbereiches liegen, d.h.,VN = VN+1 = 0. An diesen Stutzstellen sind daher die Losungen durch

yN = f±ℓ (krN) = H±

ℓ (k, rN) und yN+1 = f±ℓ (krN+1) = H±

ℓ (krN+1) (8.20)

gegeben. Die Werte der Losung yn fur n = N − 1, N − 2, . . . , 1 werden nach Gleichung(6.47) durch Einwartsrekursion

Qn−1 = 12yn − 10Qn −Qn+1 und yn−1 = Qn−1

[

1 +h2

12wn−1

]−1

(8.21)

rekursiv bestimmt. Der Funktionswert y0 kann abgesehen von ℓ = 0 nicht bestimmtwerden. Dies entspricht dem singularen Verhalten irregularer Losungen fur r → 0.

8.3 Berechnung von Bindungszustanden

Ein wichtiges Problem in der Atom- und Kernphysik ist die Bestimmung von Bin-dungszustanden von Einteilchenproblemen. Dabei ist es unwesentlich, ob ein tatsachli-ches Einteilchenproblem wie im H-Atom oder ein effektives Einteilchenproblem (z.B.Hartree-Fock-Modell) vorliegt. Die Einteilchenzustande stellen den Ausgangspunkt furBerechnungen der Atom- und Kernstruktur jedes Vielteilchensystems dar. Die mathe-matische Problemstellung beteht fur Bindungszustande in der Bestimmung der Eigen-zustande und Eigenwerte im diskreten Spektrum des Einteilchen-HamiltonoperatorsH.Fur ein spharisch symmetrisches Potential V (r) lautet die radiale Schrodingergleichung

− ~2

[d2

dr2− ℓ(ℓ+ 1)

r2

]

+ V (r)

unℓ(r) = ǫnℓunℓ(r). (8.22)

Die Eigenfunktionen sind unter der Nebenbedingung der Normierbarkeit∫ ∞

0

dru2nℓ(r) = 1 (8.23)

Page 95: Skrip Tum

8.3. BERECHNUNG VON BINDUNGSZUSTANDEN 87

zu bestimmen. Die Forderung der quadratischen Normierbarkeit der Losung unℓ(r)liefert eine Einschrankung auf diskrete Energieeigenwerte ǫnℓ (siehe z.B. die analy-tische Ableitung der Bindungsenergien im Wasserstoffatom). Gilt fur das Potenti-al limr→∞ V (r) = 0, dann haben alle Bindungszustande negative Energieeigenwerte,ǫnℓ < 0.

Aufgrund ihrer Normierbarkeitsforderung sind die Eigenfunktionen fur Bindungs-zustande regulare Losungen der radialen Schrodingergleichung zu einer vorerst unbe-kannten Bindungsenergie ǫnℓ. Fur r → 0 hat unℓ(r) die Eigenschaft

limr→0

unℓ(r)r−(ℓ+1) = anℓ , (8.24)

wobei anℓ eine Konstante ist, die dazu dient, die Normierungsbedingung (8.23) zuerfullen. Fur asymptotische r-Werte muss die Bindungswellenfunktion dem Grenzwert

limr→∞

unℓ(r)

H+nℓ(iκnℓr)

= limr→∞

unℓ(r)

e−κnℓr= Anℓ (8.25)

genugen, wobei

κnℓ =

−2µǫnℓ~2

. (8.26)

Durch Integration der radialen Schrodingergleichung von großen r-Werten begin-ned, lasst sich Q0 bestimmen. Ein Energieeigenwert ist dann gefunden, wenn Q0 =−1

6δ1ℓunℓ(h) erfullt. Der Energieeigenwert lasst sich also als Nullstellensuche der Funk-

tion Q0(ǫnℓ) formulieren. Man bezeichnet solche Verfahren allgemein auch als Schieß-verfahren.

Page 96: Skrip Tum

88 KAPITEL 8. DAS WASSERSTOFFATOM

Page 97: Skrip Tum

Kapitel 9

Finite-Differenzen-Methode

Ein numerisch einfacher Weg zur Losung gewohnlicher und partieller Differentialglei-chungen ist die Verwendung der

”Finite-Differenzen-Methode“ (FDM). Sie basiert auf

der Kombination der Formeln fur Ableitungen aus Abschnitt 2.2 (Umwandlung vonDifferentialen in Differenzenquotienten) mit den Methoden der linearen Algebra, diewir in Kapitel 5 kennen gelernt haben.

Als Beispiel werden wir mithilfe der FDM Naherungen an die Losungen der sta-tionaren und zeitabhangigen Schrodingergleichung finden. Die dabei verwendeten Me-thoden konnen naturlich auf alle aquivalenten Probleme angewendet werden.

9.1 Stationare Schrodingergleichung

Die Schrodingergleichung in einer Dimension lautet

i~∂tψ(x; t) = Hψ(x; t) =(

− ~2

2M∂2x + V (x; t)

)

ψ(x; t) . (9.1)

Ist der Hamiltonoperator H zeitunabhangig, kann man die Differentialgleichung durcheinen Separationsansatz ψ(x; t) = ψ(x)φ(t) vereinfachen und erhalt fur den orts-abhangigen Teil die stationare Schrodingergleichung

Hψ(x) =(

− ~2

2M

d2

dx2+ V (x)

)

ψ(x) = Eψ(x) . (9.2)

Erster Schritt bei der Losung einer Differentialgleichung mithilfe der FDM ist dieWahl der Gitterpunkte xi = x0 + i · ∆x, auf denen die Losungsfunktion berechnetwerden soll. Diese Wahl hangt von der gewunschten Rechengenauigkeit und den zurVerfugung stehenden Ressourcen (Arbeitsspeicher, Rechenzeit) ab. Ist ein passendesGitter festgelegt, so kann z.B. die zweite Ableitung von ψ an der Stelle xi durch

d2

dx2ψ(xi) ≈

ψ(xi−1)− 2ψ(xi) + ψ(xx+1)

∆x2

89

Page 98: Skrip Tum

90 KAPITEL 9. FINITE-DIFFERENZEN-METHODE

angenahert werden. Damit ergibt sich fur die Schrodingergleichung

− ~2

2M

1

∆x2[ψ(xi+1)− 2ψ(xi) + ψ(xi−1)] + [V (xi)− E]ψ(xi) = 0 , (9.3)

die in eine Rekursionsvorschrift fur die Amplitude der Wellenfunktion an den Gitter-punkten ψ(xi) umgewandelt wird,

ψ(xi+1) =

2 +2M∆x2

~2[V (xi)− E]

ψ(xi)− ψ(xi−1) . (9.4)

Gl. 9.4 ist die gesuchte Finite-Differenzen-Gleichung, die unter Berucksichtigung derRandbedingungen rekursiv gelost wird (vgl. Numerov-Verfahren, Abschnitt 6.5).

Als Beispiel betrachten wir die Grundzustandswellenfunktion des harmonischenOszillators mit (skalierter) Kreisfrequenz ω = 1 und berechnet mit unterschiedlicherSchrittweite ∆x (Abb. 9.1). Wie in Kapitel 6 ausgefuhrt, ist eine verringerte Schrittwei-te nicht gleichbedeutend mit vergroßerter Genauigkeit, weshalb eine zum verwendetenZahlentyp (hier Fortran95 REAL) passende Schrittweite gewahlt werden muss.

Abbildung 9.1: Losung der stationaren Schrodingergleichung fur den harmonischenOszillator fur unterschiedliche Schrittweiten ∆x. Verkleinerung von ∆x fuhrt nichtunbedingt zu einer genaueren Berechnung der Wellenfunktion (siehe Abb. 6.1).

Als Alternative zur Verwendung des Schießverfahrens zur Suche nach Eigenwer-ten und Eigenfunktionen von H kann Gl. 9.4 auch als Matrixgleichung angeschriebenwerden, indem man ψ(x) in einen Vektor verwandelt, dessen Komponenten der Wel-

Page 99: Skrip Tum

9.2. ZEITABHANGIGE SCHRODINGERGLEICHUNG 91

lenfunktion an den Stellen xi entsprechen,

ψ(x) =

ψ(x0)ψ(x1)

...ψ(xN)

.

Damit wird die zweite Ableitung von ψ an allen Stellen xi als Matrix-Vektor-Multiplikation formuliert,

d2

dx2ψ(x) ≈ 1

∆x2

−2 1 0 . . . 01 −2 1 0 . . .0 1 −2 1 . . ....

. . .

0 . . . 0 1 −2

ψ(x0)ψ(x1)

...ψ(xN)

. (9.5)

Das Potential V (x) wirkt lokal an den Gitterpunkten xi und wird durch eine Diago-nalmatrix beschrieben

V (x) =

V (x0) 0 . . . 00 V (x1) 0 . . ....

. . .

0 . . . 0 V (xN)

. (9.6)

Setzt man fur V (x0) und V (xN) große Zahlenwerte ein, befindet sich das System ineinem (fast) unendlich tiefen Potentialtopf, was gleichbedeutend mit der Wahl vonDirichlet-Randbedingungen ψ(x0) = ψ(xN) = 0 ist. Damit sind alle Bausteine zurKonstruktion der Hamiltonmatrix H vorhanden und die Berechnung z.B. der Grund-zustandsenergie und -wellenfunktion reduziert sich auf die Suche nach dem kleinstenEigenwert samt zugehorigem Eigenvektor der (N + 1)× (N + 1)-Matrix

H = − ~2

2M∆x2

−2 1 0 . . . 01 −2 1 0 . . .0 1 −2 1 . . ....

. . .

0 . . . 0 1 −2

+

V (x0) 0 . . . 00 V (x1) 0 . . ....

. . .

0 . . . 0 V (xN)

.

(9.7)Z.B. kann man sich einer Variante des Lanczos-Verfahrens bedienen, in der die Di-mension des Krylov-Raumes auf m = 2 beschrankt ist (Abschnitt 5.3.2), wobei jeweilsder Eigenvektor zum kleineren der beiden Eigenwerte als Startvektor der folgendenIteration verwendet wird, bis das Konvergenzkriterium erfullt ist.

9.2 Zeitabhangige Schrodingergleichung

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

Page 100: Skrip Tum

92 KAPITEL 9. FINITE-DIFFERENZEN-METHODE

die zeitabhangige Schrodingergleichung gelost werden. Auch die Zeitachse wird jetztdiskretisiert, ti = t0+ i∆t, und eine Finite-Differenzen-Gleichung in der Zeit abgeleitet.

Die Zeitentwicklung des Systems uber eine kleine Zeitspanne ∆t (dabei wird ange-nommen, dassH wahrend ∆t konstant bleibt) wird durch den Zeitentwicklungsoperator

U(t→ t+∆t) = e−iH∆t → ψ(x; t+∆t) = e−iH∆tψ(x; t)

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

e−iH∆t ≈1− iH∆t . . . explizites, implizites Eulerverfahren

1−iH∆t/21+iH∆t/2

. . . Crank-Nicolson-Verfahren(9.8)

Ausgehend von der zuvor berechneten Wellenfunktion ψ(x; t0) werden die aus Gl. 9.8resultierenden Finite-Differenzen-Gleichungen gelost, die hier in Matrixform angegebenwerden.

9.2.1 explizites Eulerverfahren

Fur das explizite Eulerverfahren (auch Euler-Vorwartsverfahren; entspricht dem Po-lygonzugverfahren aus Abschnitt 6.3) wird die Entwicklung der PropagationsmatrixU nach dem zweiten Glied abgebrochen. Die Zeitpropagation reduziert sich auf eineAbfolge von Matrix-Vektor-Multiplikationen

ψ(xi; t+∆t) ≈

δik[1− i∆tV (xk)] +i~2∆t

2M∆x2

−2 1 0 . . . 01 −2 1 0 . . .0 1 −2 1 . . ....

. . .

0 . . . 0 1 −2

ψ(xk; t).

(9.9)Dieses Verfahren ist zwar konsistent (siehe Kapitel 6), allerdings nur fur kleine Zeit-schritte ∆t ≤ ∆x2/2 auch numerisch stabil. Weiters ist die Propagationsmatrix nichtunitar, sodass die Wellenfunktion nach jedem Zeitschritt normiert werden muss.

9.2.2 implizites Eulerverfahren

Angenommen, man kennt die Wellenfunktion zum Zeitpunkt t+∆t, so kann man mit-hilfe eines Schrittes zuruck in der Zeit U(t+∆t→ t) = exp(+iH∆t) die Wellenfunktionψ(x; t) bestimmen, was formal als Gleichung

eiH∆tψ(x; t+∆t) = ψ(x; t)

Page 101: Skrip Tum

9.2. ZEITABHANGIGE SCHRODINGERGLEICHUNG 93

angeschrieben werden kann. Da in der Simulation aber ψ(x; t) bekannt ist und sicheiH∆t ≈ 1+ iH∆t berechnen lasst, ist statt der Matrix-Vektor-Multiplikation des expli-ziten Eulerverfahrens im impliziten Eulerverfahren (auch Euler-Ruckwartsverfahren)ein lineares Gleichungssystem

δik[1 + i∆tV (xk)]−i~2∆t

2M∆x2

−2 1 0 . . . 01 −2 1 0 . . .0 1 −2 1 . . ....

. . .

0 . . . 0 1 −2

ψ(xi; t+∆t) ≈ ψ(xk; t)

(9.10)zu losen, was einen nur geringen numerischen Mehraufwand bedeutet. Der Vorteil desVerfahrens liegt darin, dass es immer numerisch stabil ist. Auch im impliziten Euler-verfahren muss die Wellenfunktion nach jedem Zeitschritt normiert werden.

9.2.3 Crank-Nicolson-Verfahren

Das Crank-Nicolson-Verfahren besteht aus einer Kombination der beiden Eulerver-fahren, d.h., fur die Propagation der Wellenfunktion um einen Zeitschritt ∆t wirddas Ergebnis eines expliziten Eulerschrittes als Losungsvektor fur den impliziten Eu-lerschritt verwendet. Dieses Verfahren verbindet (numerische) Einfachheit mit relativgroßer Genauigkeit. Zudem ist es konsistent, numerisch stabil und die Normierungder Wellenfunktion bleibt erhalten (unitar). Fur zu große Zeitschritte (∆t ≥ ∆x2/2)konnen allerdings storende Oszillationen auftreten.

Der Fehler pro Zeitschritt ist wegen

1− x/21 + x/2

= 1− x+ x2

2− x3

4+x4

8− . . .

e−x = 1− x+ x2

2− x3

6+x4

24− . . .

von der Ordnung O(∆t3) und damit um eine Ordnung besser als in den beiden Euler-verfahren. Der Preis fur diese Verbesserung ist der hohere Rechenaufwand zur Losungvon

(1+ iH∆t)ψ(x; t+∆t) = (1− iH∆t)ψ(x; t) , (9.11)

der durch den Ausfall des Normierungsschrittes nicht ausgeglichen wird.Betrachten wir als Beispiel die Simulation der Streuung des Gaußschen Wellenpa-

ketes

ψ(x; 0) =

(2

πa2

)1/4

e−(x−x0)2/a2e−ik0x

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

Page 102: Skrip Tum

94 KAPITEL 9. FINITE-DIFFERENZEN-METHODE

Abbildung 9.2: Streuung eines Wellenpaketes mit einer Geschwindigkeit von v = 1 a.u.an einem Potentialwall der Hohe 0.5 a.u. und Breite 5 a.u., dessen Position durch dengrauen Bereich zwischen x = 0 und x = 5 angedeutet ist. Atomare Einheiten (a.u.)sind durch e = ~ = Me = 1 definiert, → 1 a.u. Lange ∼ 0.5 A, 1 a.u. Energie = 27.21eV. In diesen Einheiten ist der Impuls eines Elektrons wegen Me = 1 gleich seinerGeschwindigkeit.

Page 103: Skrip Tum

9.2. ZEITABHANGIGE SCHRODINGERGLEICHUNG 95

9.2.4 Andere Propagationsmethoden

Naturlich stellt Gl. 9.8 nicht die einzige Methode dar, die Zeitentwicklungsmatrix an-zunahern. Z.B. kann man auch

• die Entwicklung der Exponentialfunktion erst nach hoheren Termen abbrechen,

• alle N Eigenwerte ǫi und -vektoren |ϕi(x)〉 der Hamiltonmatrix und damit einenvollstandigen Satz von Basisvektoren berechnen. Ist H nicht zeitabhangig, kannman mithilfe der Identitat

e−iH∆t =N∑

1

|ϕi(x)〉e−iǫi∆t〈ϕi(x)|

die Propagationsmatrix (numerisch) exakt bestimmen und speichern. Der zusatz-liche Rechenaufwand muss gegen die Vereinfachung der Berechnung der einzelnenZeitschritte (nur eine Matrix-Vektor-Multiplikation) abgewogen werden. Vor-sicht: Wegen eiφ = cosφ+ i sinφ sollte das Produkt ǫi∆t < π sein, was entwederdie Wahl eines sehr kleinen Teilschrittes oder den Abbruch der Summation furgroße ǫi bedingt.

• eine sogenannt “split-operator”-Methode verwenden, fur die die Hamiltonmatrixin beliebige Bestandteile zerlegt wird. Damit ergibt sich als weitere Naherungs-formel fur die Exponentialfunktion

e−iH∆t ≈ e−iH1∆t/2e−iH2∆te−iH1∆t/2 ,

die bedeutende numerische Vorteile bieten kann. Betrachten wir die Aufspaltungvon H = T + V , so sind e−iT∆t/2 und e−iV∆t in der Impuls- bzw. Ortsdarstellungexakt berechenbare Diagonalmatrizen. Fouriertransformationen (FFT) der Wel-lenfunktion zwischen den Multiplikationen erlauben den Wechsel zwischen denDarstellungen.

Die Fouriertransformationen kann man umgehen, wenn man fur zeitabhangigeStorungen (z.B. ein Laserpuls) eine Auftrennung in H = H0 + V (t) vornimmt.Dann kann e−iH0∆t/2 mit der zuvor beschriebenen Methode berechnet werdenund e−iV (t)∆t ist wieder eine Diagonalmatrix. Ein Zeitschritt entspricht damitdrei Matrix-Vektor-Multiplikationen.

Die Große des Fehlers der Split-Operator-Methode ist von der Ordnung O(∆t3)und hangt vom Kommutator [H1,H2] ab.

Page 104: Skrip Tum

96 KAPITEL 9. FINITE-DIFFERENZEN-METHODE

Page 105: Skrip Tum

Kapitel 10

Monte-Carlo-Simulationen

Ein aus der Statistischen Physik motiviertes Verfahren zur Berechnung von Integralenmit Hilfe von Zufallszahlen ist die Monte-Carlo-Methode. Dieses Verfahren ist außerstallgemein und erlaubt es – zumindest im Prinzip – jedes Problem der StatistischenPhysik zu losen (zu simulieren). In der Physik werden heutzutage mit Hilfe von Monte-Carlo-Simulationen beispielsweise Teilchenstrome am CERN simuliert oder korrelierte(wechselwirkende) Elektronen in Festkorpern. Monte-Carlo-Simulationen werden abernicht nur in der Physik sondern in vielen Bereichen von den Ingenieur-Wissenschaftenuber die medizinische Bildverarbeitung bis hin zu den Sozialwissenschaften angewandt.

In Abschnitt 10.1 wird als Motivation zunachst das Ising-Modell, das wir spatersimulieren wollen, vorgestellt. Abschnitt 10.2 rekapituliert einige grundlegende Bezie-hungen der Statistischen Physik. In Abschnitt 10.3 wird die Monte-Carlo-Methodezunachst als allgemeine Methode zur Integration hochdimensionaler Integrale ein-gefuhrt. Im Abschnitt 10.4 wird die Physik des Ising-Modells besprochen und in Ab-schnitt 10.5 dessen Monte-Carlo-Simulation vorgestellt. Wie man aus den Monte-Carlo-Ergebnissen mit Hilfe von Beziehungen aus der Renormierungsgruppentheorie die kri-tische Temperatur und die kritischen Exponenten genau bestimmt, wird in Abschnitt10.6 besprochen. Weiterfuhrende Literatur zu diesem Kapitel:

• Werner Krauth, Statistical Mechanics: Algorithms and Computations, OxfordUniversity 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 vonDr. Nils Blumer zur Verfugung gestellt.

10.1 Motivation: Ising-Modell

Das Ising-Modell ist ein einfaches Modell wechselwirkender Spins fur den Ferromagne-tismus, das Ernst Ising in seiner Dissertation 1924 [12] beiWilhelm Lenz (auch bekannt

97

Page 106: Skrip Tum

98 KAPITEL 10. MONTE-CARLO-SIMULATIONEN

vom Runge-Lenz-Vektor) erstmals studierte. Interessanterweise wurde das Modell vonIsing und Lenz zunachst verworfen, da sie das eindimensionale Modell untersuchtenund bei Temperaturen T > 0 keinen Ferromagnetismus fanden. Ising wurde spaterLehrer und emigrierte wegen seiner judischen Wurzeln via Luxemburg in die USA.Lars Onsager loste 1944 das zweidimensionale Ising-Modell [13], das Ferromagnetis-mus zeigt. Das Ising-Modell wurde daraufhin beruhmt und Ernst Ising Professor ander Bradley University, Peoria, Illinois, wo er aber keine weiteren wissenschaftlichenArbeiten publizierte.

Das Ising-Modell fur (klassische) Spins σi ∈ +1,−1 = ↑, ↓ auf N Gitterplatzeni, j im magnetischen Feld B lautet:

H = −J∑

〈ij〉σiσj − µBB

i

σi . (10.1)

Hierbei bezeichnet 〈ij〉 die Summation uber alle Gitterplatze i und deren jeweiligenNachbarn j. Die (quantenmechanische) Verallgemeinerung ist das Heisenberg-Modell

H = −J∑

〈ij〉

~Si~Sj − µBB

i

~Szi , (10.2)

das auch Terme Sxi S

xj bzw. mit Spin-Leiteroperatoren S+

i S−j enthalt.

Die Kopplung der Spins ist fur J > 0 (J < 0) ferromagnetisch (antiferromagne-tisch) und beschreibt fur J = 0 den trivialen Fall einzelner nicht-gekoppelter Spins.Die Eigenschaften hangen, wie wir spater sehen werden, stark vom zugrundeliegendenGitter (und insbesondere von dessen Dimensionalitat) ab. Die Kopplungskonstante Jkann beispielsweise mit Hilfe der Dichtefunktionaltheorie (DFT) abgeschatzt werdenals Differenz der Grundzustandsenergie einer ferromagnetischen und antiferromagne-tischen Losung. Das Heisenberg- bzw. Ising-Modell hat die gleiche Energiedifferenz(Erwartungswert) zwischen vollstandig polarisiertem ferromagentischen Grundzustandund antiferromagnetisch-alternierenden Spins (Neel-Zustand). Sowohl das Ising- alsauch das Heisenberg-Modell nehmen aber an, dass die Elektronen im Festkorper alsSpins an den Gitterplatzen lokalisiert sind. Diese Annahme ist fur einige Isolatoren ge-eignet, aber sicherlich nicht fur Metalle, da dort die delokalisierten Leitungselektronenmaßgebend sind. In diesem Sinne ist es ein einfaches Modell fur den Magnetismus.

Zwecks einer genaueren Beschreibung kann das Ising-(Heisenberg-)-Modell auch aufbeliebige Wechselwirkungen zwischen den Spins verallgemeinert werden:

H = −1

2

N∑

i,j=1

Jijσiσj − µBBN∑

i=1

σi. (10.3)

Beachte: Die Symmetrie des Heisenberg-Modells ist SU(2), wahrend das Ising-Modeleine sogenante Z2-Symmetrie (up/down) hat. Die Spins des Ising-Modells konnen alsklassische Zahlen (+1/-1 fur Spin up/down) behandelt werden, und der Hamilton-Operator ist in dieser Basis direkt diagonal. D.h., wie bei einem Modell der klassischen

Page 107: Skrip Tum

10.2. WIEDERHOLUNG: STATISTISCHE PHYSIK 99

statistischen Mechanik ist die Energie einfach eine Funktion der Spinkonfiguration,ein quantenmechanischer Operator wird nicht wirklich benotigt. Es gibt keine fur einquantenmechanisches Problem typische Dynamik in der Zeit mit einer Anderung derWellenfunktion. Statt Spins kann man sich auch vorstellen (und dies ist tatsachlichauch eine Anwendung), dass das Ising-Modell zwei Sorten Atome A und B (up unddown) beschreibt, die an Gitterplatzen fixiert sind. Das

”Magnetfeld“ B beschreibt

dann die energetisch unterschiedliche Bevorzugung (chemisches Potential) der beidenAtomspezies und die Kopplungskosntante J > 0 (J < 0) die energetische Bevorzugung(Benachteiligung) einer Clusterbildung. Aus diesen Grunden bezeichnet man das Ising-Modell auch manchmal als Modell klassischer Spins, obwohl das Konzept eines Spinsnaturlich quantenmechanisch ist.

10.2 Wiederholung: Statistische Physik

In diesem Abschnitt stellen wir einige grundlegende Beziehungen der Statistischen Phy-sik als Wiederholung kurz zusammen. Die quantenmechanische Zustandssumme laßtsich berechnen als Spur

Z = Tre−βH (10.4)

mit inverser Temperatur β = 1kBT

und Hamilton-Operator H . Ahnlich ergibt sich fureine physikalische Observable O in der Quantenmechanik:

〈O〉 = 1

ZTrOe−βH . (10.5)

In der klassischen Mechanik haben wir einen ahnlichen Ausdruck als Integrationuber den Phasenraum mit orts- und impulsabhangiger Energie E(x1, p1...xN , pN):

Z =1

N !h3N

d3x1

d3p1...

d3xN

d3pNe−βE(x1,p1...xN ,pN ) , (10.6)

wobei N die Anzahl der Teilchen und h die Plancksche Konstante ist. Entsprechendgilt fur die physikalische Observable

〈O〉 = ∞Z∞N !〈∋N

d∋§∞∫

d∋√∞...

d∋§N∫

d∋√N O(§∞,√∞...§N ,√N)⌉−βE(§∞,√∞...§N ,√N)

.

(10.7)Hierbei lasst sich der Faktor h3N als Phasenvolumen quantenmechanischer Teilchen,die hier klassisch behandelt werden, deuten. Der Faktor 1/N ! berucksichtigt die quan-tenmechanische Ununterscheidbarkeit der Teilchen.

Analog konnen wir die Zustandssumme des im letzten Abschnitt eingefuhrten Ising-Modells fur N Spins angeben:

Z =∑

σ1=±1

· · ·∑

σN=±1

e−βHIsing(σ1···σN ). (10.8)

Page 108: Skrip Tum

100 KAPITEL 10. MONTE-CARLO-SIMULATIONEN

Hierbei ist der Hamilton-Operator bzw. die Hamilton-Funktion, die fur vorgegebeneSpin-Konfigutration σi die Energie angibt

HIsing = −J∑

〈ij〉σiσj − µBB

i

σi (10.9)

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

〈O〉 = 1

Z

σ1=±1

· · ·∑

σN=±1

O(σ∞ · · · σN )e−βHIsing(σ1···σN ).

Ein (naheliegendes) Beispiel einer Observablen ist z.B. die MagnetisierungO(σ1 · · · σN) = µB

∑Ni=1 σi.

Aus der Zustandssumme lassen sich durch entsprechende Ableitungen alle thermo-dynamischen Großen berechnen wie z.B.die freie Energie

F = −kBT lnZ , (10.10)

die Innere Energie

E = 〈H 〉 =∑

xE(x)e−βE(x)

x e−βE(x)

=−∂Z

∂β

Z

= −∂(lnZ)∂β

=∂(βF )

∂β= F + β

∂F

∂β

=F − T ∂F∂T

= F + TS ,

(10.11)

wobei x die Quantenmechanischen Eigenfunktionen bzw. die klassischen Orts- undImpulskoordinaten bezeichnet, unddie Entropie S

S = −∂F∂T

, (10.12)

die spezifische Warme

C =∂E

∂T=∂E

∂β

∂β

∂T=〈H 2〉 − 〈H 〉2

(kBT )2(10.13)

und die Magnetisierung (hier fur das Ising-Modell)

M = µB〈∑

i

σi〉 =1

β

∂(lnZ)

∂B; m =

M

NµB

. (10.14)

Phasenubergange

Ein anderes wichtiges Konzept der statistischen Physik ist das der Phasenubergange.Diese machen sich als Singularitaten in thermodynamischen Großen bemerkbar.

Page 109: Skrip Tum

10.2. WIEDERHOLUNG: STATISTISCHE PHYSIK 101

Klassifikation nach Ehrenfest1. Ordnung: 1. Ableitung von F nicht kontinuierlich2. Ordnung: 1. Ableitung von F kontinuierlich;

2. Ableitung nicht kontinuierlich (moglicherweise divergent)

Observablen wie z.B. die Magnetisierung sind bei Phasenubergangen 1. Ordung konti-nuierlich, nicht jedoch bei Phasenubergangen 2. Ordnung. Nach Ehrenfest spricht manbei Divergenzen in hoheren (z.B. in der Nten) Ableitungen von F auch von einementsprechenden Phasenubergang Nter Ordung. In einer moderneren Beschreibung un-terscheidet man jedoch nur noch diskontinuierliche (1. Ordung) und kontinuierliche (2.Ordnung bzw. hoherer Ordnung).

Beachte: Fur ein endliches System gibt es keine Phasenubergange. Beispielsweisehaben wir fur ein Ising-Modell mit endlich vielen Gitterplatzen N die Zustandssumme

Z =∑

σ1=±1

· · ·∑

σN=±1

e−β HIsing(σ1···σN ). (10.15)

Dies ist eine (endliche) Summe von N Exponentialfunktionen und daher eine analy-tische (∞-oft ableitbare) Funktion. Daher ist die Analyse von Phasenubergangen mitnumerischen Methoden fur endliche Systeme besonders schwierig. Sprich, ein finite sizescaling d.h. die (numerische) Untersuchung des Grenzwerts N → ∞ ist essentiell undmuss sorgfaltig durchgefuhrt werden.

In der Nahe von Phasenubergangen folgen physikalische Obervable universellenGesetzmaßigkeiten die durch kritische Exponenten charakterisiert werden:

Magnetisierung m = m0ǫβ

Suszeptibilitat χ = χ0ǫ−γ

Spezifische Warme C = C0ǫ−α

Korrelationslange ξ = ξ0ǫ−ν

Magnetisierung bei Tc m ∝ B1δ

ǫ =∣∣∣1− T

Tc

∣∣∣ . (10.16)

Universalitat bedeutet dabei, dass die Exponenten nicht vom zugrundeliegenden Modellabhangen sondern nur von der Dimension und von der Symmetrie des Ordnungspara-meters.1 Das bedeutet z.B., dass die kritischen Exponenten (nicht aber die kritischeTemperatur) des Ising-Modells auf dem zweidimensionalen Quadrat- und Dreiecks-Gitter gleich sind, aber unterschiedlich von denen eines dreidimensionalen kubischenGitters. Außerdem haben Ising- und Heisenberg-Modell eine unterschiedliche Symme-trie fur den (magnetischen) Ordnungsparameter, Z2 vs. SU(2), und damit unterschied-liche kritische Exponenten.

1Der Ordnungsparameter ist die charakteristische physikalische Große fur den Phasenubergang:diese ist vor dem Ubergang Null ist und steigt danach sprunghaft (1. Ordnung) oder mit kritischenExponenten stark an (2. Ordnung). Fur den ferromagentischen Phasenubergang ist beispielsweise dieMagnetisierung der Ordnungsparameter.

Page 110: Skrip Tum

102 KAPITEL 10. MONTE-CARLO-SIMULATIONEN

10.3 Monte-Carlo-Integration

Wir wollen uns nun dem Monte-Carlo-Verfahren als allgeinem Verfahren zur Losungvon Integralen (oder Summen) zuwenden. Solche Integrale oder Summen treten bei-spielsweise – aber naturlich nicht nur – in der Statistischen Physik auf (s. vorherigerAbschnitt). Das generische Problem ist dabei das Integral I einer Funktion f(~x) uberdas d-dimensionale Volumen V :

I =

V

ddxf(~x); V ⊂ R

d . (10.17)

Deterministische Verfahren

Die bislang in der Vorlesung behandelten Verfahren sind deterministisch, d.h., es wirdein fixes Raster an Stutzstellen ~x~n verwendet. Z.B. wird in Newton-Cotes-Verfahren dasIntegral durch eine Summe approximiert (numerische Integration fur d Dimensionen)

I ≈ hd∑

~n~x~n∈V

f(~x~n) (10.18)

mit dem homogenen (und isotropen) Gitter mit Abstand h

~x~n = h~n (~n ∈ Zd) (10.19)

Fur hochdimensionale Integrale, wie sie in der Statistischen Physik auftauchen, istdie Anwendung dieser deterministischen Verfahren aber problematisch. Der Fehler ∆Iist je nach Grad der Newton-Cotes-Regel proportional zu hs (z.B. h2 bei der Trapez Re-gel). Der Aufwand t, der zur Berechnung des Integrals notwendig ist, d.h. die Anzahlder benotigten Rechenoperationen bzw. die Rechenzeit, skaliert andererseits propor-tional zur Anzahl der berechneten Funktionswerte f(~x) bzw. ist er proportional zurAnzahl der Stutzstellen. Fur ein d-dimensionales Volumen ergibt sich:

t ≈ V

hd∝ h−d , (10.20)

Dies kann man umrechnen in den Fehler, den man nach der Rechenzeit t erhalt:

∆I ∝ hs ∝ t−sd . (10.21)

Fur große Dimensionen d bedeutet dies, dass der Fehler extrem langsam abnimmt unddaher extrem lange Rechenzeiten benotigt werden. Betrachten wir beispielsweise dieTrapez-Regel mit s = 2 und d = 200, so muss man, um den Fehler zu halbieren, dieRechenzeit um den Faktor

2d/s = 2100 ≈ 1030 (10.22)

erhohen. D.h., in der Praxis lassen sich keine hochdimensionalen Integrale berechnen.Solche hochdimensionalen Integrale tauchen in der Statistischen Physik jedoch typi-scherweise auf. Wollen wir beispielsweise die Zustandssumme (10.6) fur 33 Teilchenberechnen, so erfordern die (pro Teilchen) drei Impuls- und drei Orts-Koordinaten alsoein d = 33× 6 = 198-dimensionales Integral.

Page 111: Skrip Tum

10.3. MONTE-CARLO-INTEGRATION 103

Alternative: Stochastische Verfahren

(i) Monte-Carlo-Integration (MC) ohne Gewichtung (simple Monte Carlo)Alternativ konnen wir das Integral dadurch berechnen, dass wir die Funktion an Nzufalligen Punkten berechnen und aufaddieren:

IN = V1

N

N∑

i=1

f(~xi). (10.23)

Hierbei sollen alle Punkte ~x zunachst die gleiche Wahrscheinlichkeit

p(~x) =1

V(10.24)

haben und zufallig gewahlt werden. Auf dem Computer mussen wir hierzu einenZufallszahlen-Generatoren benutzen, um die Konfigurationen ~xi auszuwurfeln.

Der Zentrale Grenzwertsatz besagt nun, dass

INN→∞→ I (10.25)

wobei der Fehler durch die Standardabweichung σf der Funktion f im Volumen Vgegeben ist:

∆IN =σf√N

N→∞−→ 0. (10.26)

Ubersetzten wir dies in die Rechenzeitabhangigkeit des Fehlers, so ergibt sich:

∆IN ∼ t−12 . (10.27)

D.h., ab d ≥ 5 konvergiert die Monte-Carlo-Integration schneller als die Trapez-Regelmit ∆IW ∝ t−5/2. Nehmen wir wiederum das 200-dimensionale Integral als Beispiel,so ergibt sich, dass man den Fehler halbieren kann bei einer lediglich 4-fach langerenRechenzeit (statt einer 1030-fach langeren Rechenzeit der Trapez-Regel).

Ein einfaches – wenn auch lediglich zweidimensionales – Beipiel ist die Berechnungder Zahl π:

π/4 = I =

∫ 1

0

dx

∫ 1

0

dy θ(1− x2 − y2) (10.28)

Dieses Integral kann man einfach am Strand mit Hilfe der Monte-Carlo-Interationgemaß Gl. (10.23) berechnen: Man markiert einen Viertelkreis in einem Rechteck, wirftSteinchen ins Rechteck und zahlt den Anteil der Steinchen, die im Viertelkreis landen(d.h. θ-Funktion θ(1− x2 − y2) = 1); siehe Abb. 10.1.

(ii) Monte Carlo mit Gewichtung (“importance sampling”)Problem: Oft ist die Standardabweichung σf groß. Inbesondere bei Anwendungen ausder Statistischen Physik mit einem exponentiellen Boltzmann-Faktor exp−βE(x)/Zvariiert die zu integrierende Funktion f(x) = O(x) exp−βE(x)/Z typischerweise ummehrere Großenordnungen.

Page 112: Skrip Tum

104 KAPITEL 10. MONTE-CARLO-SIMULATIONEN

Abbildung 10.1: Berechnung von π am Strand — eine beliebte Urlaubsbeschaftigung.

Idee: Um dieses Problem zu beseitigen, konzentriert man die erzeugten ~xi auf dieRegionen, in denen f besonders groß ist. Diese Regionen mussen besonders genauerfasst werden, da sie fur das Integral besonders wichtig sind (“importance sampling”).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 Wahrscheinlich-keitsverteilung p(~x) > 0 mit

Vddx p(~x) = 1 und eine Observable o(~x):

I =

V

ddxf(~x) =

V

ddx p(~x)o(~x) (10.29)

≈ 1

N

N∑

i=1

o(~xi); ~xi Zufallskonfigurationen nach p(~x) . (10.30)

Die Punkte ~xi werden jetzt gemaß der Wahrscheinlichkeitsverteilung p(~x) generiert.Typisches Beispiel einer Wahrscheinlichkeitsverteilung ist naturlich der Boltzmann-Faktor exp−βE(x)/Z, aber man kann auch andere Funktionen wahlen wie z.B. dieviolette Pimp Kurve in der Abbildung 10.2 zur Veranschaulichung des “importancesampling”.

Der Vorteil ist, dass sich der Fehler jetzt aus der Standardabweichung der Observa-blen o(~x) ergibt, die um Großenordnungen kleiner sein kann als die Standardabweichungvon f

∆IN =σo√N; mit σo ≪ σf (!) fur eine geschickte Wahl von o(~x), p(~x)(10.31)

(iii) Markov-Kette, Metropolis-AlgorithmusEs verbleibt das Problem, zufallige Konfigurationen (Punkte) ~xi gemaß einer vorgege-benen Wahrscheinlichkeitsverteilung p(~x) zu generieren. Man kann beispielsweise einesogenannte Markov-Kette an Punkten x1, x2, . . . , xn generieren (hier und im Folgendenwerden wir ubersichtshalber die Vektor-Pfeile unterdrucken).

Page 113: Skrip Tum

10.3. MONTE-CARLO-INTEGRATION 105

Abbildung 10.2: Statt wie beim einfachen Monte-Carlo die Punkte zur Berechnung desIntegrals homogen im gesamt Volumen (Phom) auszuwurfeln ist es effektiver, haufigerPunkte in Bereichen mit großem (wichtigem) Funktionswert f zu berechnen (

”import-

ance sampling“) beispielsweise mit dem Pimp der Skizze.

Definition Markov-Kette: Jede Konfiguration xn hangt nur vom Vorganger inder Kette xn−1 ab; d.h es ist kein Gedachtnis alterer Konfigurationen vorhanden.

Bezeichnen wir mit W (x′|x) die Wahrscheinlichkeit xn = x′ als ntes Element derKette zu erhalten, falls der Vorganger xn−1 = x war. Dann gilt die folgende Master-Gleichung fur die Wahrscheinlichkeitsverteilung pn(x) der Konfigurationen in Schrittn, wenn im Vorganger-Schritt n− 1 die Verteilung pn−1(x) vorlag:

pn(x) = pn−1(x) +∑∫

x′

W (x|x′)pn−1(x′)−

∑∫

x′

W (x′|x)pn−1(x). (10.32)

Eine hinreichendes (aber nicht notwendiges) Kriterium fur die Stationaritat vonpn(x) (d.h. einer sich mit n→ n+ 1 nicht mehr andernden Wahrscheinlichkeitsvertei-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) fur jedes x′

einzeln auf. Notwendig ware aber nur, dass sich die Summen/Integrale uber x′ furjedes x der linken Seite aufheben.

Markov-Ketten Monte-Carlo AlgorithmusWir konstruieren eine Markov-Kette d.h. entsprechende Ubergangswahrscheinlichkei-ten W (x′|x) mit (i) stationarem p(x) (aufgrund der “detailed balance”) und (ii)Ergodizitat (d.h. alle Konfigurationen konnen von jedem Startpunkt durch eine end-liche Anzahl von Ubergangen erreicht werden). In diesem Fall folgen die erzeugten

Page 114: Skrip Tum

106 KAPITEL 10. MONTE-CARLO-SIMULATIONEN

Konfigurationen xn (fur n groß genug) der stationaren (Gleichgewichts-) Wahrschein-lichkeitsverteilung peq(x) aus Gl. (10.33).

Hierbei muss n groß genug sein, denn pn muss erst gegen peq konvergieren. Die erstenKonfigurationen hangen noch stark von der anfangs gewahlten Wahrscheinlichkeitsver-teilung p1 ab, die oftmals eine δ-Funktion ist. Sprich, wir geben ein ganz bestimmtesx1 fix vor.

Der Metropolis-Algorithmus

W (x′|x) = min1, r; mit r =peq(x

′)

peq(x)(10.34)

ist eine mogliche Wahl fur W (x′|x) um die “detailed balance” zu erfullen. DasMetropolis-Verfahren hat die großt-moglichen Ubergangsraten W (x′|x). Eine alterna-tive ist das “heat bath” (Warme-Bad-Verfahren) mit

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) =

e−βE(x)/Z. Da nur Quotienten peq(x′)

peq(x)eingehen, hebt sich die Zustandssumme Z auf,

muss also nicht explizit berechnet werden.Wir wollen jetzt den Algorithmus fur die Monte-Carlo-Integration mit “importance

sampling” kurz vorstellen:Algorithmus:

0. Initialisiere (wahle) Konfiguration x

1. Wahle neue Konfiguration x′

2. Berechne Energiedifferenz ∆E = E(x′)− E(x) und r = e−β∆E

3. Erzeuge Zufallszahl rand ∈ [0, 1)

4. Wenn rand <= min(1, r) akzeptiere neue Konfiguration x = x′,sonst lasse x unverandert.

5. Nach einigen “runs” (Durchlaufen)2, berechne Observablen

6. Solange noch nicht genug “runs” gehe zu Schritt 1.)

Bemerkungen:

(i) Im kontinuierlichem Fall (z.B. klassische Statistische Physik) ist eine mogliche Wahlfur die neue Konfiguration x′ = x+(rand′−0.5)× stepsize (in d Dimensionen: ahnlicheZufallanderung in allen d Richtungen). (ii) Zustandssumme Z und freie Energie lassensich auf diese Weise nicht messen.

2Wie oben erwahnt, hangen die ersten Konfigurationen von der Wahl der Ausgangs-Konfigurationin 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 spaterenMess-“runs” fur die Messung der Observablen mit Konfigurationen gemaß peq(x).

Page 115: Skrip Tum

10.4. PHYSIK DES ISING-MODELLS 107

10.4 Physik des Ising-Modells

“Mean-field” Losung

Bei der “mean-field” (MF) oder Molekularfeld-Approximation werden Korrelatio-nen zwischen den Gitterplatzen vernachlassigt. D.h., die Abweichung der Spin-Konfiguration von ihrem Mittelwert 〈σi〉 auf Gitterplatz i ist unabhangig von derAbweichung auf Gitterplatz j:

⟨(σi − 〈σi〉)(σj − 〈σj

⟩)〉 MF≈ 0 (10.36)

Diese Gleichung kann man auch schreiben als (eine ahnliche Beziehung erhalt man inder Hartree-Approximation fur die Elektronendichten):

〈σiσj〉 MF= 〈σi〉〈σj〉. (10.37)

Fur ein homogenes System ist der Mittelwert auf allen Gitterplatzen gleich, d.h.〈σi〉 = 〈σj〉 ≡ 〈σ〉 = m. Ubertragen auf den Hamilton-Operator bedeutet die MF-Naherung folgende Vereinfachung (µB ≡ 1):

HEq. (10.37)

= −J∑

〈ij〉σiσj − B

i

σi

≈HMF = −J∑

i

σi∑

jj NN. of i

〈σ〉 − B∑

i

σi

= −(B + qJ〈σ〉)︸ ︷︷ ︸

Beff

i

σi.

(10.38)

D.h., H hat bei Anwendung von Gl. (10.37) den gleichen Energie-Erwartungswertwie HMF ; q ist hierbei die Koordinationszahl (Anzahl nachster Nachbarn). Beachte:HMF hangt vom Spinerwartungswert 〈σ〉 ab, der mit Hilfe von HMF selbstkonsistentberechnet werden muss:

〈σ〉 =∑

σ=±1

σeβσ(B+qJ〈σ〉)/∑

σ=±1

eβσ(B+qJ〈σ〉) . (10.39)

Statt 〈σ〉 konnen wir auch zunachst die Zustandssumme

Z =

(∑

σi=±1

exp(

σiB + qJ〈σ〉

kBT

))N

=

(

2 coshB + qJ〈σ〉

kBT

)N(10.40)

berechnen. Deren Ableitung nach B liefert die Magnetisierung, d.h.

m =M

N=

1

β

∂Z

∂B

1

N= 〈σ〉 = tanh

B + qJ〈σ〉kBT

(10.41)

Page 116: Skrip Tum

108 KAPITEL 10. MONTE-CARLO-SIMULATIONEN

Abbildung 10.3: Links: Graphische “mean-field” Losung. Rechts: Magnetisierung alsFunktion der Temperatur.

wie in Gl. (10.39). Abbildung 10.3 veranschaulicht die graphische Losung dieser Glei-chung. Fur kBTc < qJ ergeben sich Losungen mit endlicher Magnetisierung.

Beachte: In unendliche vielen Dimensionen, d.h. fur d→∞ oder fur q →∞, wirddie “mean-field” Losung exakt. Dies lasst sich mit Hilfe des Zentralen Grenzwertsatzeszeigen. Dieser besagt, dass Korrekturen zur mittleren Magnetisierung auf den q Nach-bargitterplatzen wie 1/

√q abnehmen. Daher kann fur q → ∞ die Spinkonfiguration

auf allen Nachbargitterplatzen durch das Mittel M ersetzt werden.

eindimensionale Losung

In einer Dimension hat bereits Ernst Ising das nach ihm benannte Modell gelost. Durcheine einfache Variablentransformation ist dies moglich. Betrachten wir offene Randbe-dingungen (kein Magnetfeld) so haben wir:

H = −JN−1∑

i=1

σiσi+1 = −JN∑

i=2

σi−1σi ,

Z =∑

σ1=±1

σ2=±1

. . .∑

σN=±1

e−βH σi .(10.42)

Der Trick ist nun, neue Variblen si einzufuhren, die wie folgt definiert sind:

s1 = σ1; si = σiσi−1 fur i ≥ 2 (10.43)

⇒ σi =i∏

j=1

sj ⇒ σi+1σi = si+1 (10.44)

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

H = −JN∑

i=2

si (10.45)

Page 117: Skrip Tum

10.4. PHYSIK DES ISING-MODELLS 109

an. D.h., in den si ist jeder Gitterplatz unabangig, und die Zustandssumme lasst sichberechnen als

Z =( ∑

s1=±1

)( ∑

s2=±1

e−βJs2)( ∑

s3=±1

e−βJs3). . .( ∑

sN=±1

e−βJsN)

= 2(2 cosh(βJ)

)N−1= 2N [cosh(βJ)]N−1 .

(10.46)

Aus der Ableitung der Zustandssumme lassen sich nun alle thermodynamischen Großenbestimmen wie z.B. die Energie

E(β) = −∂ lnZ∂β

= −(N − 1)J tanh(βJ) ,

E(T ) = −(N − 1)J tanh( J

kBT

)

.

(10.47)

Fur 0 < T < ∞ ist die Energie damit eine analytische Funktion und unendlich oftdifferenzierbar. Daraus folgt direkt: Es gibt keinen Phasenubergang bei endlicher Tem-peratur.

Ahnlich (mithilfe sogenannter Bindungstransfer-Matrizen) lasst sich auch der Fallperiodischer Randbedingungen und einem Magnetfeld behandeln. Tatsachlich gibt esbei T = 0 einen Ubergang zu einem vollstandig polarisierten (m = ±1) Grundzustand.Aufgrund dieser Uberlegungen haben Ising and Lenz das Modell als irrelevant fur denFerromagnetismus verworfen.

2d Quadratgitter

Wie bereits in Abschnitt 10.1 erwahnt, loste Onsager 1944 das zweidimensionale Ising-Modell exakt, d.h., er berechnete die Zustandssumme und die spezifische Warme desIsing-Modells auf dem Quadratgitter. Der Losungsweg besteht aus einer Kombinationvon Hoch- und Tieftemperatur-Entwicklung [14] und benutzt, dass das duale (rezipro-ke) Gitter des Quadratgitters wieder das Quadratgitter ist. Der etwas kompliziertereLosungsweg soll hier nicht behandelt werden, wir fassen aber die wichtigsten Ergebnissezusammen:

Fur die kritische Temperatur ergibt sich

J

kBTc=

1

2arcsinh(1) =

1

2ln(√2 + 1) ≈ 0.4407 (10.48)

bzw.

Tc ≈ 2.2692J

kB. (10.49)

Die kritischen Exponenten lauten:

α = 0, ν = 1, β =1

8, γ =

7

4, δ = 15 . (10.50)

Beachte, im Gegensatz zum Ising-Modell kann das Heisenberg-Modell nur in einerDimension exakt gelost werden.

Page 118: Skrip Tum

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-Carlo-Verfahrens simulieren wollen, mussen wir Randbedingungen wahlen. Im Folgenden sol-len einige Randbedingungen kurz vorgestellt werden.

1. konventionelle Wahl: Periodische Randbedingungen

⇒ alle Gitterplatze aquivalent

2. anderes Extrem: offene Randbedingungen

⇒ innere Gitterplatze und Oberflachen Gitterplatze

Page 119: Skrip Tum

10.5. MONTE-CARLO-SIMULATION DES ISING-MODELLS 111

3.”verdrehte“ Randbedingungen: einfach in 1d Array zu realisieren

4. Antiperiodische Randbedingungen: entgegengesetztes Vorzeichen der Wechsel-wirkung entlang (einiger) Rander

⇒ ungerade Anzahl an Domain-Wanden

5. Fixierte oder “mean-field” Randbedingungen:

Randplatze koppeln an externes Feld

Die verschiedenen Moglichkeiten konnen auch kombiniert/gemischt werden . . .

Page 120: Skrip Tum

112 KAPITEL 10. MONTE-CARLO-SIMULATIONEN

Algorithmus

Fur die Monte-Carlo-Integration bzw. -Simulation des Ising-Modells ergibt sich ein ahn-licher Algorithmus wie fur die allgemeine Monte-Carlo-Integration auf Seite 106. DerHauptunterschied besteht darin, dass wir es nun mit diskreten Varibablen (Spins ±1)zu tun haben. Der Algorithmus ist besonders effizient, wenn sich die Konfigurationenx′ and x nur um einen einzigen Spin (auf Gitterplatz i) unterscheiden (“single-spin-flip” Algorithmus). In diesem Fall ist die Berechnung von r = peq(x

′)/peq(x) besondereseinfach und schnell, da lediglich Gitterplatz i und seine Nachbarn betrachtet werdenmussen. Der Algorithmus ist damit wie folgt:

0. Wahle Anfangs-Spin-Konfiguration x = σl

1. Wahle Gitterplatz i, x′ ist ident mit x außer dem entgegengesetzten Spin auf i:σi → −σi

2. Berechne ∆E = Ex′ − Ex

3. Markov-Schritt:

• Erzeuge Zufallszahl rand ∈ [0, 1)

– wenn rand < r = e− ∆E

kBT : flippe Spin (σi → −σi), d.h. x = x′

– sonst: behalte x bei

4. Nach den “warm-up sweeps” wird die Observable gemessen (nach jedem “Mess-sweep” nicht nach jedem “single-spin-flip”)3

nsum+ = 1

msum+ = mσl

Esum+ = Eσl...

(10.51)

5. genug “sweeps”?

• ja: Berechne Mittelwerte und ggf. Fehler

• nein: zuruck zu Schritt 1.

3Als einen “sweep” bezeichnet man N (≡ Anzahl der Gitterplatze) versuchte Spin-Flips. Erst nacheinem “sweep” ist eine weitestgehend unabhangige neue Konfiguration erzeugt worden (man kannauch eine genauere Analyse mit Hilfe der Autokorrelationszeit durchfuhren). Daher bietet es sich andie Rechenoperation zur Berechnung der Observablen, die erhebliche Rechenzeit kosten, erst nacheinem “sweep” durchzufuhren.

Page 121: Skrip Tum

10.6. “FINITE-SIZE SCALING” 113

Kritische Temperaturen

Die folgende Tabelle fasst die kritischen Temperaturen des ferromagnetischen Ising-Modells mit nachst-Nachbar-Wechselwirkung zusammen. Die meisten Werte stammenaus [15].

Beachte:

• Es gibt Phasenubergange fur alle Gitter mit d > 1.

• Tc q→∞−→ JqkB

wie in der “mean field” Losung.

dim lattice q kBTc

J

kBTc

qJ

1 chain/ring 2 0 02 honeycomb 3 ∼1.52 ∼0.5

square 4 2.269 0.57triangular 6 ∼3.64 ∼0.61

3 diamond 4 ∼2.704 ∼0.68cubic 6 ∼4.512 ∼0.75bcc 8 ∼6.35 ∼0.79fcc 12 ∼9.79 ∼0.82

4 hypercubic 8 ∼6.68 ∼0.84∞ “ ∞ ∞ 1.0

Kritische Exponenten

Im Folgenden wollen wir auch kurz die kritischen Exponenten des Ising-Modells in dreiDimensionen angeben (aus [16]).

α = 0.110(1); β = 0.3265(3); γ = 1.2372(5);

δ = 4.789(2); ν = 0.6301(4); η = 0.0364(5);

Zum Vergleich: kritische Exponenten in der “mean field”-Approximation: α = 0, β =12, γ = 1, ν = 1

2. Diese Exponenten gelten allgemein fur d ≥ 4. Nochmals zur Wieder-

holung in d = 2: ν = 1, β = 18, γ = 7

4, δ = 15 und α = 0 (logarithmische Divergenz).

10.6 “Finite-size scaling”

Ziel des “finite-size scaling” ist es, die kritische Temperatur und auch das kritischeVerhalten, also insbesondere die kritischen Exponenten aus den numerischen Simula-tionen endlicher Gitter zu bestimmen, d.h. die Extrapolation zum thermodynamischenLimes N →∞. Die besondere Schwierigkeit besteht darin, das singulare Verhalten am

Page 122: Skrip Tum

114 KAPITEL 10. MONTE-CARLO-SIMULATIONEN

Phasenubergang fur N → ∞ aus dem nicht singularen Verhalten bei endlichem N zugewinnen.

Um die kritischen Exponenten genau zu berechnen, muss man sich eines grund-legendes Konzepts der Theoretischen Physik bedienen, das mit den Begriffen Renor-mierungsgruppentheorie, Skaleninvarianz und Universalitat verknupft ist. Dieses gehtinsbesondere auf K. Wilson zuruck, dessen Arbeiten [17] zu einem wesentlich besse-rem Verstandnis von Phasenubergangen fuhrten und mit dem Nobelpreis fur Physikausgezeichnet wurden. Wir konnen diese Konzepte hier nur kurz anreißen, aber nichtwirklich herleiten und verweisen auf weiterfuhrende Literatur z.B. [18].

10.6.1 Renormierungsgruppe, Skaleninvarianz und Universa-litat

Bei der Renormierungsgruppentheorie betrachtet man einen Hamilton-Operatorwie z.B. das Ising-Modell auf N = L× L Gitterplatzen

HN(J) = −J

〈ij〉σiσj (10.52)

und untersucht die (wiederholte) Abbildung (Gruppentransformation) auf einen neuenHamilton-Operator mit weniger Freiheitsgraden z.B. auf N/4 = L/2 × L/2 Gitter-platzen:

HN(J)

N→N/4−→ HN/4(J ′)

N/4→N/16−→ HN/16(J ′′) · · · (10.53)

Man kann sich dies z.B. so vorstellen, dass man jeweils einen Block von 4 Spins durcheinen einzigen neuen Spin im Modell mit weniger Gitterplatzen ersetzt. Im Allgemei-nen wird der Hamilton-Operator mit weniger Freiheitsgraden komplizierter (nicht nurJ ; nicht nur Spin up/down) sein mussen, um zumindest die Niederenergiephysik kor-rekt zu beschreiben. In der Nahe von Phasenubergangen sind aber oftmals nur ganzbestimmte Wechselwirkungen fur das kritische/singulare Verhalten relevant (z.B. dieferromagnetische Kopplung). Durch die Verkleinerung des Systems andert sich dieseKopplung, was man durch eine Differentialgleichung fur J beschreiben kann, die typi-scherweise in folgender Form geschrieben wird:

dJ

dlnN= β(J) , (10.54)

wobei die Skalierungsfunktion β(J) von der Art des betrachteten Problems abhangt.Im thermodynamischen Limes mit unendlich vielen Renormierungsschritten wird Jimmer mehr ab- oder zunehmen und gegen einen sogenannten Fixpunkt J → Jfixkonvergieren. Gegen welchen Fixpunkt wir konvergieren, hangt vom Startwert, also demJ 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 wiro.B.d.A. T ≡ 1 setzten konnen, da die Physik nur von J/T abhangt):

Page 123: Skrip Tum

10.6. “FINITE-SIZE SCALING” 115

• Jfix = 0: paramagnetische Phase; die Spins sind unabhangig, es gibt nur thermi-sche Fluktuationen. Ising-Modelle, deren J gegen Jfix = 0 konvergieren, zeigenzwar auf kleineren Langenskalen Spin-Korrelationen aufgrund J > 0. Auf große-ren Langenskalen nimmt das effektive J aber immer mehr ab und konvergiertgegen Jfix = 0. Das bedeutet, dass großere Blocke an Spins untereinander nichtmehr korreliert sind (mit Jfix = 0 wechselwirken).

• Jfix =∞: ferromagnetische Phase; die Spins sind parallel ausgerichtet.

• Jfix = Jcritical:∀J > Jcritical nimmt J immer weiter zu und konvergiert gegen Jfix =∞ ;∀J < Jcritical nimmt J immer weiter ab und konvergiert gegen Jfix = 0.Daneben gibt es genau einen Punkt Jcritical fur den J weder zu- noch abnimmt,fur dieses Jcritical befindet sich das Ising-Modell am Phasenubergang zwischenparamagnetischer und ferromagnetischer Phase.

Skaleninvarianz: Aus den obigen Uberlegungen sehen wir, dass das Ising-Modellfur die kritische Kopplungsstarke Jcritical skaleninvariant ist. Die Kopplung zwischensehr großen Spin-Blocken auf großen Langenskalen (nach einigen Renormierungsschrit-ten) ist die gleiche wie die zwischen den ursprunglichen Spins auf kleinen Langenskalennamlich Jfix. D.h., das physikalische Verhalten, z.B. die Spin-Spin-Korrelationsfunktion

〈σiσj〉 , (10.55)

ist auf kleinen und großen Langen-Skalen gleich. Ein bekanntes skaleninvariantes Ob-jekt ist ein Fraktal, das auf allen Langenskalen gleich aussieht. Das gleiche gilt fur dieKorrelationsfunktion des Ising-Modells am Fixpunkt.

Untersucht man die unmittelbare Umgebung des Fixpunktes, so kann die Korrela-tionsfunktion durch eine Korrelationslange ξ beschrieben werden

〈σiσj〉 ∼ e−|i−j|/ξ. (10.56)

Die Korrelationslange divergiert am kritischen Punkt ξJ→Jcritical−→ ∞.

Universalitat wiederum bedeutet, dass viele Modelle in der Nahe des kritischenPunktes das gleiche kritische Verhalten insbesondere die gleichen kritischen Exponen-ten haben (auch ist das Verhalten der β-Funktion, Gl. (10.54) in der Nahe des ent-sprechenden Jcritical gleich). Es wird allgemein davon ausgegangen (alle bislang gewon-nenen Ergebnisse sprechen dafur), dass alle Modelle mit der gleichen Symmetrie desOrdnungsparameters und in der gleichen Dimension die gleichen kritischen Exponentenhaben.

Die Hypothese fur das singulare Verhalten der Freien Energie an einem Pha-senubergang 2. Ordnung ist nun, dass dieses nur von der Korrelationslange ξ und nichtmehr von mikroskopischen Langen L0 des Modells wie z.B. der Gitterdistanz, auf derdie Wechselwirkung J wirkt, abhangt (nach ein paar Renormierungsgruppenschritten

Page 124: Skrip Tum

116 KAPITEL 10. MONTE-CARLO-SIMULATIONEN

liegt diese Information nicht mehr vor). Die numerischen Ergebnisse fur ein hyperku-bisches Gitter mit N = Ld Platzen (d = 2 fur Quadratgitter) hangen daher nur vomVerhaltnis Gesamtgroße(lange) des untersuchten Modells zur Korrelationslange, L

ξ, ab.

Die Korrelationslange ξ hangt wiederum fur fixes J von T ab (Hier und im Folgendensetzten wir J ≡ 1 statt wie oben T ≡ 1. Beides ist moglich, da nur das Verhaltnis T/Jrelevant ist.). Auf Basis von Wilsons Renormierungsgruppentheorie konnen wir daherdavon ausgehen, dass in fuhrender Ordnung in 1/L der singulare (s) Teil der FreienEnergie nur von L/ξ(T ) abhangt:

f (s)(L, T ) =1

VF (s)(L, T ) ≈ 1

VΨ( L

ξ(T )

)

, mit

ξ(T ) = ξ0ǫ−ν ; ǫ =

∣∣∣1− T

Tc

∣∣∣ .

(10.57)

Letztere Gleichung beschreibt die Divergenz der Korrelationslange am Phasenubergangmit kritischem Exponenten ν. Dies erlaubt die Umformung der dimensionslosen Lange:

L

ξ= ξ−1

0 ǫνL . (10.58)

Wenn wir die mikroskopische Langenskala L0 einfuhren, ergibt sich hieraus direkt:

(L

ξ

ξ0L0

) 1ν

= ǫ( L

L0

) 1ν

. (10.59)

Alle Exponenten und die Abhangigkeit Ψ von L/ξ bzw. von ǫ(L/L0)1ν sind uni-

versell, d.h., sie hangen nur von Dimension und Symmetrie des Ordnungsparametersab. Ableitungen der freien Energie bzw. von Ψ erlauben es nun, auch entsprechendeSkalierungsgleichungen fur die Observablen zu bestimmen (mit L0 ≡ 1):

m(L, T ) = m(ǫL1ν )L−β

ν ,

χ(L, T ) = χ(ǫL1ν )L

γν ,

C(L, T ) = C(ǫL1ν )L

αν .

(10.60)

Hierbei treten die kritischen Exponenten aus Gl. (10.16) auf. Mit Hilfe von Renormie-rungsgruppenmethoden lassen sich auch Beziehungen zwischen den kritischen Expo-nenten herleiten:

α + 2β + γ = 2 Rushbrooke γ = β(δ − 1) Widomdν = 2− α Josephson γ = ν(2− η) FisherBeachte:

1. Die Skalengesetze gelten nur asymptotisch fur ǫ→ 0 und B → 0.In der Praxis konnen Korrekturen bei endlichem ǫ sehr signifikant sein.

2. Im Allgemeinen gibt es auch noch einen weiteren, regularen Anteil der FreienEnergie, der aber am Phasenubergang nicht divergiert.

Page 125: Skrip Tum

10.6. “FINITE-SIZE SCALING” 117

10.6.2 Anwendung der Skalierung fur das “finite-size scaling”

Eine praktische Anwendung der Skalengesetze (10.60) besteht darin, sich diese fur das“finite-size scaling” zunutze zu machen. Definieren wir

mL(x ≡ ǫL1ν ) ≡ m(L, T (x, L))L

βν , (10.61)

wobei m(L, T (x, L)) die bei L und T = (ǫ+1)Tc = (x/L1ν +1)Tc gemessene (simulierte)

Magnetisierung ist. Dieses mL(x) konvergiert fur L → ∞ gegen die universelle Kurvem(x) (wir haben lediglich Gl. (10.60) umgeschrieben)

limL→∞

mL(x) = m(x) (10.62)

D.h., fur hinreichend großes L kollabieren alle Kurven mL(x) auf eine einzige uni-verselle Kurve m(x). Ein solches Kollabieren von experimentellen oder am Computerberechneten Kurven macht man sich oftmals beim Untersuchen bzw. beim Nachweisvon universellem Verhalten zu nutze.

Das Problem dabei ist, dass fur eine solche Untersuchung ǫ, also die kritische tem-peratur Tc (die nicht universell ist), bereits bekannt sein muss. Auch die Exponentenβ sind oftmals nicht oder nicht genau bekannt. Die Losung dieses Problems ist es nun,Observablen zu bilden, die mit L nicht renormiert werden. Mit

〈M2〉 ∝ (Ld

↑M=Ldm

L−βν )2 und 〈M4〉 ∝ (LdL−β

ν )4 (10.63)

wird der Quotient〈M4〉〈M2〉2 ∝ (Ld−β

ν )4−2·2 = L0 (10.64)

nicht renormiert. Wir konnen diesen Quotienten oder die Binder Kumulante

U4 = 1− 〈m4〉3〈m2〉2 (10.65)

bilden und U4(T ) fur verschiedene L plotten. Diese Kurven kreuzen sich asymptotisch(d.h. fur L→∞) bei T = Tc. Das asymptotische Verhalten ist

U4L→∞−→

23

fur T < TcU∗ ≈ 0.61 fur T = Tc

0 fur T > Tc

(10.66)

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 fur T = Tc gegeben durch

m(L, Tc) = m(0)L−βν . (10.67)

Das bedeutet

logm(L, Tc) ∼ −β

νlog(L) (10.68)

und der Quotient β/ν folgt durch einen einfachen (doppelt) logarithmischen Plot, sieheAbb. 10.5.

Page 126: Skrip Tum

118 KAPITEL 10. MONTE-CARLO-SIMULATIONEN

Abbildung 10.4: Binder-Kumulaten vs. Temperatur. Die Kurven fur verschiedene Sys-temgroßen kreuzen sich bei der kritischen Temperatur Tc.

Abbildung 10.5: Berechnung des kritischen Exponenten β bzw. β/ν (beachte −β =−β/ν = −1

8, da ν = 1 fur das 2D Ising-Modell.)

Page 127: Skrip Tum

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 (NationalBureau of Standards, Washington, 1972).

[3] Gillman und Fiebig, Computers in Physics, Jan/Feb (1988) 62.

[4] C.F. Gerald und P.O. Wheatley, Applied Numerical Analysis (Addison-Wesley, Rea-ding, 1989).

[5] C. Uberhuber, Computernumerik I und II (Springer, 1995)

[6] http://www.cs.sunysb.edu/∼algorith/files/random-numbers.shtml (Downloads,Hinweise)

[7] J. Stoer, Einfuhrung in die Numerische Mathematik I (Springer, Berlin-Heidelberg,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, Universitat Hamburg (1924).

[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