Zusammenfassung Numerische Mathematik für Elektrotechniker RWTH Aachen, SS 2006, Prof. Dr. W. Dahmen c 2006 by Sebastian Strache, Ralf Wilke Korrekturen bitte an Ralf.Wilke@rwth-aachen.de 27. August 2006 Inhaltsverzeichnis 1 Vorwort 2 2 Kondition und Stabilität 2 2.1 Elementare Fehlerfortpflanzung........................... 2 2.2 Anwendung...................................... 2 3 Lineare Gleichungssysteme 2 3.1 LR-Zerlegung..................................... 2 3.1.1 ohne Pivotisierung.............................. 2 3.1.2 mit Pivotisierung............................... 3 3.1.3 mit Äquilibirierung.............................. 3 3.2 Cholesky Verfahren.................................. 4 3.3 Givens-Rotation.................................... 4 3.4 Verstärkungsfaktoren:................................ 6 3.5 Normen........................................ 6 4 Lineare Ausgleichrechnung 7 4.1 Normalengleichung.................................. 7 4.2 Merkmale für positiv definit........................... 7 5 Nichtlin. Gleichungssysteme, iterative. Lösungsverfahren 8 5.1 Banach scher Fixpunktsatz.............................. 8 5.1.1 Fehlerabschätzung.............................. 8 5.2 Newton......................................... 9 5.2.1 A-posteriori Fehlerabschätzung...................... 9 5.3 Gauß-Newton..................................... 10 6 Polynomiteration 10 6.1 Lagrange sche Grundpolynome........................... 10 6.2 Newton-Form..................................... 10 6.3 Fehlerabschätzung auf [a, b]............................. 10 1
3 LINEARE GLEICHUNGSSYSTEME 6.4 Neville-Aitken-Schema................................ 11 7 Bewertung 11 7.1 Newton......................................... 11 7.2 Neville-Aitken-Schema................................ 11 7.3 Horner-Schema.................................... 11 1 Vorwort Das folgende Dokument ist das Ergebnis unserer Zusammenfasssung der Algorithmen und Ideen für NuMa. Es darf ausschließlich kostenlos weitergegeben werden. Es wird keine Garantie für die Richtigkeit gewährt; Verwendung auf eigene Gefahr. 2 Kondition und Stabilität 2.1 Elementare Fehlerfortpflanzung Sei x f (x) gegeben. Zwischen dem rel. Fehler der Eingabegröße r x = x x x und dem rel. Fehler der Ausgabe r f = gibt es den Zusammenhang: f ( x) f (x) f (x) f ( x) f (x) f (x) = f (ζ) x f (x) } {{ } Verstaerkungs f aktor κ rel : Kondition x x x In erster Näherung ist damit x f (x) κ rel (x) = f (x) 2.2 Anwendung Sei f (x), ein x 0 und ein relativer Fehler α von x 0 gegeben. Aufgabe: Schätzen Sie den rel. Fehler von f (x 0 ) ab. Lösung: κ rel (x 0 ) wie oben berechnen. Der rel. Fehler von f (x 0 ) ist r f = κ rel (x 0 ) α 3 Lineare Gleichungssysteme 3.1 LR-Zerlegung 3.1.1 ohne Pivotisierung Wie Gauß. Erzeugung durch Abzug der Spalten voneinander. In L stehen die Faktoren, mit denen die Spalten multipliziert wurden. In R stehen die restlichen Einträge, die Ergebnis vom Gauß-Algorithmus sind. 1. A = L R 2
3.1 LR-Zerlegung 3 LINEARE GLEICHUNGSSYSTEME 2. L y = b Vorwärtseinsetzen 3. R x = y Rückwärtseinsetzen 3.1.2 mit Pivotisierung Vorteil: Verbesserung der Stabilität Aufwand: 1 3 n3 Idee: Durch Vertauschen von Zeilen wird A so geändert, dass der für das Gauß-Verfahren aktuelle Eintrag der in der Spalte betragsgrößte ist. Dadurch wird die Kondition des Algorithmus verbessert. 1. P A = L R P ist Permutationsmatrix. Sie entsteht aus der Identität I durch Vertauschen der in A getauschten Zeilen. Dabei schreibt man am einfachsten die Identität zu Anfang des Verfahrens auf und vollzieht an ihr alle Permutations mit. 2. Anzahl der Vertauschungen det P = ( 1) 3. L y = P b 4. R x = y det A = det P 1 det R 3.1.3 mit Äquilibirierung 1 Idee: Erstellen einer Diagonal-Matrix D, welche Zeilennorm enthält. Dadurch werden die Zeilen im Verhältnis zu ihren Einträgen skaliert, was die Kondition des Algorithmus verbessert. Äquilibierung wird meist als Ergänzung zur Pivotisierung verwendet. 1. Zeilennormen. bestimmen = Addieren der Zeileneinträge 1 2. D = Diagonalmatrix mit Zeilennorm auf der Diagonale 3. D A = D b berechnen 4. mit oder ohne Pivotisierung weiterbehandeln Dabei beachten: L y = P D b }{{} schon berechnet R x = y 3
3.2 Cholesky Verfahren 3 LINEARE GLEICHUNGSSYSTEME 3.2 Cholesky Verfahren Aufwand: 1 6 n3 Zerlegung A = LDL T Einträge von L und D berechnen sich mit folgenden Formeln k 1 d k,k = a k,k l 2 k,j d j,j j=1 j=1 l i,k = 1 k 1 (a i,k l i,j d j,j l k,j ) mit i > k d k,k 1. Berechnung 1. Spalte i = 1 : d 1,1, l 2,1, l 3,1, l 4,1 2. Berechnung 2. Spalte i = 2 : d 2,2, l 3,2, l 4,2 3. Berechnung 3. Spalte i = 3 : d 3,3, l 4,3 4. Berechnung 3. Spalte i = 3 : d 4,4 5. L y = b 6. D z = y 7. L T x = z 3.3 Givens-Rotation Auch QR-Zerlegung genannt 4 Aufwand: 3 n3 Idee: Erzeugung von Nullen in der Matrix durch Drehung eines 2x2-Vektors derart, dass eine Koordinate auf eine Koordinaten-Achse fällt und damit 0 ist. Vorteil: Q ändert die Kondition nicht. Das bedeutet, wir können Nullen erzeugen, ohne die Konditionszahl ( ) zu verändern. c s Dies ist die Drehmatrix. s c Aus geometrischen Überlegungen zeigt sich: c = x r, s = y r und r = x 2 + y 2. y ist der Wert, der durch die Drehung zu 0 werden soll. Ist das Problem größer als die 2x2 Matrix, so ist diese in eine Einheitsmatrix so einzubetten. Dabei ist die cs-matrix so einzubringen, dass sie dass für diesen Schritt gewählte y zu 0 dreht. Ziel der Verfahrens ist es, eine obere Dreiecksform zu erzielen. Tipp: Sei Z 1,neu die erste neue Zeile nach der Multiplikation mit der cs-matrix und Z 2,neu die zweite. Es gilt: Z 1,neu = c Z 1 + s Z 2 Z 2,neu = s Z 1 + c Z 2 4
3.3 Givens-Rotation 3 LINEARE GLEICHUNGSSYSTEME Ergänzende Worte Gegeben: A R n k, x R k, b R n Ziel: Finde ein x R k, so dass Ax b 2 = minimal. Geometrische Interpretation: U := {y = Ax R n x R k } ist ein Unterraum im R n (der Dimension Rang(A)), zum Beispiel: A R 3 2 und y = Ax ist Ebene im R 3. Dann ist min{ Ax b 2 x R k } = min{ y b 2 y U} der Abstand vom Punkt b zu diesem Untervektorraum. Mit anderen Worten: Wir suchen den Lotfußpunkt Ax 0 von b auf U. Dann ist Ax 0 b 2 das gesuchte Minimum. Die Givens-Roation ist eine Drehung des R n, die bewirkt, dass der gedrehte Unterraum GU = {(GA)x x R k } nicht irgendwie schief im R n rumhängt, sondern von den ersten Einheitsvektoren (1,0,..., 0), (0,1,0,..., 0) etc. aufgespannt wird. Im Beispiel ist GU die x-y-ebene im R 3. Das ist insofern praktisch, weil 1. Ax b 2 = G(Ax b) 2 = (GA)x Gb 2 2. Der Lotfußpunkt von Gb dirket auf einen von den ersten Einheitsvektoren aufgespannten Untervektorraum direkt abgelesen werden kann. Ist nämlich wie im Beispiel GU = {(a, b, 0) a, b R} und Gb = (c, d, e), so ist der Lotfußpunkt von Gb auf GU der Punkt (c, d, 0), und der Abstand von Gb zu GB ist Gb (c, d, 0) 2 = e. Allerdings will man ja nicht nur den Abstand herausbekommen, sondern auch das x, welches Ax b 2 minimiert. Dazu nun eine analytische Interpretation: (GA)x Gb 2 = n (k te Komponente) 2 k=1 liefert, dass man den Parameter x so wählen muss, um alle Komponenten, auf die x wirkt, zu 0 zu machen. Dann wird die Norm minimal, und es ist das x gefunden, welches Ax b 2 minimiert. Wissenswertes zu orthogonalen Matrizen Q T Q = QQ T = I = E Eigenschaften: det(q) = + 1 Qx 2 = x 2 x R Q 2 = 1 5
3.4 Verstärkungsfaktoren: 3 LINEARE GLEICHUNGSSYSTEME QA 2 = A 2 x R Das Produkt orthogonaler Matrizen ist eine orthogonale Matrix. 3.4 Verstärkungsfaktoren: f ( x) f (x) f (x) } {{ } rel. Fehler der Ausgabe Φ j (x) = f (x) x j = n Φ j (x) j=1 } {{ } x j f (x) x y x j x j } {{ } rel. Fehler der Eingabe Fehlerverstaerkung Φj κ rel (x) = max (x) j 3.5 Normen Betragsnorm: v 1 = n v i i=1 Maximumsnorm: Zeilensummennorm: Spaltensummennorm: v = max j=1,...,n A = max i=1,...,n A 1 = max j=1,...,n v j n a i,j j=1 n a i,j i=1 A 2 = λ max (A T A) κ(a) = A A 1 κ(a) A A < 1 (A + A) (x + x) = b + b x x ( A A K(A) 1 κ(a) A A r(x) = b A x Residuum e(x) = x x abs. Fehler + b b ) Ax x κ(a) b b 6
4 LINEARE AUSGLEICHRECHNUNG Wenn A symmetrische, positiv definite Matrix ist, so ist κ 2 (A) = κ 2 (A T λ max (A A) = T A) λ min (A T A) 4 Lineare Ausgleichrechnung 4.1 Normalengleichung Idee: Gegeben sei eine Wertetabelle, sowie eine vermutete Abbildungsvorschrift (Funktion) mit 2 Parametern α und β. Ziel ist es, die Parameter so zu bestimmen, dass die Funtionen die Einträge der Wertetabelle möglichst gut nachbildet (und natürlich auch gute Zwischenstellen liefert). z sei Vektor der Unbekannten in der zu bestimmenden Funktion, nicht der Vektor der Messdaten. Az b 2 min Einsetzen der Wertetabelle in die Funktion System von n 2 Gleichungen in α und β. Hieraus erstellt man durch Aufschreiben in Matrix-Form Az = b Az = b A T Az = A T b A T A und A T b berechnen und dann lösen Die Multiplikation mit A T sorgt dafür, dass genau so viele Zeilen verschwinden, dass A T A eine 2 2-Matrix ist. Somit ist aus dem ( ) α (vielfach) überbestimmten Gleichungssystem eines geworden, welches für z = β eine eindeutige Lösung liefert. Mit Cholesky lösen κ = κ(a) 2 (nicht unbedingt zu empfehlen) Mit Givens (QR) lösen κ = κ(a). Residuum ist b 2 2 mit b 2 als Teil von b, welcher dem Nullteil von QR gegenübersteht. Kondition eines linearen Ausgleichsproblems bzgl. eines Störung in b ergibt: x x 2 x 2 4.2 Merkmale für positiv definit alle Eigenwerte > 0 κ 2 2(A) cos Θ b b b 2 κ 2 (A) = κ 2 (A T A) κ(a T A) = λ max(a T A) λ min (A T A) cos Θ = Ax b 2 Choleski-Zerlegung A = LDL T exisitiert mit allen Einträgen aus D > 0 7
5 NICHTLIN. GLEICHUNGSSYSTEME, ITERATIVE. LÖSUNGSVERFAHREN 5 Nichtlin. Gleichungssysteme, iterative. Lösungsverfahren 5.1 Banach scher Fixpunktsatz Ordnung p = 1 Umformen nach x =... = Φ(x). D sei Gebiet. Bedingungen, damit Fixpunktproblem (x, x ) = Φ(x, y ) eine eindeutige Lösung in D besitzt sind: 1. D geschlossen und konvex, oder R n 2. Φ ist Selbstabbildung auf D Φ(D) D Dabei ist zur Ermittlung der Schranken des Wertebereichs nur eine Schranke zu finden, so dass Φ noch Selbstabbildung ist. Es ist also nicht unbedingt die kleinste Schranke zu finden. Damit kann bei der Bestimmung des Wertebereichs der worst case eines jeden Terms angenommen werden, auch wenn hierzu x gleichzeitig verschiedene Werte annehmen müsste. 3. Φ ist Kontraktion auf D: Φ (x) L < 1, im Mehrdim.: Φ (x) }{{} L < 1, x D Jacobi Matrix Die Abschätzung kann man einfach dadurch ausführen, dass man wie oben den worst case für alle enthaltenen Terme annimmt. Dabei kann x auch hier gleichzeitig verschiedene Werte annehmen. Man findet dadurch eine Schranke. Ist diese kleiner 1, so hat man damit die Kriterien zur Anwendung des Banach schen Fixpunktsatzes erfüllt. Falls nicht, so muss man eine weitere Schranke suchen. Viel Spaß... Verfahren: mit Startwert x k D beliebig. x k+1 = Φ(x k ) 5.1.1 Fehlerabschätzung Es sei ein Fixpunkt-Problem Φ(x) = x eines Gleichungssystems gegeben. Außerdem sei ein Startwert x 0 und eine Genauigkeit ɛ vorgegeben. Frage: Wieviele Iterationen k sind nötig, um die Genauigkeit ɛ zu erreichen? Berechne x 1 = Φ(x 0 ) Mit der a-priori-fehlerabschätzung x k x Lk 1 L x 1 x 0 ergibt sich hier mit L als Lipschitzkonstante von Φ x 1 x 0 k >= ln ɛ(1 L) 8 1 ln ( 1 L )
5.2 Newton 5 NICHTLIN. GLEICHUNGSSYSTEME, ITERATIVE. LÖSUNGSVERFAHREN Man kann also nach nur einem Iterations-Schritt schon abschätzen, wie viele Durchläufe man für eine vorgegeben Genauigkeit durchführen muss. Die a-posteriori-fehlerabschätzung lautet bei der Bildung von Φ(x k ) 5.2 Newton x k x L L 1 x k x k 1 Idee: Gesucht ist Nullstelle von f. Durch iterative Addition/Subtraktion von f f zum Startwert x 0 hofft man, näher an die Nullstelle zu kommen. Voraussetzungen: Genau wie beim Banach schen Fixpunktsatz Verfahren für skalare Funktion: x k+1 = x k f (x k) f (x k ) Wenn die gesuchte Nullstelle eine Nullstelle zweiter Ordnung ist, so kann lokal quadratische Konvergenz erreicht werden, indem das Verfahren modifiziert wird zu: Verfahren für Systeme (normal) 1. Berechne f (x k ), f (x k ) (Jacobi-Matrix) 2. Löse f (x 0, y 0 ) } {{ } Jacobi Matrix 3. x 1 = x 0 + x 0 x 0 = f (x 0, y 0 ) x k+1 = x k 2 f (x k ) f (x k ) für Systeme (vereinfacht) Die Vereinfachung besteht darin, dass die Jacobi-Matrix nur für den Startwert x 0 einmal berechnet und in der folgenden Iteration fortwährend verwendet wird. 5.2.1 A-posteriori Fehlerabschätzung Quadratische Konvergenz x x k x k+1 x k d.h. der Abstand des letzten Wertes x k von der wahren Nullstelle ist ungefähr gleich dem Abstand des letzten Wertes k k zum aktuellen k k1+ 9
5.3 Gauß-Newton 6 POLYNOMITERATION 5.3 Gauß-Newton nichtlineares Problem iterativ über lineare Probleme lösen 1. F(x k ), F (x k ) 2. Lösen des linearen Ausgleichsproblems F (x k ) s k F(x k ) 2 min 3. x k+1 = x k + s k 6 Polynomiteration 6.1 Lagrange sche Grundpolynome l i = k i=0 x x k x i x k k = 1,..., n l i (x k ) = δ i,k i k p n 1 (x) = n f (x k ) l k (x) Zur Ermittlung es Polynoms bei gegebener Wertetabelle siehe Übung 7 k=1 6.2 Newton-Form dividierte Differenzen ω k (x) = k (x x i ) k = 1,..., n ω o = 1 i=1 f [x 0,..., x n ] = f [x 1,..., x n ] f [x 0,..., x n 1 ] x n x 0 f [x i ] = F(x i ) = f i n 1 P n 1 (x) = c k ω k (x) mit c k = f [x 1,..., k k+1 ] k=0 6.3 Fehlerabschätzung auf [a, b] A-Priori: A-Priori: f (x) P( f x 0, x 1..., x n )(x) max k ln x [a,b] f (n+1) (x) (n + 1)! ( ) ɛ(1 L) 1 x 1 x 0 ln(l) max ω n+1(x) x [a,b] 10
6.4 Neville-Aitken-Schema 7 BEWERTUNG 6.4 Neville-Aitken-Schema Idee: Es sei eine Werte-Tabelle gegeben. Aufgabe ist es, an einer weiteren Stelle den Wert zu ermitteln. Die Umsetzung des Schemas in LaTeX ist mir zu komplziert. Vielleicht nach der Klausur. für 0 k i n. u = x P i,0 = f (ω i ) = f (x i ) Todo: horner schema P i,k = x x i k x i xi k P i,k 1 + x i x P i 1,k 1 x i x i k = P i,k 1 + u i u u i u i k (P i 1,k 1 P i,k 1 ) 7 Bewertung 7.1 Newton bei Änderung einer Stützstelle muss nur eine Reihe geändert werden. (Nicht wie bei Lagrange, wo alles neu berechnet werden muss. Stützstellen müssen nicht sortiert sein. 7.2 Neville-Aitken-Schema Gut, wenn nur 1 Stelle gesucht wird 7.3 Horner-Schema Gut, wenn viele Stellen gesucht werden (geringere Rechenaufwand) 11