1 Arithmetische Grundlagen

Ähnliche Dokumente
2 Direkte Lösungsverfahren für lineare Gleichungen

1 Euklidische Approximation

1 Arithmetische Grundlagen

1 Euklidische Approximation

LR-Zerlegung. N = size(a,1); for n=1:n-1 A(n+1:N,n) = A(n+1:N,n)/A(n,n); A(n+1:N,n+1:N) = A(n+1:N,n+1:N) - A(n+1:N,n) * A(n,n+1:N); end;

2 Direkte Lösungsverfahren für lineare Gleichungen

1 Euklidische Approximation

1 Euklidische Approximation

1 Euklidische Approximation

VF-2: 2. Es seien x = 1 3 und y = π Bei der Berechnung von sin(x) sin(y) in M(10, 12, 99, 99) tritt. Auslöschung auf.

Institut für Geometrie und Praktische Mathematik

Institut für Geometrie und Praktische Mathematik

eps für alle x D. 4. Die Zahl 256 ist in M(2, 4, 6, 6) exakt darstellbar.

VF-3: Es seien A R n n beliebig aber regulär, b R n und gesucht sei die Lösung x R n von A x = b.

Diplom VP Numerik 27. August 2007

D-MAVT NUMERISCHE MATHEMATIK FS 14 K. Nipp, A. Hiltebrand Lösung vom Test 2

3 Eigenwertberechnung

Institut für Geometrie und Praktische Mathematik

Institut für Angewandte und Numerische Mathematik Prof. Dr. Christian Wieners, Dipl.-Math. techn. Daniel Maurer

8 Polynominterpolation

Diplom VP Numerik 28. August 2006

Lösung der Diplom-Vorprüfung Höhere Mathematik III/IV Aufgabe N1 (LR-Zerlegung mit Pivotisierung) Gegeben seien R 3.

Begleitmaterial zur Vorlesung Numerik II

Klausur Numerische Mathematik (für Elektrotechniker), 24. Februar 2016

Begleitmaterial zur Vorlesung Numerik I

Kurztest zur Numerik I WiR AG, Dep. Mathematik, NT-Fakultät, Universität Siegen

KLAUSUR zur Numerik I mit Lösungen. Aufgabe 1: (10 Punkte) [ wahr falsch ] 1. Die maximale Ordnung einer s-stufigen Quadraturformel ist s 2.

Einführung in die Numerik

2. Lineare Gleichungssysteme: direkte und iterative Lösungsverfahren

Institut für Geometrie und Praktische Mathematik

Kapitel 3. Lineare Ausgleichsrechnung. Problem: Löse A x = b, A R m n, b R m, wobei. Rang(A) < Rang([A;b])

VF-3: Gegeben seien die Daten f(x 0 ), f(x 1 ),..., f(x n ) mit x 0,..., x n paarweise verschiedenen und

6. Polynom-Interpolation

MODULPRÜFUNG MODUL MA 1302 Einführung in die Numerik

3 Lineare Algebra Vektorräume

Numerische Mathematik I für Ingenieure Multiple-Choice Klausuraufgaben Frühjahr 08

(c) Gegeben sei der zweidimensionale Raum L mit den Basisfunktionen. [ φ i, φ j ] 3 i,j=1 =

7. Übungs-/Wiederholungsblatt zu Einführung in die Numerik (SS 2012)

Klausur Numerische Mathematik (für Elektrotechniker), Samstag, 19. August 2017

2. Geben Sie für das Jacobi-Verfahren eine scharfe a-priori Abschätzung für den Fehler. x (10) x p

(d) das zu Grunde liegende Problem gut konditioniert ist.

2 Direkte Lösungsverfahren für lineare Gleichungen

Musterlösungen zur Leistungsnachweisklausur vom Studiengang Informatik, Ingenieurinformatik, Lehramt

Nachklausur am Donnerstag, den 7. August 2008

19. Januar Universität Erlangen-Nürnberg Department Mathematik PD Dr. Markus Bause. . Danach liefert die Gauss-Elinination. .

Begleitmaterial zur Vorlesung Numerik I

Name: Matr.-Nr.: 2. Aufgabe 1. Gegeben sei die Matrix

(x x j ) x [a,b] n! j=0

Lösungen zu Blatt 13 der Übungen zur Vorlesung Numerik, LMU München, Wintersemester 2016/2017

Lösungsvorschlag zur Modulprüfung Numerische Methoden Sommersemester 2016

PS Numerische Mathematik für LAK WS 08/09, LV-Nr.: , HS Übungsblatt (bis )

Aufgabe 1. Berechnen Sie die absolute und die relative Kondition des Problems x f(x) für die Abbildung. x = x 2 e x 1.

H.J. Oberle Analysis II SoSe Interpolation


Original - d.h. unvertauschte Reihenfolge

Numerisches Rechnen Panikzettel

A 1 A 2 A 3 A 4 A 5 A 6 A 7

Lösungsvorschlag zur Modulprüfung Numerische Methoden - Wintersemester 2016/17

Orthogonalpolynome Einführung, Eigenschaften und Anwendungen

5 Interpolation und Approximation

ZWEITE KLAUSUR zur Numerik I mit Lösungen. Bitte folgende Angaben ergänzen und DEUTLICH LESBAR in Druckbuchstaben schreiben:

Numerische Mathematik

KAPITEL 8. Interpolation

D-ITET, D-MATL. Prüfung Numerische Methoden, Sommer 2012 Dr. Lars Kielhorn

Banach scher Fixpunktsatz. 1) D ist abgeschlossen und konvex; 2) f ist selbstabbildend, d.h. f(d) D;

Lösung Semesterendprüfung

Kapitel 2: Lineare Gleichungssysteme. 2.1 Motivation: Bildverarbeitung Sei B = (B(n, m)) ein N M stochastisches Feld mit ZVen

Lernfragen für Numerik für LAK Wintersemester 2009/10

Lineares Gleichungssystem

7. Nichtlineare Gleichngssysteme. Problem 7: Sei f : R n R n stetig. Löse f(x) = 0.

Beispiellösung Serie 7

Klausur zu Grundlagen der Computermathematik

TU Ilmenau Institut für Mathematik FG Numerische Mathematik und Informationsverarbeitung PD Dr. W. Neundorf Datei: UEBG2.TEX

y (k) (0) = y (k) y(z) = c 1 e αz + c 2 e βz. c 1 + c 2 = y 0 k=1 k=1,...,m y k f k (x)

Klassische Polynom Interpolation.

Numerik für Ingenieure I Wintersemester 2008

4.6 Berechnung von Eigenwerten

Einführung in numerische Methoden für Ingenieure (nach A. Quarteroni, F. Saleri: Wissenschaftliches Rechnen mit MATLAB)

Wiederholung von Linearer Algebra und Differentialrechnung im R n

5 Numerische Mathematik

Übungsblatt 12 Musterlösung

2 Lineare Gleichungssysteme

Diplom VP Informatik/Numerik 9. September 2000 / Seite 1. Aufgabe 1: L-R-Zerlegung, Nachiteration / Ly = b. y = Rx = y.

Klausur zur Vordiplom-Prüfung

Klausur zur Numerischen Mathematik im Maschinenbau

UE Numerische Mathematik für LA

Inhaltsverzeichnis. 1 Einleitung... 1

Der CG-Algorithmus (Zusammenfassung)

Computergestützte Mathematik zur Linearen Algebra

Numerische Mathematik

Methode der kleinsten Quadrate

Matr. Nr.: Benutzter Taschenrechner (genaue Typenbezeichnung) : Name: Vorname: Unterschrift: VFr: A1: A2: A3: A4: A5: BP: Platz Nr.

f(x) dx soll numerisch approximiert werden durch eine

Kapitel 4: Interpolation Sei U eine Klasse von einfach strukturierten Funktionen, z.b.

Klausur zu Grundlagen der Computermathematik

KAPITEL 10. Numerische Integration

Mathematische Grundlagen

I f AM. 2. Übung zur Numerischen Mathematik I. Hausübung. Hannover, den

Lineare Algebra für D-ITET, D-MATL, RW. Beispiellösung für Serie 12. Aufgabe Herbstsemester Dr. V. Gradinaru D. Devaud.

Numerische Mathematik

Transkript:

1 Arithmetische Grundlagen Am 4. Juni 1996 explodierte kurz nach dem Start die erste Ariane 5 Rakete durch einen Softwarefehler. Die Horizontalgeschwindigkeit wurde durch eine Gleitkommazahl v [ 10 308, 10 308 ] {0} [10 308,10 308 ] dargestellt. Innerhalb der Rechnung wurde die Zahl versehentlich in eine ganzzahlige Darstellung i {0,1,2,...,32767} konvertiert. Als die Geschwindigkeit v > 32767 erreichte, verlor die Software die Geschwindigkeitsinformation und damit schließlich die Orientierung. http://ta.twi.tudelft.nl/users/vuik/wi211/disasters.html http://www5.in.tum.de/ huckle/bugse.html C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 1

1 Arithmetische Grundlagen Am 25. Februar 1991 während des ersten Golfkriegs in Dharan, Saudi Arabien, verfehlte eine amerikanische Patriot Rakete eine anfliegende irakische Scud Rakete durch eine falsche Zeitberechnung. Eine 1/10 Sekunde wurde ungenau dargestellt (durch Rundungsfehler wurde die periodische Dualentwicklung 0.0001100110011001100110011001100... in der Computerdarstellung zu 0.00011001100110011001100 abgeschnitten), so dass nach 100 Stunden Betriebszeit eine Zeitdifferenz von ca. 0.3 Sekunden entstand. Dieser Fehler wurde nicht in allen Teilen des Betriebsprogramms korrigiert. http://ta.twi.tudelft.nl/users/vuik/wi211/disasters.html http://www5.in.tum.de/ huckle/bugse.html C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 2

1 Arithmetische Grundlagen (1.3) a) Eine Gleitkommazahlen zur Basis B {2, 3,...} der Mantissenlänge M und Exponentenlänge E ist die Menge { FL = ± B e M m=1 a m B m : e = e E 1 + k=0 } c k B k, a m,c k {0,1,...,B 1} b) Eine Gleitkommaarithmetik wird durch eine Abbildung fl: R FL mit fl(x) = x für x FL definiert. Sei bestimmt die Rundung: x y = fl(x + y), x y = fl(x y), etc. Die zugehörige Maschinengenauigkeit ist { } x fl(x) eps := sup ; 0 < x < M. x (1.2) a) Ein Problem heißt sachgemäß gestellt, wenn es eindeutig lösbar ist und die Lösung stetig von den Daten abhängt. b) Die Kondition eines Problems ist eine Maß dafür, wie stark die Abhängigkeit der Lösung von den Daten ist. c) Die Stabilität eines numerischen Algorithmus ist eine Maß dafür, wie stark die Daten-Abhängigkeit der numerischen Lösung im Vergeich zu der tatsächlichen Lösung ist. (1.3) Sei f : R N R K eine differenzierbare Funktion und x R N. Dann heißt a) κabs kn = x n f k (x) absolute Konditionszahl. b) κrel kn = x n f k (x) xn f k (x) relative Konditionszahl. C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 3

1 Arithmetische Grundlagen Sei eine Vektornorm, und sei eine zugeordete Matrixnorm, d. h., Ax A x, x R N, A R M N. Wir verwenden für x R N und A R M N N x 1 = x n x 2 = x T x x = max x n n=1 n=1,...,n Ax und die zugeordnete Operatornorm A p = sup p x 0N x p, d.h. M N A 1 = max a mn, A 2 = ρ(a T A), A = max a mn n=1,...,n m=1 m=1,...,m n=1 mit Spekralradius ρ(a) = max{ λ : λ Eigenwert von A}. (1.4) Sei A R N N invertierbar. Dann heißt κ p (A) = A p A 1 p die Kondition von A. Sei b R N, b 0 N, b R N eine kleine Störung und b = b + b. Sei x R N Lösung von Ax = b, x R N Lösung von A x = b, und x = x x der Fehler. Dann gilt für den relativen Fehler x p x p κ p (A) b p b p. C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 4

Auslöschung bei Nullstellenberechnung Wir betrachten die Gleichung x 2 2px + q = 0, deren Nullstellen durch x = p ± p 2 q gegeben sind. Diese Berechnungsvorschrift ist aber für p q nicht zu empfehlen, da dann Auslöschung bei der betragsmäßig kleineren Nullstelle auftritt. Wählt man beispielsweise p = 10 8 und q = 1, so berechnet Matlab x 1 = 2 10 8, x 2 = 0. Die Auslöschung bei x 2 kann man umgehen, indem man zuerst die größere Nullstelle durch x 1 = p + sign(p) p 2 q berechnet und dann (mit dem Satz von Vieta) die zweite Nullstelle durch x 2 = q x 1 erhält. Mit dieser Vorschrift berechnet Matlab die bessere Lösung x 1 = 2 10 8, x 2 = 0.5 10 9. C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 5

2 Direkte Lösungsverfahren für lineare Gleichungen (2.1) Sei L R N N eine normierte untere Dreiecksmatrix und b R N. Dann ist L invertierbar und das Lineare Gleichungssystem (LGS) Ly = b ist mit O(N 2 ) Operationen lösbar. Entsprechend ist für eine invertierbare obere Dreiecksmatrix R R N N das LGS Rx = y in O(N 2 ) Operationen lösbar. (2.2) Wenn eine Matrix A R N N eine LR-Zerlegung A = LR mit einer normierten untere Dreiecksmatrix L und einer invertierbaren obere Dreiecksmatrix R besitzt, dann ist A invertierbar und das LGS Ax = b ist mit O(N 2 ) Operationen lösbar. (2.3) Eine Matrix A R N N besitzt genau dann eine LR-Zerlegung von A, wenn alle Hauptuntermatrizen A[1 : n, 1 : n] invertierbar sind. Die LR-Zerlegung ist eindeutig und lässt sich mit O(N 3 ) Operationen berechnen. (2.5) Eine Matrix A R N N heißt strikt diagonal-dominant, falls A[n,n] > N A[n, k]. k=1 k n Sie heißt positiv definit, wenn x T Ax > 0 für x R N, x 0. In beiden Fällen existiert eine LR-Zerlegung. (2.6) Sei A R N N symmetrisch und positiv definit. Dann existiert genau eine Cholesky-Zerlegung A = LL T mit einer unteren Dreiecksmatrix L. Software: http://www.netlib.org/lapack C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 6

2 Direkte Lösungsverfahren für lineare Gleichungen (2.7) a) Eine bijektive Abbildung π : {1,...,N} {1,...,N} heißt Permutation. b) Sie ist eindeutig durch einen Permutationsvektor p R N mit p[n] = π(n) bestimmt. c) Die zugehörige Permutationsmatrix ist P = (e π(1) e π(n) ) R N N. (2.8) Sei A R N N invertierbar. Dann existiert eine Permutationsmatrix P, so dass PA eine LR-Zerlegung PA = LR besitzt, so dass L[m,n] 1 gilt. (2.9) a) Zu v R N und k n mit v[k] 2 + v[n] 2 > 0 existiert eine Givens-Rotation G R N N mit ( ) ( ) G[k,k] G[k,n] c s =, c G[n, k] G[n, n] s c 2 + s 2 = 1, und G[j][j] = 1 für j k,n und G[i][j] = 0 sonst, so dass für w = Gv gilt: w[n] = 0. Für v[n] > v[k] setze τ = v[k] v[n], s = 1+τ 1 v[n], c = sτ, sonst setze τ = 2 v[k], c = 1+τ 1, s = cτ. 2 b) Zu v R N, v 0, existiert eine Householder-Spiegelung H = I N 2 w T w ww T R N N mit w R N, w[1] = 1, sodass Hv = σe 1 mit σ R. Falls v[1] > 0, setze σ = v 2, sonst setze σ = v 2. Dann definierte w = 1 v[1] σ (v σe1 ). Rotationen und Spiegelungen Q sind orthogonale Matrizen, d.h. Q T Q = I N, Q 1 = Q T, Q 2 = 1 und κ 2 (Q) = 1. (2.10)Zu A R K N existiert eine QR-Zerlegung A = QR mit einer orthogonalen Matrix Q R K K und eine oberen Dreiecksmatrixmatrix R R M N. C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 7

LR-Zerlegung (ohne Vektorisierung) N = size(a,1); for n=1:n-1 % Berechnung der n-ten Spalte von L for m=n+1:n A(m,n) = A(m,n)/A(n,n); % keine Berechnung der n-ten Zeile von R erforderlich % Berechnung der Restmatrix for m=n+1:n for k=n+1:n A(m,k) = A(m,k) - A(m,n) * A(n,k); C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 8

LR-Zerlegung N = size(a,1); for n=1:n-1 A(n+1:N,n) = A(n+1:N,n)/A(n,n); A(n+1:N,n+1:N) = A(n+1:N,n+1:N) - A(n+1:N,n) * A(n,n+1:N); x = b; for n=2:n x(n) = x(n) - A(n,1:n-1) * x(1:n-1); for n=n:-1:1 x(n) = (x(n) - A(n,n+1:N)*x(n+1:N))/A(n,n); C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 9

Cholesky-Zerlegung N = size(a,1); for n=1:n A(n:N,n) = A(n:N,n) - A(n:N,1:n-1) * A(n,1:n-1) ; A(n:N,n) = A(n:N,n) / sqrt(a(n,n)); x = b; for n=1:n x(n) = (x(n) - A(n,1:n-1) * x(1:n-1))/ A(n,n); for n=n:-1:1 x(n) = (x(n) - A(n+1:N,n) * x(n+1:n))/ A(n,n); C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 10

LR-Zerlegung mit Pivotsuche N = size(a,1); p = (1:N) ; for n = 1:N-1 [r,m] = max(abs(a(n:n,n))); m = m+n-1; if abs(a(m,n))<eps error( *** ERROR *** LR-Zerlegung existiert nicht ); if (m ~= n) A([n m],:) = A([m n],:); p([n m]) = p([m n]); A(n+1:N,n) = A(n+1:N,n)/A(n,n); A(n+1:N,n+1:N) = A(n+1:N,n+1:N) - A(n+1:N,n)*A(n,n+1:N); x = b(p); for n=2:n x(n) = x(n) - A(n,1:n-1)*x(1:n-1); for n=n:-1:1 x(n) = (x(n) - A(n,n+1:N)*x(n+1:N))/A(n,n); C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 11

Berechnung der Householder-Vektoren function [v,beta] = householder(y) N = length(y); s = y(2:n) * y(2:n); if N == 1 s = 0; v = [1;y(2:N)]; if s == 0 beta = 0; else mu = sqrt(y(1)^2 + s); if y(1) <= 0 v(1) = y(1) - mu; else v(1) = -s/(y(1) + mu); beta = 2*v(1)^2/(s + v(1)^2); v = v / v(1); return; C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 12

QR-Zerlegung [M,N] = size(a); for m = 1:min(N,M-1) [v,beta] = householder(a(m:m,m)); if beta ~= 0 w = beta * v * A(m:M,m:N); A(m:M,m:N) = A(m:M,m:N) - v * w; A(m+1:M,m) = v(2:m-m+1); for m = 1:min(N,M-1) v = [1;A(m+1:M,m)]; beta = 2 / (v * v); if beta ~= 2 b(m:m) = b(m:m) - beta*(v *b(m:m)) * v; for n=min(n,m):-1:1 x(n) = (b(n) - A(n,n+1:N) * x(n+1:n)) / A(n,n); C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 13

3 Lineare Ausgleichsrechnung (3.1) Sei A R K N und b R K. Dann gilt: x R N minimiert Ax b 2 A T Ax = A T b. (3.2) Zu A R K N mit R = rang(a) existieren Singulärwerte σ 1,...,σ R > 0 und eine Singulärwertzerlegung A = V ΣU T mit V R K K, U R N N orthogonal und Σ R K N mit Σ[r,r] = σ r für r = 1,...,R und Σ[k,n] = 0 sonst. (3.3) A + = UΣ + V T ist die Pseudo-Inverse mit Σ + R N K mit Σ + [r,r] = 1/σ r für r = 1,...,R und Σ + [n,k] = 0 sonst. (3.4) x = A + b löst die Normalengleichung A T Ax = A T b. (3.5) Sei A R K N und b R K. Dann gilt für die Tikhonov-Regularisierung mit α > 0: x R N minimiert Ax b 2 2 + α x 2 2 (A T A + αi N )x = A T b. (3.6) Es gilt lim α 0 (AT A + αi N ) 1 A T b = A + b. C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 14

Ein schlecht konditioniertes Gleichungssystem Wir betrachten das lineare Gleichungssystem Ax = b mit der Hilbertmatrix ( 1 ) A = m + n + 1 m,n=0,...,n RN+1 N+1 ( und der rechten Seite b = ( 1) n( n log(2) + ( 1) m)) n=0,...,n RN+1. m=1 Die exakte Lösung lautet: N x 0 x 1 x 2 x 3 x 4 x 5 x 6 1 0.93 0.48 2 0.99 0.80 0.33 3 1.00 0.94 0.66 0.22 4 1.00 0.98 0.86 0.53 0.15 5 1.00 1.00 0.95 0.77 0.42 0.11 6 1.00 1.00 0.98 0.90 0.67 0.32 0.07 (Beispiel aus Kress: Numerical Analysis) C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 15

Ein schlecht konditioniertes Gleichungssystem Stören wir nun aber die rechte Seite geringfügig, indem wir log(2) nur bis auf 5 Nachkommastellen auswerten, so erhalten wir folgende Lösung: N x 0 x 1 x 2 x 3 x 4 x 5 x 6 1 0.93 0.48 2 0.99 0.81 0.33 3 1.00 0.96 0.70 0.25 4 1.01 1.16 1.63 1.70 0.72 5 1.06 2.74 12.68 31.16 33.87 13.26 6 1.39 16.58 151.10 584.81 1071.96 926.77 304.50 Also: Eine geringfügige Störung der Daten führt zu einer großen Störung des Ergebnisses. Der Grund dafür liegt in der schlechten Kondition der Hilbertmatrix. Diese ist in der Spektralnorm: N 2 3 4 5 6 κ 2 (A) 19.28 524.06 1.55e + 04 4.77e + 05 1.495e + 07 (Beispiel aus Kress: Numerical Analysis) C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 16

Invertierung der Hilbert-Matrix (Matlab) >> H = hilb(3); IH = inv(h); IH(1,1:3) ans = 9.00000000000003-36.0000000000001 30.0000000000001 >> H = hilb(5); IH = inv(h); IH(1,1:3) ans = 24.9999999999919-299.999999999882 1049.99999999958 >> H = hilb(7); IH = inv(h); IH(1,1:3) ans = 49.0000000578711-1176.00000232576 8820.00002248178 >> H = hilb(9); IH = inv(h); IH(1,1:3) ans = 80.9999332549633-3239.99529943927 41579.919225348 >> H = hilb(11); IH = inv(h); IH(1,1:3) ans = 120.91751059331-7251.2942628623 141342.563141014 C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 17

Ein schlecht konditioniertes Gleichungssystem Wir können die Kondition verbessern, indem wir die Tikhonov-Regularisierung auf die Hilbertmatrix anwenden, d.h. x α = (A T A + αi N ) 1 A T b. Regularisieren wir mit einem Parameter α = 10 10, so erhalten wir N x 0 x 1 x 2 x 3 x 4 x 5 x 6 1 0.93 0.48 2 0.99 0.81 0.33 3 1.00 0.95 0.69 0.24 4 0.99 0.89 0.47 0.06 0.14 5 1.00 0.91 0.52 0.02 0.18 0.04 6 1.00 0.94 0.58 0.08 0.25 0.17 0.20 C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 18

4 Eigenwertberechung (4.1) Eine Matrix H R N N heißt Hessenberg-Matrix, wenn H[n + 2 : N,n] = 0 N n 1 für n = 1,...,N 2. (4.2) Sei A R N N. Dann existiert eine orthogonale Matrix Q R N N, so dass H = QAQ T eine Hessenberg-Matrix ist. Die Berechnung benötigt O(N 3 ) Operationen. Wenn A symmetrisch ist, dann ist H eine Tridiagonalmatrix. (4.3) Sei A R N N symmetrisch, tridiagonal, und irreduzibel, d.h. A[n + 2 : N,n] = A[n,n + 2 : N] T = 0 N n 1 und A[n 1,n] = A[n,n 1] 0. Dann hat A paarweise verschiedene reele Eigenwerte λ 1 < λ 2 < < λ N. (4.4) Inverse Iteration mit variablem Shift S0) Wähle z 0 R N, z 0 0 N, ε 0. Setze k = 0. S1) Setze w k = 1 z k 2 z k, µ k = r(a,w k ). S2) Falls Aw k µ k w k 2 ε STOP. S3) Berechne z k+1 = (A µ k I N ) 1 w k. S4) Setze k := k + 1, gehe zu S1). Wenn der Startvektor z 0 hinreichend nahe bei einem Eigenvektor v m mit isoliertem Eigenwert λ = λ m liegt, konvergiert die Iteration kubisch, d.h. µ k λ C µ k λ 3. C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 19

4 Eigenwertberechnung: QR-Iteration mit Shift Sei A R N N symmetrisch. S0) Berechne A 0 = QAQ T tridiagonal (Hessenberg-Transformation). Wähle ε 0. Setze k = 0. S1) Falls A k [n + 1,n] ε für ein n: getrennte Eigenwertberechnung für A k [1 : n,1 : n] und A k [n + 1 : N,n + 1 : N]. S2) Berechne d k = 1 2 (A k [N 1,N 1] A k [N,N]) und s k = A k [N,N] + d k sgn(d k ) dk 2 + A k [N 1,N] 2. S3) Berechne QR-Zerlegung Q k R k = A k s k I N und setze A k+1 = R k Q k + s k I N. S4) Setze k := k + 1, gehe zu S1). Es gilt A k+1 = Q T k A k Q k. Also haben A k+1 und A k disselben Eigenwerte. Falls der shift s k = A k [N,N] gewählt wird, entspricht die QR-Iteration der Inversen Iteration mit variablem Shift und Startvektor z 0 = e N. C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 20

Impliziter QR-Algorithmus mit Wilkinson-Shift Für symmetrische Matrizen (o.b.d.a. Hessenbergform) lässt sich der QR-Algorithmus so modifizieren, dass die QR-Zerlegung in jedem Iterationsschritt nur implizit durch N 1 Transformationen mit Givensrotationen durchgeführt werden muss. Durch den Wilkinson-Shift (siehe Golub, van Loan) erhalten wir außerdem kubische Konvergenz, im Gegensatz zur linearen Konvergenz des QR-Algorithmus ohne Shift. Dabei können wir eine Toleranz für die verschwindenden Nebendiagonalelemente vorgeben. Wir betrachten A = tridiag( 1,2, 1) R N N. Für die Toleranz tol = ε braucht der Algorithmus die folgende Anzahl von Iterationen: N Iterationen 100 281 200 532 500 1120 1000 2310 Das sind im Schnitt weniger als 3 Iterationen pro Eigenwert. Der maximale Fehler bei diesen Berechnungen beträgt zwischen 10 13 und 10 14. C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 21

5 Iterationsverfahren für lineare Gleichungen (5.1) S0) Wähle x 0 R N und ε > 0. Berechne r 0 = b Ax 0. Setze k = 0. S1) Falls r 0 ε STOP. S2) Berechne w k = Br k 1 x k+1 = x k + w k r k+1 = r k Aw k Setze k := k + 1 und gehe zu S1). Sei A = L + D + R. Dann gilt B = D 1 für das Jacobi-Verfahren und B = ( L + D ) 1 für das Gauß-Seidel-Verfahren. (5.2) Sei A,B R N N mit ρ(i N BA) < 1. Dann ist A invertierbar, und es gilt für alle b R N und alle Startvektoren x 0 R N konvergiert die Iteration x k+1 = x k + B(b Ax k ), k = 0,1,2,... gegen lim k x k = A 1 b. Dann exisitiert eine Vektor-Norm und dazu eine Matrix-Norm mit I N BA < 1. Damit ergibt sich x x k I N BA k x x 0 (lineare Konvergenz). Software: z.b. http://www.cise.ufl.edu/research/sparse/suitesparse C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 22

5 Iterative Lösungsverfahren: Krylov-Verfahren Sei, V ein Skalarprodukt in V = R N. S0) Wähle x 0 R N. Berechne r 0 = b Ax 0, z 1 = Br 0, h 10 = z 1 V und v 1 = 1 h 10 z 1. Setze k = 1. S1) Berechne w k = BAv k z k+1 = w k k h jk v j mit h jk = v j,w k V j=1 v k+1 = 1 h k+1,k z k+1 mit h k+1,k = z k+1 V S2) Setzte k := k + 1 und gehe zu S1). Dann ist v 1,...,v k eine Orthonormalbasis von dem Krylov-Raum V k = span{br 0,BABr 0,...,(BA) k 1 Br 0 } = {Q k y : y R k }, Q k = ( v 1... v k ). Es gilt BAv k = k+1 h jk v j, also BAQ k = Q k+1 H k mit H k = (h jm ) R k+1,k. j=1 GMRES-Verfahren: Wähle v,w V = v T w. cg-verfahren (A,B symmetrisch positiv definit): Wähle v,w V = v T Aw. C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 23

5 Iterative Lösungsverfahren: GMRES-Verfahren S0) Wähle x 0 R N, ε > 0. Berechne r 0 = b Ax 0, z 1 = Br 0, h 10 = z 1 2 und v 1 = 1 h 10 z 1. Setze k = 1. S1) Berechne w k = BAv k z k+1 = w k k h jk v j mit h jk = (v j ) T w k j=1 v k+1 = 1 h k+1,k z k+1 mit h k+1,k = z k+1 2 S2) Berechne y k R k mit ρ k = H k y k h 10 e 1 2 = min! Dabei ist H k = (h jm ) j=1,...,k+1, m=1,...,k R k+1,k. S3) Wenn ρ k < ε, setze x k = x 0 + k yj k v j j=1 STOP. S4) Setze k := k + 1 und gehe zu S1). (4.4) Es gilt ρ k = min z x 0 +V k B(b Az) 2. C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 24

5 Iterative Lösungsverfahren: cg-verfahren Seien A,B R N N symmetrisch und positiv definit. S0) Wähle x 0 R N, ε > 0. Berechne r 0 = b Ax 0, w 0 = Br 0, ρ 0 = (w 0 ) T r 0 und d 1 = w 0. Setze k = 0. S1) Falls ρ k ε STOP S2) Setze k := k + 1 und berechne u k = Ad k ρ α k = k 1 (u k ) T d k x k = x k 1 + α k d k r k = r k 1 α k u k w k = Br k ρ k = (w k ) T r k d k+1 = w k + ρ k ρ k 1 d k Gehe zu S1). ( (4.5) Es gilt x k κ(ba) 1 ) k x A 2 x 0 x A. κ(ba) + 1 C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 25

6 Iterationsverfahren für nichtlineare Gleichungen Sei F : R N R N differenzierbar. Sei x R N eine Nullstelle von F ( ), d.h. F (x ) = 0. Dann gilt 0 = F (x) + DF (x)(x x) + o(x x). Falls DF(x) invertierbar ist, gilt x = x DF (x) 1 F (x) + o(x x). Falls DF (x ) invertierbar ist, ist x Fixpunkt von Φ F (x) = x DF (x) 1 F (x), d.h. Φ F (x ) = x. Newton-Verfahren: Wähle x 0 R N und definiere x k+1 = Φ F (x k ) für k = 0,1,2,... (6.1) Sei DF (x ) invertierbar. Dann ist das Newton-Verfahren für alle x 0 hinreichend nahe bei x wohldefiniert, und x k konvergiert gegen x. Wenn zusätzlich F ( ) glatt genug ist, ist die Konvergenz quadratisch, d.h. es existiert C > 0 mit x k+1 x C x k x 2. Wenn DF (x) 1 durch B R N N approximiert wird, erhalten wir eine einfache Fixpunktiteration mit Φ F,B (x) = x BF(x). (6.2) Sei ρ(i N B DF(x )) < 1. Dann gilt: Für alle x 0 hinreichend nahe bei x konvergiert die einfache Fixpunkt-Iteration x k+1 = Φ F,B (x k ) linear gegen x. (6.3) Iterationsverfahren für nichtlineare Gleichungen mit Dämpfungsstrategie S0) Wähle x 0 R N, θ (0,1), s max N und ε > 0. Setze k = 0. S1) Falls F (x k ) ε STOP (Konvergenz) S2) Wähle B k DF (x k ) 1 und berechne c k = B k F (x k ). S3) Wähle t k {1,θ,θ 2,...,θ smax } mit F (x k + t k c k ) < F (x k ). Falls F (x k + t k c k ) F (x k ) für t k = θ smax STOP (keine Konvergenz) S4) Setze x k+1 = x k + t k c k, k := k + 1 und gehe zu S1). C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 26

7 Polynom-Interpolation (7.1) Lagrange-Interpolation Zu Stützstellen t 0 < t 1 < < t N und Werten f 0,f 1,...,f N R existiert genau ein Polynom P P N mit P(t n ) = f n. N t t Konstruktion: Definiere die Lagrange-Basis L n (t) = k t n t, setze P(t) = N k=0, k n k f n L n (t). n=0 (7.2) Hermite-Interpolation Zu t 0 t 1 t N definiere d n = max{n k : t k = = t n }. Zu Werten f 0,f 1,...,f N R existiert genau ein Polynom P P N mit 1 dn! ( ddt ) dn P(tn ) = f n. Konstruktion: Zu t 0 t 1 t N definiere die Newton-Basis durch ω 0 1, ω 1 (t) = t t 0, ω k (t) = (t t k 1 )ω k 1 (t) P k, k = 1,...,N. Nun definiere f [t n ] = f n und f [t k,...,t n ] = f n falls t k = t k+1 = = t n. Dann berechne rekursiv f [t k,...,t n ] = f [t k+1,...,t n] f [t k,...,t n 1 ] t n t k. Dann ist P(t) = N f [t 0,...,t k ]ω k (t) das Interpolationspolynom. k=0 Neville-Schema: Sei P 0 P n k 1 Interpolation zu f k,...,f n 1 an t k t n 1, und sei P 1 P n k 1 Interpolation zu f k+1,...,f n an t k+1 t n. Dann ist P(t) = t t k t n t P k 1 (t) + tn t t n t P k 0 (t) Interpolation zu f k,...,f n an t k t n. (7.3) Sei f C N+1 (a,b), t,t n (a,b), und f n = 1 d n! ( ddt ) dn f (tn ). Dann gilt für den Interpolationsfehler f (t) P N (t) = 1 (N+1)! ( ddt ) N+1f (τ) ωn+1 (t) mit τ (a,b). C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 27

Runge-Phänomen bei Interpolation Wir betrachten das Interpolationsproblem für äquidistant verteilte Stützstellen. Wir würden erwarten, dass für eine genügend glatte Funktion die Folge der Interpolationspolynome, gehörig zu immer kleinerem Stützstellenabstand, in der Maximumsnorm gegen die Funktion konvergiert. Dass dem nicht so ist zeigt zum Beispiel das sogenannte Runge- Phänomen für die Funktion f : [ 5,5] R, f (x) := 1 1 + x 2. Der maximale Fehler wird hier sogar immer größer, je höher der Grad des Interpolationspolynoms ist. Für den Grad 10 ist das zugehörige Interpolationspolynom eingezeichnet. Der Fehler wird offenbar durch die starke Oszillation verursacht, dies verschlimmert sich noch mit steigendem Polynomgrad. C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 28

Das Neville-Schema Berechnung der Koeffizienten function f = coeff(t,f) N = length(t); for k=1:n-1 for n=n:(-1):k+1 if t(n) ~= t(n-k) f(n) = (f(n) - f(n-1)) / (t(n) - t(n-k)); end end end return function y = eval_newton(t,b,x) N = length(t); y = b(1); p = 1; for n=2:n p = p * (x - t(n-1)); y = y + b(n) * p; end return C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 29

Neville-Schema Auswertung des Polynoms function y = eval_neville(t,f,x) N = length(t); for k=1:n-1 for n=n:(-1):k+1 if t(n) ~= t(n-k) f(n) = ((x-t(n-k))*f(n)+(t(n)-x)*f(n-1)) / (t(n)-t(n-k)); end end end y = f(n); return C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 30

8 Spline-Interpolation (8.1) a) Zu einer Zerlegung : a = t 0 < t 1 < < t N = b von [a,b] definiere den kubischen Spline-Raum S 3 ( ) = { S C 2 [a,b]: S n := S [tn 1,t n] P 3, n = 1,...,N }. b) S S 3 ( ) heißt interpolierender Spline zu f C 0 [a,b] wenn S(t n ) = f (t n ). (8.2) Es gilt dims 3 ( ) = 3 + N. Mit einer der Randbedingungen (I) Natürliche Randbedingung S (a) = 0 und S (b) = 0 (II) Hermite-Randbedingung zu f C 1 [a,b] S (a) = f (a) und S (b) = f (b) (III) Periodische Randbedingungen S (a) = S (b) und S (a) = S (b) ist die Spline-Interpolation S S 3 ( ) zu f eindeutig lösbar. (8.3) Die Momente M n = S (t n ) von S S 3 ( ) zu f sind eindeutig durch und µ n = µ n M n 1 + M n + λ n M n+1 = 3f [t n 1,t n,t n+1 ] h n 2(h n + h n+1 ), λ h n = n+1 bestimmt und es gilt 2(h n + h n+1 ) S n (t) = M n(t t n 1 ) 3 + M n 1 (t n t) 3 + f (t n) + f (t n 1 ) h2 n 6h n 2 12 (M n + M n 1 ) ( f (tn ) f (t + n 1 ) h )( n h n 6 (M n M n 1 ) t t n + t ) n 1. 2 (8.4) Sei f C 4 [a,b]. Dann gilt für die Spline-Interpolation S f h 4 f. C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 31

Spline-Interpolation mit Matlab n = 7; x = rand(n,1); y = rand(n,1); plot(x,y,. ) axis([-0.1 1.1-0.1 1.1]); t = 1:n; ts = 1:1/10:n; xs = spline(t,x,ts); ys = spline(t,y,ts); hold on; plot(xs,ys, r ); hold off; C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 32

9 Trigonometrische Interpolation und FFT (9.1) Sei f : R C eine 2π-periodische stetige Funktion und N = 2 P. Sei t n = n 2π N und f n = f (t n ). Dann existiert genau ein trigonometrisches Interpolationspolynom N 1 T N (t) = c n exp(int), n=0 c n C mit T N (t n ) = f n für n = 0,...,N 1. Es gilt c k = 1 N N 1 f n ω kn, n=0 ω = exp(i2π/n). Die Koeffizienten lassen sich rekursiv mit O(N logn) Operationen berechnen: N 1 f n ω kn = n=0 N/2 1 m=0 N/2 1 f 2m ξ km + ω 1 f 2m+1 ξ km, ξ = ω 2. m=0 Für s-mal stetig differenzierbare Funktionen konvergieren die Koeffizienten c n gegen die Fourier-Koeffizienten ˆfk = 1 2π f (t)exp(ikt)dt, 2π 0 und es existiert eine Konstante C s > 0 mit ( d ) ( sf 2π 1/2 f T N L2 (0,2π) C s N s L2(0,2π), g dt L2(0,2π) = g(t) dt) 2. 0 C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 33

FFT mit Matlab Fs = 1000; % Sampling frequency T = 1/Fs; % Sample time L = 1000; % Length of signal t = (0:L-1)*T; % Time vector % Sum of a 50 Hz sinusoid and % a 120 Hz sinusoid x = 0.7*sin(2*pi*50*t)+sin(2*pi*120*t); y = x+2*randn(size(t)); % plus noise plot(fs*t(1:50),y(1:50)) title( Signal Corrupted Random Noise ) xlabel( time (milliseconds) ) NFFT = 2^nextpow2(L); % Next power of 2 from length of y Y = fft(y,nfft)/l; f = Fs/2*linspace(0,1,NFFT/2+1); % Plot single-sided amplitude spectrum. plot(f,2*abs(y(1:nfft/2+1))) title( Single-Sided Amplitude Spectrum of y(t) ) xlabel( Frequency (Hz) ) ylabel( Y(f) ) C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 34

10 Numerische Integration (10.1)Sei [a,b] R ein Intervall, und sei Ξ [a,b] eine endliche Menge mit #Ξ = N. Dann existiert genau eine Quadratur Q Ξ : C[a,b] R, Q Ξ (f ) = ω ξ f (ξ ) ξ Ξ mit Gewichten ω ξ R zu den Stützstellen ξ Ξ, die für Polynome vom Grad N 1 exakt ist: b Q Ξ (P) = P(t)dt, P P N 1. a t η Konstruktion: Sei L ξ (t) = η Ξ\{ξ } ξ η. Dann gilt ω ξ = b a L ξ (t)dt. (10.2)Es gibt keine Quadratur Q Ξ mit #Ξ = N, die für Polynome P P 2N exakt ist. Es gibt genau eine Quadratur G N mit N Stützstellen, die für Polynome P P 2N 1 exakt ist. Wähle dazu die Nullstellen des Orthogonalpolynoms L N P N bzgl. (f,g) = b a f (t)g(t)dt. (10.3)Sei Q Ξ eine Quadratur, die für Polynome P P K 1 exakt ist. Dann existiert C > 0 mit b ( d ) K Q Ξ (f ) f (t)dt C f a dt (10.4) Für die summierte Trapezregel ( 1 M 1 T M (f ) = h 2 f (a) + f (a + mh) + 1 ) 2 f (b) m=1 gilt TM (f ) b a f (t)dt C h 2 f. mit h = b a M C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 35

10 Extropolierte Trapezsummen (Romberg) Die Trapezsummen lassen sich extrapolieren: Setze T k0 = T 2 k M (f ) und definiere rekursiv T ki = T k,i 1 + 1 4 i 1 (T k,i 1 T k 1,i 1 ), i = 1,...,m und k = i,...,m. Dann ist T mk ist für Polynome P P 2k+1 exakt. 1 1 Beispiel: Approximiere 0 1 + t 2 dt = π 4 Neville-Schema zur Extrapolation von T k0 = T 2 k+4 T 00 = 0.785235403010347 T 01 = 0.785357473293744 T 11 = 0.785398163388209 T 02 = 0.785387990871414 T 12 = 0.785398163397304 T 22 = 0.785398163397910 T 03 = 0.785395620265938 T 13 = 0.785398163397446 T 23 = 0.785398163397456 T 33 = 0.785398163397449 Konvergenzabschätzung durch Vergleich von Trapezsummen T 01 T 00 = 0.00012207028 T 02 T 01 = 0.00003051757 T 12 T 11 = 0.0000000000090942 T 03 T 02 = 0.00000762939 T 22 T 12 = 0.0000000000001426 Fehler T 00 π 4 = 0.00016276038 T 01 π 4 = 0.00004069010 T 11 π 4 = 9.2390539e 12 T 02 π 4 = 0.00000101725 T 12 π 4 = 1.4477308e 13 T 22 π 4 = 4.6151971e 13 T 03 π 4 = 0.00000025431 T 13 π 4 = 2.1094237e 15 T 23 π 4 = 7.4384942e 15 T 33 π 4 = 2.2204460e 16 C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 36

11 Numerische Integration von Differentialgleichungen (11.1)Sei t 0 R und T > 0. Zu einem Anfangswert u 0 R M und f C([t 0,t 0 + T ] R M,R M ) suchen wir eine Lösung u C 1 ([t 0,t 0 + T ],R M ) der Anfangswertaufgabe u(t) = f ( t,u(t) ) für t [t 0,t 0 + T ] und dem Anfangswert u(t 0 ) = u 0. (11.2)Wenn L > 0 existiert mit f (t,w) f (t,z) L w z, dann gilt für zwei Lösungen u(t) = f ( t,u(t) ) und v(t) = f ( t,v(t) ) u(t) v(t) exp(l(t t 0 )) u(t 0 v(t 0 ) für t t 0. Daher ist die Lösung der Anfangswertaufgabe eindeutig. (11.3)Klassisches Runge-Kutta-Verfahren: Sei t n = t 0 + nτ, u 0 = u 0 und setze k 1 = f (t n 1,u n 1 ) k 2 = f (t n 1 + τ 2,un 1 + τ 2 k 1) k 3 = f (t n 1 + τ 2,un 1 + τ 2 k 2) k 4 = f (t n 1 + τ,u n 1 + τk 3 ) u n = u n 1 0 + τ 6 (k 1 + 2k 2 + 2k 3 + k 4 ). Dann gilt u(t n ) u n C exp(l(t n t 0 )τ 4. (11.3)Implizites Euler-Verfahren: In jedem Schritt bestimme u n als Lösung der nichtlinearen Gleichung u n = u n 1 + τf (t n,u n ). Dann gilt u(t n ) u n C exp(l(t n t 0 )τ. C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 37

11 Simulation: Radioaktiver Zerfall u = λ u N exakt explizites Eulerverfahren implizites Eulerverfahren Mittelpunktsregel u n = u n 1 + τf (u n 1 ) u n = u n 1 + τf (u n ) u n = u n 2 + 2τf (u n 1 ) 4 0.50000 0.46711 0.52770 0.51266 8 0.50000 0.48431 0.51440 0.50323 16 0.50000 0.49233 0.50735 0.50081 32 0.50000 0.49621 0.50371 0.50020 64 0.50000 0.49811 0.50187 0.50005 O(1/N) O(1/N) O(1/N 2 ) Table: Vergleich der Konvergenzordnung c(t n ) c n = O(N β ) = O(h β N ) im Zeitintervall [0,5730]. N = 5 N = 100 Figure: Stabilität der numerischen Approximation. Vergleich im Zeitintervall [0,57300] für N = 5,100. C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 38

ODE mit Matlab function vdpode(mu) tspan = [0; max(20,3*mu)]; y0 = [2; 0]; options = odeset( Jacobian,@J); [t,y] = ode15s(@f,tspan,y0,options); figure; plot(t,y(:,1)); title([ Solution of van der Pol Equation, \mu = num2str(mu)]); xlabel( time t ); ylabel( solution y_1 ); axis([tspan(1) tspan(end) -2.5 2.5]); function dydt = f(t,y) dydt = [ y(2) MU*(1-y(1)^2)*y(2)-y(1) ]; end function dfdy = J(t,y) dfdy = [ 0 1-2*MU*y(1)*y(2)-1 MU*(1-y(1)^2)]; end end C. Wieners: Einführung in die Numerische Mathematik für Studierende der Fachrichtung Informatik und Ingenieurwissenschaften 39