Lineare Algebra - SAM - ETH Zürich
Lineare Algebra - SAM - ETH Zürich
Lineare Algebra - SAM - ETH Zürich
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
<strong>Lineare</strong> <strong>Algebra</strong> (2007)<br />
Kapitel 3 — LR–Zerlegung<br />
Speicherbedarf und Rechenaufwand<br />
Wie man unseren Beispielen aus Kapitel 1 entnimmt, siehe etwa<br />
Beispiel 1.9 auf Seite 1-5, lassen sich die im Laufe einer LR–<br />
Zerlegung erzeugten und noch gebrauchten Daten jederzeit in einem<br />
Datenfeld der Grösse n × n unterbringen. Die nicht-null Elemente<br />
von L (ausser die auf 1 normierten Diagonalelemente) kann man<br />
nämlich genau dort abspeichern, wo Nullen erzwungen werden.<br />
Bei Zeilenvertauschungen braucht man eine zusätzliche Kolonne,<br />
um zum Beispiel die ursprünglichen Zeilennummern abzuspeichern.<br />
Der Rechenaufwand für die LR–Zerlegung und das Vor- und Rückwärtseinsetzen<br />
für l verschiedene rechte Seiten ist genau gleich wie<br />
für die Gauss-Elimination gemäss Algorithmus 1.1 mit l Konstantenkolonnen.<br />
Es kommt nicht darauf an, ob man Restgleichungssysteme<br />
nachführt oder die kompakten Formeln aus Algorithmus 3.1<br />
benutzt. Es ist allerdings von Vorteil, wenn man die reziproken<br />
Pivotelemente r −1<br />
kk<br />
berechnet und abspeichert. Es sind dann total<br />
nur n Divisionen nötig. (Divisionen brauchen auf vielen Computern<br />
mehr Zeit als Multiplikationen.)<br />
Im j-ten Schritt von Algorithmus 1.1 braucht man dann<br />
1 Division für (a (j−1)<br />
jj ) −1 [Formel (1.10)]<br />
n − j Multiplikationen für die l kj [Formel (1.10)]<br />
(n − j) 2 Add. & Mult. für die a (j)<br />
ki<br />
l(n − j) Add. & Mult. für die b (j)<br />
k<br />
[Formel (1.11a)]<br />
[Formel (1.11b)]<br />
und für den k-ten Teilschritt des l-maligen Rückwärtseinsetzens<br />
l(n − k) Additionen für x k [Formel (1.12)]<br />
l(n − k + 1) Multiplikationen für x k [Formel (1.12)]<br />
Ersetzen wir in der letzten Formel den Index k durch j, so können<br />
wir alle Beiträge für festes j addieren:<br />
1 Division<br />
(n − j) 2 + (2l + 1)(n − j) + l Multiplikationen<br />
(n − j) 2 + 2l(n − j) Additionen<br />
Diese Zahlen sind zu summieren von j = 1 bis j = n (wobei es im<br />
letzten Schritt bloss eine Division im Hinblick auf das Rückwärtseinsetzen<br />
gibt). Wenn wir k := n − j setzen, so erhalten wir zum<br />
Beispiel für die Multiplikationen<br />
∑n−1<br />
(<br />
k 2 + k(2l + 1) + l ) =<br />
k=0<br />
n(n − 1)(2n − 1)<br />
6<br />
= 1 3 n3 + ln 2 + O(n) ,<br />
+<br />
n(n − 1)(2l + 1)<br />
2<br />
+ ln<br />
c○M.H. Gutknecht 30. September 2007 LA-Skript 3-7