Discussion:
QR Zerlegung von Matrizen
(zu alt für eine Antwort)
b***@googlemail.com
2020-05-19 22:04:24 UTC
Permalink
Hallo zusammen,

bin dabei mich wieder etwas in Mathe einzuarbeiten. Mache das z. Z. mit dem Buch von Prof. Karpfinger.
Eigentlich sagt mir das Konzept dieses Werks zu und hat mir schon viel geholfen. Das rezeptartige Lösen von mathematischen Problemen ist auch ein brauchbarer Ansatz, doch hier hänge ich leider fest.

In dem Beispiel, worüber ich grübele, soll eine 3×3 Matrix A in eine orthogonale Matrix Q und eine obere Dreiecks R zerlegt werden

So daß gilt A = Q * R

Die orthogonale Matrix Q ist dadurch gekennzeichnet, das sich an ihr Vektoren "verlustfrei" drehen und spiegeln lassen.
Für Q gilt auch Q^-1 = Q^T.
Soweit reicht mein Verständnis noch.

Weiter heißt es im Buch:

Zu A € |R3×3 ist im ersten Schritt eine orthogonale Matrix H €|R 3×3 zu bestimmen.

| £ * * |
H*A = | 0 * * |
| 0 * * |

Hier habe ich schon Schwierigkeiten.
Ist etwa die Matrix rechts die angehende Dreiecksmatrix?
Der nachfolgende Text erschließt sich mir (noch) nicht.
Vielleicht kann mir jemand erläutern wie der Autor auf diesen Ansatz kommt.
Danke im voraus für alle Antworten.

Bodo
Christian Gollwitzer
2020-05-20 07:55:34 UTC
Permalink
Post by b***@googlemail.com
So daß gilt A = Q * R
[...]
Post by b***@googlemail.com
Zu A € |R3×3 ist im ersten Schritt eine orthogonale Matrix H €|R 3×3 zu bestimmen.
| £ * * |
H*A = | 0 * * |
| 0 * * |
Hier habe ich schon Schwierigkeiten.
Ist etwa die Matrix rechts die angehende Dreiecksmatrix?
Es ist der erste Schritt dazu. Der Trick besteht darin, dass mehrere
orthogonale Matrizen zusammenmultipliziert wieder eine orthogonale
Matrix ergeben. Im ersten Schritt sucht man Q1 so, dass die beiden
Elemente in der ersten Spalte unter der Hauptdiagonalen Null werden. Also:

| £ * * |
A = Q1 * | 0 * * | = Q1 * A1
| 0 * * |


Da man die orthogonalen Matrizen sehr einfach invertieren kann, ist es
egal, ob man das auf die linke oder rechte Seite schreibt - das H in dem
Buch entspricht jetzt Q1^T.

Im zweiten Schritt würde man das A1 so zerlegen, dass wieder ein Element
Null wird, und die erste SPalte gleich bleibt

| £ * * |
A1 = Q2 * | 0 * * | = Q2 * A2
| 0 0 * |


Am Ende hat man ein Produkt A=Q1*Q2*Q3*... * R. Das Produkt aus diesen Q
ist immer noch orthogonal.

Um die Nullen zu bekommen, gibt es verschiedene Verfahren. Eine
Spiegelung ist orthogonal (Householder-Verfahren), eine Drehung auch
(Givens-Rotation). Anschaulich muss der Vektor in der ersten Spalte so
gedreht oder gespiegelt werden, dass er auf eine Koordinatenachse zeigt.
Diese Drehung wendet man auf die ganze Matrix an.

Christian
b***@googlemail.com
2020-05-21 22:12:49 UTC
Permalink
Hallo Herr Gollwitzer,

vielen Dank für ihre hilfreichen
Bemerkungen. Ich traue es mir kaum zu sagen, aber so richtig steige
ich da immer noch nicht durch.

Ich werde mal ein Kapitel zurück gehen, das ich übersprungen habe.
Vielleicht fehlen mir von daher Kenntnisse. Es ist dies "das lineare Ausgleichsproblem."

Einstweilen vielen Dank für Ihre
Mühe.

Bodo

Loading...