www.vorhilfe.de
- Förderverein -
Der Förderverein.

Gemeinnütziger Verein zur Finanzierung des Projekts Vorhilfe.de.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Impressum
Forenbaum
^ Forenbaum
Status VH e.V.
  Status Vereinsforum

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Suchen
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Uni-Numerik" - QR-Zerlegung
QR-Zerlegung < Numerik < Hochschule < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Uni-Numerik"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

QR-Zerlegung: Givens-Rotation
Status: (Frage) beantwortet Status 
Datum: 02:38 Do 11.01.2007
Autor: Karl_Pech

Hallo Zusammen,


Ich habe den Givens-Algorithmus am folgenden Beispiel versucht:


[mm]A := \begin{pmatrix}-2&-3\\0&3\\2&3\\-3&-3\end{pmatrix}[/mm]


Da [mm]A[/mm] vollen Rang hat, müßte es hier funktionieren. Und zwar will ich mit [mm]G_{34}[/mm] zuerst den Eintrag [mm]a_{41}[/mm] auf 0 bringen:


[mm]c := \frac{a_1}{\sqrt{\left|a_1\right|^2+\left|a_4\right|^2}} = -\frac{2}{\sqrt{13}}\wedge s:=\frac{a_4}{\sqrt{\left|a_1\right|^2+\left|a_4\right|^2}} = -\frac{3}{\sqrt{13}}[/mm]

[mm]\Rightarrow G_{34} := \begin{pmatrix}1 & 0 & 0 & 0\\0&1&0&0\\0&0&-\frac{2}{\sqrt{13}}&-\frac{3}{\sqrt{13}}\\0&0&\frac{3}{\sqrt{13}}&-\frac{2}{\sqrt{13}}\end{pmatrix}[/mm]


Und wenn man die 4te Zeile davon mit [mm]A[/mm] multipliziert, so sieht man, daß aufgrund der gleichen Vorzeichen bei [mm]a_{41}[/mm] keine 0 rauskommen kann.
Aber was habe ich dann falsch gemacht?


Danke für die Hilfe!



Grüße
Karl





        
Bezug
QR-Zerlegung: Antwort
Status: (Antwort) fertig Status 
Datum: 09:18 Do 11.01.2007
Autor: Martin243

Hallo,

ich mag mich ja irren, weil ich zu Givens nie etwas gelernt habe, aber müsste man nicht zuerst mit [mm] $G_{13}$ [/mm] multiplizieren? Man sollte die zu löschenden Elemente nur mithilfe der Teil-Dreiecksmatrix oben löschen.
Also wäre die komplette Lösung:
$A' = [mm] G_{24}*G_{14}*G_{13}*A$ [/mm]


Gruß
Martin

Bezug
                
Bezug
QR-Zerlegung: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 12:29 Do 11.01.2007
Autor: Karl_Pech

Hallo Martin!


>  [mm]A' = G_{24}*G_{14}*G_{13}*A[/mm]


Also ich gebe mal den Algorithmus an, den ich in einem Skript gefunden habe und nach dem ich vorgegangen bin:


[mm]\begin{array}{l} \textbf{F"ur}\ k=1,\dotsc,n\\ \quad\textbf{F"ur}\ l=m,m-1,\dotsc,k+1\\ \quad\quad\texttt{L"ose die Grundaufgabe f"ur }\left(a_{k1},\dotsc,a_{km}\right)^T\texttt{ und }G_{l-1,l}\\ \quad\quad\texttt{Berechne }A:=G_{l-1,l}A. \end{array},[/mm]


wobei mit der "Grundaufgabe" (- so wie ich das vestehe -) das Aufstellen von [mm]G_{l-1,l}[/mm] gemeint ist, wofür die Formeln:


[mm]c = \frac{a_k}{\sqrt{\left|a_k\right|^2+\left|a_l\right|^2}}[/mm] und [mm]s = \frac{a_l}{\sqrt{\left|a_k\right|^2+\left|a_l\right|^2}}[/mm]


benutzt werden. Nur bei deiner Lösung(, die ich allerdings noch nicht ausprobiert habe,) kommen z.B. Matrizen wie [mm]G_{14}[/mm] vor, wo der Abstand zwischen den Indizes größer 1 ist. Und beim obigen Algorithmus kann so etwas ja nicht auftreten, oder? Ist denn der Algorithmus, so wie er da steht, richtig? (Übrigens wird im Dokument, wo ich das her habe, mit [mm]G_{l,l-1}[/mm] und nicht mit [mm]G_{l-1,l}[/mm] gearbeitet, was aber irgendwie keinen Sinn für mich macht, weshalb ich das oben abgeändert habe.)



Viele Grüße
Karl





Bezug
                        
Bezug
QR-Zerlegung: Antwort
Status: (Antwort) fertig Status 
Datum: 14:42 Do 11.01.2007
Autor: Martin243

Hallo,

ich glaube, es gibt keinen wirklichen "Givens-Algorithmus" sondern nur eine "QR-Zerlegung über Givens-Rotationen ". Hier ist die Reihenfolge nicht festgelegt, in der die Matrixelemente ausgelöscht werden und auch nicht, welche Zeilen dabei abgezogen werden.

Nach deinem Algorithmus wird ein Element immer mithilfe der Zeile darüber ausgelöscht, deswegen immer nur die Differenz 1. Da dieses Verfahren aber numerisch sehr stabil sein soll, ist eine Pivotisierung nicht nötig, also sollte es auch möglich, beliebige Zeilen auszusuchen.
Deinem Algorithmus zufolge musst du rechnen:
$A' = [mm] G_{23}*G_{34}*G_{12}*G_{23}*G_{34}*A$ [/mm]
Allerdings ist mir nicht ganz klar, ob das nun eine mxn- oder eine nxm-Matrix sein soll.

Die einzelnen Schritte ergeben die folgenden Matrizen:
[mm]\begin{pmatrix} -2.0000 & -3.0000\\ 0 & 3.0000\\ 3.6056 & 4.1603\\ 0 & 0.8321\end{pmatrix}[/mm]

[mm]\begin{pmatrix} -2.0000 & -3.0000\\ 3.6056 & 4.1603\\ 0 & -3.0000\\ 0 & 0.8321\end{pmatrix}[/mm]

[mm]\begin{pmatrix} 4.1231 & 5.0932\\ 0 & 0.6054\\ 0 & -3.0000\\ 0 & 0.8321\end{pmatrix}[/mm]

[mm]\begin{pmatrix} 4.1231 & 5.0932\\ 0 & 0.6054\\ 0 & 3.1132\\ 0 & 0\end{pmatrix}[/mm]

[mm]\begin{pmatrix} 4.1231 & 5.0932\\ 0 & 3.1716\\ 0 & 0\\ 0 & 0\end{pmatrix}[/mm]


Bei meiner Reihenfolge ($A' = [mm] G_{24}*G_{23}*G_{14}*G_{13}*G_{12}*A$) [/mm] ist das Ergebnis dasselbe, nur die Zwischenschritte sind anders.


Gruß
Martin

Bezug
                                
Bezug
QR-Zerlegung: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 23:40 Do 11.01.2007
Autor: Karl_Pech

Hallo Martin!


Danke für die Hilfe! Jetzt sollte es klappen...



Grüße
Karl





Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Uni-Numerik"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
ev.vorhilfe.de
[ Startseite | Mitglieder | Impressum ]