Pivotisierung (Zeilen-, Spalten- & totale)

Neue Frage »

Verzweiflung Auf diesen Beitrag antworten »
Pivotisierung (Zeilen-, Spalten- & totale)
Hallo,
ich müsste bis mo in Matlab ein Programm schreiben, in dem ich den (vorgegeben Gauß-Algorithmus habe (http://www.mathematik.uni-kl.de/~damm/PR...ss_ohne_pivot.m)
mit http://www.mathematik.uni-kl.de/~damm/PR...ss_ohne_pivot.m

ich verstehe so die zeilenpivotisierung:

Wenn man eine reguläre, quadr. Matrix hat dann läßt man eine Schleife über die Spalten laufen s.d. in der k. Spalte:
Schleife nach i d.h.Zeilen um max(abs(aik)) zu suchen, wobei abs der Betrag ist
Dann diese Zeile auf k. Zeile verschieben (so steht sie auf der Diagonale)
dann die k-1 restlichen Einträge aus den unteren Zeilen dieser Spalte durch
Gauß-Algorithmus eliminiern
und das ganze bis zur n-1.Spalte durchführen

Das Problem ist jetzt bei der Spaltenpivotisierung:
-also auch erstmal das betragmäßig größte Element in der Zeile,
aber ich glaube nicht, dass man jetzt diese Spalte mit der ersten vertauschen sollte und
dann mit Gauß eliminieren. Das würde die Matrix ja nur zu sehr verändern

Die Totale ist ja, wenn man die beiden kombiniert, aber irgendwie kann ich mir darunter überhaupt nichts vorstellen und was ich gefunden habe, hilft mir auch nicht sehr weiter.

Bitte kann mir jemand helfen und mir helfen.

Ich danke euch schon mal im voraus
tigerbine Auf diesen Beitrag antworten »
Aus dem [WS] Lineare Gleichungssysteme (preview)
Am Ende ist ein kleines Rechenbeispiel. Vielleicht formuliert einmal deutlicher, was Du mit "Matrix zu sehr verändern" meinst.

LG,
tigerbine Wink

Zitat:
In den Überlegungen von (4b) wurde bislang nur festgestellt, dass man bei einer regulären Matrix A immer einen "Tauschpartner" für den Fall einer Null auf der Diagonale findet.

Steht einem nicht nur ein "Tauschpartner" zur Verfügung, so stellt sich die Frage nach der "besten" Wahl. Den geringsten Aufwand wird wohl eine Suche nach dem ersten von 0 verschiedenen Eintrag in der betreffenden Spalte unterhalb der Diagonale machen. Ist diese "blinde" Wahl jedoch numerisch sinnvoll?


Durch die Implementierung erhält man eine Zerlegung und löst das LGS der Form:



mit einer unbekannten Matrix E, für die folgende Abschätzung gilt (Golub & VanLoan[1996, S. 106]):



m: Maschinengenauigkeit

n: Ordnung von A, also ist A eine (n x n) Matrix

|.|: Matrix der betragsmäßigen Einträgen


Somit ist es erstrebenswert die Einträge von möglichst klein zu halten.


2 LR-Zerlegungen:









Im ersten Fall treten also, im Gegensatz zum Zweiten, sehr große Werte auf. Man kann nun zeigen, dass allgemein für sehr kleine Diagonalelemente in der Matrix die Einträge in den Matrizen L und R sehr groß werden. Somit sollte man Kehrschluss die Diagonalelemente durch vertauschen möglichst groß wählen. Somit ergeben sich:



weitere Pivotsuchstrategien:

Spaltenpivotsuche
Unter den Elementen der j-ten Spalte wähle man ein dem Betrage nach größtes als neues Diagonalelement.
Suchaufwand:

Totale Pivotsuche
Unter den Elementen wähle man ein dem Betrag nach größtes als neues Diagonalelement aus. Hier müssen dann ggf. Zeilen und Spalten getauscht werden.
Suchaufwand:


Bei größeren Matrizen kann es sinnvoll sein, nur so lange zu suchen, bis ein Schwellenwert s überschritten wird.



Mit diesem Wissen kann man nun festhalten, dass auch im Falle der Existenz einer LR-Zerlegung ohne Pivotisierung es sinnvoll seien kann, selbige durchzuführen.


Hierzu ein Beispiel:




Exakte Lösung




Ohne Pivotisierung










Mit Spalten-Pivotisierung






Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »