Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/1 Lösung.

Ähnliche Präsentationen


Präsentation zum Thema: "Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/1 Lösung."—  Präsentation transkript:

1 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/1 Lösung von linearen Gleichungssystemen - Grundlagen Zu Lösen ist ein Gleichungssystem: A x = b dabei sind A eine n*n Matrix, x der Vektor der Unbekannten und b der Vektor der rechten Seite. Lösung ist wo die Inverse von A ist Bei den Verfahren zur Lösung von Gleichungssystemen unterscheiden wir zunächst zwischen direkten und iterativen Verfahren. Direkte Verfahren lassen sich in der Regel in zwei Schritte unterteilen. Im ersten erfolgt eine Transformation der Systemmatrix derart, dass die neue Matrix leicht invertierbar wird. Leicht invertierbare Matrizen sind etwa Diagonalmatrizen oder Dreiecksmatrizen. Im zweiten Schritt erfolgt die eigentliche Inversion. Bei iterativen Verfahren wird die Systemmatrix aufgespalten in einen Teil, der leicht invertierbar ist und einen Rest, der im Gleichungssystem der rechten Seite zugeschlagen wird. Die rechte Seite kann daher nur näherungsweise bestimmt werden. Die Näherung ist in den verschiedenen Iterationsschritten zu verbessern. In diesem Kapitel werden direkte Verfahren vorgestellt.

2 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/2 Diese Fragen sollten Sie beantworten können Definieren sie den Begriff grosse dünnbesetzte Matrix Was sind Kennzahlen Was ist eine Norm und zu was braucht man sie Wie speichert man grosse Matrizen Wie hängen Speicherung und Effektivität von Rechenmethoden zusammen Geben Sie die Bedeutung der Kennzahl Norm an Noch offen: Geben Sie die Bedeutung der Kennzahl Kondition an

3 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/3 Kondition Die Kondition einer Matrix ist ein weiteres Maß für ihre Rechneranpassung. Konditionszahlen können - ähnlich den Normen - verschieden gebildet werden. Gebräuchlich ist das Verhältnis von Normen oder von größtem zu kleinstem Eigenwert.

4 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/4 V10: Gleichungslöser - Direkte Verfahren Teil V: Gleichungslöser Kap. 10: Lösung von linearen Gleichungssystemen - Direkte Verfahren Inhalt: Direkte Verfahren: Leicht invertierbare Matrizen LU-Zerlegung nach Gauß und Cholesky Experimente: Lösung eines Gleichungssystems nach Cholesky

5 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/5 Beispiele für Gleichungssysteme Avolle Matrix

6 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/6 Beispielmatrix

7 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/7 Das sollten Sie heute lernen Was ist ein direktes Verfahren Umwandlung eines Gleichungssystemes in ein lösbares Problem Grundideen der Verfahren von Gauss und Cholesky

8 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/8 Leicht invertierbare Matrizen Leicht invertierbare Matrizen sind a)Diagonalmatrizen, b)tridiagonale Matrizen, c)blockdiagonale Matrizen, d)Dreiecksmatrizen. Im Folgenden werden Verfahren zur Lösung von Gleichungssystemen, deren Systemmatrix eine dieser Formen hat, angegeben.

9 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/9 Gleichungssysteme mit Diagonalmatrix D Für Diagonalmatrizen gilt

10 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/10 Gleichungssysteme mit tridiagonaler Matrix Die Lösung von Gleichungssystemen mit tridiagonalen Matrizen erfolgt in 2 Schritten: Im ersten Schritt wird aus jeder Gleichung eine Unbekannte eliminiert. Im 2. Schritt wurden die Gleichungen dann aufgelöst.

11 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/11 Leicht invertierbare Matrizen - Tridiagonale Matrizen Hilfsgrößenh 1 = -b 1 / a 1 p 1 = d 1 / a 1 und x 1 = p 1 + h 1 x 2 Dann für i = 2 bis n-1: h i = -b i / (a i + h i-1 c i ) p i = (d i - p i-1 c i ) / (a i + h i-1 c i ) und x i = p i + h i x i-1

12 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/12 Leicht invertierbare Matrizen - Tridiagonale Matrizen Für i = n kann dann x n berechnet werden: x n = p n = (d n - p n-1 c n ) / (a n + h n-1 c n ) Aus der rückläufigen Sequenz i = n-1 bis 1 folgen die restlichen Lösungen: x i = p i + h i x i+1

13 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/13 Leicht invertierbare Matrizen - Blocktridiagonale Matrizen Bei blocktriagonalen Matrizen werden die Matrixelemente selber Matrizen und entsprechend die Vektorelemente Vektoren: A i, B i und C i sind quadratische kxk-Matrizen und X i, D i sind Vektoren der Länge k.

14 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/14 Leicht invertierbare Matrizen - Blocktridiagonale Matrizen Beachte: Statt der Rechnung mit Zahlen sind hier Matrizenoperationen und die Lösung von Gleichungssystemen erforderlich. Der Algorithmus für tridiagonale Matrizen kann auf blocktridiagonale Matrizen erweitert werden:

15 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/15 Beispiele blocktridiagonaler Matrizen aus Diskretisierung partieller Dglen K K Zeit OrtOrt explizitimplizit

16 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/16 Gleichungssystem mit unterer Dreiecksmatrix L Vorwärts-Substitution

17 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/17 Leicht invertierbare Matrizen -Dreiecksmatrizen Gelingt es also, die Matrix [A] in das Produkt zweier Dreiecksmatrizen aufzuspalten, so kann man mit den angegebenen Formeln das Gleichungssystem lösen. Die Algorithmen von Gauss und Cholesky leisten solche Aufspaltungen. Vorwärts- Substitution Rückwärts- Substitution Die beiden Gleichungssysteme mit Dreiecksmatrizen lassen sich mit folgenden Formeln lösen:

18 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/18 Aufspaltung einer Matrizen A in Dreiecksmatrizen = * Eine Matrix A lässt sich als Produkt einer unteren Dreiecksmatrix L und einer oberen Dreiecksmatrix U darstellen. Wegen A = L U gilt

19 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/19 Aufspaltung einer Matrizen A in Dreiecksmatrizen Damit wird aus dem Gleichungssystem Ax = b ein System von 2 Gleichungssystemen mit Dreiecksmatrizen Ax = L U x =L y = b mit U x = y Für die Berechnung der n (n+1)-Elemente von L und U stehen aus n 2 -Gleichungen zur Verfügung. n weitere Werte müssen festgelegt werden. Häufige Wahlen sind 1.l ii = 1Gaußscher Algorithmus 2.l ii = u ii Cholesky-Verfahren

20 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/20 Der verkettete Gaußsche Algorithmus Die Aufspaltung der Matrix erfolgt in folgenden Teilschritten: 1)Für die n-freien Elemente wird festgelegt: l ii = 1 Damit sind alle Elemente der Zeile 1 von bekannt. = *

21 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/21 Der verkettete Gaußsche Algorithmus 2)Man multipliziert Zeile 1 von Matrix mit allen Spalten von Matrix. Das Ergebnis ist a 1i = u 1i. Damit sind alle Elemente von Zeile 1 und Spalte 1 von bekannt. = *

22 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/22 Der verkettete Gaußsche Algorithmus 3)Man multipliziert jetzt die Zeile 2 bis n der Matrix mit der Spalte 1 der Matrix, so ergibt sich 4) Im nächsten Schritt werden Zeile 2 der Matrix und alle Spalten der Matrix multipliziert. Daraus bestimmt man die Elemente u 2i. 5) Entsprechend dem Vorgehen in 3 werden jetzt die Elemente l i2 bestimmt.

23 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/23 Der verkettete Gaußsche Algorithmus Das Ergebnis dieses Vorgehens läßt sich allgemein angeben

24 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/24 Der verkettete Gaußsche Algorithmus Für i > j gilt:

25 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/25 Der verkettete Gaußsche Algorithmus Aus diesem Vorgehen lassen sich leicht eine Reihe von Folgerungen ableiten: a) Sind in einer Zeile die Elemente a i1 bis a im je 0, so sind auch die Elemente l i1 bis l im je 0 b) Sind in einer Spalte j die Elemente a 1j bis a mj je 0, so sind auch die Elemente u 1j bis u mj je 0. c) Ist ein Element a ij ungleich 0, so sind auch die entsprechenden Elemente der triangularisierten Matrix ungleich 0 und es können zu allen folgenden Elementen von L bzw. U Beiträge erwartet werden. Durch die Triangularisierung wird die Form der von Null verschiedenen Matrixteile nicht verändert: Es werden aber Gebiete aufgefüllt. Für die Triangularisierung sind also nur solche Speichertechniken möglich, die dieses Auffüllen erlauben. Die Zahl der Operationen (Multiplikationen) läßt sich nach diesem Vorgehen abschätzen zu ~ Ein einfacher Trick erlaubt es, das Verfahren auch auf symmetrische Matrizen zu erweitern.

26 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/26 Das Cholesky-Verfahren -1 Für symmetrische Matrizen gilt A T = A und die Zerlegung nach Gauß ergibt Wobei der Index I andeutet, dass die Hauptdiagonalelemente 1 sind. Da diese Zerlegung eindeutig ist, gilt: Das bedeutet Für i = j gilt: a):

27 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/27 Das Cholesky-Verfahren -2 Für i < j gilt: Aus Gleichung (a) kann das Diagonalelement u ii der Zeile i berechnet werden. Die übrigen Elemente der Zeile i ergeben sich aus (b). So wird [U] zeilenweise (i = 1,..., n) berechnet. Notwendig ist, dass die Matrix [A] positiv definiert ist, andernfalls kann sich in a) ein negativer Radikand ergeben. Ein Beispiel soll das Vorgehen beim Cholesky-Verfahren veranschaulichen. b):

28 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/28 Beispiel Cholesky Verfahren 1 Gegeben sei das Gleichungssystem Wir schreiben die Matrix als Produkt U T U, d.h. Und bestimmen die Elemente von U. Aus der ersten Zeile der Matrizengleichung erhalten wir die drei Gleichungen Wir bestimmen daraus die Unbekannten

29 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/29 Beispiel Cholesky Verfahren 2 Die zweite Zeile liefert die Gleichungen u 11 und u 12 sind schon bekannt, so dass nur noch die restlichen beiden Gleichungen gelöst werden müssen. Die Lösung lautet Schließlich bestimmen wir aus der dritten Zeile die letzte Unbekannte Durch Vorwärtssubstitution bestimmen wir nun die Komponenten des Hilfsvektors y

30 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/30 Beispiel Cholesky Verfahren 3 Damit lassen sich durch Rückwärtssubstitution die Komponenten von x bestimmen: Durch Rückwärtseinsetzen erhalten wir die Lösung Daraus ergeben sich die drei Gleichungen

31 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/31 Anmerkung zu Cholesky Verfahren Anmerkung: Man vermeidet das Wurzelzeichen, wenn man auf folgende Darstellung zurückgreift: Dann wird für alle i j

32 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/32 Iterative Verbesserung Bei den direkten Lösungsverfahren treten Rundungsfehler hauptsächlich bei der Triangularisierung auf. Löst man überso erhält man eine Lösung. Bildet man das Produkt der ursprünglichen Matrix und der Lösung so kann man ein Residuum berechnen: Den Beitrag von zur Lösung erhält man aus Damit kann man verbessern Wiederholt man diesen Vorgang, so werden die Auswirkungen der Triangularisierung immer kleiner. Der Aufwand pro Iterationsschritt beträgt weniger als der für zwei Auflösungen mit dem triangularisierten System.

33 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/33 Anwendung - Vergleich der Leistung von Rechnern Anwendung Löse ein Matrixproblem mit einer allgemeinen Matrix n = 100Optimierung der inneren Schleifen n = 10003stufige Optimierung n = beliebigskalierbares paralleles Problem Ergebnisse Vergleichsdaten für ca Rechnersysteme verfügbar Bestimmung der TOP 500-Liste

34 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/34 Anwendung Vergleich der Leistung von Rechnern -2 Metriken R max Leistung in GF/s für das größtmögliche Problem N max Zahl der Spalten/Zeilen für größtmögliches Problem N 1/2Zahl der Spalten/Zeilen, für die R max erreicht wurde R peak. Theoretische maximale Leistung in GF/s Juni 2002 R max = TF/s für Earth Simulation Computer(NEC SX) N max = Laufzeit5.8 h bei Standard-LU programmiert in FORTRAN Web sitehttp://www.supercomp.de

35 Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/35 Diese Fragen sollten Sie beantworten können Was ist ein direktes Verfahren zur Lösung von Gleichungssystemen Geben Sie die Grundideen der Verfahren von Gauss und Cholesky an Wie löst man Probleme mit tridiagonalen Matrizen Was bedeuten Vorwärts- und Rückwärts- Substitution


Herunterladen ppt "Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 2003Teil V, Kp. 1010/1 Lösung."

Ähnliche Präsentationen


Google-Anzeigen