Gauss n x n Algorithmus Script

Autor:
hawe
Die erste Zeile darf nicht mit 0 beginnen! Ggf. die Zeilen austauschen damit A1(1,1)<>0. A1(1,1) ShortIndex für Element(A1,1,1) :: Funktionalität abgeschafft ggf. muss die Schreibweise auf die Command-Funktion Element angepasst werden? Triangularize Sequence
  • erzeugt nach n-1 Schritten eine obere Dreicksmatrix
  • startet bei Matrix A1 Zeile 1 und erzeugt A2 (erste Spalte 0) ... An (obere Dreiecksmatrix)
  • Multipliziere Zeile A(i) mit A(1,1) und ziehe ab Zeile A(1) multipliziert mit A(i,1)
  • A2:=Sequence(Sequence(If(i > 1 , A1(1, 1) A1(i, k) - A1(i, 1) A1(1, k) , A1(i, k)) ,k,1,n + 1),i,1,n)
  • um die Zahlen bei großem n nicht über alle Grenzen wachsen zu lassen verwende ich den Zeilenterm A1(i, k) - A1(i, 1)/A1(1, 1) A1(1, k) zur Zeilen-Umformung
Diagonalize Sequence
  • erzeugt aus An eine Matrix En mit Diagonalelementen 1
  • En:=Sequence(Sequence(If(k ≥ i , An(i, k) / An(i, i) , An(i, k)) ,k,1,n + 1),i,1,n)
Back Substitue Sequence
  • erzeugt nach n-1 Schritten die Einheitsmatrix
  • startet bei Matrix An Zeile n und erzeugt E_n-1 (n- Spalte 0) ... E1 Einheitsmatrix
  • Multipliziere Zeile D(n) mit D(i,k) und ziehe ab von Zeile D(i)
  • En-1:=Sequence(Sequence(If( i < n , En(i, k) - (En(n, k) En(i, n)) , En(i, k)) ,k,1,n + 1),i,1,n)
A1={{1,1,-2,3,1},{3,4,2,-3,42},{-1,6,-7,1,50},{-3,-2,1,-2,-14}}
[b]n-1 x Triangularize[/b] zur oberen Dreiecksmatrix An (A4)
[b]Diagonalize [/b]Diagonalelement = 1 En (E4)
[b]n-1 x Back Substitution[/b] Rücksubstitution spaltenweise zur Einheitsmatrix E1
n-1 x Triangularize zur oberen Dreiecksmatrix An (A4) Diagonalize Diagonalelement = 1 En (E4) n-1 x Back Substitution Rücksubstitution spaltenweise zur Einheitsmatrix E1
Übungsbeispiele n=3 A1 = {{11, 2, -1, 72}, {3, -6, 5, 114}, {-2, 1, -1, -33}} A1 = {{1, -1, 1, 4}, {4, 6, 3, -20}, {8, 5, -5, -85}} GLS:={16x1+24x2-16x3=64,24x1+61x2-34x3=56,-16x1-34x2+45x3=-73} A1:={{16, 24, (-16), 64}, {24, 61, (-34), 56}, {(-16), (-34), 45, (-73)}} A1= {{6,2,-1,5},{3,-4,-2,16},{2,-1,-2,5}} n=4 A1:={{1, 1, 0, 1, 7}, {2, 0, 2, 1, 7}, {0, 1, 1, 1, 7}, {(-1), (-3), 0, 1, (-7)}} A1={{4, (-5), 3, 6, 39}, {5, (-6), 6, 5, 43}, {(-4), 2, 9, 3, 6}, {2, (-3), 0, 1, 13}} n=5 A1 = {{2, 4, 2, 3, 5, 5}, {-6, 4, 4, -2, 1, -5}, {7, -3, 6, 1, 2, -2}, {9, -1, 8, -4, 2, -4}, {1, 6, 10, 7, 9, 7}} A1 = {{1, 4, 10, 2, 9, 44}, {2, 3, 4, 5, -5, 28}, {6, -2, 5, 4, -3, -9}, {8, -1, 2, 3, 4, 15}, {4, 4, 6, 4, -4, 24}} n=6 A1 = {{1, 1, 1, 1, 1, 1, 1}, {1, 2, 3, 4, 5, 6, 1}, {1, 3, 6, 10, 15, 21, 0}, {1, 4, 10, 20, 35, 56, 0}, {1, 5, 15, 35, 70, 126, 1}, {1, 6, 21, 56, 126, 252, 1}} A1 = {{4, -7, -6, 6, -7, -3, 77}, {1, 1, 2, -4, 0, -9, -47}, {2, 0, -1, 6, 8, 3, -25}, {9, -2, -6, 7, 0, -7, 1}, {-1, -7, -2, -8, 8, -3, -29}, {-1, -6, -9, -9, -2, 4, 80}} n=10 A1 = {{-3, 5, -9, -6, 9, 2, 7, -9, -2, -6, 96}, {0, -2, -3, -8, -4, -5, 3, -5, 0, 9, 51}, {5, -6, 2, 5, 8, 1, -6, 5, -7, -6, -69}, {-4, -5, 0, 1, -4, 1, 9, 0, 5, -4, -50}, {-5, 4, -4, -1, 5, -5, 8, 4, 2, -6, -46}, {1, -7, 7, -1, 2, 0, -3, 1, -7, -1, 61}, {9, 0, 9, 2, -8, -9, -8, 3, -8, -4, 53}, {-6, 2, 0, 3, 3, 0, 0, 6, -3, 7, -19}, {1, 6, -3, 1, -9, 2, 4, -2, -8, -9, 114}, {0, -5, 0, 4, 1, -9, -2, -6, -5, -8, 32}} teilweise entnommen aus https://www.zum.de/Faecher/M/NRW/pm/mathe/lgs5x5.htm