Berechnung von Determinanten

Über ein kleines Javascript können hier Determinanten von im Grunde beliebig großen (quadratischen) Matrizen berechnet werden. Die Größe wird weniger von der Speicherkapazität des Rechners begrenzt als durch die beschränkte Aufnahmekapazität des Textfeldes. Da Javascript als interpretierte Sprache nicht unbedingt als schnell gilt, sind die kurzen Rechenzeiten erstaunlich. Unten wird das Verfahren erläutert, das sich nach meinem Dafürhalten auch für Berechnungen auf dem Papier eignet.

Die Zahlen werden bei der Eingabe getrennt durch Leerzeichen, Tabulatorzeichen oder Semikola, die Zeilen optional durch Zeilenvorschübe. Es können somit Tabellen über die Zwischenablage importiert werden. Brüche können so eingegeben werden: 2/5.
Das Programm erkennt die Dimension automatisch und meldet sich, falls ein Eingabefehler vorliegt bzw. aus irgendwelchen Gründen nicht n2 Zahlen erkannt wurden.

Die Zahlen der Matrix hier eingeben:


          Dimension: 


   Modus:
(Bei Überlauf im Brüchemodus wird automatisch in den Dezimalmodus gewechselt – dabei wird im Ergebnis kein Bruch angezeigt.)


Erläuterung

Determinanten bis n=4 werden im Dezimalmodus direkt berechnet. Sonst formt das Programm die Matrix zunächst mit dem Gaußschen Eliminationsverfahren in eine Dreiecksmatrix um, bei der unterhalb der Diagonale nur noch Nullen stehen. Dies geschieht zeilenweise, indem zunächst überprüft wird, ob im entsprechenden Feld der i. Zeile (ai,i) eine Zahl ≠ 0 steht. Falls nicht, d.h. bei ai,i=0, wird in der selben Spalte unterhalb gesucht, ob ein Element aj,i ≠ 0 zu finden ist (i<j). In diesem Fall wird diese Zeile j zur Zeile i addiert, sonst bricht der Algorithmus ab, da die Zeilenvektoren nicht linear unabhängig sind und damit die Determinante sicherlich 0 beträgt. Indem zu allen Zeilen j unterhalb der i.Zeile passende Vielfache der i.Zeile addiert werden, können alle Elemente aj,i (mit j>i) zu Null gemacht werden.

Das Addieren eines Vielfachen von einer Zeile zu einer anderen ändert den Wert der Determinante nicht. Da sich das Script ausschließlich auf solche Umformungen beschränkt, kann die Determinante schließlich leicht als das Produkt der Diagonalelemente berechnet werden.


Version: 6. 2. 2005
© Arndt Brünner
Rechner für lineare Gleichungssysteme, Gaußscher Algorithmus
Inverse Matrizen berechnen
Eigenwerte und -vektoren berechnen
Zum Additionsverfahren
Matheseiten-Übersicht
zurück