Numerische Lineare Algebra - TU Chemnitz
Numerische Lineare Algebra - TU Chemnitz
Numerische Lineare Algebra - TU Chemnitz
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
<strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong><br />
Oliver Ernst<br />
Professur <strong>Numerische</strong> Mathematik<br />
Wintersemester 2013/14
Inhalt I<br />
1 Organisatorisches<br />
2 Einleitung<br />
2.1 Vorbemerkungen<br />
2.2 Eigenwertaufgaben in den Anwendungen<br />
3 Das QR-Verfahren<br />
3.1 Vektoriteration<br />
3.2 Unterraumiteration<br />
3.3 Reduktion auf Hessenberg-Gestalt<br />
3.4 QR Iteration mit impliziten Shifts<br />
3.5 Konvergenz der Unterraumiteration<br />
3.6 Konvergenz des QR-Verfahrens<br />
4 Hermitesche Eigenwertaufgaben<br />
4.1 Jacobi-Verfahren<br />
4.2 Bisektion<br />
4.3 Divide & Conquer - Verfahren<br />
4.4 Berechnung der Singulärwertzerlegung<br />
5 Anhang: Grundlagen aus der <strong>Lineare</strong>n <strong>Algebra</strong><br />
5.1 Eigenwerte<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 2 / 177
Inhalt II<br />
5.2 Störungstheorie<br />
5.3 Householder-Transformationen und Givens-Rotationen<br />
5.4 Winkel und Abstand zwischen Unterräumen<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 3 / 177
Inhalt<br />
1 Organisatorisches<br />
2 Einleitung<br />
3 Das QR-Verfahren<br />
4 Hermitesche Eigenwertaufgaben<br />
5 Anhang: Grundlagen aus der <strong>Lineare</strong>n <strong>Algebra</strong><br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 25 / 177
Einleitung<br />
Nach dem Satz von Abel-Ruffini sind Polynomgleichungen ab Grad 5 nicht durch<br />
Wurzelziehen lösbar. Die Nullstellen des Polynoms<br />
p(z) = z n + a n−1 z n−1 + · · · + a 1 z + a 0<br />
sind die Eigenwerte seiner Frobenius-Begleitmatrix<br />
⎡<br />
⎤<br />
0 −a 0<br />
1 0 −a 1<br />
A =<br />
. .. . .. ⎢<br />
.<br />
∈ C n×n .<br />
⎥<br />
⎣ 1 0 −a n−2<br />
⎦<br />
1 −a n−1<br />
Ein Verfahren zur Berechnung von Eigenwerten mit endlich vielen Schritten würde<br />
somit zu einer Formel für die Nullstellen eines Polynomes führen.<br />
Das in diesem Kapitel betrachtete Verfahren, die QR-Iteration, berechnet die Schur-<br />
Zerlegung einer n × n Matrix in O(n 3 ) Operationen.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 26 / 177
Inhalt<br />
1 Organisatorisches<br />
2 Einleitung<br />
3 Das QR-Verfahren<br />
3.1 Vektoriteration<br />
3.2 Unterraumiteration<br />
3.3 Reduktion auf Hessenberg-Gestalt<br />
3.4 QR Iteration mit impliziten Shifts<br />
3.5 Konvergenz der Unterraumiteration<br />
3.6 Konvergenz des QR-Verfahrens<br />
4 Hermitesche Eigenwertaufgaben<br />
5 Anhang: Grundlagen aus der <strong>Lineare</strong>n <strong>Algebra</strong><br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 27 / 177
Vektoriteration<br />
Der Prototyp aller numerischer Eigenwertverfahren ist die sog. Vektoriteration nach<br />
von Mises, auch Potenzmethode (engl. power method) genannt. Es beruht auf der<br />
Tatsache, dass für (nahezu) jeden Vektor q ∈ C n die Vektorfolge<br />
q, Aq, A 2 q, A 3 q, . . .<br />
zunehmend in Richtung eines Eigenvektors von A zum Eigenwert ρ(A) zeigt. In<br />
seiner einfachsten Form lautet das Verfahren wie folgt:<br />
Algorithmus 1 : Vektoriteration nach von Mises.<br />
Gegeben : A ∈ C n×n , q 0 ∈ C n .<br />
1 for k = 1 to . . . do<br />
2 z k ← Aq k−1<br />
3 q k ← z k /‖z k ‖ 2<br />
4 µ k ← q H k Aq k<br />
Wie man sieht, wird, allein schon um Gleitpunktüber-/unterlauf zu vermeiden, der<br />
Vektor zusätzlich in jedem Schritt normiert .<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 28 / 177
Vektoriteration<br />
Ist A diagonalisierbar mit Eigenwerten<br />
|λ 1 | ≤ |λ 2 | ≤ · · · ≤ |λ n−1 | < |λ n |<br />
und einer Basis {v j } n j=1 aus zugehörigen Eigenvektoren, so gilt mit Startvektor<br />
q = γ 1 v 1 + · · · + γ n v n ,<br />
so gilt für die Richtung der Iterierten im k-ten Schritt<br />
A k q = λ k 1γ 1 v 1 + · · · + λ k nγ n v n<br />
( ( ) k ( ) )<br />
k<br />
= λ k λ1<br />
λn−1<br />
n γ 1 v 1 + · · · + γ n−1 v n−1 + γ n v n<br />
λ n λ n<br />
≈ λ k nγ n v n .<br />
Sofern nur γ n ≠ 0 klingen die übrigen Komponenten der Iterierten (linear) ab mit<br />
mindestens der Rate |λ n−1 /λ n |.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 29 / 177
Vektoriteration<br />
Beispiel<br />
Wir betrachten die Matrix (MATLAB-Notation)<br />
A = diag(100 : −1 : 1) + 1 triu(ones(100), 1)<br />
3<br />
mit Eigenwerten<br />
Λ(A) = {1, 2, . . . , 100}.<br />
und wenden die Vektoriteration an mit Startvektoren<br />
q 0 = ones(100, 1) bzw.<br />
q 0 = ∑ 99<br />
j=1 v j.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 30 / 177
Vektoriteration<br />
Beispiel<br />
q 0 = ones(100, 1) ‖Aq k − µ k q k ‖ 2 ∡(q k , v 100 ) |100 − µ k |<br />
10 1<br />
10 −1<br />
10 −3<br />
10 −5<br />
0 200 400 600 800 1000<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 31 / 177
Vektoriteration<br />
Beispiel<br />
q 0 = v 1 + · · · + v 99 ‖Aq k − µ k q k ‖ 2 ∡(q k , v 100 ) |100 − µ k |<br />
∡(q k , v 99 ) |99 − µ k |<br />
10 0<br />
10 −2<br />
10 −4<br />
10 −6<br />
10 −8<br />
10 −10<br />
0 1000 2000 3000 4000 5000<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 32 / 177
Inhalt<br />
1 Organisatorisches<br />
2 Einleitung<br />
3 Das QR-Verfahren<br />
3.1 Vektoriteration<br />
3.2 Unterraumiteration<br />
3.3 Reduktion auf Hessenberg-Gestalt<br />
3.4 QR Iteration mit impliziten Shifts<br />
3.5 Konvergenz der Unterraumiteration<br />
3.6 Konvergenz des QR-Verfahrens<br />
4 Hermitesche Eigenwertaufgaben<br />
5 Anhang: Grundlagen aus der <strong>Lineare</strong>n <strong>Algebra</strong><br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 33 / 177
Unterraumiteration<br />
Vektoriteration und Unterraumiteration<br />
Die durch die Vektoriteration erzeugte Folge {q k } k≥0 kann ebenso als Folge eindimensionaler<br />
Unterräume<br />
S k = span{q k }, k ≥ 0,<br />
betrachtet werden, die dann einfach charakterisiert sind durch<br />
S 0 = span{q 0 }, S k = AS k−1 = A k S 0 , k ≥ 1.<br />
Die Konvergenz der Vektoriteration entspricht dann der Konvergenz der eindimensionalen<br />
Unterräume S k gegen den dominanten Eigenraum span{v n }.<br />
Eine naheliegende Verallgemeinerung, die Unterraumiteration (engl. subspace iteration),<br />
betrachtet dieselbe Iteration mit d-dimensionalen Unterräumen 1 < d ≤ n.<br />
Wir werden sehen: unter der Voraussetzung |λ n−d+1 | > |λ n−d | konvergiert diese<br />
Unterraumfolge für (nahzu) jeden Startraum S 0 gegen span{v n−d+1 , . . . , v n }, den<br />
d-dimensionalen invarianten Unterraum aufgespannt durch die Eigenvektoren der d<br />
betragsgrößten Eigenwerte, mit der linearen Rate |λ n−d /λ n−d+1 |.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 34 / 177
Unterraumiteration<br />
Invariante Unterräume<br />
Sei U ⊂ C n ein Unterraum sowie A ∈ C n×n . Mit AU bezeichnen wir den Vektorraum<br />
AU := {Au : u ∈ U }.<br />
Klar: dim AU ≤ dim U .<br />
Ein Unterraum heißt invariant (unter A, oder A-invariant), falls AU ⊂ U .<br />
Eigenräume von A sind A-invariant.<br />
Ist das Minimalpolynom von A gegeben durch p(λ) = ∏ m<br />
j=1 (λ − λ j) nj , so<br />
sind die Räume<br />
N (A − λ j I ) nj , j = 1, . . . , m,<br />
invariant. Ist A nicht diagonalisierbar, so besitzen diese invarianten<br />
Unterräume keine Basis aus Eigenvektoren.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 35 / 177
Unterraumiteration<br />
Invariante Unterräume<br />
Bilden die Spalten der Matrix U ∈ C n×d eine Basis des d-dimensionalen<br />
Unterraumes U , so ist U genau dann A-invariant, wenn es eine Matrix<br />
B ∈ C d×d gibt mit<br />
AU = UB. (3.1)<br />
Gilt (3.1), so ist jeder Eigenwert von B auch Eigenwert von A. Ist x<br />
Eigenvektor von B zum Eigenwert λ, so ist Ux Eigenvektor von A zum<br />
Eigenwert λ.<br />
Gilt (3.1) und sind die Spalten von U orthonormal, so ist B = U H AU .<br />
Ist der Unterraum U invariant unter A, so gilt<br />
U ⊥ ist invariant unter A H .<br />
Ist Λ(A) = {λ 1 , . . . , λ n } und sind λ 1 , . . . , λ d die zu U gehörenden<br />
Eigenwerte von A, so sind λ d+1 , . . . , λ n die zu U ⊥ gehörenden Eigenwerte<br />
von A H .<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 36 / 177
Unterraumiteration<br />
Verschieben des Ursprungs<br />
Für einen beliebigen Shift ρ ∈ C besitzt A − ρI dieselben Eigenvektoren wie A, zu<br />
den verschobenen Eigenwerten {λ − ρ : λ ∈ Λ(A)}. Ordnet man diese so, dass<br />
|λ 1 − ρ| ≤ |λ 2 − ρ| ≤ · · · ≤ |λ n − ρ|,<br />
so beträgt die Konvergenzrate der Unterraumiteration für A − ρI nun<br />
λ n−d − ρ<br />
∣λ n−d+1 − ρ∣<br />
und kann durch Wahl von ρ optimiert werden.<br />
Typischerweise wählt man als Shift bereits berechnete Näherungen an Eigenwerte<br />
(von A), und ändert diesen im Lauf der Iteration, die dann lautet<br />
S k = (A − ρ k I )S k−1 .<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 37 / 177
Unterraumiteration<br />
Verschieben des Ursprungs<br />
m Schritte einer solchen „instationären“ Iteration ergeben also zusammengefasst<br />
S m = (A − ρ m I )(A − ρ m−1 I ) · · · (A − ρ 1 I )S 0 =: p(A)S 0<br />
mit einem Polynom p vom Grad m, ein mehrfacher Shift der Ordnung m. Bei zyklischer<br />
Wiederholung dieser m Schritte spricht man von der durch p(A) erzeugten<br />
Iteration.<br />
Umnummerieren der Eigenwerte so, dass<br />
|p(λ 1 )| ≤ |p(λ 2 )| ≤ · · · ≤ |p(λ n )|<br />
ergibt nun die Konvergenzrate |p(λ n−d )/p(λ n−d+1 )|.<br />
In der Praxis ist die Iteration „noch instationärer“, d.h. es werden bei jedem Durchlauf<br />
m neue Shifts ρ j , also ein anderes Polynom gewählt. Wir betrachten im Weiteren<br />
der Einfachheit halber den stationären Fall mit einem festen Polynom.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 38 / 177
Unterraumiteration<br />
Orthogonalisierung<br />
Wir nehmen dabei zunächst an, dass in jedem Durchlauf die Dimension des Unterraums<br />
erhalten bleibt, d.h. dass<br />
N (p(A)) ∩ S k = {0}.<br />
Bilden die Vektoren s (k−1)<br />
1 , . . . , s (k−1)<br />
d<br />
eine Basis von S k−1 , so bilden<br />
p(A)s (k−1)<br />
1 , p(A)s (k−1)<br />
2 , . . . , p(A)s (k−1)<br />
d<br />
eine Basis von S k = p(A)S k−1 . Um zu verhindern, dass die so generierten Basisvektoren<br />
alle gegen einen dominanten Eigenvektor von p(A) konvergieren, werden<br />
diese in jedem Schritt orthogonalisiert:<br />
gegeben eine Orthonormalbasis q (k−1)<br />
1 , . . . , q (k−1)<br />
d<br />
von S k−1 , so bilden<br />
p(A)q (k−1)<br />
1 , p(A)q (k−1)<br />
2 , . . . , p(A)q (k−1)<br />
d<br />
eine Basis von S k .<br />
Durch anschliessende Orthonormalisierung (z.B. Gram-Schmidt) erhält man<br />
eine Orthonormalbasis q (k)<br />
1 , . . . , q (k)<br />
d<br />
von S k .<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 39 / 177
Unterraumiteration<br />
Simultane Iteration<br />
Es ergibt sich die sog. simultane Iteration (engl. simultaneous iteration).<br />
In Matrixnotation: Fasst man die orthonormalen Basisvektoren von S k−1 zu Q k−1 ∈<br />
C n×d zusammen, so lauten diese beiden Schritte<br />
S k = p(A)Q k−1 , S k = Q k R k ,<br />
wobei letzteres eine QR-Zerlegung von S k in eine Matrix Q k ∈ C n×d mit orthonormalen<br />
Spalten sowie einer invertierbaren oberen Dreiecksmatrix R k ∈ C d×d<br />
darstellt.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 40 / 177
Unterraumiteration<br />
Simultane Iteration<br />
Aufgrund der oberen Dreiecksstruktur von R k bilden die Spalten q (k)<br />
1 , . . . , q (k)<br />
d<br />
von<br />
Q k nicht nur eine Orthonormalbasis von p(A)S k−1 , es gilt vielmehr<br />
span{p(A)q (k−1)<br />
1 , . . . , p(A)q (k−1) } = span{q (k)<br />
1 , . . . , q (k)<br />
j }, j = 1, . . . , d.<br />
j<br />
Die simultane Iteration erzeugt somit eine Folge geschachtelter Unterräume der<br />
Dimensionen 1 bis d.<br />
Ist A diagonalisierbar und sind v 1 , . . . , v n die Eigenvektoren zu den Eigenwerten<br />
λ 1 , . . . , λ n von A mit<br />
so gilt<br />
|p(λ 1 )| ≤ |p(λ 2 )| ≤ · · · ≤ |p(λ n )|<br />
span{q (k)<br />
1 , . . . , q (k)<br />
j } → span{v n−j+1 , . . . , v n }, j = 1, . . . , d,<br />
sofern |p(λ n−j+1 )| > |p(λ n−j )|.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 41 / 177
Unterraumiteration<br />
QR-Iteration<br />
Das QR-Verfahren entspricht simultaner Iteration mit d = n beginnend mit<br />
Q 0 = I . Hierbei wird also eine Folge geschachtelter Unterräume erzeugt, die<br />
jeweils gegen invariante Unterräume von A konvergieren.<br />
Alternativ kann das QR-Verfahren als Folge von Orthonormalbasen<br />
betrachtet werden, bezüglich derer im Grenzfall die Matrix A Schur-Form<br />
annimmt. Es wird sozusagen das kartesische Koordinatensystem im C n<br />
geeignet „zurechtrotiert“.<br />
Neben QR-Zerlegung sind auch andere Transformationen gebrauchlich, etwa<br />
LR-Zerlegungen. Diese sollten nach Moglichkeit die vorhandene Struktur in A<br />
erhalten.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 42 / 177
Unterraumiteration<br />
Invarianzerkennung bei QR-Iteration<br />
Eine Moglichkeit, das Auftreten (hinreichend) invarianter Unterräume im Lauf der<br />
Iteration zu erkennen ist wie folgt: ist im k-ten Schritt span{q (k)<br />
1 , . . . , q (k)<br />
j } A-<br />
invariant, so sei<br />
A k := Qk H AQ k .<br />
Die A-Invarianz von span{q (k)<br />
1 , . . . , q (k)<br />
j } führt bei entsprechender Partitionierung<br />
zu<br />
[ ]<br />
A (k)<br />
1,1 A (k)<br />
1,2<br />
A k =<br />
A (k)<br />
2,1 A (k)<br />
2,2<br />
und, bei näherungsweiser Invarianz, A (k)<br />
2,1 ≈ O.<br />
mit<br />
A (k)<br />
2,1 = O<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 43 / 177
Unterraumiteration<br />
Invarianzerkennung bei QR-Iteration<br />
Diese Konvergenz wird in bei mehreren Unterräumen gleichzeitig auftreten, sodass<br />
A k gegen eine block obere Dreiecksform konvergiert:<br />
⎡<br />
⎤<br />
B 1,1 B 1,2 · · · B 1,m<br />
O B 2,2 · · · B 2,1<br />
A k → ⎢<br />
⎣<br />
.<br />
. .. . ..<br />
⎥<br />
. ⎦<br />
O · · · O B m,m<br />
mit (kleinen) quadratischen Diagonalblocken B 1,1 , . . . , B m,m , deren Eigenwerte<br />
leicht zu bestimmen sind. Im Extremfall besitzen alle Eigenwerte paarweise verschiedene<br />
Beträge und die Diagonalblöcke sind alle 1 × 1.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 44 / 177
Unterraumiteration<br />
Rekursive Darstellung bei QR-Iteration<br />
Die Ähnlichkeitstransformation A ↦→ Q H k AQ k muss nicht explizit berechnet werden:<br />
definiert man<br />
˜Q k := Q H k−1Q k ,<br />
so ergeben sich unmittelbar<br />
Q k = ˜Q 1 ˜Q2 · · · ˜Q k sowie A k = ˜Q H k A k−1 ˜Qk ,<br />
d.h. A k kann bei Vorliegen von ˜Q k aus A k−1 berechnet werden. Ferner gilt<br />
p(A k−1 ) = ˜Q k R k ,<br />
sodass ein QR-Schritt zusammengefasst werden kann als<br />
p(A k−1 ) = ˜Q k R k , A k = ˜Q H k A k−1 ˜Qk . (3.2)<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 45 / 177
Unterraumiteration<br />
Rekursive Darstellung bei QR-Iteration<br />
Fazit:<br />
Ein QR-Schritt entspricht einem Schritt simultaner Iteration angewandt auf<br />
die Unterräume span{e 1 , . . . , e j }, j = 1, . . . , n. Hierauf folgt ein unitärer<br />
Basiswechsel, bezüglich dessen die Unterräume wieder die Darstellung<br />
span{e 1 , . . . , e j }, j = 1, . . . , n besitzen.<br />
Bei der simultanen Iteration bleibt die Matrix A unverändert und die<br />
Unterräume ändern sich; beim QR-Verfahren ändert sich die Matrix und die<br />
Unterräume besitzen stets die Darstellung span{e 1 , . . . , e j }, j = 1, . . . , n,<br />
d.h. die Standardbasis wird zunehmend invariant bezüglich der aktuellen<br />
Matrix.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 46 / 177
Unterraumiteration<br />
Strukturerhaltung bei QR-Iteration<br />
Besitzt A spezielle Struktur (reell, Hermitesch, symmetrisch, unitär,<br />
symplektisch, etc.), so ist diese nach Möglichkeit bei jedem QR-Schritt zu<br />
erhalten.<br />
Bei reellen Matrizen kann man komplexe Rechnung durch Shiften mit<br />
konjugiert-komplexen Paaren vermeiden. In diesem Fall konvergiert A k gegen<br />
eine block obere Dreiecksmatrix mit Diagonalblöcken der Größe 1 × 1 bzw.<br />
2 × 2.<br />
Eine Struktur, die man bei jeder Matrix herstellen und in jedem QR-Schritt<br />
erhalten kann, ist obere Hessenberg-Gestelt. Dies bringt auch den<br />
wesentlichen Vorteil, dass ein QR-Schritt mit O(n 2 ) anstatt O(n 3 )<br />
arithmetischen Operationen durchgeführt werden kann. Gelingt es, alle<br />
invarianten Unterräume in O(n) Iterationen zu finden, erfordert das gesamte<br />
Verfahren somit O(n 3 ) Operationen.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 47 / 177
Inhalt<br />
1 Organisatorisches<br />
2 Einleitung<br />
3 Das QR-Verfahren<br />
3.1 Vektoriteration<br />
3.2 Unterraumiteration<br />
3.3 Reduktion auf Hessenberg-Gestalt<br />
3.4 QR Iteration mit impliziten Shifts<br />
3.5 Konvergenz der Unterraumiteration<br />
3.6 Konvergenz des QR-Verfahrens<br />
4 Hermitesche Eigenwertaufgaben<br />
5 Anhang: Grundlagen aus der <strong>Lineare</strong>n <strong>Algebra</strong><br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 48 / 177
Reduktion auf Hessenberg-Gestalt<br />
Eine Matrix A = [a i,j ] ∈ C n×n heißt obere Hessenberg-Matrix, falls<br />
a i,j = 0 falls i > j + 1.<br />
Im 6 × 6-Beispiel: (× bezeichnet beliebige Einträge, i.A. ≠ 0)<br />
⎡<br />
⎤<br />
× × × × × ×<br />
× × × × × ×<br />
0 × × × × ×<br />
⎢ 0 0 × × × ×<br />
⎥<br />
⎣ 0 0 0 × × × ⎦<br />
0 0 0 0 × ×<br />
Diese Gestalt ist stets durch eine untäre Ähnlichkeitstransformation erreichbar.<br />
Satz 3.1<br />
Zur jeder Matrix A ∈ C n×n existiert eine unitäre Matrix U ∈ C n×n sodass<br />
obere Hessenberg-Matrix ist.<br />
U H AU = H<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 49 / 177
Reduktion auf Hessenberg-Gestalt<br />
Algorithmus 2 : Transformation auf Hessenberg-Gestalt.<br />
Gegeben : A ∈ C n×n .<br />
1 for k = 1 to n − 2 do<br />
2 [v, β] ← house(A(k + 1 : n, k))<br />
3 A(k + 1 : n, k : n) ← (I − βvv H )A(k + 1 : n, k : n)<br />
4 A(1 : n, k + 1 : n) ← A(1 : n, k + 1 : n)(I − βvv H )<br />
Dabei liefert die Funktion [v, β] = house(x ) zu x ∈ C n einen Vektor v ∈ C n , den<br />
sog. Householder-Vektor, mit v 1 = 1 sowie β ∈ R sodass<br />
P = I − βvv H unitär und Px = ‖x ‖ 2<br />
x 1<br />
|x 1 | e 1.<br />
Dieser Algorithmus erfordert 10n 3 /3 Flops, 4n 3 /3 zusätzliche Flops falls U explizit<br />
benötigt wird.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 50 / 177
Reduktion auf Hessenberg-Gestalt<br />
Wir zeigen das Vorgehen der Reduktion auf Hessenberg-Gestalt durch Householder-<br />
Transformationen anhand einer beliebigen 6 × 6-Matrix A auf.<br />
Bezeichnet ˜P 1 ∈ C (n−1)×(n−1) eine Householder-Transformation, welche den Vektor<br />
A(2 : n, 1) auf ein Vielfaches von e 1 ∈ C n−1 abbildet, so ergibt<br />
⎡<br />
⎤ ⎡<br />
⎤<br />
× × × × × × × × × × × ×<br />
[ ]<br />
× × × × × ×<br />
× × × × × ×<br />
1 0<br />
P1 H T<br />
A =<br />
× × × × × ×<br />
0 ˜P1 ⎢× × × × × ×<br />
=<br />
0 × × × × ×<br />
⎥ ⎢ 0 × × × × ×<br />
⎥<br />
⎣× × × × × × ⎦ ⎣ 0 × × × × × ⎦<br />
× × × × × × 0 × × × × ×<br />
Anschließende Multiplikation von rechts mit P 1 lässt die erste Spalte unverändert,<br />
sodass wir mit A 1 := P H 1 AP 1 eine zu A unitär ähnliche Matrix erhalten mit Nullen<br />
unterhalb der ersten Nebendiagonalen in der ersten Spalte.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 51 / 177
Reduktion auf Hessenberg-Gestalt<br />
Mit der zweiten Spalte verfahren wir analog: bildet die Householder-Matrix ˜P 2 ∈<br />
C (n−2)×(n−2) den Vektor A 1 (3 : n, 2) auf ein Vielfaches von e 1 ∈ C n−3 ab, so<br />
wirkt die unitäre Matrix von links multipliziert<br />
[ ]<br />
P2 H I2 O<br />
=<br />
O ˜P 2<br />
nur auf die Zeilen 3 bis n, analog P 3 von rechts multipliziert nur auf Spalten 3 bis<br />
n, und wir erhalten<br />
⎡<br />
⎤<br />
× × × × × ×<br />
× × × × × ×<br />
A 2 = (P 1 P 2 ) H A(P 1 P 2 ) =<br />
0 × × × × ×<br />
⎢ 0 0 × × × ×<br />
⎥<br />
⎣ 0 0 × × × × ⎦<br />
0 0 × × × ×<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 52 / 177
Reduktion auf Hessenberg-Gestalt<br />
In 2 weiteren Schritten mit immer kleineren Householder-Transformationen<br />
erhalten wir<br />
⎡<br />
⎤ ⎡<br />
⎤<br />
× × × × × ×<br />
× × × × × ×<br />
× × × × × ×<br />
× × × × × ×<br />
P<br />
A<br />
3<br />
2 −→ A3 =<br />
0 × × × × ×<br />
P 4<br />
⎢ 0 0 × × × ×<br />
−→ A4 =<br />
0 × × × × ×<br />
⎥ ⎢ 0 0 × × × ×<br />
.<br />
⎥<br />
⎣ 0 0 0 × × × ⎦ ⎣ 0 0 0 × × × ⎦<br />
0 0 0 × × ×<br />
0 0 0 0 × ×<br />
Die unitäre Transformation auf obere Hessenberg-Gestalt lautet insgesamt<br />
A 4 = U H AU , U = P 1 P 2 P 3 P 4 .<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 53 / 177
Inhalt<br />
1 Organisatorisches<br />
2 Einleitung<br />
3 Das QR-Verfahren<br />
3.1 Vektoriteration<br />
3.2 Unterraumiteration<br />
3.3 Reduktion auf Hessenberg-Gestalt<br />
3.4 QR Iteration mit impliziten Shifts<br />
3.5 Konvergenz der Unterraumiteration<br />
3.6 Konvergenz des QR-Verfahrens<br />
4 Hermitesche Eigenwertaufgaben<br />
5 Anhang: Grundlagen aus der <strong>Lineare</strong>n <strong>Algebra</strong><br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 54 / 177
QR-Schritt mit impliziten Shifts<br />
Führt man einen QR-Schritt mit einem Shift ρ durch, so vereinfacht sich (3.2) zu<br />
A k−1 − ρI = Q k R k , A k = Q H k A k−1 Q k .<br />
(Wir schreiben Q k anstelle von ˜Q k , da wir nur noch die geschlängelten Matrizen<br />
benötigen.)<br />
Die letzte Gleichung lässt sich vereinfachen zu<br />
A k = Q H k (Q k R k + ρI )Q k = R k Q k + ρI .<br />
Ein einzelner QR-Schritt besteht also im wesentlichen aus einer QR-Zerlegung von<br />
A k−1 gefolgt von der Multiplikation der QR-Faktoren in umgekehrter Reihenfolge.<br />
Da A 0 = A in Hessenberg-Gestalt vorliegt, besteht also die erste Aufgabe in einer<br />
QR-Zerlegung für eine Hessenberg-Matrix. Hierzu sind lediglich (höchstens) n − 1<br />
Givens-Rotationen erforderlich.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 55 / 177
QR-Schritt mit impliziten Shifts<br />
QR-Zerlegung für Hessenberg-Matrizen<br />
In unserem 6 × 6-Beispiel wird die obere Dreiecksstruktur nach sukzessiver Multiplikation mit<br />
Givens-Rotationen G j,j+1 , j = 1, . . . , n − 1, wie folgt erreicht:<br />
⎡<br />
⎤ ⎡<br />
⎤ ⎡<br />
⎤<br />
× × × × × × × × × × × × × × × × × ×<br />
× × × × × ×<br />
0 × × × × ×<br />
0 × × × × ×<br />
0 × × × × ×<br />
G 1,2<br />
⎢ 0 0 × × × × ⎥ −→ 0 × × × × ×<br />
G 2,3<br />
⎢ 0 0 × × × × ⎥ −→ 0 0 × × × ×<br />
⎢ 0 0 × × × × ⎥<br />
⎢<br />
⎣<br />
0 0 0 × × ×<br />
0 0 0 0 × ×<br />
⎥<br />
⎦<br />
⎢<br />
⎣<br />
0 0 0 × × ×<br />
0 0 0 0 × ×<br />
⎥<br />
⎦<br />
⎢<br />
⎣<br />
0 0 0 × × ×<br />
0 0 0 0 × ×<br />
⎡<br />
⎤ ⎡<br />
⎤ ⎡<br />
⎤<br />
× × × × × × × × × × × × × × × × × ×<br />
0 × × × × ×<br />
0 × × × × ×<br />
0 × × × × ×<br />
G 3,4<br />
−→ 0 0 × × × ×<br />
G 4,5<br />
⎢ 0 0 0 × × ×<br />
−→ 0 0 × × × ×<br />
G 5,6<br />
⎥ ⎢ 0 0 0 × × ×<br />
−→ 0 0 × × × ×<br />
⎥ ⎢ 0 0 0 × × ×<br />
⎥<br />
⎣ 0 0 0 × × × ⎦ ⎣ 0 0 0 0 × × ⎦ ⎣ 0 0 0 0 × × ⎦<br />
0 0 0 0 × × 0 0 0 0 × × 0 0 0 0 0 ×<br />
Fasst man alle n − 1 Givens-Rotationen zusammen als Q H := G n−1,n G n−2,n−1 · · · G 1,2 , so<br />
ergibt sich<br />
Q H A = R, oder A = QR.<br />
⎥<br />
⎦<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 56 / 177
QR-Schritt mit impliziten Shifts<br />
QR-Zerlegung für Hessenberg-Matrizen<br />
Die Matrix Q = G H 1,2 · · · G H n−1,n ist aufgrund des Besetzungsmusters ihrer Faktoren<br />
ebenfalls obere Hessenberg-Matrix. (Dies folgt auch aus dem zu A = QR<br />
äquivalenten Ausdruck Q = AR −1 .)<br />
Demzufolge ist mit A 0 auch<br />
obere Hessenberg-Matrix.<br />
Satz 3.2<br />
A 1 = R 1 Q 1 + ρI<br />
Beim QR-Schritt mit einfachem Shift bleibt die obere Hessenberg-Struktur<br />
erhalten.<br />
Eine effiziente Implementierung des QR-Verfahrens arbeitet mit impliziten Shifts,<br />
d.h. die QR-Zerlegung der Hessenberg-Matrizen wird implizit als Produkt von elementaren<br />
unitären Matrizen konstruiert. Hierzu ist eine Tatsache hilfreich, die als<br />
implizites Q-Theorem bekannt ist.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 57 / 177
QR-Schritt mit impliziten Shifts<br />
Unreduzierte Hessenberg-Matrizen<br />
Definition 3.3<br />
Eine obere Hessenberg-Matrix H = [h i,j ] n i,j=1 ∈ Cn×n heißt unreduziert (engl.<br />
unreduced), falls<br />
h k+1,k ≠ 0 ∀k = 1, 2, . . . , n − 1.<br />
Satz 3.4<br />
Ein Eigenwert λ ∈ Λ(A) einer unreduzierten Hessenberg-Matrix A ∈ C n×n<br />
besitzt geometrische Vielfachheit Eins.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 58 / 177
QR-Schritt mit impliziten Shifts<br />
Implizites Q-Theorem<br />
Satz 3.5 (Implizites Q-Theorem)<br />
Seien A ∈ C n×n sowie zwei unitäre Matrizen Q = [q 1 , . . . , q n ] und<br />
V = [v 1 , . . . , v n ] gegeben, für welche die Matrizen<br />
H = [h i,j ] = Q H AQ und G = [g i,j ] = V H AV<br />
obere Hessenberg-Gestalt besitzen. Ferner sei k := min{j : h j+1,j = 0} bzw.<br />
k = n falls H unreduziert. Gilt dann v 1 = q 1 , so gelten auch<br />
v j = ϑ j q j mit |ϑ j | = 1, |h j+1,j | = |g j+1,j |, j = 2, . . . , k.<br />
Falls k < n, so ist auch g k+1,k = 0.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 59 / 177
QR-Schritt mit impliziten Shifts<br />
Implizites Q-Theorem<br />
Interpretation: Sind G = V H AV und H = Q H AQ zwei unreduzierte Hessenberg-<br />
Matrizen und besitzen die unitären Matrizen V und Q die gleiche erste Spalte, so<br />
sind G und H im wesentlichen gleich, d.h. es gilt G = D −1 HD mit einer Diagonalmatrix<br />
D = diag(ϑ 1 , . . . , ϑ n ), |ϑ j | = 1.<br />
Die implizite Berechnung der QR-Schritts A k = Q H k A k−1Q k geschieht nun wie<br />
folgt:<br />
1 Berechne die erste Spalte von Q k (skalares Vielfaches der ersten Spalte von<br />
A k−1 − ρI , ergibt sich also durch Nomierung).<br />
2 Bestimme restliche Spalten von Q k so, dass Q k unitär und A k unreduzierte<br />
obere Hessenberg-Matrix.<br />
Das implizite Q-Theorem stellt dann sicher, dass wir dann A k bis auf Faktoren vom<br />
Betrag eins berechnet haben.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 60 / 177
Inhalt<br />
1 Organisatorisches<br />
2 Einleitung<br />
3 Das QR-Verfahren<br />
3.1 Vektoriteration<br />
3.2 Unterraumiteration<br />
3.3 Reduktion auf Hessenberg-Gestalt<br />
3.4 QR Iteration mit impliziten Shifts<br />
3.5 Konvergenz der Unterraumiteration<br />
3.6 Konvergenz des QR-Verfahrens<br />
4 Hermitesche Eigenwertaufgaben<br />
5 Anhang: Grundlagen aus der <strong>Lineare</strong>n <strong>Algebra</strong><br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 61 / 177
Konvergenz<br />
Praktische Koordinaten<br />
Sei A ∈ C n×n und U ⊂ C n ein A-invarianter Unterraum der Dimension d. Sei<br />
U = [U 1 U 2 ] ∈ C n×n so, dass U 1 eine Basis von U und setze B := U −1 AU .<br />
Wir betrachten U als Koordinatentransformation: ein Vektor mit Darstellungskoordinaten<br />
x im Ausgangskoordinatensystem besitzt im neuen Koordinatensystem die<br />
Darstellung U −1 x .<br />
Dem Unterraum U entspricht der transformierte Unterraum E d = U −1 U .<br />
Eine Basis von U −1 U ist gegeben durch<br />
[ ]<br />
U −1 Id<br />
U 1 = = [e<br />
O 1 e 2 · · · e d ] =: E d .<br />
Aufgrund der B-Invarianz von E d besitzt B Block-Dreiecksform:<br />
[ ]<br />
B1,1 B<br />
B =<br />
1,2<br />
mit B<br />
O B 1,1 ∈ C d×d .<br />
2,2<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 62 / 177
Konvergenz<br />
Praktische Koordinaten<br />
Sei S eine Approximation an den A-invarianten Unterraum U . Dann approximiert<br />
T := U −1 S den B-invarianten Unterraum E d .<br />
Seien die Spalten von T ∈ C n×d eine ON-Basis von T und setze<br />
[ ]<br />
T1,1<br />
T =<br />
mit T<br />
T 1,1 ∈ C d×d .<br />
2,1<br />
Nach Satz 5.24 sind die Singulärwerte von E H d T = T 1,1 die Kosinus der Hauptwinkel<br />
zwischen E d und T . Somit ist T 1,1 genau dann invertierbar, wenn für den<br />
größten Hauptwinkel ϑ d gilt<br />
cos ϑ d > 0, was genau dann gilt, wenn dist(E d , T ) = sin ϑ d < 1.<br />
Ist somit T eine hinreichend gute Approximation an E d , so ist T 1,1 invertierbar<br />
und es gilt<br />
[ ] [ ]<br />
T1,1 I<br />
T = = T<br />
T 2,1 X 1,1 mit X := T 2,1 T1,1 −1 .<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 63 / 177
Konvergenz<br />
Praktische Koordinaten<br />
Die Spalten von [<br />
X I ] bilden eine (i. All. nicht ON-) Basis von T . Wir vergleichen<br />
diese mit der Basis von E d , welche gegeben ist durch die Spalten von [<br />
O I ].<br />
Lemma 3.6<br />
Es gilt<br />
‖X ‖ = tan ϑ d ,<br />
mit ϑ d dem größten Hauptwinkel zwischen E d und T . Somit ist<br />
dist(E d , T ) =<br />
‖X ‖<br />
√<br />
1 + ‖X ‖<br />
2<br />
und, falls T nahe bei E d ,<br />
dist(E d , T ) = sin ϑ d ≈ ϑ d ≈ tan ϑ d = ‖X ‖.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 64 / 177
Konvergenz<br />
Konvergenzsatz I<br />
Satz 3.7 (Diagonalisierbarer, stationärer Fall)<br />
Sei A ∈ C n×n diagonalisierbar, p ein Polynom vom Grad < n und die Eigenwerte<br />
λ 1 , λ 2 , . . . , λ n von A so nummeriert, dass<br />
|p(λ 1 )| ≥ |p(λ 2 )| ≥ · · · ≥ |p(λ n )|.<br />
Für 1 ≤ d < n gelte |p(λ d )| > |p(λ d+1 )|, es sei ρ :=<br />
p(λ d+1 )<br />
∣ p(λ d ) ∣ (< 1)<br />
sowie U und V die zu λ 1 , . . . , λ d bzw. λ d+1 , . . . , λ n gehörenden invarianten<br />
Unterräume von A.<br />
Ist S 0 ein d-dimensionaler Unterraum mit S 0 ∩ V = {0}, so konvergiert die<br />
stationäre Unterraumiteration<br />
S k = p(A)S k−1 , k = 1, 2, . . .<br />
gegen U und es existiert eine Konstante C mit<br />
dist(S k , U ) ≤ Cρ k , k = 1, 2, . . .<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 65 / 177
Konvergenz<br />
Konvergenzsatz II<br />
Satz 3.8 (Allgemeiner stationärer Fall)<br />
Seien dieselben Voraussetzungen gegeben wie in Satz 3.7, jedoch A nun nicht<br />
notwendig diagonalisierbar.<br />
Dann existiert für jedes ρ < ˆρ < 1 eine Konstante Ĉ = Ĉ(ˆρ), sodass<br />
dist(S k , U ) ≤ Ĉ ˆρ k , k = 1, 2, . . .<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 66 / 177
Konvergenz<br />
Konvergenzsatz III<br />
Satz 3.9 (Allgemeiner instationärer Fall)<br />
Unter den Voraussetzungen von Satz 3.8 sei p 1 , p 2 , . . . eine Folge von Polynomen<br />
vom Grad m < n mit lim k→∞ p k = p. Ferner gelte<br />
p k (λ j ) ≠ 0 für alle k und alle j = 1, . . . , d.<br />
Dann konvergiert die nichtstationäre Unterraumiteration<br />
S k = p k (A)S k−1 , k = 1, 2, . . .<br />
gegen U . Für jedes ρ < ˆρ < 1 existiert eine Konstante Ĉ = Ĉ(ˆρ) sodass<br />
Lemma 3.10<br />
dist(S k , U ) ≤ Ĉ ˆρ k , k = 1, 2, . . .<br />
Ist A ∈ C n×n eine unreduzierte Hessenberg-Matrix, d ∈ {1, . . . , n − 1} und<br />
V ⊂ C n ein A-invarianter Unterraum der Dimension n − d, so ist E d ∩ V = {0}.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 67 / 177
Inhalt<br />
1 Organisatorisches<br />
2 Einleitung<br />
3 Das QR-Verfahren<br />
3.1 Vektoriteration<br />
3.2 Unterraumiteration<br />
3.3 Reduktion auf Hessenberg-Gestalt<br />
3.4 QR Iteration mit impliziten Shifts<br />
3.5 Konvergenz der Unterraumiteration<br />
3.6 Konvergenz des QR-Verfahrens<br />
4 Hermitesche Eigenwertaufgaben<br />
5 Anhang: Grundlagen aus der <strong>Lineare</strong>n <strong>Algebra</strong><br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 68 / 177
QR Konvergenz<br />
Lemma 3.11<br />
Sei A ∈ C n×n und U ⊂ C n ein d-dimensionaler, A-invarianter Unterraum.<br />
Sei ferner S ⊂ C n ein d-dimensionaler, U approximierender Unterraum und die<br />
ersten d Spalten der unitären Matrix Q eine ON-Basis von S . Dann gilt mit<br />
[ ]<br />
B := Q H B1,1 B<br />
AQ =<br />
1,2<br />
, B<br />
B 2,1 B 1,1 ∈ C d×d<br />
2,2<br />
die Abschätzung<br />
‖B 2,1 ‖ ≤ 2 √ 2‖A‖ dist(S , U ).<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 69 / 177
QR Konvergenz<br />
Satz 3.12<br />
Beim QR-Verfahren angewandt auf A 0 = A ∈ C n×n konvergiere die Folge der<br />
Shift-Polynome {p k } k∈N ⊂ P m gegen p ∈ P m . Die Eigenwerte {λ j } n j=1 von A<br />
seien so nummeriert, dass |p(λ 1 )| ≥ |p(λ 2 )| ≥ · · · ≥ |p(λ n )| und für 1 ≤ d < n<br />
gelte<br />
|p(λ d )| > |p(λ d+1 )| sowie p k (λ j ) ≠ 0 für j = 1, . . . , d und alle k.<br />
Seien U und V die zu {λ 1 , . . . , λ d } bzw. {λ d+1 , . . . , λ n } gehörenden invarianten<br />
Unterräume von A, E d ∩ V = {0} und die QR-Iterierten partitioniert gemäß<br />
[ ]<br />
(k) A 1,1 A (k)<br />
1,2<br />
A k =<br />
A (k)<br />
2,1 A (k) .<br />
2,2<br />
Ist ρ := |p(λ d+1 )|/|p(λ d )|(< 1), so existiert für alle ˆρ ∈ (ρ, 1) eine Konstante Ĉ<br />
sodass<br />
‖A (k)<br />
2,1 ‖ ≤ Ĉ ˆρk , k = 1, 2, . . . .<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 70 / 177
QR Konvergenz<br />
Satz 3.13<br />
Konvergieren unter den Voraussetzungen und Bezeichnungen von Satz 3.12 die<br />
Blöcke A (k)<br />
2,1 → O für k → ∞, so konvergieren die Eigenwerte von A(k) 1,1 gegen<br />
{λ 1 , . . . , λ d } und die von A (k)<br />
2,2 gegen {λ d+1, . . . , λ n }.<br />
Die Voraussetzungen von Satz 3.13 gelten typischerweise zugleich für mehrere Werte<br />
von d, sodass A k dann gegen eine „feinere“ Block-obere-Dreicksform konvergiert.<br />
Im Extremfall, in dem diese für alle d ∈ {1, . . . , n − 1} erfüllt sind, erhalten wir im<br />
Grenzwert obere Dreiecksform.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 71 / 177
QR Konvergenz<br />
In der Praxis besitzen die p k niedrigen Grad m ≪ n. Konvergieren diese gegen ein<br />
Polynom p dessen Nullstellen Eigenwerte von A sind, so ist für d = n − m die Rate<br />
ρ = 0 (superlineare Konvergenz) und die Iteration liefert nach wenigen Schritten<br />
die Block-Dreiecksgestalt<br />
[ ]<br />
A1,1 A 1,2<br />
, A<br />
O A 2,2 ∈ C m×m .<br />
2,2<br />
Für kleines m (etwa m = 2) ist die Berechnung der Eigenwerte von A 2,2 einfach,<br />
und das QR-Verfahren kann mit der Berechnung de Eigenwerte von A 1,1 fortfahren.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 72 / 177
QR Konvergenz<br />
Quadratische und Kubische Konvergenz<br />
Satz 3.14<br />
Die Matrix A ∈ C n×n sei diagonalisierbar, besitze paarweise verschiedene<br />
Eigenwerte und die Voraussetzungen von Satz 3.12 seien erfüllt für d = n − m.<br />
Konvergieren die QR-Iterierten A k gegen eine Matrix mit Block-Dreiecksgestalt,<br />
so ist diese Konvergenz quadratisch.<br />
Satz 3.15<br />
Konvergieren unter den Voraussetzungen von Satz 3.14 die QR-Iterierten<br />
[ ]<br />
A (k)<br />
1,1 A (k)<br />
1,2<br />
A k =<br />
A (k)<br />
2,1 A (k)<br />
2,2<br />
und gilt zusätzlich ‖A (k)<br />
1,2 ‖ F = ‖A (k)<br />
2,1 ‖ F , so ist die Konvergenz kubisch.<br />
Die Voraussetzung von Satz 3.15 ist insbesondere für normale Matrizen, somit auch<br />
für Hermitesche (symmetrische) Matrizen erfüllt.<br />
Oliver Ernst (<strong>Numerische</strong> Mathematik) <strong>Numerische</strong> <strong>Lineare</strong> <strong>Algebra</strong> Wintersemester 2013/14 73 / 177