Testat 7: Lösen linearer Gleichungssysteme

Zeilen: Spalten: Rang: kmax: Lösbarkeit: %

Hinweis zu den Beispielaufgaben.

Das Skript erzeugt ein zufälliges lineares Gleichungssystem. Als Lösung können eingeblendet werden ein Vektor, welcher das Gleichungssystem löst, sowie eine Basis des Kernes. Die tatsächliche Aufgabenstellung in den Testaten wird zwar auf eine derartige Rechnung (eine Lösung und eines Basis der Kernes ermitteln) hinauslaufen, könnte aber anders formuliert sein. Wir bitten Sie, die genaue Formulierung der Testataufgabe zu beachten.

Das Matrizenformat ist das von vielen Programmen (wie z. B. octave) benutzte matlab-Format, zum Beispiel ist [1,0,0;0,1,0;0,0,1] die Einheitsmatrix mit 3 Zeilen und Spalten. Man kann also die von dem Skript ausgegebene Matrix in den Kopierpuffer des Fenstersystems laden und auf diese Weise dem octave-Programm eingeben:

octave:1> M=[-3,-2,-3;6,9,11;-42,-48,-62]
M =
-3-2-3
6911
-42-48-62
octave:2> M*[6;-8;-6]
ans =
16
-102
504
Man beachte, daß die rechte Seite des Gleichungssytemes und die gesuchte Lösung Spaltenvektoren sind. Für die Eingabe von Spaltenvektoren erwartet octave ein ';' (kein ','!) zwischen den Vektorkomponenten.

Für das Testat sind 3∗3 Matrizen vom Rang 2 vorgesehen, wobei die rechte Seite stets so gewählt wird, daß es eine Lösung gibt. Die Lösung ist in diesem Fall mehrdeutig. Die von Ihnen gefundene Lösung muß also nicht falsch sein, wenn sie nicht mit der von dem Skript ausgegebenen Lösung übereinstimmt. Es empfiehlt sich daher das Nachrechnen Ihrer Lösung mittels octave oder einem ähnlichen Programm, wie eben beschrieben.

Auf Wunsch können auch Aufgaben mit anderen Parametern, die innerhalb gewisser Grenzen liegen müssen, erzeugt werden. Der Parameter kmax hat Einfluß auf die Größe der Koeffizienten. Direkt beeinflußt er die Beträge der Komponenten des Lösungsvektors sowie den maximalen Betrag des Koeffizienen der elementaren Zeilenumformungen, durch die das Skript die Matrix bildet. Für den Prozentsatz der erzeugten Aufgaben, für die das Gleichungssystem lösbar ist, kann auch ein kleinerer Wert als 100% angegeben werden. Ist die Zeilenzahl gleich dem Rang, so wird dieser Wert ignoriert. Wird das Feld zur Angabe des Ranges leergelassen, so wird für den Rang eine zufällige Zahl innerhalb der durch Zeilen- und Spaltenzahl gegebenen Grenzen erzeugt.