Jacobi-Verfahren
Voraussetzung:
- i-te Komponente der Näherung nach k Schritten
- Einträge der Koeffizientenmatrix A
- Diagonaleinträge von A
- Komponenten der rechten Seite b
- Anzahl der Gleichungen und Unbekannten
Das Jacobi-Verfahren löst jede Gleichung nach ihrer Diagonalvariablen auf und setzt die alte Näherung für alle anderen ein.
Erklärung
Das Jacobi-Verfahren (auch Gesamtschrittverfahren) löst ein lineares Gleichungssystem iterativ. Man löst die -te Gleichung nach auf und setzt rechts die Werte aus dem vorigen Schritt ein. Alle Komponenten des neuen Vektors werden also gleichzeitig aus dem alten berechnet.
In Matrixform mit (Diagonale, strikt unteres und strikt oberes Dreieck) lautet ein Schritt
Konvergenz:
- Das Verfahren konvergiert für jeden Startwert genau dann, wenn der Spektralradius der Iterationsmatrix kleiner als ist. Er bestimmt auch, wie schnell der Fehler schrumpft.
- Hinreichend und leicht zu prüfen ist strikte Diagonaldominanz: In jeder Zeile ist größer als die Summe der Beträge der übrigen Einträge.
Iterative Verfahren lohnen sich vor allem bei großen, dünn besetzten Matrizen, bei denen das Gauß-Verfahren zu viel Speicher und Rechenzeit braucht. Da jede Komponente unabhängig berechnet wird, lässt sich das Jacobi-Verfahren gut parallelisieren.
Beispiele
Das System
hat die Lösung , . Die Matrix ist strikt diagonaldominant (, ). Die Iterationsvorschrift lautet
Ab :
| 1 | 1,5 | 2,3333 |
| 2 | 0,9167 | 1,8333 |
| 3 | 1,0417 | 2,0278 |
Die Iterationsmatrix hat die Eigenwerte . Der Fehler schrumpft also pro Schritt etwa auf das -Fache.
Typische Fehler
- Neu berechnete Komponenten schon im selben Schritt verwenden. Das ist das Gauß-Seidel-Verfahren, nicht Jacobi.
- Das Verfahren bei einer Null auf der Diagonalen anwenden. Vorher Zeilen tauschen.
- Aus fehlender Diagonaldominanz schließen, dass das Verfahren divergiert. Diagonaldominanz ist hinreichend, aber nicht notwendig.
- Nach einer festen Zahl von Schritten abbrechen, ohne das Residuum oder die Änderung zwischen zwei Schritten zu prüfen.