MatrizenInhalt: Austausch einer Spalte oder ZeileFrage:Ich suche eine Funktion, die die Spalte oder Zeile einer vorliegenden Matrix gegen eine andere Spalte oder Zeile vertauscht. Antwort:Hier sind die Funktionen, die das Gewünschte leisten mit betreffenden Beispielen:
Inversion einer MatrixFrage:Ich möchte gerne die Inverse einer Matrix berechnen und dabei die einzelnen Schritte nachvollziehen können (wie bei der händischen Durchführung). Das könnte zB so aussehen: Antwort:Man könnte die gleichen Operationen verwenden, wie bei den Gleichungssystemen gezeigt. Wenn das aber zu umständlich ist, können alle Schritte, die jeweils eine Spalte betreffen, in einen Rechengang zusammengefasst werden: Wir schreiben ein Miniprogramm dazu: Zuerst lassen wir DERIVE auch die erweiterte Matrix erzeugen!
Dieses Programm führt jeden Schritt aus und speichert die transformierte Matrix unter dem Namen inv.
Jetzt geht es, mit der 3. Spalte beginnend wieder zurück:
Zur Kontrolle lassen wir die inverse Matrix berechnen:
Hinweis: Der PIVOT-Befehl von DERIVE schafft auch einiges! Ein Tausch der Zeilen i und j kann händisch mit dem Befehl SWAP_ELEMENTS(Matrix,i,j) jederzeit durchgeführt werden.
usw. Ein Einzeiler von Johann Wiesenbauer schafft dies viel eleganter:
Natürlich kann damit auch die Gauß´sche Eliminationsmethode schrittweise nachvollzogen werden. |
© PI-NOe, letzte Änderung am 30. August 2007, erstellt von Josef Böhm und Walter Wegscheider