Zwei Matrizen, deren Produkt bei der Matrizenmultiplikation die Einheitsmatrix ist, sind zueinander invers. In manchen Situationen sucht man zu einer gegebenen Matrix die inverse. Auf dieser Seite wird ein einfaches und schnelles Verfahren dargestellt, wie die inverse Matrix gefunden werden kann, und im Rechner auch konkret angewendet.
Geben Sie links die Zahlen einer quadratischen Matrix ein, die invertiert werden soll.
Es können auch Dezimalbrüche oder Brüche (Schreibweise 4/7) eingegeben werden.
Die Zahlen werden durch Leerzeichen getrennt, Zeilenwechsel sind nicht notwendig.
Die Ausgabe erfolgt standardmäßig in vollständig gekürzten Brüchen.
Es können auch komplexwertige Matrizen behandelt werden: Die Zahlen dazu in dieser Form eingeben:
-2+5/6i (immer ohne Leerzeichen).
Hinweise zu den Rechenmodi:
Im Brüche-Modus rechnet das Programm bei rein reellwertigen Matrizen wirklich mit Brüchen, wodurch dann die Ergebnismatrix in der Regel völlig exakt ist; es sei denn, es entstehen zu große Ganzzahlen in Zählern oder Nennern, die Rundungsfehler verursachen können. (Die Genauigkeit von Javascript liegt bei ca. 15 Dezimalstellen. Zahlen dieser Größe werden bei exzessiver Bruchrechnung leicht erreicht. Wenn in Zählern oder Nennern im Resultat zwölf- und mehrstellige Zahlen auftreten, sind die Ergebnisse mit Vorsicht zu genießen.) Nach jedem Rechenschritt wird gekürzt, um die Zahlen klein zu halten. Dies geht natürlich nicht unerheblich zu Lasten der Laufzeit. Bei komplexwertigen Matrizen wird auch im Brüchemodus mit reellen Werten (Fließkommaoperationen) gerechnet, und die Brüche der inversen Matrix werden per Kettenbruchalgorithmus approximiert.
Im Dezimalmodus rechnet das Programm mit normalen Fließkommaoperationen — der Geschwindigkeitsvorteil ist ziemlich deutlich.
Im exakten Modus (seit 25. 5. 2014) wird nunmehr wirklich exakt gerechnet, d.h. die Einträge werden in der Form a/b+c/d·î verarbeitet, und es wird mit Ganzzahlarithmetik ohne Größenbeschränkung gerechnet. (Vorsicht: u.U. ziemlich erhöhter Zeitbedarf!)
Die Matrix M wird mit geeigneten Zeilenumformungen in die Einheitsmatrix (auf allen Diagonalfeldern 1 und überall sonst 0) umgeformt. Parallel werden dieselben Umformungen an einer ursprünglichen Einheitsmatrix vorgenommen. Das Resultat ist dann die inverse Matrix M-1.
Beispiel:
M E 3 5 1 1 0 0 2 4 5 0 1 0 1 2 2 0 0 1 Vertausche die erste und die dritte Zeile 1 2 2 0 0 1 2 4 5 0 1 0 3 5 1 1 0 0 Subtrahiere das Doppelte der ersten Zeile von der zweiten 1 2 2 0 0 1 0 0 1 0 1 -2 3 5 1 1 0 0 Subtrahiere das Dreifache der ersten Zeile von der dritten 1 2 2 0 0 1 0 0 1 0 1 -2 0 -1 -5 1 0 -3 Vertausche die zweite und die dritte Zeile und multipliziere diese mit -1 1 2 2 0 0 1 0 1 5 -1 0 3 0 0 1 0 1 -2 Subtrahiere das Doppelte der zweiten Zeile von der ersten 1 0 -8 2 0 -5 0 1 5 -1 0 3 0 0 1 0 1 -2 Addiere das Achtfache der dritten Zeile zur ersten 1 0 0 2 8 -21 0 1 5 -1 0 3 0 0 1 0 1 -2 Subtrahiere das Fünffache der dritten Zeile von der zweiten 1 0 0 2 8 -21 0 1 0 -1 -5 13 0 0 1 0 1 -2 = E = M-1 Berechne zur Probe M·M-1: 2 8 -21 -1 -5 13 0 1 -2 3 5 1 a b c 2 4 5 d e f 1 2 2 g h i a = 3·2 - 5·1 + 1·0 = 1 b = 3·8 - 5·5 + 1·1 = 0 c = -3·21 + 5·13 - 1·2 = 0 d = 2·2 - 4·1 + 5·0 = 0 e = 2·8 - 4·5 + 5·1 = 1 f = -2·21 + 4·13 - 5·2 = 0 g = 1·2 - 2·1 + 2·0 = 0 h = 1·8 - 2·5 + 2·1 = 0 i = -1·21 + 2·13 - 2·2 = 1
Alle Zeilenumformungen lassen sich als (u.a.) linksseitige Multiplikation mit einer speziellen quadratischen Matrix darstellen. Addieren des q-fachen der zweiten Zeile zur ersten z.B. gelingt für 3x3-Matrizen mit der linksseitigen Multiplikation mit der Matrix
1 q 0 0 1 0 0 0 1
Vertauschen der zweiten und der dritten Zeile mit
1 0 0 0 0 1 0 1 0
Die Hintereinanderausführung von k Umformungen läßt sich wieder als Matrix darstellen.
Wenn U1, U2, ..., Uk die entsprechenden Matrizen
und M die umzuformende Matrix sind, läßt sich die Verkettung so schreiben:
Das Produkt
Sei nun U ein solches Produkt aller Umformungen, die notwendig sind, um M zur
Einheitsmatrix E zu machen.
Dann ist:
U·M = E | beide Seiten rechtsseitig mit M-1 multiplizieren: U·M·M-1 = E·M-1 | E ist das neutrale Element, und M·M-1=E, daher: U·E = M-1
Damit ist das Verfahren bewiesen. Außerdem sieht man an der letzten Zeile, daß U natürlich nichts anderes als M-1 ist. Das folgt übrigens schon aus dem Vergleich von M-1·M=E (Definition des Inversen) und dem Ansatz U·M=E
© Arndt Brünner, 10. 8. 2003 — Version: 25. 5. 2014
eMail
→ lineare Gleichungssysteme berechnen
→ Rechner zum Gauß-Jordan-Algorithmus
→ nichtlineare Gleichungssysteme berechnen
→ Determinanten berechnen
→ Eigenwerte und Eigenvektoren berechnen
→ Generator für 50 ganzzahlig invertierbare 3×3-Matrizen