Sie sind auf Seite 1von 74

Numerische Mathematik für die

Fachrichtung Informatik und für


Ingenieurwesen

Inoffizielles Skriptum zur Vorlesung Numerische Mathematik für Informatiker und


Ingenieure basierend auf Vorlesungen an der Universität Karlsruhe (TH) im Sommersemester 2003

LATEX–Build vom: 6. Januar 2004 18:47


Inhaltsverzeichnis

1 Normen 5

2 Lineare Gleichungssysteme 9
2.1 Auflösung gestaffelter Gleichungssysteme . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2 Gaußscher–Algorithmus: LR–Zerlegung . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.3 Gauß–Elimination zur Lösung des LGS (2-i) . . . . . . . . . . . . . . . . . . . . . . . . 13
2.4 Pivot–Strategie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.5 LR–Zerlegung mit Spaltenpivotsuche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.6 Cholesky–Zerlegung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

3 Lineare Ausgleichsprobleme 17

4 Krylov–Raum–Verfahren 21
4.1 Verfahren der konjugierten Gradienten (cg-Verfahren) . . . . . . . . . . . . . . . . . . . 21
4.2 GMRES–Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

5 Nichtlineare Gleichungssysteme 31
5.1 Newton–Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
5.2 Fixpunkt–Iteration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

6 Interpolation und Approximation 41


6.1 Polynom–Interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
6.2 Splines und Spline–Interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
6.3 Freiformkurven: Bezier–Technik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

7 Diskrete Fouriertransformation 59
7.1 Fast Fourier–Transformation (FFT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

8 Numerische Quadratur 65

Dieses Skriptum erhebt keinen Anspruch auf Vollständigkeit und Korrektheit. Alle Rechte vorbehalten.

Kommentare, Fehler und Vorschläge bitte an mail@markuswestphal.de.


Die aktuelle Version dieses Dokuments ist auf der Website http://www.markuswestphal.de/numerik/ zu
finden.

Dieses inoffizielle Skriptum basiert auf dem Mitschrieb von Markus Westphal zu den Vorlesungen
im Sommersemester 2003 von Prof. Dr. A. Rieder und ist in Zusammenarbeit mit Manuel Krings
entstanden.

Mein besonderer Dank gilt Daniel Winkler von dessen HM-Script viele LATEX–Elemente übernommen
wurden und der auch das Titelbild beigesteuert hat.

3
Inhaltsverzeichnis

4
1 Normen
Definition 1.1. Eine Vektornorm ist eine Funktion

k · k : Kn → [0, ∞) , K ∈ {C, R}

mit den folgenden Eigenschaften

1. kxk = 0 ⇔ x = 0 positive Definitheit


2. kα · xk = |α| · kxk für alle α ∈ K , x ∈ Kn Homogenität
3. kx + yk ≤ kxk + kyk Dreiecksungleichung

Die Norm eines Vektors kxk kann als Abstand von x zum Nullvektor interpretiert werden und entspre-
chend kx − yk als Abstand der Vektoren x und y.

PSfrag replacements PSfrag replacements PSfrag replacements


tj tj tj
Beispiel 1.1 (p–Normen).
tj−1 tj−1 tj−1
tj+1 tj+1 tj+1
tj+2 Ã n
! p1 tj+2 tj+2
Mj
Mj−1
X Mj
Mj−1
Mj
Mj−1
kxkp :=
Mj+1 |xi |p , 1≤p<∞ Mj+1 Mj+1
Mj+2 Mj+2 Mj+2
s00 i=1 s00 s00
M M M
Wir wollen die so erhaltenen Normen für p = 1, p = 2 und p = ∞ näher betrachten und erhalten:
r
y(x) = ln(x)
r
y(x) = ln(x)
r
y(x) = ln(x)
0 0 0
n r
X
0.2
0.4
X 0.2
n0.4
0.2
0.4
kxk1 = 0.6 |xi | kxk = |xi |2 kxk∞ := max |x |
2 0.6 i 0.6
0.8 i=1
0.8 1≤i≤n 0.8
1 i=1 1 1
2 2 2
4 4 4
Für diese drei Normen sind in Abbildung 1.1 für den R2 die zugehörigen Einheitskreise dargestellt.
n
Der Einheitskreis −4∈ R
ist die Menge aller x−2 mit kxk = 1. Nur für p −2
= 2 entspricht der Einheitskreis
−2
−4 −4
tatsächlich
−0.2
B unserer
4
0
Vorstellung eines Kreises.
−0.2
B
−0.2
B 4
0
4
0
B14 B14 B14
B24 B24 B24
B34 B34 B34
B44 B44 B44
b0 b0 b0
b1 b1 1 b1 1
b2 1 b2 b2
b3 b3 b3
P (t) P (t) P (t)
b10 (t) b10 (t) b10 (t)
b11 (t) b11 (t) b11 (t)
b12 (t) b12 (t) b12 (t)
b20 (t) −1 1 b20 (t) −1 1 b20 (t) −1 1
b21 (t) b21 (t) b21 (t)
b30 (t) b30 (t) b30 (t)
b b b
a −1 a a
−1 −1

(a) Für p = 1 (b) Euklid–Norm p = 2 (c) Maximumsnorm p = ∞

Abbildung 1.1: Einheitskreise für die p–Normen mit p = 1, p = 2 und p = ∞

In Abbildung 1.2 findet man zusätzlich eine genauere Darstellung der Euklid–Norm.

5
1 Normen
PSfrag replacements
−2π
−π
π

3π y (x, y)
π
−π
π2
k = π0
4
π
4 +π p
k(x, y)k = x2 + y 2

s
P
n
Abbildung 1.2: Euklid–Norm: kxk2 = |xi |2 (hier im R2 )
i=1

Satz 1.1. Zu jedem Paar von Normen k · k♣ und k · k♠ existieren Konstanten 0 ≤ m ≤ M < ∞ mit

m · kxk♣ ≤ kxk♠ ≤ M · kxk♣ für alle x ∈ Kn

Beispiel 1.2. Sei p ≤ q. Dann:

kxkq ≤ kxkp ≤ n( p − q ) · kxkq


1 1

mit n = dim Kn .

Definition 1.2. Eine Matrixnorm ist eine Abbildung

k · k : K(n,m) → [0, ∞)

mit den drei Eigenschaften einer Vektornorm, wenn sie zusätzlich submultiplikativ ist, d.h.

kA · Bk ≤ kAk · kBk für alle A ∈ K(n,r) und B ∈ K(r,m)

Eine Matrixnorm heißt verträglich mit den Vektornormen k · kKn und k · kKm , wenn

kA · xkKn ≤ kAk · kxkKm

Beispiel 1.3.

P
m
1. kAk = max |aik | Zeilensummen–Norm
1≤i≤n k=1

P
n
2. kAk = max |aik | Spaltensummen–Norm
1≤k≤m i=1

µ ¶ 12
n P
P m
3. kAk = |aik |2 Frobenius–Norm
i=1 k=1

6
4. kAk = max |aik | ist keine Matrixnorm, denn
1≤i≤n
1≤k≤m

µ ¶ µ ¶ µ ¶ µ ¶
1 1 1 0 1 1 1 0
k · k = 2 6≤ 1 · 1 = k k·k k
0 0 1 0 0 0 1 0

Definition 1.3. Vektornormen k · kKn und k · kKm induzieren eine Matrixnorm auf K(n,m) .
kAxkKn
kAk := max = max kAxkKn
x6=0 kxkKm kxkKm =1

Solche Matrixnormen heißen zugeordnet oder induziert.

Beispiel 1.4 (p-Norm).

kAkp := max kAxkp , 1 ≤ p < ∞


kxkp =1

Sei nun p = 1:

A = (a1 , . . . , an ) , ai ∈ Kn
m
X m
X
kAxk1 = k aj x j k1 ≤ |xj | · kaj k1 ≤ kxk1 · max kaj k1
1≤j≤m
j=1 j=1

kAxk1
⇒ ≤ max kaj k1
kxk1 1≤j≤m

Die Ungleichung ist scharf und damit ist k · k1 die Spaltensummen–Norm.

Sei nun p = 2:

kAxk22 = hAx, Axi = hA∗ Ax, xi


p
Es gilt: kAk2 = λmax (A∗ A) wobei λmax der größte Eigenwert von A∗ A ist.

k · k2 heißt Spektralnorm (Spektrum: Menge der Eigenwerte) und hat die folgenden Eigenschaften:

1. kAk2 = kA∗ k2
2. kA∗ Ak2 = kAk22
3. kQAk2 = kAk2 falls Q unitär, also Q∗ Q = I.

Definition 1.4. Sei A ∈ K(n,n) regulär (d.h. invertierbar). Dann heißt

κ(A) := kAk · kA−1 k

Konditionszahl von A bezüglich k · k


Falls k · k induziert ist, so gilt:

1 = kIk = kA · A−1 k ≤ kAk · kA−1 k = κ(A)

Wir definieren außerdem:

κp (A) := kAkp · kA−1 kp

7
1 Normen

Die Konditionszahl ist ein Maß für die Stabilität einer Matrix. Je größer die Konditionszahl, umso näher
liegt die Matrix bei einer singulären Matrix. Dies kann beispielsweise negative Auswirkungen beim Lösen
von linearen Gleichungssystemen haben, in denen eine solche Matrix vorkommt (siehe Kapitel 2 und 4).

Satz 1.2. Sei A ∈ K(n,n) regulär. Dann gilt:


½ ¾
kA − Skp 1
min mit S ∈ K(n,n) singulär =
kAkp κp (A)

µ ¶
2 1
Beispiel 1.5. Sei A = . Dann ist κ2 (A) ≈ 31250.
1
0.4999
µ ¶
2 1
Die Matrix A liegt sehr nahe“ bei der singulären Matrix – durch Rundungsfehler könnte die
” 1 0.5
Invertierbarkeit von A verlorengehen“. Entsprechend erhält man eine große Konditionszahl.

8
2 Lineare Gleichungssysteme
gegeben:

A = (aij ) ∈ R(n,n) regulär , b ∈ Rn

gesucht:

x ∈ Rn mit Ax = b
n
X
Ax = b ⇔ aij xj = bi 1≤i≤n (2-i)
j=1

2.1 Auflösung gestaffelter Gleichungssysteme


Sei Rx = z mit rij = 0 für i > j. R ist eine obere Dreiecksmatrix :

r11 x1 + r12 x2 + ··· + r1n xn = z1


r22 x2 + ··· + r2n xn = z2
.. .. ..
. . .
rnn xn = zn

Dann ist
n
Y
det R = rii 6= 0 ⇔ rii 6= 0 für alle i = 1, . . . , n
i=1

Von unten nach oben betrachtet kommt in jeder Zeile eine weitere Unbekannte“ xi , i = 1, . . . , n hinzu.

Man erhält die Komponenten von x also, indem man in der letzten Zeile den Wert für xn zunächst direkt
abliest und dann in der jeweils nächsthöheren Zeile unter Zuhilfenahme der bisher berechneten Werte
die nächste Komponente bestimmt:
zn
xn =
rn,n
zn−1 − rn−1,n · xn
xn−1 =
rn−1,n−1
..
.
zi − ri,i+1 · xi+1 − · · · − ri,n · xn
xi =
ri,i
..
.
z1 − r1,2 · x2 − · · · − r1,n · xn
x1 =
r1,1

Man nennt dieses Vorgehen daher Rückwärtssubstitution .

9
2 Lineare Gleichungssysteme

Aufwand

Zur Berechnung von xi benötigt man n − i Additionen, n − i Multiplikationen und 1 Division und damit
insgesamt
n
X ¡ ¢
2(n − i) + 1 = n2
i=1

arithmetische Operationen.

Das Auflösen eines unteren Dreiecksystems

Lx = z mit lij = 0 für i < j

verläuft analog und heisst Vorwärtssubstitution

2.2 Gaußscher–Algorithmus: LR–Zerlegung


Idee:
Führe (2-i) über in ein Dreieckssystem, das dieselbe Lösung besitzt.

Zulässige Umformungen von (A, b) ∈ R(n,n+1) sind

• Vertauschen von Zeilen,

• Vertauschen von Spalten (dies macht eine Umnummerierung der Spalten erforderlich),

• Multiplikation einer Zeile mit einer Zahl 6= 0 und

• Addition des Vielfachen einer Zeile zu einer anderen.

Nach Durchführung von k solcher Umformungen erhalten wir das System (A(k+1) , b(k+1) ). Dabei ist
 
a11 a12 · · · a1n b1
 a21 a22 · · · a2n b2 
  (1) (1)
 .. .. .. .. ..  = (A, b) = (A , b )
 . . . . . 
an1 an2 ··· ann bn

1. Schritt

Produziere Nullen unterhalb von a11 . Es sei a11 6= 0 (dies stellt keine wirkliche Einschränkung dar, denn
eine Zeile muss an erster Stelle eine Zahl 6= 0 haben (A ist regulär); diese Zeile kann dann mit der ersten
vertauscht werden).
aj1
Subtrahiere das lj,1 = a11 –fache der ersten von der j–ten Zeile für j = 2, . . . , n.

 (1) (1) (1) (1)



a11 a12 ··· a1n b1
 (2) (2) (2) 
 0 a22 ··· a2n b2 
;
 .. .. .. .. .. 
(2) (2)
 = (A , b )
 . . . . . 
(2) (2) (2)
0 an2 ··· ann bn

10
2.2 Gaußscher–Algorithmus: LR–Zerlegung

(2) (1) (1)


aji = aji − lj1 · a1i i = 2, . . . , n j = 2, . . . , n
(2) (1) (1)
bj = bj − lj1 · b1 j = 2, . . . , n

Dies kann auch durch eine Matrix–Multiplikation erreicht werden:

A(2) = L1 · A(1) und b(2) = L1 · b(1)

mit
 
1 0 ··· ··· 0
 .. .. 
 −l21 1 . .
 
 .. .. .. 
L1 =  −l31 0 . . .
 
 . .. . . .. 
 .. . . . 0
−ln1 0 ··· 0 1

k–ter Schritt

D.h. wir vollziehen (A(k) , b(k) ) → (A(k+1) , b(k+1) ) wobei 2 ≤ k ≤ n − 1.


Vor dem k–ten Schritt hat unser System folgende Form:

 (1) (1) (1) (1)



a11 a12 ··· ··· ··· a1n b1
 (2) (2) (2) 
 0 a22 ··· ··· ··· a2n b2 
 . .. .. 
 . .. .. 
 . . . . . 
 .  = (A(k) , b(k) )
 . (k) (k) (k) 
 . 0 akk ··· akn bk 
 
 .. .. .. .. .. 
 . . . . . 
(k) (k) (k)
0 ··· 0 ank ··· ann bn

(k)
Sei akk 6= 0 (siehe Bemerkung zum ersten Schritt). Erneut wählen wir

(k)
ajk
ljk = (k)
j = k + 1, . . . , n
akk

und subtrahieren anschließend das ljk –fache der k–ten von der j–ten Zeile für j = k + 1, .., n:

(k+1) (k) (k)


aji = aji − ljk · aki i = k + 1, . . . , n j = k + 1, . . . , n

(k+1) (k) (k)


bj = bj − ljk · bk j = k + 1, . . . , n

(k)
Man nennt akk das Pivot–Element des k–ten Schrittes (franz: Pivot – Dreh– und Angelpunkt).
Matrixschreibweise:

A(k+1) = Lk · A(k) und b(k+1) = Lk · b(k)

11
2 Lineare Gleichungssysteme

mit
 
1 0 ··· ··· ··· ··· ··· 0
 .. .. .. 
0 . . .
 
 .. .. .. .. .. 
. . . . .
 
 .. .. .. 
. 0 1 . .
Lk = 
. .. .. 
 = I − lk · eTk
 .. .. ..
 . −lk+1,k . . . 
. .. .. .. .. .. 
 .. . . 0 . . .
 
. .. .. .. .. .. 
 .. . . . . . 0
0 ··· 0 −ln,k 0 ··· 0 1
wobei
 
  0
0  .. 
 ..  .
 .   
  0
 0   
  ek =  
lk =   und 1 (die 1 steht in der k–ten Zeile)
lk+1,k  0
 .   
 ..  .
 .. 
ln,k
0

(j)
Falls ajj 6= 0 für j = 1, . . . , n − 1 dann:

R = A(n) = Ln−1 · A(n−1) = Ln−1 · Ln−2 · . . . · L1 · A

⇒ A=L·R mit L = L−1 −1 −1


1 · L2 · . . . · Ln−1

beachte: L ist eine untere Dreiecksmatrix!.

Wie sieht L nun genau aus? Dazu zunächst folgende

Behauptung:

L−1 T
k = I + l k · ek

Beweis:

Lk · (I + lk · eTk ) = I − lk · eTk · lk ·eTk = I


| {z }
=0

Wir erhalten für L folgende Darstellung:


£ ¤
L = (I + l1 eT1 ) · . . . · (I + ln−1 · eTn−1 ) li · eTi · lj · eTj = 0 !
= I + l1 · eT1 + . . . + ln−1 · eTn−1
 
1 0 ··· ··· 0
 .. .. 
 l21 1 . .
 
 .. .. .. .. 
.
= . l . . 
 32 
 . . . . 
 .. .. .. .. 0
ln1 ln2 ··· ln,n−1 1

12
2.3 Gauß–Elimination zur Lösung des LGS (2-i)

Definition 2.1. Die Zerlegung einer Matrix A = L · R in eine obere Dreiecksmatrix R und eine untere
Dreiecksmatrix L, die nur Einsen auf der Diagonalen hat, heißt Gaußsche Dreiecks–Zerlegung, LR–
Zerlegung oder auch LU –Zerlegung (dabei steht bei der letztgenannten Bezeichnung L für lower“ und

U für upper“).

Nicht jede reguläre Matrix hat eine LR–Zerlegung: nur wenn alle Pivot–Elemente nicht 0 sind, ist eine
solche Zerlegung nach dem angegebenen Schema möglich.

Beispiel 2.1. Wir wollen für folgende Matrix eine LR–Zerlegung durchführen:
 
2 1 1
A = 4 3 3
8 7 9
     
1 0 0 2 1 1 2 1 1
Erster Schritt: −2 1 0 · 4 3 3 = 0 1 1
−4 0 1 8 7 9 0 3 5
| {z } | {z } | {z }
L1 A(1) A(2)
     
1 0 0 2 1 1 2 1 1
Zweiter Schritt: 0 1 0 · 0 1 1 = 0 1 1
0 −3 1 0 3 5 0 0 2
| {z } | {z } | {z }
L2 A(2) A(3) =R
 
1 0 0
L = L−1 −1
1 · L2 =
2 1 0
4 3 1
   
1 0 0 2 1 1
⇒ A = 2 1 0  · 0 1 1 
4 3 1 0 0 2

2.3 Gauß–Elimination zur Lösung des LGS (2-i)


1. A = L · R Zerlegung

2. L · z = b Vorwärtssubstitution

3. R · x = z Rückwärtsubstitution

Anmerkung zu den Schritten 2 und 3: L · (R · x}) = b


| {z
=z

Anzahl der Multiplikationen für die LR–Zerlegung:


n−1
X £ ¤ 2 1 5
2(n − k) + (n − k)2 = n3 + n2 − n
| {z } 3 2 6
k=1 Multiplikationen
im k–ten Schritt

Anzahl der Multiplikationen für das Gauß–Verfahren:

2 3 3 2 1
n + n − n
3 2 6

13
2 Lineare Gleichungssysteme

2.4 Pivot–Strategie
Die im folgenden vorgestellte Methode ist wichtig für die numerische Stabilität des Verfahrens und beugt
dem Fall vor, dass Pivot–Elemente verschwinden“. Wir betrachten folgendes Beispiel:

µ ¶
δ 1
A= mit 0 < δ ¿ 1
1 1
µ ¶ µ ¶
1 0 δ 1
⇒ L= , R=
δ −1 1 0 1 − δ −1
Die Zahlendarstellung auf dem Rechner ergibt folgende tatsächlich berechnete Faktoren:
µ ¶ µ ¶
1 0 δ 1
L̂ = −1 , R̂ =
δ 1 0 −δ −1

Der relative Fehler von R und R̂ ist klein (δ −1 groß!). Betrachte nun den Fehler bei Multiplikation von
L̂ und R̂:
1
kL̂ · R̂ − Ak∞ = · kAk∞
2
Dieser Fehler hingegen ist beträchtlich (50%).

Grund: der Gauß–Algorithmus ist nicht stabil. Kleine Fehler in L und R können zu großen Fehlern
beim Produkt führen.
Ausweg: Spaltenpivotsuche

Vertausche zunächst die Zeilen von A (hier ausgedrückt durch Multiplikation von A mit einer Permuta-
tionsmatrix P ):
µ ¶ µ ¶ µ ¶
0 1 δ 1 1 1
P ·A= · =
1 0 1 1 δ 1

Führe nun eine LR–Zerlegung durch:


µ ¶
1 1
L̂ = L , R̂ =
0 1

δ
⇒ kL̂ · R̂ − P · Ak∞ = · kP · Ak∞
2
Der Fehler liegt nun in der Größenordung der Störung.

2.5 LR–Zerlegung mit Spaltenpivotsuche


Vertausche im k–ten Schritt die k–te Zeile mit der Zeile j ≥ k, für die gilt:
(k) (k)
|ajk | = max |aik |
k≤i≤n

Beispiel 2.2. Wir setzen p := (1, 2, 3) (p dient zur Protokollierung der Vertauschungen).
     
2 1 1 8 7 9 8 7 9
Gauß  1
− 32 
p=(3,2,1)
4 3 3 −−−−−−→ 4 3 3 −−−→  2 − 21 
8 7 9 2 1 1 1
− 43 −4 5
4

14
2.6 Cholesky–Zerlegung

   
8 7 9 8 7 9
p=(3,1,2)  5  Gauß  1
−−−−−−→ 
1
4 − 43 − 4  −−−→  4 − 43 − 45 

1
2 − 21 − 23 1
2
2
3 − 32
Aus p können wir die Permutationsmatrix P konstruieren: ist am Ende der Umformungen p =
(p1 , . . . , pn ), so wählen wir für die i–te Zeile von P den Einheitsvektor epi .
       
0 0 1 2 1 1 1 0 0 8 7 9
⇒ 1 0 0 · 4 3 3 =  41 1 0 · 0 − 43 − 45 
1 2
0 1 0 8 7 9 1 0 0 − 23
| {z } | {z } | 2 {z
3
} | {z }
=P =A =L =R

Satz 2.1. Der Gauß–Algorithmus mit Spaltenpivotsuche liefert für jede reguläre Matrix A eine Per-
mutationsmatrix P sowie Dreieicksmatrizen L und R, so dass

P A = LR

die LR–Zerlegung von P A ist. Die Elemente von L sind betragsmäßig kleiner gleich 1.

2.6 Cholesky–Zerlegung
Definition 2.2. A ∈ R(n,n) heißt positiv definit (A > 0), falls A = AT und hAx, xi = xT Ax > 0 für alle
x ∈ Rn \ {0}.

Satz 2.2. A ∈ R(n,n) mit A = AT ist positiv definit


 
a11 · · · a1k
 ..  > 0 für alle k ∈ {1, . . . , n}
⇔ det  ... . 
ak1 ··· akk

Satz 2.3. Sei A > 0. Dann existiert eine untere Dreiecksmatrix L mit positiven Diagonalelementen, so
dass

A = L · LT

ist. Diese Faktorisierung heißt Cholesky–Zerlegung von A.

Beweis: Induktion über n:


Induktionsanfang: n = 1
√ √
A = { a11 } = a11 · a11
|{z}
>0

Induktionsschluss: n − 1 y n

A lässt sich darstellen in der Form


µ ¶
An−1 c
A=
cT ann

15
2 Lineare Gleichungssysteme

mit c ∈ Rn−1 und ann ∈ R. Nach Induktionsvoraussetzung gilt dann für A:


µ ¶
Ln−1 LTn−1 c
A=
cT ann
µ ¶ µ T ¶
! Ln−1 0 Ln−1 r
= · r ∈ Rn−1 , α ∈ R, α > 0
rT α 0 α
½
Ln−1 r = c

rT r + α2 = ann
Aus der oberen Zeile können wir r sofort ablesen:

⇒ r = L−1
n−1 c

Wir müssen nun aber noch nachweisen, dass tatsächlich α > 0 und können dann auch α
angeben. Es gilt aber:

0 < det A = ( det Ln−1 )2 · α2


| {z }
>0 nach IV

⇒ α2 > 0
⇒ α>0
p
⇒ α = ann − rT r

Schreiben wir die Cholesky–Zerlegung mit Hilfe der Komponenten von A erhalten wir:
k
X
A = L · LT ⇔ aik = lij lkj i≥k
j=1

Lösen wir diese (n+1)n


2 Gleichungen in der Reihenfolge (1, 1), (2, 1), . . . , (n, 1), (2, 2), . . . (n, n), d.h. spal-
tenweise, dann erhalten wir folgenden Algorithmus:

f o r k = 1 to n do
³ Pk−1 ´1/2
lkk = akk − j=1 (lkj )2
f o r i = k + 1 to n do
Pk−1
aik − j=1 lij lkj
lik = lkk
end
end

16
3 Lineare Ausgleichsprobleme
Problemstellung:

Ein Experiment liefert den Meßdatensatz (ti , bi ) ∈ Rd × Rk mit i = 1, . . . , l.


Modell: ϕ(t, x) = b (x ist Modellparameter).
Über den Meßdatensatz soll x möglichst genau bestimmt werden.

Beispiel 3.1 (Bestimmung eines Ohmschen Widerstandes).


PSfrag replacements
Ohmsches–Gesetz(Modell): b = x·t = ϕ(t, x) (b: Spannung, t: Stromstärke, x: ohmscher Widerstand)
−2π
Messungen
−π
ergeben folgendes Bild:
π


π
−π
π2
k = π0
Abbildung 3.1: Die Messungen (ti , bi ) sind
4
π
4 +π mit Fehlern behaftet und liegen nicht auf
x einer Geraden.
y
p (x, y) Die Steigung der Geraden, die den gering-
k(x, y)k = x2 + y 2
sten Abstand zu den Messpunkten hat, ist
eine vernünftige Approximation an x.

t1 t2 t3 t4 tn

 
ϕ(t1 , x) − b1
 .. 
F (x) :=  .  F : Rn → Rm (m = l · k)
ϕ(tl , x) − bl

Finde ein x∗ ∈ Rn mit kF (x∗ )k = min{ kF (x)k | x ∈ Rn }.


Für k · k = k · k2 gilt dann
l l
¡X 2¢ 2
1 ¡X ¢ 21
kF (x)k2 = (ϕ(ti , x) − bi ) = ∆2i
| {z }
i=1 i=1
=:∆i

Minimiert wird also gerade die Summe der Quadrate der Abweichungen. Diese Vorgehensweise heißt
daher Methode der kleinsten Quadrate (least–square–method) oder Gauß–Ausgleich.
Im weiteren soll ϕ linear von x abhängen.

⇒ F (x) = Ax − b mit einer Matrix A ∈ R(m,n)

17
3 Lineare Ausgleichsprobleme

Lineares Ausgleichsproblem
Gegeben:

A ∈ R(m,n) , b ∈ Rm

Gesucht:

x∗ ∈ Rn : kAx∗ − bk2 = minn kAx − bk2 (3-i)


x∈R

Wir suchen dasjenige x∗ , dessen Bild unter A den kleinsten Abstand von b hat.
Ist m ≥ n spricht man von einem überbestimmten, ist m < n von einem unterbestimmten Problem (bei
vorigem Beispiel handelte es sich also um ein überbestimmtes Problem).
Im folgenden sei stets k · k = k · k2 .

Satz 3.1. Folgende Aussagen sind äquivalent:

(i) x∗ löst (3-i)

(ii) AT Ax∗ = AT b (Normalgleichung)

(iii) Ax∗ = PBild A b (PBild A : Rm → Rm Orthogonalprojektor auf Bild A)

Beweis:
(i) ⇒ (ii):

Die Funktion f (x) = kAx − bk2 ist differenzierbar.


x∗ minimiert f in Rn ⇒ ∇f (x∗ ) = 0
Es ist f = h ◦ g mit h(x) = kxk2 und g(x) = Ax − b

⇒ ∇f (x) = ∇h(g(x))Dg(x) Kettenregel


T
∇h(x) = 2x , Dg(x) = A
⇒ ∇f (x) = 2(Ax − b)T · A

Also

0 = ∇f (x∗ ) = 2(Ax∗ − b)T · A

⇔ AT (Ax∗ − b) = 0
⇔ AT Ax∗ = AT b

(ii) ⇒ (iii):

AT (Ax∗ − b) = 0 ⇒ Ax∗ − b ∈ N (AT ) = (Bild A)⊥


⇒ 0 = PBild A (Ax∗ − b) = Ax∗ − PBild A b
⇔ Ax∗ = PBild A b

(iii) ⇒ (i):

Sei y ∈ Rn beliebig.

PBild A b − b ∈ (Bild A)⊥

18
kAy − bk2 = k Ay − PBild A b + PBild A b − b k2
| {z } | {z }
∈Bild A ∈(Bild A)⊥

= kAy − PBild A bk + kPBild A b − bk2


2
Pythagoras
2 ∗ 2
= kAy − PBild A bk + kAx − bk
≥ kAx∗ − bk2

⇒ Ax∗ − b ist das Minimum über alle y

⇒ x∗ löst (3-i)

Lemma 3.2. Die Differenz x∗ − y ∗ zweier Lösungen von (3-i) liegt in N (A).

A(x∗ − y ∗ ) = 0

Das Ausgleichsproblem (3-i) hat genau dann eine eindeutige Lösung, wenn N (A) = {0}. Dies kann im
unterbestimmten Fall nie und im überbestimmten Fall nur für Rang(A) = n eintreten.

Definition 3.1. Unter allen Lösungen von (3-i) nennen wir die mit minimaler Norm die Mimimum–
Norm–Lösung x+ .

Satz 3.3. Sei A ∈ R(m,n) . Die Minimum–Norm–Lösung von (3-i) ist die eindeutige Lösung der Normal-
gleichung in N (A)⊥ . Ist Rang(A) = min{m, n}, dann gilt:
½
+ (AT A)−1 · AT b m≥n
x =
AT · (AAT )−1 · b m < n

Für eine effiziente und stabile Berechnung von x+ gibt es Algorithmen, die nicht die Normalgleichung
lösen (z.B. QR–Algorithmus). Für hochdimensionale Probleme sollte auf ein Lösen der Normalgleichung
verzichtet werden; denn beim Übergang von A zu AT A kann aus numerischen Gründen z.B. die Injek-
tivität verloren gehen. Betrachte dazu folgendes Beispiel:
 
1 1
A = δ 0 0 < δ ¿ 1 δ darstellbar
0 δ

A ist injektiv (Rang(A) = 2).


µ ¶
1 + δ2 1
AT A =
1 1 + δ2

Dieses Produkt ist bei arithmetischer Betrachtung ebenfalls injektiv; doch kann δ 2 möglicherweise nicht
mehr dargestellt werden und wird zu 0 gerundet. Dann erhalten wir:
µ ¶
[ T 1 1
Rundung ; A A =
1 1

Diese Matrix ist nun nicht mehr injektiv.

19
−2π −2π
−π −π
π π
2π 2π
3π 3π
π π
−π −π
3 Lineare Ausgleichsprobleme
π2 π2
k = π0 k = π0
4 4
π
4 +π π
4 +π
x x
y y
p (x, y) p (x, y)
k(x, y)k = x2 + y 2 k(x, y)k = x2 + y 2
PSfrag replacementst1 PSfrag replacements
t1
−2πt2 −2πt2
−πt3 −πt3
tπ4 tπ4

tn 2π
tn
3π 3π
π π
(a) Alle Geraden
−π schneiden sich in einem Punkt (b) Je zwei
−π Geraden schneiden sich in einem
Punkt
π2 π2
k = π0 k = π0
4 4
π
4 +π π
4 +π
x x
y y
p (x, y) p (x, y)
k(x, y)k = x2 + y 2 k(x, y)k = x2 + y 2
t1 t1
t2 t2
t3 t3
t4 t4
tn tn

(c) Zwei Geraden sind parallel; die dritte scheidet (d) Alle Geraden liegen parallel
beide

Abbildung 3.2: Mögliche Geradenkonstellationen in Beispiel 3.2.

Beispiel 3.2. Wir wollen den Punkt bestimmen, der drei gegebenen Geraden im R 2 am nächsten liegt.
In Abbildung 3.2 sind alle möglichen Konstellationen für drei Geraden angegeben.
Die Lage der Geraden wird sich in A wiederspiegeln. Wir beschreiben eine Gerade folgendermaßen:

Gi := {x ∈ R2 | bi = ai x1 + x2 } i = 1, 2, 3 b i , ai ∈ R

Wir suchen einen Punkt x∗ ∈ R2 :


    
a1 x∗1 + x∗2 = b1  a1 1 b1
!
a2 x∗1 + x∗2 = b2 ⇔ Ax∗ = b mit A = a2 1 , b = b2 
∗ ∗ 
a3 x 1 + x 2 = b 3 a3 1 b3

Das vorliegende ist also ein überbestimmtes Problem.

Rang A = 2 ⇔ ai 6= aj für ein Paar (i, j)

Dies entspricht den Abbildungen 3.2(a), 3.2(b) oder 3.2(c). In diesem Fall:
µ ¶ µ P3 ¶
+ T −1 T 1 3 c − i=1 ai bi
x = (A A) A b = mit d = a21 + a22 + a23 , c = −(a1 + a2 + a3 )
3d − c2 c d b1 + b 2 + b 3
| {z }| {z }
=(AT A)−1 =AT b

20
4 Krylov–Raum–Verfahren

4.1 Verfahren der konjugierten Gradienten (cg-Verfahren)


Generelle Vorraussetzung:

A ∈ R(n,n) , A > 0 und b ∈ Rn

Gesucht:

x ∈ Rn : Ax = b

Definition 4.1. 1. Wir führen ein zweites Skalarprodukt auf Rn ein:

hv, wiA := hA · v, wi v, w ∈ Rn
| {z }
euklidsches
Skalarprodukt

2. v heißt A–orthogonal zu w :⇔ hv, wiA = 0


p
3. kvkA := hv, viA A–Norm oder Energienorm

PSfrag replacements
n −2π Teilraum des Rn . Wir setzen
Sei Um ⊂ R ein m–dimensionaler
−π
Vm := x0 + Um = {x0 + uπ | u ∈ Um } x0 ∈ Rn

Vm ist ein affin linearer Raum3π
(vergleiche auch Abbildung 4.1).
π
−π
π2
k = π0
V1
4
π
4 +π
x
y
(x, y) U1
p
k(x, y)k = x2 + y 2
t1 x0
t2
t3
t4
tn

Abbildung 4.1: U1 ist ein Untervektorraum des R2 und V1 = x0 + U1

21
4 Krylov–Raum–Verfahren

Außerdem definieren wir xm ∈ Vm durch


kxm − xkA = min{kv − xkA | v ∈ Vm } (x ist Lösung von Ax = b)

Wegen xm = x0 + ξ m und v = x0 + u, wobei ξ m , u ∈ Um , genügt es ξ m durch


kξ m − (x − x0 )kA := min{ku − (x − x0 )kA | u ∈ Um }
zu bestimmen.
⇒ ξ m = Pm (x − x0 ) Pm : R n → U m A–Orthogonal–Projektor
Sei {p1 , . . . , pn } eine A–Orthogonalbasis von Rn und Um = spann{p1 , . . . , pm } mit m = 1, . . . , n.
Dann
xm = x0 + ξ m = x0 + Pm (x − x0 )
Xm
hpj , x − x0 iA j
= x0 + ·p
j=1
hpj , pj iA
Xm
hpj , r0 i j
= x0 + ·p mit r 0 = A(x − x0 ) = b − Ax0
hApj , pj i
j=1 | {z }
=:αj

Definition 4.2. Wir nennen


rm := b − Axm
das Residuum von xm . rm ist ein Maß dafür, wie gut xm die Gleichung Ax = b löst.

Wir erhalten für xm und r m folgende rekursive Formen


m−1
X
xm = x 0 + α j pj + α m pm
j=1
m−1
=x + α m pm
und
rm = A(x − xm ) = A(x − xm−1 − αm pm )
= rm−1 − αm Apm
also
xm = xm−1 + αm pm und r m = rm−1 − αm Apm (4-i)

Nun stellt sich die Frage nach der Wahl geeigneter Räume Um für die sich eine A–Orthogonalbasis leicht
berechnen lässt.
Definition 4.3. Wir definieren durch
U0 = {0} und Um = Um (A, v) = spann{v, Av, A2 v, . . . , Am−1 v} m = 1, . . . , n
die Krylov–Räume bezüglich A und v.

Lemma 4.1. Sei Um = Um (A, r 0 ) (r0 Ausgangsresiduum) und r m 6= 0. Dann sind die Residuen
r0 , . . . , r m paarweise orthogonal
½
i j 0 i 6= j
hr , r i = i, j = 1, . . . , m
kri k2 i = j
und sie spannen Um+1 auf:
Um+1 = spann{r 0 , . . . , r m }

22
4.1 Verfahren der konjugierten Gradienten (cg-Verfahren)

Konstruktion einer A–Orthogonalbasis für Um (A, r0 )


Sei m ≥ 0 , r m 6= 0 und sei {p1 , . . . , pm } eine A–Orthogonalbasis von Um .
⇒ {p1 , . . . , pm , rm } ist Basis von Um+1 (rm ⊥Um = spann{p1 , . . . , pm })
4.1
m
X hrm , Apj i
⇒ {p1 , . . . , pm , pm+1 } ist A–OGB von Um+1 mit pm+1 = rm − · pj
j=1
hApj , pj i
Es ist r m ⊥Um
⇒ hrm , Apj i = 0 für j < m
hrm , Apm i m
⇒ pm+1 = rm − ·p (4-ii)
hApm , pm i
| {z }
=:βm

Lemma 4.2. Es gilt


krm−1 k22 krm k22
αm = und βm =
kpm k2A krm−1 k22

Diese Überlegungen führen uns zum

cg–Algorithmus zur Lösung von Ax = b mit Startwert x0

p1 : = r0 = b − Ax0

3 f o r m = 1 to n do
i f r m−1 = 0 then STOP

6 am : = A · p m
krm−1 k22
αm : =
hpm , am i
x : = xm−1 + αm pm
m

9 rm : = rm−1 − αm Apm
krm k22
βm : =
krm−1 k22
m+1
p : = r m + β m pm
12 end

In Zeile 4 wählt man statt der Abbruchbedingung r m−1 = 0 normalerweise eine Bedingung dafür, dass
rm−1 hinreichend klein ist, z.B.
krm−1 k2
≤²
kbk2
Für die Zeilen 8 und 9 vergleiche (4-i) und für Zeile 11 (4-ii).

Konvergenzanalyse

Falls das cg-Verfahren nicht vorzeitig abbricht, dann


Un (A, r 0 ) = Rn ⇒ xn = x

23
4 Krylov–Raum–Verfahren

Das cg–Verfahren liefert also spätestens nach n-Schritten die exakte Lösung (bei exakter Arithmetik).
Daher kann das cg–Verfahren einerseits als direktes (wie z.B. die Gauss–Zerlegung) andererseits auch
als iteratives interpretiert werden.
Lemma 4.3. Es gibt Polynome Qm ∈ Π∗m , wobei
Π∗m = {qm ist Polynom vom Grad ≤ m mit qm (0) = 1 }
so dass
em := xm − x = Qm (A)e0 mit e0 = x0 − x (Anfangsfehler)
ist. Weiter gilt
kem kA = kQm (A)e0 kA = min{kqm (A)e0 kA | qm ∈ Π∗m }
sowie
kem kA ≤ max |qm (λ)| · ke0 kA für alle qm ∈ Π∗m
λ∈σ(A)

Hierbei ist σ(A) = {λ ∈ (0, ∞) | λ ist Eigenwert von A} (Spektrum von A).

Satz 4.4. A > 0 habe nur k ≤ m verschiedene Eigenwerte. Dann gilt xk = x. Das cg–Verfahren liefert
also nach k Schritten die exakte Lösung.

Beweis: Seien λ1 , . . . , λk die verschiedenen Eigenwerte von A.


Yk
λj − t
qk (t) :=
j=1
λj

Dann ist qk ein Polynom k–ten Grades und qk (0) = 1.


⇒ qk ∈ Π∗k
⇒ kek kA ≤ max |qk (λ)|ke0 kA = 0
λ∈{λ1 ,...,λk }

⇒ xk = x
¤

Satz 4.5. Für A > 0 gilt:


Ãp !m
m κ2 (A) − 1
ke kA < 2 · p ke0 kA
κ2 (A) + 1
mit
λmax (A)
κ2 (A) = kAk2 kA−1 k2 = (Konditionszahl)
λmin (A)

Beispiel 4.1. A > 0 habe nur zwei verschiedene Eigenwerte λ1 ¿ λ2 .


⇒ κ2 (A) À 1
Satz 4.5 suggiert in diesem Beispiel eine langsame Konvergenz des cg–Verfahrens. Aus Satz 4.4 wissen
wir jedoch: x2 = x.

24
π


π
−π
π2
k = π0
4 4.1 Verfahren der konjugierten Gradienten (cg-Verfahren)
π
4 +π
x
y
Vorkonditionierung
p (x, y)
k(x, y)k = x2 + y 2
t1
t2
t3
t4 1
tn
U1
V√1 κ2 −1
x0 κ2 +1

Je kleiner κ2 , desto schneller konver-
x0 giert das cg–Verfahren.
f (x0 )

1 κ2

Idee:

Transformiere das Problem Ax = b in ein äquivalentes, wobei die transformierte Matrix eine
möglichst kleine Kondition hat.

Sei B ∈ R(n,n) positiv definit.


Ax = b ⇔ Āx̄ = b mit Ā = AB und x = B x̄
wir wollen B so kreieren, dass die Konditionszahl von Ā möglichst klein ist.
Da B positiv definit ist, ist nun Ā = AB nicht mehr symmetrisch. Wir müssen deshalb unseren Algo-
rithmus anpassen und erhalten den

cg–Algorithmus zur Lösung von Ax = b mit Vorkonditionierer B

r0 : = b − Ax0
p1 : = Br 0
ρ1 : = hp1 , r0 i2

f o r m = 1 to n do
i f r m−1 = 0 then STOP

am : = A · p m
ρm
αm : =
hpm , am i2
xm : = xm−1 + αm pm
rm : = rm−1 − αm am
v m : = Br m
ρm+1 : = hv m , rm i2
ρm+1 m
pm+1 : = v m + ρ m
p
end

Satz 4.6. Die Matrix B erfülle


γhB −1 v, vi2 ≤ hAv, vi2 ≤ ΓhB −1 v, vi2 für alle v ∈ Rn
Dann gilt für das mit B vorkonditionierte cg–Verfahren zur Lösung von Ax = b die Fehlerabschätzung
µ√ ¶m
κ−1
kxm − xkA ≤ 2 · √ kx0 − xkA
κ+1
Γ
worin κ = γ ist.

25
4 Krylov–Raum–Verfahren

Ein guter Vorkonditionierer erfüllt folgende Eigenschaften:

(a) Bv ist einfach (im Vergleich zu Av)


Γ
(b) κ2 (BA) = γ ¿ κ2 (A)

Die beiden Forderungen nicht ohne weiteres vereinbar. So wird (b) z.B. für A−1 am besten erfüllt,
aber in (a) erhält man dann die gleiche Komplexität wie beim Ausgangsproblem. Für I ergibt sich das
umgekehrte Bild.

4.2 GMRES–Verfahren
GMRES ist eine Abkürzung für Generalized Minimum Residual Method“ und bezeichnet ein Verfahren,

bei dem das Residuum minimiert wird.

Sei A ∈ R(n,n) eine reguläre Matrix (A muss nicht positiv definit sein) und b ∈ Rn . Die k–te GMRES–
Iterierte xk ist definiert durch:
kAxk − bk2 = min{kAv − bk2 | v ∈ x0 + Uk (A, r 0 )}
wobei Uk (A, r 0 ) der k–te Krylov–Raum ist und r 0 = b − Ax0 das Anfangsresiduum (x0 bezeichnet den
Startwert).

Beachte: Im Gegensatz zum cg–Verfahren wird hier nicht der Fehler xm − x, sondern das Residuum
Axk − b minimiert. Auch benutzen wir beim GMRES–Verfahren zur Minimierung nicht die A–Norm,
sondern die Euklid–Norm, da von A im allgemeinen kein Skalarprodukt definiert wird (beachte: A muss
- wie erwähnt - nicht positiv definit sein).

Satz 4.7. Es gilt


krk k2 = min{kqk (A)r 0 k2 | qk ∈ Π∗k }
daraus folgt
krk k2 ≤ kqk (A)k2 · kr0 k2 für alle qk ∈ Π∗k

Lemma 4.3 gilt analog für das GMRES–Verfahren und wir erhalten
Satz 4.8. Sei A = V DV −1 eine reguläre diagonalisierbare Matrix ( D = diag(λ1 , . . . , λn ) , λi ∈ C
und V ∈ C(n,n) ) [Beachte: positiv definite Matrizen haben reelle Eigenwerte – beliebige Matrizen nicht].
Dann gilt:
krk k2 ≤ κ2 (V ) · max |qk (λi )| · kr 0 k2 für alle qk ∈ Π∗k
1≤i≤n

Beweis:
kqk (A)k2 = kV qk (D)V −1 k2
≤ kV k2 · kV −1 k2 · k diag(qk (λ1 ), . . . , qk (λn ))k2
= κ2 (V ) · max |qk (λi )|
1≤i≤n

¤
Beim GMRES–Verfahren kommt verglichen mit Lemma 4.3 noch der Faktor κ2 (V ) > 1 hinzu. Die Güte
der Abschätzung ist also geringer als in Lemma 4.3.

26
4.2 GMRES–Verfahren

Satz 4.9. Falls kI − Ak2 ≤ % < 1, dann

krk k2 ≤ %k · kr0 k2

In jedem Schitt wird also das Ausgangsresiduum r 0 um den Faktor % vermindert.

Beweis: Setze qk (t) := (1 − t)k ∈ Π∗k .

⇒ krk k2 ≤ kqk (A)k2 · kr0 k2


= k(I − A)k k2 · kr0 k2
≤ kI − Akk2 · kr0 k2
≤ %k kr0 k2

Vorkonditionierung
Wir transformieren das Problem Ax = b:

Ax = b ; M Ax = M b wobei M regulär ist

Ein guter Vorkonditionierer erfüllt folgende Anforderungen:

(i) κ2 (M A) ¿ κ2 (A) (dann sind die vorkonditionierten Residuen beim GMRES–Verfahren gute Feh-
lerindikatoren).
(ii) kM A − Ik2 ¿ 1 (siehe hierzu Satz 4.9)
(iii) M v lässt sich schnell berechnen (d.h. so schnell wie Av).

Aspekte der Implementierung


Orthogonalisierung von Uk (A, r 0 )
r0
1. r0 = b − Ax0 p1 := kr 0 k2

2. für i = 1, . . . , k − 1:
i
X
i+1 i
p̃ = Ap − hApi , pj i2 · pj
j=1

p̃i+1
falls p̃i+1 6= 0: pi+1 =
kp̃i+1 k2

Satz 4.10. Die {pj }1≤j≤i seien nach obigem Schema konstruiert. Falls p̃j+1 = 0 ist, dann ist

x = A−1 b ∈ Vi = x0 + Ui (A, r 0 )

also xi = x.
Die Orthogonalisierung bricht nur dann ab, wenn xi schon die Lösung ist.

27
4 Krylov–Raum–Verfahren

Sei Pk = (p1 , . . . , pk ) ∈ R(n,k) . Wir können xk ∈ x0 + Uk (A, r 0 ) schreiben als

xk = x 0 + P k z k

wobei z k ∈ Rk das lineare Ausgleichsproblem

k b − A(x0 + Pk z k ) k2 = min kr0 − APk zk2 (4-iii)


| {z } z∈Rk
=r 0 −AP k z k =r k

löst (die Minimaleigenschaft von z k ist die Minimaleigenschaft von xk ).

Lemma 4.11. Es ist APk = Pk+1 Hk mit Hk ∈ R(k+1,k) und


½
0 j ≥i+2
(Hk )j,i =
hApi , pj i2 sonst

Beachte: Wir berechnen den Ausdruck hApi , pj i2 bereits beim Orthogonalisieren.


Hk hat dann folgende Gestalt (hier für k = 4):
 
∗ ∗ ∗ ∗
∗ ∗ ∗ ∗
 
Hk = 
 0 ∗ ∗ ∗

0 0 ∗ ∗ 
0 0 0 ∗

Hk ist eine obere Hessenberg–Matrix.

Sei e1 = (1, 0, . . . , 0)T ∈ Rj . Dann gilt

r0 = kr 0 k2 ·Pj e1 für alle j ≥ 1


| {z }
β

⇒ rk = b − Axk = r0 − A(xk − x0 )
= βPk+1 e1 − APk z k
| {z }
=Pk+1 Hk

= Pk+1 (βe1 − Hk z k )

⇒ krk k2 = kβe1 − Hk z k k2 , β = kr 0 k2

Statt (4-iii) müssen wir das einfachere Ausgleichsproblem

kβe1 − Hk z k k2 = min kβe1 − Hk zk


z∈Rk

lösen.
Dieses Ausgleichsproblem kann mit Givens–Rotationen effizient gelöst werden.

28
4.2 GMRES–Verfahren

GMRES–Algorithmus mit Startwert x0

r0 : = b − Ax0
β : = kr 0 k2
% := β
p1 : = r0 /β
5 k := 0

while % > ² · β and k < kmax do


/ ∗ ² > 0 i s t A b b r u c h t o l e r a n z und kmax maximale S c h r i t t z a h l ∗ /

10 k := k + 1
pk+1 : = Apk

/∗ Orthogonalisierung : ∗ /
f o r j := 1 to k do
15 hi,k : = hpk+1 , pj i2
pk+1 : = pk+1 − hj,k · pj
end

hk+1,k : = kpk+1 k2
20

z k : = m i n i m i e r e ( kβe1 − Hk zk über Rk )

pk+1 : = pk+1 / hk+1,k


% : = kβe1 − Hk z k k / ∗ % = kAxk − bk2 ∗ /
25 end

xk : = x 0 + P k z k

Die Krylov–Raum–Basis {p1 , . . . , pk } muss während der Iteration gespeichert werden. Daher legt man
eine maximale Schrittzahl kmax fest.
Hat xkmax nicht die geforderte Genauigkeit, dann startet man das GMRES–Verfahren erneut allerdings
mit Startwert xkmax , der näher an der Lösung liegt. Dieses Verfahren wird mit GMRES(kmax ) bezeichnet.

29
4 Krylov–Raum–Verfahren

30
5 Nichtlineare Gleichungssysteme
5.1 Newton–Verfahren
Folgendes abstraktes Problem ist gegeben:
F : D → Rn , D ⊂ Rn offen
Finde x∗ ∈ D mit F (x∗ ) = 0 (5-i)

Sei xalt ∈ D eine Näherung an x∗ ∈ D.


Ziel: Verbesserung von xalt .

Eigenschaften von F (xalt ):


F (xalt ) = F (xalt ) − F (x∗ )
| {z }
=0
0 alt alt
≈ F (x ) · (x − x∗ ) Linearisierung des Problems
n o
∂Fi
mit F 0 (x) = ∂x j
(x) ∈ R(n,n) (Jacobi–Matrix von F ).
1≤i,j≤n

Bestimme daher xneu durch


F (xalt ) = F 0 (xalt ) · (xalt − xneu )
⇔ xneu = xalt − F 0 (xalt )−1 · F (xalt )

Natürlich wird die Inverse F 0 (xalt )−1 niemals berechnet. Vielmehr bestimmen wir die sogenannte k–te
Newton–Korrektur sk als Lösung eines linearen Gleichungssystems (siehe nachfolgenden Algorithmus).

Das Newton–Verfahren
Sei x0 ∈ D (Startwert).
für k = 0, 1, . . .
xk+1 = xk + sk F 0 (xk )sk = −F (xk ) (5-ii)

sk heisst der k–te Newton–Schritt oder k–te Newton–Korrektur.

Grafische Interpretation (n = 1)
Sei F : R → R eine nichtlineare Gleichung. Dann entspricht das Problem F (x∗ ) = 0 dem Auffinden
der Nullstelle x∗ von F . Wir approximieren die Funktion F im Startwert x0 durch ihre Tangente und
bestimmen anschließend den Schnittpunkt dieser Tangente mit der x–Achse. Der Schnittpunkt liefert
uns den Wert x1 mit dem wir den eben beschriebenen Schritt wiederholen und uns so x∗ nähern. Siehe
auch Abbildung 5.1.

31
5 Nichtlineare Gleichungssysteme

x2 x1 x0
PSfrag replacements

Abbildung 5.1: Grafische Darstellung des Newton–Verfahrens in R

Beispiel 5.1. Gegeben ist die Funktion

f (t) = t2 − a mit a>0

Bestimme nun

f (t∗ ) = 0 ⇔ t∗ = ± a

¡
¢2
k+1 k xk − a
x =x −
2xk
1 ³ k a´
= · x + k
2 x
Falls x0 > 0 gilt:

lim xk = a
k→∞

Konkret wollen wir mit diesem Verfahren eine Näherung für 2 berechnen:

k xk |xk − 2|
(Schritt) (Näherung) (Fehler)
0 2 0.58
1 1.5 0.086
2 1.4166 0.0025
3 1.4142157 2.16 · 10−6
4 1.4142136 exakt bis auf Taschen-
rechnergenauigkeit

Die Anzahl der korrekten Ziffern hat sich in jedem Schritt verdoppelt.

32
5.1 Newton–Verfahren

Diese Vorgehen zur Bestimmung der Wurzel einer Zahl a wird als Heron–Verfahren bezeichnet. Heron
beschreibt dieses, bereits den Babyloniern fast 2000 Jahre früher bekannte Verfahren im ersten Buch
seiner Triologie“ Metrica (natürlich nicht auf Grundlage der Differentialrechnung sondern geometrischer

Überlegungen).

Vorraussetzungen an F

(a) Die Gleichung (5-i) habe eine Lösung 


(b) F 0 : D → R ist Hölder–stetig der Ordnung α ∈ (0, 1] (5-iii)


(c) 0 ∗
F (x ) ist regulär. 

In (b) bedeutet Hölder–stetig der Ordnung α:

kF 0 (x) − F 0 (y)k ≤ γkx − ykα für ein γ > 0 (γ unabhängig von x und y)

Als Vorbereitung des nächsten Satzes definieren wir

B(δ) := {x ∈ Rn | kx − x∗ k < δ} für δ > 0 δ–Kugel um x∗

Satz 5.1. F erfülle (5-iii). Sei {xk } die Newton–Folge aus (5-ii). Dann gibt es ein δ > 0 derart dass

lim xk = x∗
k→∞

falls x0 ∈ B(δ). Außerdem ist x∗ die einzige Nullstelle von F in B(δ). Weiter gilt:

kxk+1 − x∗ k ≤ cN kxk − x∗ k1+α k = 0, 1, . . . (mit α aus (5-iii))

mit
kF 0 (x∗ )−1 k
cN = 2γ
1+α
Für α = 1 konvergiert das Newton–Verfahren quadratisch (vergleiche Wurzel–Berechnung), für 0 <
α < 1 superlinear.

Beweis: Wir beweisen nur die letzte Abschätzung.


Definiere den k–ten Fehler durch

ek = x k − x ∗ für xk ∈ B(δ) ⊂ D
¡ ¢
ek+1 = ek − F 0 (xk )−1 · F (xk ) − F (x∗ )
| {z }
R1
0
F 0 (x∗ +tek )ek dt

Z1
k+1 0 k −1
¡ ¢
⇒ e = F (x ) F 0 (xk ) − F 0 (x∗ + tek ) ek dt
0

Z1
k+1 0 k −1 k
⇒ ke k ≤ kF (x ) k · ke k kF 0 (xk ) − F 0 (x∗ + tek )k dt
0

33
5 Nichtlineare Gleichungssysteme

Es gilt

kF 0 (xk ) − F 0 (x∗ + tek k ≤ γk xk − x∗ −tek kα = γ|1 − t|α · kek kα


| {z }
=ek

Z1
k+1 0 k −1 k 1+α
⇒ ke k ≤ kF (x ) k · γ · ke k (1 − t)α dt
0
| {z }
1
= 1+α

Für δ > 0 klein genug“ gilt



kF 0 (y)−1 k ≤ 2kF 0 (x∗ )−1 k für alle y ∈ Bδ (x∗ )

kF 0 (x∗ )−1 k
⇒ kek+1 k ≤ 2γ · kek k1+α
1+α
Hieraus folgen induktiv die restlichen Behauptungen des Satzes 5.1. ¤

Wir wollen uns nun überlegen, wann wir mit der Iteration stoppen können. Doch zunächst folgende
Feststellung zur Invarianzeigenschaft:

A ∈ R(n,n) regulär ⇒ [F (x∗ ) = 0 ⇔ G(x∗ ) := AF (x∗ ) = 0]

x − G0 (x)−1 G(x) = x − F 0 (x)−1 F (x)


d.h. die Newton–Folge {xk } ändert sich nicht, wenn wir F mit einer regulären Matrix multiplizie-
ren. Das Newton–Verfahren ist affin–invariant. Wir werden auf diese Eigenschaft bei der Wahl eines
Konvergenzkriteriums zurückkommen.

Die Konvergenz von {xk } hängt vom Startwert x0 ab. Wie können wir während der Iteration feststellen,
ob das Newton–Verfahren konvergiert?

F (x) = 0 ⇔ minimiere kF (x)k

Idee: Setze Iteration fort, solange

kF (xk+1 )k ≤ ϑ · kF (xk )k (5-iv)

für ein ϑ ∈ (0, 1) (Monotonie–Test).

Der Monotonie–Test ist jedoch nicht affin–invariant! Eine Multiplikation mit einer invertierbaren Matrix
kann das Ergebnis des Monotonie–Tests verändern. Wir haben aber oben festgestellt, dass das Newton–
Verfahren an sich durch eine solche Transformation nicht beeinflusst wird. Es wäre wünschenswert,
wenn sich das Abbruchkriterium hier an den Eigenschaften des Newton–Verfahren orientieren würde
(insbesondere sollte es unabhängig von der Skalierung sein – genau das tut A).
Wir ersetzen daher den Monotonie–Test (5-iv) durch

kF 0 (xk )−1 F (xk+1 )k ≤ ϑk F 0 (xk )−1 F (xk ) k (5-v)


| {z }
=−sk

Stoppe das Newton–Verfahren, falls (5-v) nicht erfüllt ist oder falls ksk k eine festzulegende Toleranz
unterschreitet (in der Nähe von x∗ gilt ksk k ≈ kek k).

Betrachte:

f (x) = arctan(x)

34
5.1 Newton–Verfahren

π
2

PSfrag replacements
x1
x2
x0
− π2

Abbildung 5.2: Graph von arctan(x)

Offensichtlich ist das gesuchte x∗ = 0 (vergleiche auch Abbildung 5.2).


Wir starten das Newton–Verfahren mit x0 = 10 und erhalten

x1 = −138 , x2 = 2.9 · 104 , x3 = −1.5 · 109

Woran scheitert aber nun die Konvergenz?


Es ist
f (xk )
sk = − , |xk | À 1
f 0 (xk )
also
1 π
f 0 (xk ) = ¿1 und gleichzeitig |f (xk )| ≈
1 + (xk )2 2

⇒ |sk | ist zu groß


Beobachtung:

sk hat das richtige Vorzeichen und zeigt“ von xk in Richtung x∗



Idee:

Dämpfe das Newton–Verfahren: xk+1 = xk + λsk 0<λ<1 Dämpfungsfaktor

Globales Newton–Verfahren

k := 0
x0 ∈ D
β ∈ (0, 1) / ∗ z . B . β = 10−3 ∗ /

5 while kF (xk )k > ²kF (x0 )k do / ∗ g e n e r e l l e s A b b r u c h k r i t e r i u m ∗ /

sk : = l o e s e ( F 0 (xk )sk = −F (xk ) )

35
5 Nichtlineare Gleichungssysteme

/ ∗ Daempfung : ∗ /
10 λ := 1

l a b e l (∗)
y : = xk + λsk

15 i f kF (y)k < (1 − βλ)kF (xk )k then


xk+1 : = y
e l s e begin
λ
v e r k l e i n e r e ( λ ) /∗ z .B . λ = 2 ∗/
goto (∗)
20 end

k := k + 1
end

5.2 Fixpunkt–Iteration
Wir beginnen mit einer anderen Darstellung des Newton–Verfahrens:
xk+1 = φ(xk ) mit φ(x) = x − F 0 (x)−1 · F (x)
F (x∗ ) = 0 ⇔ φ(x∗ ) = x∗
Wir haben also das Nullstellen–Problem des Newton–Verfahrens in ein Fixpunkt–Problem umformuliert.

Sei nun φ : D → Rn , D ⊂ Rn eine beliebige Abbildung.


Das Fixpunkt–Problem besteht darin ein x∗ ∈ D derart zu finden, dass
φ(x∗ ) = x∗
Wir bezeichnen folgende Vorschrift als Fixpunkt–Iteration:
xk+1 = φ(xk ) k = 0, 1, . . . mit x0 ∈ D (5-vi)
Lemma 5.2. Sei φ stetig und {xk } aus (5-vi) sei konvergent gegen ξ. Dann gilt:
φ(ξ) = ξ

Beweis:
ξ = lim xk = lim xk+1 = lim φ(xk ) = φ( lim xk ) = φ(ξ)
k→∞ k→∞ k→∞ k→∞

Beachte: Die Stetigkeit von φ hat uns bei der Umformung das Hereinziehen“ des Limes ermöglicht. ¤

Wann konvergiert aber nun die Iteration (5-vi)?
Um diese Frage beantworten zu können, führen wir zuerst einen Begriff von entscheidender Bedeutung
ein:
Definition 5.1. Eine Funktion g : D → Rn , D ⊂ Rn heißt Kontraktion bezüglich k · k, falls es ein
q ∈ [0, 1) gibt mit
kg(x) − g(y)k ≤ q · kx − yk für alle x, y ∈ D
d.h. der Abstand der Bilder ist um den Faktor q kleiner als der Abstand der Urbilder. In diesem Fall
heißt q Kontraktions–Zahl.
Beachte: Die Kontraktionseigenschaft hängt ganz entscheidend von der Norm k · k ab.

36
5.2 Fixpunkt–Iteration

Lemma 5.4. Sei D konvex und offen, sowie g : D → Rn stetig diffenrenzierbar. Ist

q := sup kg 0 (x)k < 1 (D ist der Abschluss von D)


x∈D

so ist g eine Kontraktion bezüglich k · k mit Kontraktionszahl q.

Beweis: Verwende den Mittelwertsatz. ¤

³ 1
´T
1
Beispiel 5.2. 1. Sei φ(x1 , x2 ) := e− 2 (x1 +x2 ) , 3 sin(x1 + x2 ) und k · k die Zeilensummennorm.
Dann ist
à ! µ ¶
∂φ1 ∂φ1 1 1
0 ∂x1 ∂x2 − 21 e− 2 (x1 +x2 ) − 12 e− 2 (x1 +x2 )
φ (x1 , x2 ) = ∂φ2 ∂φ2 = 1 1
∂x1 ∂x2 3 cos(x1 + x2 ) 3 cos(x1 + x2 )

und
© 1 2 ª
kφ0 (x1 , x2 )k∞ = max e− 2 (x1 +x2 ) , · | cos(x1 + x2 )|
|3 {z }
<1

Die Menge D := {x ∈ R2 | x1 + x2 > a > 0} ist konvex und offen.


½ ¾
0 −a 2
sup kφ (x1 , x2 )k∞ ≤ max e , 2 <1
x∈D 3
| {z }
=:q

⇒ φ : D → R2 ist Kontraktion bezüglich k · k∞

2. Beim Newton–Verfahren ist φ = x − F 0 (x)−1 · F (x).


n
X ¡ ¢
φi (x) = xi − (F 0 (x)−1 )ij · Fj (x)
j=1

Xn Xn
∂φi ∂ 0 −1 ∂Fj
= δik − F (x)ij · Fj (x) − F 0 (x)−1
ij · (x)
∂xk j=1
∂x k j=1
∂xk

Sei x∗ eine Nullstelle von F :

φ0 (x∗ ) = I − F 0 (x∗ )−1 · F 0 (x∗ ) = 0


| {z }
=I

Falls F stetig differenzierbar ist, dann ist φ eine Kontraktion in der Umgebung einer Nullstelle x ∗
von F .

Satz 5.5 (Banach’scher Fixpunkt–Satz). Sei D ⊂ Rn abgeschlossen und φ : D → D eine Kontrak-


tion bezüglich k · k mit Kontraktionszahl q. Dann

1. hat φ genau einen Fixpunkt x∗ ∈ D

2. konvergiert die Fixpunkt–Iteration (5-vi) gegen x∗ für jedes x0 ∈ D

37
5 Nichtlineare Gleichungssysteme

3. gelten folgende Abschätzungen:

qk
kx∗ − xk k ≤ · kx1 − x0 k a–priori–Abschätzung
1−q
q
kx∗ − xk k ≤ · kxk − xk−1 k a–posteriori–Abschätzung
1−q

Beweis: Wir beweisen nur die Eindeutigkeit in (1).


Annahme: Es gibt zwei Fixpunkte x∗ ∈ D und x ∈ D mit x∗ 6= x.

kx∗ − xk = kφ(x∗ ) − φ(x)k ≤ q · kx∗ − xk

⇒ 1 ≤ q à zu q < 1
¤
¡π 3π
¢
Beispiel 5.3. Finde x∗ ∈ 2, 2 mit tan x∗ = x∗ . Vergleiche dazu Abbildung 5.3.

f (x) = x

1 3
2π 2π

PSfrag replacements

Abbildung 5.3: Abbildung zu Beispiel 5.3

φ(x) = tan x φ0 (x) = 1 + tan 2


| {z x} ≥ 1
≥0

Idee: Formuliere das Problem mit φ−1 :

x = tan x ⇔ x = tan(x − π)
⇔ x = arctan x + π
£ ¤
Finde x∗ ∈ π2 , 3π
2 mit π + arctan x∗ = x∗ .

1
φ(x) = π + arctan x φ0 (x) =
1 + x2
| {z }
<1

38
5.2 Fixpunkt–Iteration

⇒ max |φ0 (x)| < 1


x∈[ π
2,

2 ]
⇒ φ ist Kontraktion
Um den Banachschen Fixpunktsatz anwenden zu können, müssen wir nun noch zeigen, dass φ eine
Selbstabbildung ist.
h π π i · π 3π ¸
φ(R) = − + π, +π = ,
2 2 2 2
µ· ¸¶ · ¸
π 3π π 3π
⇒ φ , ⊂ ,
2 2 2 2
Die Vorraussetzungen des Banachschen Fixpunktsatzes sind also erfüllt

x0 = π x3 = 4.4932
x1 = φ(x0 ) = π + arctan(π) = 4.4042 x4 = 4.4934
x2 = 4.4891

Satz 5.6 (Lokaler Konvergenzsatz). Die Funktion φ : Rn → Rn sei stetig differenzierbar und habe
einen Fixpunkt x∗ mit

kφ0 (x∗ )k < 1

Dann gibt es eine abgeschlossenen Umgebung D von x∗ , in der gilt:

(a) φ ist eine Kontraktion


(b) φ(D) ⊂ D

d.h. die Fixpunkt–Iteration (5-vi) konvergiert für jedes x0 ∈ D gegen x∗ .

Bemerkung: Mit diesem Satz kann man die lokale Konvergenz des Newton–Verfahrens zeigen:

φ(x) = x − F 0 (x)−1 · F (x)

x∗ Nullstelle von F ⇒ kφ0 (x∗ )k = 0

Beweis:

(a) Die Funktion x 7→ kφ0 (x)k ist stetig.

⇒ ∃δ > 0 : kφ0 (x)k ≤ q < 1 für alle x ∈ D := {x ∈ Rn | kx − x∗ k ≤ δ}

⇒ φ ist Kontraktion
5.4

(b) Sei y ∈ D. Zu zeigen: φ(y) ∈ D (D wie oben).

kφ(y) − x∗ k = kφ(y) − φ(x∗ )k ≤ q · ky − x∗ k ≤ q ·δ < δ


| {z } |{z}
≤δ <1

⇒ φ(y) ∈ D
⇒ φ(D) ⊂ D

39
5 Nichtlineare Gleichungssysteme

40
6 Interpolation und Approximation
Uns liegt folgende Situation vor:

Von der Funktion f : R → R sind nur n diskrete Funktionswerte f (ti ) und eventuell noch
die zugehörigen Ableitungen f (j) (ti ) bekannt für ti ∈ R, i = 0, . . . , n.

Es stellt sich nun die Frage nach einer vernünftigen“ Näherung an f (t) für t 6∈ {t0 , . . . , tn }.

Aufgabe: Konstruiere eine möglichst einfache Funktion ϕ : R → R, die
ϕ(j) (ti ) = f (j) (ti ) (Interpolation)
oder
kϕ − f k ist klein“ (Approximation)

erfüllt. Dabei bedeutet möglichst einfach“, dass die Funktion ohne Mühe auf einem Rechner ausführbar

ist, z.B. eine Linearkombination von (stückweisen) Polynomen, ein trigonometrisches Polynom, eine
Exponentialfunktion oder eine rationale Funktion. Zur Veranschaulichung des Unterschiedes zwischen
Approximations– und Interpolations–Eigenschaft vergleiche auch Abbildung 6.1.

PSfrag replacements PSfrag replacements

− π2 − π2
π π
2 t0 t1 t2 t3 t4 2 t0 t1 t2 t3 t4

(a) Interpolation (b) Approximation

Abbildung 6.1: Der Verlauf von f ist gestrichelt dargestellt. t0 , . . . , t4 und die dazugehörigen
Funktionswerte sind bekannt.

Bevor wir weitere Begriffe einführen und uns der eben gestellten Aufgabe mathematisch nähern, sei auf
den starken Praxisbezug dieser Problemstellung hingewiesen, vor allem in den Bereichen

• der Logarithmentafeln (Berechnung von zusätzlichen Zwischenwerten – eher von historischem In-
teresse)
• der Computergraphik (Repräsentation geometrischer Objekte im Rechner)
• des CAD und CAM.

Wir nennen

• ti Knoten oder Stützstellen


• f (j) (ti ) Stützwerte.

Im Folgenden betrachten wir nur den Fall j = 0.

41
6 Interpolation und Approximation

6.1 Polynom–Interpolation
Gegeben:

fi = f (ti ), i = 0, . . . , n mit t 0 < t1 < · · · < t n

Gesucht:

P ∈ Πn mit P (ti ) = f (ti ) i = 0, . . . , n

Satz 6.1. Seien (ti , fi ) ∈ R2 , i = 0, . . . , n mit ti 6= tj für i 6= j. Dann gibt es genau ein Polynom

P = P (f | t0 , . . . , tn ) ∈ Πn mit P (ti ) = fi , i = 0, . . . , n

Beweis:

1. Eindeutigkeit: Seien P, Q ∈ Πn mit P (ti ) = fi = Q(ti ), i = 0, . . . , n.

⇒ ∆ := P − Q ∈ Πn und ∆(ti ) = 0, i = 0, . . . , n

∆ ist also ein Polynom n–ten Grades hat aber n + 1 Nullstellen.

⇒ ∆=0

2. Existenz:

Πn = spann{1, t, . . . , tn } (monomiale Basis)

⇒ P (t) = an tn + · · · + a1 t1 + a0 1
Wir zeigen nun, dass an bis a0 existieren.

P (ti ) = fi , i = 0, . . . , n
    
1 t0 t20 · · · tn0 a0 f0
1 t1 t21 · · · tn1   a1   f 1 
    
⇔ . ..   ..  =  .. 
 .. .  .   . 
1 tn t2n · · · tnn an fn
| {z }
=:Vn ∈R(n+1,n+1)

Vn heißt Vandermondsche–Matrix. Aus (a) folgt N (Vn ) = {0}, d.h. Vn ist injektiv

⇒ Vn−1 existiert

⇒ (a0 , . . . , an )T = Vn−1 · (f0 , . . . , fn )T

¤
Die Bestimmung von P (f | t0 , . . . , tn ) aus obigem Schema ist jedoch zu aufwendig. Ein alternativer
Ansatz zur Darstellung des Interpolationspolynoms besteht in der Verwendung einer anderen Basis –
der sogenannten Langrange–Basis {Ln,k }0≤k≤n :

Yn
t − tj
Πn = spann{Ln,0 , . . . , Ln,n } mit Ln,k (t) :=
j=0
t k − tj
j6=k

42
6.1 Polynom–Interpolation

Dann ist Ln,k ein Polynom n–ten Grades mit der Interpolationseigenschaft
(
1 für k = i
Ln,k (ti ) =
0 sonst

Das Interpolationspolynom lässt sich nun wie folgt als Linearkombination der Langrange–Basis schrei-
ben:
n
X
P = P (f | t0 , . . . , tn ) = fk Ln,k
k=0

denn es gilt
n
X
P (ti ) = fk Ln,k (ti ) = fi 0≤i≤n
k=0

d.h. die Interpolationseigenschaft ist erfüllt.


Die direkte Auswertung dieses Polynoms an beliebigen Stellen t 6= ti ist jedoch recht aufwendig. Das
folgende Lemma verhilft uns statt dessen zu einer rekursiven Vorschrift, die eine effiziente Berechnung
eines solchen Wertes P (t) erlaubt.

Lemma 6.2 (Lemma von Aitken). Seien (ti , fi ) ∈ R2 mit t0 < t1 < · · · < tn . Dann gilt:

(t0 − t)P (f | t1 , . . . , tn )(t) − (tn − t)P (f | t0 , . . . , tn−1 )(t)


P (f | t0 , . . . , tn )(t) =
t0 − t n
Beachte: P (f | t1 , . . . , tn ) und P (f | t0 , . . . , tn−1 ) sind Polynome (n − 1)–ten Grades; wir haben damit
die Auswertung eines Polynoms n–ten Grades auf die Auswertung zweier Polynome (n − 1)–ten Grades
zurückgeführt. Dies lässt sich wie bereits angedeutet rekursiv fortsetzen.

Beweis: Um die Übersichtlichkeit zu verbessern definieren wir zunächst


(t0 − t)P (f | t1 , . . . , tn )(t) − (tn − t)P (f | t0 , . . . , tn−1 )(t)
φ :=
t0 − t n
Offensichtlich ist φ ∈ Πn , d.h. ein Polynom vom Grad n.
−(tn − t0 )
φ(t0 ) = f0 = f 0
t0 − t n
Die Interpolationseigenschaft an f0 ist also erfüllt. Analog gilt:

φ(tn ) = fn

Sei nun 1 ≤ i ≤ n − 1
(t0 − ti )fi − (tn − ti )fi
φ(ti ) = = fi
t0 − t n
Nach Satz 6.1 (Eindeutigkeit des Interpolationspolynoms) folgt die Behauptung. ¤

Bevor wir das endgültige Schema angeben, führen wir noch eine vereinfachende Notation ein:

Sei t ∈ R fest. Pik := P (f | ti−k , . . . , ti )(t) i≥k

Es ist Pi0 := fi und Pn,n = P (f | t0 , . . . , tn )(t)

43
6 Interpolation und Approximation

Schema von Neville


Mit
Pi,0 = fi i = 0, . . . , n

(ti−k − t)Pi,k−1 − (ti − t)Pi−1,k−1


Pi,k =
ti−k − ti
t − ti
= Pi,k−1 + (Pi,k−1 − Pi−1,k−1 ) i≥k
ti − ti−k
erhalten wir folgendes Schema

P0,0
&
P1,0 → P1,1
.. ..
. .
Pn−1,0 → ··· → Pn−1,n−1
&
Pn,0 → ··· → Pn,n−1 → Pn,n

Beispiel 6.1. Interpolation des Sinus mit


(t0 , f0 ) = (55◦ , sin 55◦ ), (t1 , f1 ) = (60◦ , sin 60◦ ), (t2 , f2 ) = (65◦ , sin 65◦ )
Berechne P (f | t0 , t1 , t2 )(62◦ ):
ti sin ti

55◦ 0.8191520
&
60◦ 0.8660254→ 0.8847748
& &
65◦ 0.9063078 → 0.8821384 → 0.8829293
................................................................
& & &
70◦ 0.9396926 → 0.8862768 → 0.8829661 → 0.8829465
Das Schema von Neville erlaubt es uns auch nachträglich weitere Stützpunkte einzufügen (wie hier
– abgetrennt durch die gestrichelte Linie – geschehen), wobei das bisherige Schema davon unberührt
bleibt und ohne neu berechnet zu werden zur Bestimmung der zusätzlichen Werte benutzt werden kann.

Als nächstes wollen wir uns der Frage nach einer Fehlerabschätzung widmen, um damit zu überprüfen,
inwieweit die Polynominterpolation die Approximationseigenschaft (siehe Anfang dieses Kapitels) erfüllt.
Satz 6.3. Sei f ∈ C n+1 (a, b) und a = t0 < t1 < · · · < tn = b. Für t ∈ [a, b] existiert ein τ = τ (t) ∈ (a, b),
so dass
f (n+1) (τ )
f (t) − P (f | t0 , . . . , tn )(t) = · ω(t)
| {z } (n + 1)!
Interpolationsfehler

mit
n
Y
ω(t) = (t − tj ) Newton–Polynom
j=0

Beachte: der Interpolationsfehler ist bei den fi gleich 0, da ω(ti ) = 0.

44
6.2 Splines und Spline–Interpolation

Beweis: Sei t 6∈ {t0 , . . . , tn } (ansonsten ist der Fehler ja 0). Definiere

F (x) = f (x) − P (f | t0 , . . . , tn )(x) − K · ω(x)

dann ist F ∈ C n+1 . Sei K = K(t) so bestimmt, dass F (t) = 0.

⇒ F (ti ) = 0 i = 0, . . . , n und F (t) = 0

d.h. F hat n + 2 Nullstellen. ⇒ F 0 hat mindestens n + 1 Nullstellen (Satz von Rolle).


⇒ F 00 hat mindestens n Nullstellen.
..
.
⇒ F (n+1) hat mindestens eine Nullstelle in (a,b). Diese Nullstelle sei τ .
Wegen P (n+1) (f | t0 , . . . , tn ) ≡ 0 folgt

0 = F (n+1) (τ ) = f (n+1) (τ ) − K(n + 1)!

f (n+1) (τ )
⇒ K=
(n + 1)!
¤

Korollar 6.4. Für die Supremumsnorm kgk∞ = supa≤t≤b |g(t)| gilt

|f (n+1) (τ )|
kf − P (f | t0 , . . . , tn )k∞ ≤ sup · kωk∞
τ ∈[a,b] (n + 1)!

Für festes n und f hängt der Fehler nur noch von der Lage der Knoten ab.
Die Tschebyscheff–Knoten minimieren kωk∞ für ein festes n.

Die Frage nach der Approximationseigenschaft der Polynominterpolation muss negativ beantwortet wer-
den, denn es gilt folgender

(n) (n)
Satz 6.5 (Satz von Faber). Zu jeder Folge {t0 , . . . , tn }n∈N von Knoten in [a, b] existiert ein f ∈
C(a, b), so dass P (f | t0 , . . . , tn ) für n → ∞ nicht gleichmäßig konvergiert.

Abbildung 6.2 verdeutlicht dieses Ergebnis mit Hilfe eines Beispiels.

6.2 Splines und Spline–Interpolation


Wie wir gesehen haben ist die Polynominterpolation mit den Nachteilen

• starker Oszillation zwischen den Stützpunkten bei höher Knotenzahl und

• fehlender Konvergenz

behaftet. Wir wünschen uns jedoch eine interpolierende Kurve, die glatt und ohne starke Oszillation
durch die Stützpunkte verläuft. Die im folgenden beschriebene Spline–Interpolation erreicht dies durch
die Verwendung lokaler Polynome niedrigen Grades, die an den Stützpunkten miteinander verheftet“

werden.

45
6 Interpolation und Approximation

2
1

0.8 1.5
PSfrag replacements

PSfrag replacements 0.6 0.2


0.4 1

0.4 0.6
0.8
0.5
0.2

−4 −2 0 2 4
−4 −2 0 2 4

(a) 6 Knoten – offensichtlich noch zu ungenau (b) 11 Knoten – gute Approximation um 0; starke Oszilla-
tion an den Rändern

Abbildung 6.2: Dargestellt sind die Interpolationspolynome für 6 bzw 11 äquidistante Knoten der
1
Funktion f (x) = 1+x 2 im Intervall [−5, 5].

Definition 6.1. Sei ∆ = {t0 , . . . , tl+1 } ein Gitter von l + 2 Knoten mit a = t0 < t1 < · · · < tl+1 = b.
Ein Spline der Ordnung k mit k ∈ N≥2 bezüglich ∆ ist eine Funktion s ∈ C k−2 (a, b) mit

s|[ti ,ti+1 ] = pi i = 0, . . . , l

wobei pi ∈ Πk−1 . Außerdem nennen wir Sk,∆ den Raum aller Splines der Ordnung k bezüglich ∆.

Sk,∆ ist ein reeller Vektorraum. Wir begeben uns also zunächst auf die Suche nach einer Basis. Es gilt
insbesondere

Πk−1 |[a,b] ⊂ Sk,∆ für jede Knotenmenge ∆


PSfrag replacements
Außerdem enthält Sk,∆ noch die abgebrochenen Potenzen vom Grad k − 1
0
( 0.2 k−1
k−1 (t − 0.4
ti ) für t ≥ ti
(t − ti )+ = 0.5
0 sonst
0.6
0.8
1
1.5

2
4
−2
−4

t3
t4 t0 t1 t2

Abbildung 6.3: Abgebrochene Potenzen. Beachte: die gestrichelte Linie ist nicht Element des S k,∆ .

Satz 6.6. Die Monome und abgebrochenen Potenzen


k−1 k−1
B = {1, t, . . . , tk−1 , (t − t1 )+ , . . . , (t − tl )+ }

46
6.2 Splines und Spline–Interpolation

bilden eine Basis von Sk,∆ . Insbesondere gilt

dim Sk,∆ = k + l

Diese Basis ist jedoch für numerische Anwendungen nicht geeignet, da die Basiselemente bei eng ge-
legenen Knoten fast linear abhängig sind, was in Zusammenhang mit Rundungsfehlern ein Problem
darstellt.

Spline–Interpolation
Interpoliere f : R → R bezüglich der Knotenmenge ∆ = {t0 , . . . , tl+1 } durch einen Spline aus Sk,∆ .

Für k = 2 spricht man von linearen Splines. Lineare Splines sind stetige und in den Intervallen [t i , ti+1 ]
linear verlaufende Funktionen. Für S2,∆ gilt

dim S2,∆
PSfrag replacements = l + 2 = Anzahl der Knoten
0
Wir finden
0.2 also genau einen Spline in S2,∆ der (ti , fi ), i = 0, . . . , l + 1 interpoliert.
0.4
0.5
0.6
0.8
1
1.5

2
4 Abbildung 6.4: Beispiel für Interpo-
−2
−4
lation durch lineare Splines. Deut-
lich sind die Knicke“ bei den Kno-

ten zu erkennen.

t0 t1 t2 t3 t4

In vielen Anwendungen, insbesondere grafischen (CAD, CAM), spielen kubische Splines der Ordnung
4 eine gewichtigere Rolle, da das menschliche Auge Unstetigkeiten in der zweiten Ableitung (also
Krümmung) noch wahrnimmt, weshalb zweimal stetig differenzierbare Funktionen als glatt empfunden
werden.

Für S4,∆ gilt

dim S4,∆ − Anzahl Knoten = l + 4 − (l + 2)


=2

d.h. zwei Freiheitsgrade bleiben durch die Interpolationsbedingungen unbestimmt, was zusätzliche Be-
dingungen nötig macht. Dies muss aber keinesfalls als Problem aufgefasst werden; vielmehr erhalten wir
so die Möglichkeit weitere Wünsche bezüglich des Aussehens der Spline–Interpolation zu äußern.

Definition 6.2. Sei y : [a, b] → R mit y ∈ C 2 . Der Wert

y 00 (t)
κ(t) := 3
(1 + y 0 (t)2 ) 2

heißt Krümmung von y in t.

47
6 Interpolation und Approximation

PSfrag replacements
tj y(x) = ln(x)
tj−1
tj+1
tj+2 r
Mj M
Mj−1
Mj+1
Mj+2
s00

Abbildung 6.5: Schmiegekreis an den Graph von ln(x)

1
Dabei ist κ(t) gerade der Radius des Krümmungskreises (Schmiegekreises) im Punkt (t, y(t)) (ver-
gleiche Abbildung 6.5). Je kleiner κ(t) desto gerader verläuft die Funktion. Für eine Gerade ist der
Krümmungsradius gerade ∞ und entsprechend κ(t) ≡ 0.
Zur Vereinfachung betrachten wir jedoch für |y 0 (t)| ¿ 1 die Näherung
y 00 (t)
κ(t) = 3 ≈ y 00 (t)
(1 + y 0 (t)2 ) 2
Beachte: Unter der genannten Vorraussetzung |y 0 (t)| ¿ 1 ist der Nenner des Bruches fast 1, was diese
Näherung rechtfertigt. Damit definiert
Zb
ky 00 k2L2 = y 00 (t)2 dt
a

ein Maß für die gesamte Krümmung von y über [a, b].
Satz 6.7. s ∈ S4,∆ interpoliere f in den Knoten ∆ = {t0 , . . . , tl+1 } . Sei y ∈ C 2 (a, b) eine beliebige
andere interpolierende Funktion von f bezüglich ∆, so dass
t=b
[s00 (t) · (y 0 (t) − s0 (t))]t=a = 0
ist. Dann gilt:
ks00 kL2 < ky 00 kL2
d.h. der interpolierende Spline der Ordnung 4 ist hinsichtlich der Krümmung minimal.
Beweis:
ky 00 k2L2 = ks00 + (y 00 − s00 )k2L2
Zb
= ks00 k2L2 +2 s00 (y 00 − s00 ) dt + ky 00 − s00 k2L2
| {z }
a >0
| {z }
=A
> ks00 k2L2 falls A = 0

48
6.2 Splines und Spline–Interpolation

Der Rest des Beweises besteht nun darin zu zeigen, dass tatsächlich A = 0 gilt. Mit partieller Integration
erhalten wir
Zb
£ 00 0 0
¤t=b
A = s (y − s ) t=a
− s000 (y 0 − s0 ) dt
| {z }
=0 nach Vor. a

s000 ist stückweise konstant auf den Intervallen (ti , ti+1 ) für i = 0, . . . , l:

s000 (t) = di für alle t ∈ (ti , ti+1 ), i = 0, . . . , l

tZi+1
l
X
⇒ A=− di (y − s)0 dt
i=0 ti
l
X £ ¤t=ti+i
=− di y(t) − s(t) t=t
i
i=0
=0

denn y(ti ) = f (ti ) = s(ti ), i = 0, . . . , l + 1 (y und s interpolieren f !) ¤

Korollar 6.8. s ∈ S4,∆ interpoliere f bezüglich ∆ = {t0 , . . . , tl+1 }. Außerdem erfülle s noch eine der
der folgenden Randbedingungen:

(i) s0 (a) = f 0 (a), s0 (b) = f 0 (b) (vollständige Splineinterpolation)


(ii) s00 (a) = s00 (b) = 0 (natürliche Splineinterpolation)
(iii) s0 (a) = s0 (b), s00 (a) = s00 (b), falls f (b − a)–periodisch ist (periodische Splineinterpolation)

Dann ist s eindeutig bestimmt. Jede andere interpolierende Funktion y ∈ C 2 (a, b), die im Falle von (i)
und (ii) denselben Randbedingungen genügt, erfüllt

ks00 kL2 < ky 00 kL2

Mit den zusätzlichen Randbedingungen haben wir also insgesamt l + 4 Forderungen an s, was genau der
Dimension des Spline–Raumes S4,∆ entspricht.

Zur Approximationseigenschaft der vollständigen Splineinterpolation gibt der folgende Satz Auskunft.
Satz 6.9. Sei I4 f ∈ S4,∆ der vollständig interpolierende Spline der Funktion f ∈ C 4 (a, b) bezüglich
∆ = {t0 , . . . , tl+1 }. Dann gilt:
5 4 (4)
kI4 f − f k∞ ≤ h kf k∞
384
mit h = max |ti+1 − ti | (maximale Schrittweite). Die Fehlerabschätzung ist unabhängig von der Lage
0≤i≤l
der Knoten (im Gegensatz zur Splineinterpolation) und es gilt:
h→0
I4 f −−−→ f

Ein Beispiel für die Konvergenzeigenschaft findet man in Abbildung 6.8 am Ende dieses Kapitels. Inter-
poliert wurde dabei dieselbe Funktion wir in Abbildung 6.2.

49
6 Interpolation und Approximation

Berechnung der interpolierenden Spline–Funktion


hj+1 := tj+1 − tj , j = 0, . . . , l
Mj := s00 (tj ), j = 0, . . . , l + 1
Wir nennen Mj die Momente des Splines. Im folgenden werden wir zeigen, wie man den Spline aus den
Momenten rekonstruieren kann.
¯ ¯
sj = s¯[t ,t ] ∈ Π3 ⇒ s00j = s00 ¯[t ,t ] ∈ Π1
j j+1 j j+1

s00j ist also eine affin lineare Funktion.

PSfrag replacements

Mj−1
Mj+1
s00

Mj Mj+2

tj−1 tj tj+1 tj+2

Abbildung 6.6: Momente des Splines

tj+1 − t t − tj
⇒ s00j (t) = Mj · + Mj+1 ·
hj+1 hj+1
Wir integrieren die lineare Funktion s00 und erhalten
(tj+1 − t)2 (t − tj )2
s0j (t) = −Mj + Mj+1 · + Aj (6-i)
2hj+1 2hj+1
und nach erneuter Integration
(tj+1 − t)3 (t − tj )3
sj (t) = Mj + Mj+1 · + Aj (t − tj ) + Bj
6hj+1 6hj+1
mit den Integrationskonstanten Aj und Bj . Durch einsetzen von tj und tj+1 in die Funktion sj erhält
man die folgenden Bedingungen
h2j+1
fj = s(tj ) = Mj · + Bj j = 0, . . . , l
6
sowie
h2j+1
fj+1 = s(tj+1 ) = Mj+1 · + Aj hj+1 + Bj j = 0, . . . , l
6
Wir lösen die erste Gleichung nach Bj auf, setzen das Ergebnis dann in die zweite Gleichung ein und
erhalten so
h2j+1 fj+1 − fj hj+1
Bj = f j − Mj und Aj = − · (Mj+1 − Mj ) (6-ii)
6 hj+1 6

50
6.2 Splines und Spline–Interpolation

Andererseits hat sj die Darstellung

sj (t) = αj + βj (t − tj ) + γj (t − tj )2 + δj (t − tj )3 (Taylor–Darstellung)

mit

αj = sj (tj ) = fj

hj+1 fj+1 − fj 2Mj + Mj+1


βj = s0j (tj ) = −Mj + Aj = − hj+1
2 hj+1 6
1 00 1
γj = s (tj ) = Mj
2 j 2
1 1 1 Mj+1 − Mj
δj = s000 (tj ) = (s00 )0 (tj ) =
6 j 6 6 hj+1
Damit ist s durch Mj , fj und hj vollständig ausgedrückt. Die Darstellung eines Splines erfolgt im
Rechner übrigens üblicherweise durch die Speicherung der Werte αj bis δj .
Die Momente Mj erhalten wir aus folgender Bedingung:

s0j−1 (tj ) = s0j (tj ) (6-iii)

die sich aus der Forderung, dass die Spline–Funktion an den Verheftungsstellen“ stetig differenzierbar

sein muss, ergibt (vergleiche auch Abbildung 6.7).

stetig differenzierbar

PSfrag replacements
sj−1
sj

tj−1 tj tj+1

Abbildung 6.7: Stetig differenzierbare Verheftung“ von sj−1 und sj .


Zunächst erinnern wir uns wieder an (6-i) und (6-ii) und erhalten für die s0j die Darstellung

(tj+1 − t)2 (t − tj )2 fj+1 − fj hj+1


s0j (t) = −Mj · + Mj+1 · + − (Mj+1 − Mj )
2hj+1 2hj+1 hj+1 6
| {z }
Aj

also speziell für s0j und s0j−1 an der Stelle tj

fj − fj−1 hj hj
s0j−1 (tj ) = + Mj + Mj−1 und
hj 3 6
fj+1 − fj hj+1 hj+1
s0j (tj ) = − Mj − Mj+1
hj+1 3 6

51
6 Interpolation und Approximation

welche wir nach (6-iii) gleichsetzen und umformen:


hj hj + hj+1 hj+1 fj+1 − fj fj − fj−1
Mj−1 + Mj + Mj+1 = − j = 1, . . . , l (6-iv)
6 3 6 hj+1 hj
Somit haben wir für die l + 2 Unbekannten M0 , . . . , Ml+1 insgesamt l Gleichungen zur Verfügung. Je
zwei weitere Bedingungen erhalten wir aus Korollar 6.8 (i) bis (iii).

zu (i): vollständige Splineinterpolation

s0 (a) = f 0 (a) =: f00 und s0 (b) = f 0 (b) =: fl+1


0

Damit erhalten wir zwei zusätzliche Gleichungen:


h1 f1 − f 0 h1 !
s00 (a) = −M0 + − (M1 − M0 ) = f00
2 h1 6
und analog:
hl+1 hl+1 0 fl+1 − fl
Ml + Ml+1 = fl+1 −
6 3 hl+1

zu (ii): natürliche Splineinterpolation

s00 (a) = s00 (b) = 0

⇒ M0 = Ml+1 = 0

Führen wir die Abkürzungen


hj+1 hj
λj = und µj = 1 − λj =
hj + hj+1 hj + hj+1
sowie
µ ¶
6 fj+1 − fj fj − fj−1
dj = − j = 1, . . . , l
hj + hj+1 hj+1 hj
ein, so erhalten wir für (6-iv) die übersichtlichere Darstellung

µj Mj−1 + 2Mj + λj Mj+1 = dj j = 1, . . . , l

Definieren wir zusätzlich im Falle der Randbedingung (i)


µ ¶ µ ¶
6 f1 − f 0 0 6 0 fl+1 − fl
λ0 = 1, d0 = − f0 , µl+1 = 1, dl+1 = fl+1 −
h1 h1 hl+1 hl+1
und im Falle der Randbedingung (ii)

λ0 = d0 = 0, µl+1 = dl+1 = 0

dann erhalten wir das Gleichungssystem


     
2 λ0 0 ··· 0 M0 d0
 . .. . .. .. ..   ..   .. 
µ 1 . .    
   .   . 
   .   . 
 0 ... ... ..
. 0 · .  =  . 
   .   . 
. .. .. ..   .   . 
 .. . . . λl   ..   .. 
0 ··· 0 µl+1 2 Ml+1 dl+1
| {z }
=Al

52
6.3 Freiformkurven: Bezier–Technik

Al ist regulär (da die kubische Spline–Interpolation mit Randbedingungen (i) oder (ii) eindeutig ist).
Außerdem gilt

λi ≥ 0, µi ≥ 0, λi + µi = 1

⇒ A ist diagonaldominant

⇒ alle Eigenwerte sind echt größer 0

⇒ die LR–Zerlegung existiert und ist stabil

Die letzte Feststellung lässt sich gewinnbringend verwenden, indem man im voraus die LR–Zerlegung
von Al berechnet und dann nur noch die rechte
PSfrag replacements Seite ändern
PSfrag replacements
t
muss.
j
tj
tj−1
tj−1
tj+1
tj+1
tj+2
tj+2
Mj
Mj
Mj−1
Mj−1
1 Mj+1 1
Mj+1
Mj+2
Mj+2
s00 0.8
s00
0.8 M
M
r
r y(x) = ln(x)
y(x) = ln(x) 0.6
0.6
0.4
0.4
0.2

0.2
−4 −2 0 2 4

−4 −2 0 2 4
−0.2
−0.2

(a) 5 Knoten – offensichtlich noch zu ungenau (b) 11 Knoten – kein Unterschied mehr zwischen Spline und
f zu erkennen

Abbildung 6.8: Dargestellt sind die interpolierenden Splinefunktionen für 5 bzw 11 äquidistante
1
Knoten der Funktion f (x) = 1+x 2 im Intervall [−5, 5].

6.3 Freiformkurven: Bezier–Technik


Haben wir uns bei den bisher vorgestellten Verfahren vor allem an mathematischen Forderungen wie der
Interpolationseigenschaft oder der Minimumseigenschaft hinsichtlich der Krümmung orientiert, so stehen
im Mittelpunkt dieses Paragraphen vor allem geometrische Aspekte. Leitfaden wird dabei die Frage sein,
in welcher Weise welche Parameter Form und Ästhetik der entstehenden Kurven beeinflussen können.
So ist auch der Erfinder“ der hier vorgestellten Bezier–Technik ein Ingenieur aus der Automobilindu-

strie, der sich mit computergestütztem Autodesign befasste.

Definition 6.3. Wir nennen eine Funktion P : [a, b] → Rd polynomiale Kurve vom Grade n, falls P
von der Form
n
X
P (t) = a i ti
i=0

ist. Πdn bezeichnet die Menge aller polynomialen Kurven in Rd vom Grade n.

53
6 Interpolation und Approximation

Bernstein–Polynome
Wir definieren zunächst auf einem Intervall [a, b] eine Abbildung ϕ durch:
(
[a, b] → [0, 1]
ϕ := t−a
t 7→ ϕ(t) := b−a

ϕ bildet also das Intervall [a, b] bijektiv auf [0, 1] ab.


Wir benötigen ϕ für folgende

Definition 6.4. Das i–te Bernstein–Polynom Bin ∈ Π1n bezüglich [0, 1] ist definiert durch
PSfrag replacements
µ ¶ tj
n n tj−1
Bi (λ) = (1 − λ)n−i λi i = 0, . . . , n
i tj+1
tj+2
Mj Bernstein–Polynom Bin (t; a, b) bezüglich dem Intervall [a, b] durch
und allgemein das i–te
Mj−1
Bin (t; a, b) := Bin (ϕ(t))
Mj+1
Mj+2 µ ¶
1 n
= s00 n
(t − a)i (b − t)n−i
(bM− a) i
r
y(x) = ln(x)
Es gilt
n µ ¶
X n
1 = ((1 − λ) + λ)n = (1 − λ)n−i λi
i=0
i
n
X
= Bin (λ) für alle λ ∈ R
2
i=0
4
d.h. die Bernstein–Polynome bilden eine Zerlegung der 1 wie auch in Abbildung 6.9 zu erkennen ist.
−2
−4
−0.2
1

0.8
B04 B44
b0
b10.6
b2
b3 B14 B34
B24
P (t)0.4
b10 (t)
b11 (t)
b12 (t)0.2
b20 (t)
b21 (t) 0
b30 (t) 0.2 0.4 0.6 0.8 1

Abbildung 6.9: Bernstein Polynome für n = 4

Weiterhin erkennen wir in Abbildung 6.9 eine Symmetrie zwischen B04 und B44 sowie zwischen B14 und
B34 ; diese und weitere Eigenschaften nennt der folgende

54
6.3 Freiformkurven: Bezier–Technik

Satz 6.11. Es gelten

1. λ = 0 ist i–fache Nullstelle von Bin .


2. λ = 1 ist (n − i)–fache Nullstelle von Bin .
3. Bin (λ) = Bn−i
n
(1 − λ)

4. (1 − λ)B0n = B0n+1 und λBnn = Bn+1n+1

Pn
5. Bin (λ) ≥ 0 für λ ∈ [0, 1] und i=0 Bin (λ) = 1 für alle λ ∈ R
i
6. Bin hat in [0, 1] genau ein Maximum und zwar bei λ = n
n−1
7. Bin (λ) = λBi−1 (λ) + (1 − λ)Bin−1 (λ) i = 1, . . . , n für alle λ ∈ R
8. {B0n , . . . , Bnn } ist Basis von Π1n

Analoge Aussagen gelten für Bin (t; a, b).

Wir wir gesehen haben, bilden die Bernstein–Polynome eine Basis von Πdn , d.h. jedes P ∈ Πdn lässt
sich darstellen als
n
X
P (t) = bi Bin (t; a, b) b i ∈ Rd
i=0

Die Koeffizienten bi heißen Kontroll– oder Bezier–Punkte von P und der Streckenzug b0 , . . . , bn Bezier–
Polygon.
Die Besonderheit der Bezier–Darstellung liegt nun darin, dass die Kontrollpunkte b i die geometrische
Gestalt der Kurve bestimmen. Wir wollen im folgenden klären auf welche Art und Weise dies geschieht.

Definition 6.5. Eine Menge K ⊂ Rd heißt konvex, falls gilt


x, y ∈ K ⇒ λx + (1 − λ)y ∈ K für alle λ ∈ [0, 1]
d.h. mit zwei Punkten x, y ∈ K liegt auch deren Verbindungsstrecke wieder in K.
Sei A ⊂ Rd beliebig. Die konvexe Hülle
\
co(A) := {B ∈ Rd | B ist konvex und A ⊂ B}

von A ist die kleinste konvexe Menge, die A enthält.

Pn
Satz 6.12. Sei P ∈ Πdn ein Polynom in Bezier–Darstellung P = n
i=0 bi Bi . Dann gilt
P (t) ∈ co ({b0 , . . . , bn }) für alle t ∈ [a, b]
d.h. P ([a, b]) liegt vollständig in der konvexen Hülle der Kontroll–Punkte.

Mit diesem Satz haben wir also erste Erkenntnisse darüber gewonnen, wie das Aussehen der Bezier–
Kurve von den Kontroll–Punkten bestimmt wird. Weitere Auskunft wird uns der folgende Satz geben,
wofür wir aber zunächst eine zusätzliche Definition benötigen.
Pn n
Definition 6.6. Zu P = i=0 bi Bi definieren wir die Teilpolynome bki ∈ Πdk durch
k
X
bki (t; a, b) := bi+j Bjk (t; a, b)
j=0

d.h. bki wird durch die Bezier–Punkte bi , . . . , bi+k bestimmt.

55
6 Interpolation und Approximation

Pn n
Satz 6.14. Sei P = i=0 bi Bi ein Polynom in Bezier–Darstellung. Dann gilt für die k–te Ableitung
von P :
1 n!
P (k) (t) = · ∆k bn−k
0 (t) k = 0, . . . , n
(b − a)k (n − k)!

mit

∆bki := bki+1 − bki , ∆k = ∆(∆k−1 )

also beispielsweise

∆2 bki = ∆(bki+1 − bki ) = bki+2 − 2bki+1 + bki

Wir können also die Ableitung mittels Differenzen berechnen.

Speziell ist die Ableitung an den Randpunkten gegeben durch


1 n!
P (k) (a) = · ∆k b0
(b − a)k (n − k)!

1 n!
P (k) (b) = k
· ∆k bn−k
(b − a) (n − k)!
und damit bis zur ersten Ableitung

P (a) = b0 P (b) = bn
n n
P 0 (a) = (b1 − b0 ) P 0 (b) = (bn − bn−1 )
b−a b−a

Stellen wir unsere bisherigen Kenntnisse über die Gestalt der Bezier–Kurve zusammen:

1. Nach Satz 6.11 fallen offensichtlich Anfangs– und Endpunkt der Bezier–Kurve und des Bezier–
Polygons zusammen.

2. In Satz 6.12 haben wir gesehen, dass die Bezier–Kurve vollständtig in der konvexen Hülle der
Kontroll–Punkte liegt.

3. Und schließlich gab uns Satz 6.14 und die sich daraus ergebenden Folgerungen den Hinweis auf
das Zusammenfallen der Tangenten mit den Randstrecken in den Randpunkten.

Nun wollen wir aber auch endlich einen Blick auf eine echte“ Bezier–Kurve werfen:

56
0.6
0.8
1
2
4 6.3 Freiformkurven: Bezier–Technik

−2
−4
−0.2
B04 b1
B14
PSfrag replacements
Btj24
B34
tj−1
B44
tj+1
tj+2
Mj
Mj−1
b3
Mj+1
Mj+2 b0 P (t)
00
s
b10M(t)
b11 (t)
r
y(x) = ln(x)
b12 (t)
b20 (t)
0
20.2
(t)
b10.4
b300.6
(t) b2
0.8
1
2 Abbildung 6.10: Bezier–Kurve mit Bezier–Polynom
4

−2
−4
−0.2
B04 b2
B14
B24 b11 (t)
B34
B44 b1
b21 (t)
b20 (t) b30 (t)
b12 (t)
b10 (t)
P (t)

b0 b3

Abbildung 6.11: Bezier–Kurve mit sämtlichen Teil–Polynomen

57
6 Interpolation und Approximation

Algorithmus von Casteljau


Der Algorithmus von Casteljau wird uns

1. eine schnelle Auswertung von P (t) und


2. eine Approximation von {P (t) | t ∈ [a, b]} durch Polygonzüge

ermöglichen. Die zweite Eigenschaft prädestiniert dieses Verfahren für den Computereinsatz, da sich so
die entstehende Kurve sehr effizient berechnen und darstellen lässt.

Lemma 6.15. Die Teilpolynome bki erfüllen

bki (t) = (1 − ϕ(t))bik−1 (t) + ϕ(t)bi+1


k−1
(t)

für k = 0, . . . n und i = 0, . . . , n − k.

Dies ist das Analogon zum Lemma von Aitken für Bezier–Polynome.
Wegen b0i (t) = bi können wir also P (t) aus {b0 , . . . , bn } nach folgendem Schema rekursiv berechnen:

bn = b0n
&
bn−1 = b0n−1 → b1n−1
.. ..
. .
b1 = b01 → ··· → bn−1
1
&
b0 = b00 → ··· → bn−1
0 → bn0
↓ ↓
P 0 (t) P (t)

Nach Satz 6.14 stellen die Zwischenprodukte“ bki die Ableitungen von P dar. In den Teilpolynomen

sind also tatsächlich sämtliche geometrischen Informationen zu P enthalten.

58
7 Diskrete Fouriertransformation
Die diskrete Fouriertransformation (DFT) Dn : Cn → Cn ist definiert durch
n−1
1X
(Dn f )j = fk ωn−jk
n
k=0

mit
µ ¶ µ ¶
i2π 2π 2π
ωn = e n = cos + i · sin n–te Einheitswurzel
n n
i2πj
ωnj = e n

Bemerkung: In diesem Abschnitt beginnt der Index von Matrizen und Vektoren bei 0.

Matrixdarstellung:
 
1 1 ··· 1
 −(n−1) 
1 1 ωn−1 ··· ωn 
Dn =  . .. .. 
n  .. . . 
−(n−1) −(n−1)(n−1)
1 ωn ··· ωn

Satz 7.1. Für die Matrixdarstellung der diskreten Fouriertransformation gilt die Beziehung

Dn−1 = nDn

Mit Satz 7.1 erhalten wir:


n−1
X
f = Dn−1 Dn f = (Dn f )j wj
j=0

wobei
³ ´T
wj = 1, ωnj , ωn2j , . . . , ωn(n−1)j ∈ Cn

Mit j nimmt die Anzahl der Oszillationen in wj zu, d.h. die Frequenz erhöht sich.

Interpretation:

(Dn f )j misst, wie stark die Schwingung wj in f enthalten ist.


Die diskrete Fourier Transformation führt eine Spektralanalyse durch. Sie ist zentrales Werk-
zeug für die moderne Kommunikation– und Nachrichtentechnik und kommt z.B. bei der
Bildkomprimierung (JPEG) zum Einsatz.

59
7 Diskrete Fouriertransformation

7.1 Fast Fourier–Transformation (FFT)


Eine direkte Auswertung von Dn f erfordert n2 komplexe Multiplikationen. Um diesen Aufwand zu
reduzieren faktorisieren wir Dn in

1
Dn = Ap · . . . · A1 PnT für n = 2p
n

hierbei ist Pn eine Permutation und Aj ∈ C(n,n) eine komplexe Matrix, in der genau zwei Einträge pro
Zeile nicht 0 sind – und davon wiederum ist einer genau 1. Daher müssen wir für die Auswertung von
Dn f über die Faktorisierung

n · log n = n · p

komplexe Multiplikationen durchführen.


Um uns für die nun folgenden Betrachtungen Schreibarbeit zu sparen definieren wir

fn = n · Dn
D

fn nun zunächst am Beispiel von n = 4:


Wir betrachten die Faktorisierung von D
   
1 1 1 1 1 0 0 0
   
f4 = 1 −i −1 i  , Π4 = 0 0 1 0
D 1 −1 1 −1 0 1 0 0 
1 i −1 −i 0 0 0 1

Π4 ist eine Permutation, die zuerst die geraden und dann die ungeraden Indizes anordnet.
 
1 1 1 1 µ ¶
 1 −1 −i i  1 1
f 
D 4 · Π4 =   f
außerdem D2 =
1 1 −1 −1  1 −1
1 −1 i −i

µ ¶ Ã !
I2 Ω2 f2
D O
f4 =
⇒ D · · ΠT4 (7-i)
I2 −Ω2 O f2
D
µ ¶
1 0
mit I2 = diag(1, . . . , 1) ∈ R(l,l) und Ω2 = = diag(1, ω4−1 ).
0 −i
fn durch D
Die allgemeine Version von (7-i) drückt D g n aus.
2

Πn : Cn → Cn , n = 2m

w = ΠTn · v ⇔ w = (v0 , v2 , . . . , vn−2 , v1 , v3 , . . . , vn−1 )T


³ ´T
−(m−1) i2π
Satz 7.2. Sei n = 2m und Ωm = diag 1, ωn−1 , ωn−2 , . . . , ωn wobei ωn = e n . Dann gilt

µ ¶ Ã !
Im Ωm g
D O
fn =
D · m
· ΠTn
Im −Ωm O g
Dm

µ ¶
Im Ωm
Die Matrizen Bn := heißen Butterfly–Matrizen“. Dieser ungewöhnliche Name resultiert
Im −Ωm ”
aus dem Bild, das sich bei Multiplikation einer solchen Matrix mit einem Vektor ergibt.

60
7.1 Fast Fourier–Transformation (FFT)

(a) Die acht Elemente des Vektors (b) Ein Schmetterling

Abbildung 7.1: Ergebnis der Anwendung von B8

Die oberen Punkte sollen von links nach rechts gelesen die Elemente des Vektors vor und die unteren
Punkte die Elemente des Vektors nach der Multiplikation mit einer solchen Butterfly–Matrix darstellen.
Die Pfeile geben an, aus welchen Elementen des Orginal–Vektors die jeweiligen Elemente des Ergebnis–
Vektors gewonnen werden. Mit etwas Fantasie erkennt man die rechts abgebildete Figur, die einem
Schmetterling ähnelt.

Satz 7.3 (Cooley–Tukey Basis 2 Faktorisierung). Sei n = 2p , p ∈ N. Dann ist


fn = A(p) · . . . · A(p) · P T
D (7-ii)
p 1 n

mit
 
µ ¶ B 2j
P n2 O (p)  .. 
P2 = I 2 , P n = Π n · und Aj = blockdiag(B2j , . . . , B2j ) =  . 
O P n2 | {z }
2p−j Blöcke B 2j
mit den Butterfly–Matrizen B2j für j = 1, . . . , p.
Dies ist also gerade die rekursive Anwendung von Satz 7.2.

Eine Realisierung von Dn f basierend auf der Faktorisierung (7-ii) heißt Cooley–Tuckey–Algorithmus.

Aspekte des CT–Algorithmus


Der Cooley–Tuckey–Algorithmus verläuft in zwei Phasen:

1. der Permutationsphase und


2. der Multiplikationsphase,

die wir nun getrennt besprechen wollen.

Permutationsphase

Wir versuchen eine allgemeine Formel für die Wirkungsweise der Permutationen PnT zu gewinnen und
betrachten dazu zunächst folgende Beispiele:

P8T f = (f0 , f4 , f2 , f6 , f1 , f5 , f3 , f7 )T und

61
7 Diskrete Fouriertransformation

T
P16 f = (f0 , f8 , f4 , f12 , f2 , f10 , f6 , f14 , f1 , f9 , f5 , f13 , f3 , f11 , f7 , f15 )T
T
Betrachtet man bei P16 f das Elemente f12 an der Position 3 und f5 an der Position 10, so stellt man
folgende Eigenschaft fest:

Index 12 = 11002 Index 5 = 01012


Position 3 = 00112 Position 10 = 10102

d.h. die Binär–Darstellung der Position entspricht gerade der Spiegelung der Binär–Darstellung des
Index.

Satz 7.4. Sei n = 2p . Die Funktion rn : {0, . . . , n − 1} → {0, . . . , n − 1} sei definiert durch
¡ ¢
PnT f k
= frn (k)

d.h. rn gibt an, welcher Eintrag des Orginal–Vektors an der k–ten Stelle des permutierten Vektors steht.
Dann gilt

rn (2p−1 bp−1 + 2p−2 bp−2 + · · · + 2b1 + b0 ) = 2p−1 b0 + 2p−2 b1 + · · · + 2bp−2 + bp−1

für bj ∈ {0, 1} und j = 0, . . . , p − 1. Deshalb heißt Pn auch Bitspiegelung.

Multiplikationsphase

Sei BL die Butterfly–Matrix der Ordnung L = 2L∗ .


µ ¶ µ ¶
yo zo + Ω L∗ zu
y = BL z ⇔ =
yu zo − Ω L∗ zu
µ ¶ µ ¶
yo zo
mit y = ,z = für zo , zu , yo , yu ∈ C L∗ , d.h. wir spalten die Vektoren z ∈ C L in eine obere
yu zu
(Index o) und eine untere Hälfte (Index u) und erhalten so durch Multiplikation mit BL (man erinnere
sich an die spezielle Form der Butterfly–Matrizen) wieder ein zweigespaltenes“ Ergebnis, das zu y

zusammengesetzt wird.
(p)
Wir betrachten nur die Anwendung von Aj auf x ∈ Cn für n = 2p .

(p)
y = Aj x ⇔ yL×r = BL xL×r L = 2j , r = 2p−j

mit yL×r , xL×r ∈ C(L,r) .


 
x0 xL ··· x(r−1)L
 .. .. 
(xL×r )jk = xkL+j xL×r = . . 
xL−1 x2L−1 ··· xrL−1

wir haben also den Vektor x in insgesamt r Stücke der Höhe L gespalten und diese Teile als Spalten
(p)
in die Matrix xL×r geschrieben. Da Aj gerade aus r = 2p−j auf der Diagonalen liegenden Butterfly–
Matrizen BL besteht (während alle anderen Einträge 0 sind), lässt sich die Matrix–Vektor–Multiplikation
(p)
y = Aj x durch die Matrix–Multiplikation yL×r = BL xL×r und anschließendes Untereinanderschreiben
der Spalten von yL×r beschreiben (die untereinandergeschriebenen Spalten von yL×r ergeben dann das
gesuchte y).

62
7.1 Fast Fourier–Transformation (FFT)

CT–Algorithmus
Sei f ∈ C n , n = 2p

1 T
f := n Pn f /∗ Bitspiegelung ∗/

f o r j = 1 to p do
n L
L : = 2j , r : = L , L∗ : = 2
5

f o r q = 0 to L∗ − 1 do
ω : = cos( 2πq 2πq
L ) − i sin( L )

f o r k = 0 to r − 1 do
10 τ : = ω · fkL+q+L∗
fkL+q+L∗ : = fkL+q − τ
fkL+q : = fkL+q + τ
end
end
15 end

Ohne Permutation und Berechnung von ω sind


1
n ld n
2
komplexe Multiplikationen auszuführen, was eine erhebliche Verbesserung gegenüber der direkten Aus-
wertung von Dn f darstellt (n2 komplexe Multiplikationen).

63
7 Diskrete Fouriertransformation

64
8 Numerische Quadratur
Ziel ist die Berechnung des Riemann–Integrals

Zb
I(f ) := f (t) dt = Iab (f )
a

wenn keine Stammfunktion von f bekannt ist oder ohnehin nur diskrete Funktionswerte vorliegen.
Die zahlenmäßige Bestimmung von I(f ) heißt numerische Integration oder numerische Quadratur.

Quadraturformel
Wir fassen die Integration als Funktion auf und erhalten somit die Abbildung
(
C(a, b) → R
I:
f 7→ I(f )

Diese Abbildung ist

1. linear : I(αf + βg) = αI(f ) + βI(g) für alle f, g ∈ C(a, b) und α, β ∈ R


2. positiv : f ≥ 0 ⇒ I(f ) ≥ 0
3. additiv : Sei τ ∈ [a, b]. Dann gilt I(f ) = Iaτ (f ) + Iτb (f )

Ziel der numerischen Quadratur ist die Kontruktion positiver Linearformen

Ib : C(a, b) → R, f 7→ I(f
b )

mit der Eigenschaft


b ) − I(f )
I(f ist klein“

Rb
Definition 8.1. Eine Quadraturformel Ib zur Berechnung von a
f (t) dt hat die Form
n
X
b ) := (b − a)
I(f λi f (ti )
i=0
Pn
mit den Knoten t0 , . . . , tn und den Gewichten λ0 , . . . , λn wobei i=0 λi = 1 ist.

Pn
Mit der Forderung i=0 λi = 1 ist sichergestellt, dass

b = I(1) = b − a
I(1)

gilt, konstante Funktionen also exakt integriert werden.


Außerdem gilt

Ib ist positiv ⇔ λi ≥ 0 für i = 0, . . . , n

65
8 Numerische Quadratur

Newton–Cotes–Formeln
Zb
Ibn (f ) := P (f | t0 , . . . , tn )(t) dt a = t 0 < t1 < · · · < t n = b
a
n
X
P (f | t0 , . . . , tn ) = f (ti )Ln,i (t) Ln,i Langrange–Polynome zu t0 , . . . , tn
i=0
 

n 
 Zb 
X 1 
 
⇒ Ibn (f ) = (b − a)  Ln,i (t) dt ·f (ti )
b − a 
i=0  a 
| {z }
=λn,i

Die λn,i hängen nur von den Knoten ab – nicht von f.


Ibn ist exakt für Polynome bis zum Grad n
Ibn (P ) = I(P ) für alle P ∈ Πn

Lemma 8.2. Zu n + 1 paarweise verschiedenen Knoten t0 , . . . , tn gibt es genaue eine Quadraturformel


n
X
b ) = (b − a)
I(f λi f (ti )
i=0

die für alle P ∈ Πn exakt ist.

Beweis: Die Existenz einer solchen Quadraturformel haben wir bereits gezeigt, bleibt noch die Eindeu-
tigkeit:
Ln,i seien die Lagrange–Polynome bezüglich t0 , . . . , tn .
n
X
b n,i ) = (b − a)
I(Ln,i ) = I(L λj Ln,i (tj )
j=0
| {z }
=δij

= (b − a)λi
Zb
1 1
⇒ λi = I(Ln,i ) = Ln,i (t) dt
b−a b−a
a
¤
b−a
Bei äquidistanten Knoten ti = a + ih mit der Schrittweite h = i = 0, . . . , n, heißen die oben n ,
konstruierten Quadraturformeln Newton–Cotes–Formeln. Ihre Gewichte sind
Zb Yn
1 t − tj
λn,i = dt
b−a j=0
ti − t j
a j6=i

t−a
Durch die Subsitution s := h erhalten wir die Darstellung
Zn Y
n
1 s−j
λn,i = ds
n j=0
i−j
0 j6=i

die die Unabhängigkeit des Integralwertes vom Integrations–Intervall [a, b] erkennen lässt. Es reicht also
aus Die Gewichte ein einziges Mal zu berechnen. In der folgenden Tabelle sind diese bis zur Ordnung
n = 4 dargestellt.

66
n Gewichte Fehlerdarstellung Name
3
1 1 h 00
1 2 2 12 f (τ ) Trapez–Regel
1 4 1 h5 (4)
2 6 6 6 90 f (τ ) Simpson–Regel, Keplersche Faßregel
1 3 3 1 3h5 (4)
3 8 8 8 8 80 f (τ ) Newtonsche 83 –Regel
7 32 12 32 7 8h7 (6)
4 90 90 90 90 90 945 f (τ ) Milne–Regel

Die Gewichte sind allesamt rationale Zahlen, wird doch ein Polynom mit rationalen Koeffizienten über
eine ganze Zahl integriert. Außerdem sind sie bis zur Ordnung n = 7 positiv, ab n ≥ 8 ändert sich dies
jedoch, weshalb höhere Ordnungnen nur selten zur Anwendung kommen.
In der Tabelle haben wir bereits einen Fehler angegeben, der abhängig ist von der Schrittweite h und
einem τ ∈ [a, b]. Für die ersten beiden Formeln werden wir die Fehlerdarstellung nun beweisen.

Lemma 8.3. Sei f ∈ C 2 (a, b). Dann gilt für die Trapezregel

b−a
T (f ) = (f (a) + f (b))
2
die Fehlerdarstellung

h3 00
T (f ) − I(f ) = f (ξ) h=b−a
12

für ein ξ ∈ [a, b] wobei I(f ) der exakte Integralwet von f über [a, b] ist.

Bevor wir den Beweis angehen, sei noch kurz an den Mittelwertsatz der Integralrechnung erinnert:
Seien f, ϕ auf [a, b] stetige Funktionen wobei ϕ ≥ 0 oder ϕ ≤ 0 (ϕ wechselt also das Vorzeichen nicht).
Dann gilt

Zb Zb
f (x)ϕ(x) dx = f (ξ) · ϕ(x) dx für ein ξ ∈ [a, b]
a a

Beweis: Sei P = P (f | a, b) ∈ Π1 . Nach Satz 6.3 (Fehlerabschätzung für Interpolationspolynome) gilt


dann
1
f (t) = P (t) + f 00 (τ (t))(t − a)(t − b)
2

Zb
1
⇒ I(f ) = T (f ) + f 00 (τ (t)) (t − a)(t − b) dt
2 | {z }
a ≤0

Zb
MWS 1
⇒ I(f ) = T (f ) + f 00 (ξ) (t − a)(t − b) dt
2
a
| {z }
(b−a)3
=− 6

67
8 Numerische Quadratur

Lemma 8.4. Die Keplersche Faßregel


µ µ ¶ ¶
b−a a+b
S(f ) = f (a) + 4f + f (b)
6 2
b−a
ist auch für Polynome vom Grad n = 3 exakt. Für f ∈ C 4 (a, b) gilt mit h = 2 die Fehlerdarstellung

f (4) (ξ) 5
S(f ) − I(f ) = h
90
für ein ξ ∈ [a, b].

Beweis: Sei Q ∈ Π3 beliebig und P = P (Q | a, a+b


2 , b) ∈ Π2 .

Q000 (τ (t)) a+b


⇒ Q(t) = P (t) + (t − a)(t − )(t − b)
6
| {z } | {z 2 }
=:γ=const =:ω(t)

Zb Zb Zb
⇒ Q(t) = P (t) dt +γ · ω(t) dt
a a a
| {z }
=S(Q)
Rb
Wir müssen nur noch zeigen, dass a ω(t) dt = 0 ist. Dazu nützen wir aus, dass ω(t) bezüglich des
Intervall–Mittelpunktes eine ungerade Funktion ist und setzen x = 2t−a−b
b−a

Zb Z1
⇒ ω(t) dt = K(a, b) (x − 1)x(x + 1) dx = 0
| {z }
a −1 ungerade

Zb
⇒ Q(t) dt = S(Q)
a
¤

Zusammengesetze Formeln
Die Quadraturformel in der bisherigen Form ist wenig flexibel. Für große Intervalle wären Quadratur-
formeln hoher Ordnung nötig, was wir aus den angegebenen Gründen jedoch vermeiden wollen. Eine
Lösung besteht nun darin, ein solches Intervall in kleine Teilintervalle zu zerlegen, auf denen dann wieder
Quadraturformeln niedriger Ordnung zur Anwendung kommen können.
Wie das mit Verwendung der Trapez–Regel funktioniert gibt das folgende Lemma an.

Lemma 8.5. Sei h = b−a n und ti = a + ih, i = 0, . . . , n. Dann hat die Trapezsumme
à n−1
!
1 X
T (h) = h · (f (a) + f (b)) + f (ti )
2 i=1

für f ∈ C 2 (a, b) den Fehler


Zb
b − a 2 00
T (h) − f (x) dx = h f (τ )
12
a

für ein τ ∈ [a, b].

68
Beweis: Ti = h2 (f (ti−1 ) + f (ti )) bezeichne die Trapezregel bezüglich [ti−1 , ti ] für i = 1, . . . , n.
n
X
T (h) = Ti
i=1

PSfrag replacements  
Zb X n Zti PSfrag replacements
tj tj
tj−1 T (h) − f (x) dx = Ti − f (x) dx tj−1
tj+1 a i=1 ti−1
tj+1
tj+2 | {z } tj+2
Mj Fehler der Trapezregel Mj
Mj−1 n
X h µ 3
¶ Mj−1
Mj+1 8.3 Mj+1
Mj+2 = f 00 (τi ) Mj+2
i=1
12
s00 s00
M Xn M
b−a 2 1
r = h · f 00 (τi ) r
y(x) = ln(x) 12 n i=1 y(x) = ln(x)
0 0
mit0.2τi ∈ [ti−1 , ti ]. Da 0.2
0.4 0.4
0.6 Xn 0.6
0.8 min f 00 (t) ≤
1
f 00 (τi ) ≤ max f 00 (t) 0.8
1 t∈[a,b] n i=1 t∈[a,b] 1
2 2
4 4
ist, gibt es nach dem Zwischenwertsatz für stetige Funktionen ein τ ∈ [a, b] mit
n
1 X 00
−2 −2
−4 00
f (τ ) = f (τi )
−4
−0.2 n i=1 −0.2
B04 B04
B14 B14
B24 B24 ¤
B34 B34
B44 B44
b0 b0
b1 b1
b2 b2
b3 b3
P (t) P (t)
b10 (t) b10 (t)
b11 (t) b11 (t)
b12 (t) b12 (t)
b20 (t) b20 (t)
b21 (t) b21 (t)
b30 (t) b30 (t)

a b a b

(a) Mit Trapezsumme (b) Mit Trapezregel

Abbildung 8.1: Beispiel zur Trapezsumme aus Lemma 8.5

Zusätzlich wollen wir noch die zusammengesetzte Simpson–Formel studieren.


Sei n gerade (d.h die Anzahl der Knoten ist ungerade) und Si die Simpson–Regel bezüglich [t2i , t2i+2 ],
i = 0, . . . , n2 − 1. Die zusammengesetze Simpson–Regel hat die Form
n
2 −1
X 2h
S(h) := (f (t2i ) + 4f (t2i+1 ) + f (t2i+2 ))
i=0
6
h
= (f (a) + 4f (a + h) + 2f (a + 2h) + . . . + 2f (b − 2h) + 4f (b − h) + f (b))
3

69
0 0
0.2 0.2
0.4 0.4
0.6 0.6
0.8 0.8
1 1
2 2
8 Numerische
4
Quadratur 4

−2 −2
Wie−4im Beweis von Lemma 8.5 zeigt man die Fehlerdarstellung
−4
−0.2 −0.2
B04 B04
B14 Zb B14
4 S(h) −
b − a 4 (4)
B2 f (x) dx = h f (ξ) B24
B3 4 180 B34
a
B44 B44
b0 4 b0
für einb1 ξ ∈ [a, b], falls f ∈ C (a, b). b1
b2 b2
b3 b3
P (t) P (t)
b10 (t) b10 (t)
b11 (t) b11 (t)
b12 (t) b12 (t)
b20 (t) b20 (t)
b21 (t) b21 (t)
b30 (t) b30 (t)

a b a b

(a) Zusammengesetzte Simpson–Formel (b) Simpson–Formel

Abbildung 8.2: Beispiel zur zusammengesetzen Simpson–Formel

70
Literaturverzeichnis

[1] Deuflhard, P. – Hohmann, A., Numerische Mathematik – eine algorithmische Einführung de


Gruyter–Verlag

[2] Locher, F., Numerische Mathematik für Informatiker Springer

71
Literaturverzeichnis

72
Index

A Givens–Rotationen . . . . . . . . . . . . . . . . . . . . . . . . . 28
a–posteriori–Abschätzung . . . . . . . . . . . . . . . . . . . 38 GMRES–Algorithmus . . . . . . . . . . . . . . . . . . . . . . . 29
a–priori–Abschätzung . . . . . . . . . . . . . . . . . . . . . . . 38 GMRES–Iterierte . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
A–Norm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Abgebrochene Potenzen . . . . . . . . . . . . . . . . . . . . . 46 H
Aitken Hölder–stetig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Lemma von . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 Heron–Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Algorithmus von Casteljau . . . . . . . . . . . . . . . . . . 58 Hessenberg–Matrix . . . . . . . . . . . . . . . . . . . . . . . 28
Approximation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
I
B Interpolation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41
Banach’scher Fixpunkt–Satz . . . . . . . . . . . . . . . 37 Interpolationspolynom . . . . . . . . . . . . . . . . . . . . . . 42
Bernstein–Polynom . . . . . . . . . . . . . . . . . . . . . . . 54 Invarianz
Bezier–Polynom . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 des Newton–Verfahrens . . . . . . . . . . . . . . . . . 34
Bezier–Punkte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
K
Bitspiegelung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Keplersche Faßregel . . . . . . . . . . . . . . . . . . . . . . . 67
Butterfly–Matrix. . . . . . . . . . . . . . . . . . . . . . . . . . . .60
Kleinste Quadrate
C Methode der – . . . . . . . . . . . . . . . . . . . . . . . . . 17
Casteljau Konditionszahl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Algorithmus von . . . . . . . . . . . . . . . . . . . . . . . 58 Kontraktion
cg–Algorithmus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 bezüglich einer Norm . . . . . . . . . . . . . . . . . . . 36
mit Vorkonditionierung . . . . . . . . . . . . . . . . . 25 Kontraktionszahl . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Cholesky–Algorithmus . . . . . . . . . . . . . . . . . . . . 16 Kontroll–Punkte . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Cholesky–Zerlegung . . . . . . . . . . . . . . . . . . . . . . . 15 konvex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Cooley–Tuckey–Algorithmus . . . . . . . . . . . . . 63 konvexe Hülle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Krümmung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
D Krümmungskreis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Dreiecksmatrix Krümmungsradius . . . . . . . . . . . . . . . . . . . . . . . . . . 48
obere–. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9 Krylov–Raum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
untere–. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10 kubischer Spline . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

E L
Energienorm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Lagrange–Basis . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Euklid–Norm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Lemma
von Aitken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
F linearer Spline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Faber LR–Zerlegung. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
Satz von . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 mit Spaltenpivotsuche . . . . . . . . . . . . . . . . . . 14
Fixpunkt–Iteration . . . . . . . . . . . . . . . . . . . . . . . . . 36
Frobenius–Norm . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 M
Mathoder der kleinsten Quadtrate . . . . . . . . . . 17
G Matrix
Gauß–Ausgleich . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 positiv definite – . . . . . . . . . . . . . . . . . . . . . . . 15
Gaußsche Dreieckszerlegung . . . . . . . . . . . . . . 13 Matrixnorm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

73
Index

induzierte – . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Spaltenpivotsuche . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
zugeordnete – . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Spaltensummennorm . . . . . . . . . . . . . . . . . . . . . . . . . 6
Milne–Regel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 Spektralnorm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Minimum–Norm–Lösung Spektrum
des Ausgleichproblems. . . . . . . . . . . . . . . . . .19 einer Matrix. . . . . . . . . . . . . . . . . . . . . . . . . . . .24
Momente eines Splines . . . . . . . . . . . . . . . . . . . . . . 50 Spline
Monotonie–Test kubischer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47
beim Newton–Verfahren . . . . . . . . . . . . . . . . 34 linearer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Spline der Ordnung k . . . . . . . . . . . . . . . . . . . . . . . 46
N Spline–Interpolation . . . . . . . . . . . . . . . . . . . . . . . . 47
n–te Einheitswurzel . . . . . . . . . . . . . . . . . . . . . . . . . 59 Splineinterpolation
natürliche Splineinterpolation . . . . . . . . . . . . . . . 49 natürliche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Neville periodische . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Schema von . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 vollständige . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Newton–Cotes–Formeln . . . . . . . . . . . . . . . . . . 66 submultiplikativ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
newton–Korrektur . . . . . . . . . . . . . . . . . . . . . . . . . 31
Newton–Polynom . . . . . . . . . . . . . . . . . . . . . . . . . 44 T
newton–Schritt . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Teilpolynome
Newtonsche 3/8–Regel . . . . . . . . . . . . . . . . . . . . 67 der Bezier–Kurve . . . . . . . . . . . . . . . . . . . . . . . 55
Norm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Trapez–Regel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Matrix– . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Trapezsumme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
p– . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Tschebyscheff–Knoten . . . . . . . . . . . . . . . . . . . 45
Spaltensummen– . . . . . . . . . . . . . . . . . . . . . . . . 6
Spektral–. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7 U
Vektor –. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5 Überbestimmtes Problem . . . . . . . . . . . . . . . . . . . 18
Zeilensummen– . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Unterbestimmtes Problem . . . . . . . . . . . . . . . . . . 18
Normalgleichung
des Ausgleichproblems. . . . . . . . . . . . . . . . . .18 V
numerische Integration . . . . . . . . . . . . . . . . . . . . . . 65 Vandermondsche–Matrix . . . . . . . . . . . . . . . . . . 42
Vektornorm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
O verträglich . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Ohmscher Widerstand . . . . . . . . . . . . . . . . . . . . . . 17 vollständige Splineinterpolation . . . . . . . . . . . . . 49
Vorkonditionierung
P beim cg–Algorithmus . . . . . . . . . . . . . . . . . . . 25
p–Norm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Vorwärtssubstitution. . . . . . . . . . . . . . . . . . . . . . . .10
periodische Splineinterpolation . . . . . . . . . . . . . . 49
Permuatationsmatrix . . . . . . . . . . . . . . . . . . . . . . . 14 Z
Pivot–Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Zeilensummennorm . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Polynomiale Kurve . . . . . . . . . . . . . . . . . . . . . . . . . 53 Zerlegung
positiv definit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 LR– . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Gaußsche Dreiecks– . . . . . . . . . . . . . . . . . . . 13
Q
Quadraturformel . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

R
Residuum. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22
Rückwärtssubstitution . . . . . . . . . . . . . . . . . . . . . . . 9

S
Satz
von Faber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Schema von Neville . . . . . . . . . . . . . . . . . . . . . . . 44
Schmiegekreis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Simpson-Regel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
zusammengesetze . . . . . . . . . . . . . . . . . . . . . . . 69

74