Lässt es sich mit cremefarbenem Papier, einer Tönung, mehr Kontrast oder größerer Schrift besser lesen? Wählen Sie Ihre Farben und Ihre Schrift, einmalig für alle Seiten.

Kostenlose Lektion

Gleichungssysteme lösen mit dem Gauß-Verfahren

Nach dieser Lektion: Ich kann ein kleines Gleichungssystem durch Elimination lösen und sagen, wann es keine oder viele Lösungen hat.

Lektion, 75 Min.3 BefehleJupyterLab-Lab für Data Science: pandas, Matplotlib und scikit-learn im Browser

Was kosten Kaffee und Kuchen einzeln?

Ein lineares Gleichungssystem sucht Zahlen, die mehrere Gleichungen zugleich erfüllen. Das Gauß-Verfahren löst es Schritt für Schritt mit einfachen Zeilenrechnungen.

Ein Café nennt nur zwei Rechnungen: 2 Kaffee und 1 Kuchen kosten 5 Euro, 1 Kaffee und 2 Kuchen kosten 7 Euro. Daraus folgt der Einzelpreis.

Am Ende dieser Lektion

Notiz

Ich kann ein kleines Gleichungssystem durch Elimination lösen und sagen, wann es keine oder viele Lösungen hat.

Schlüsselwörter

BegriffWas er bedeutet
Gleichungssystemmehrere Gleichungen mit denselben Unbekannten
Eliminationeine Unbekannte aus einer Zeile herausrechnen
Pivotdie Zahl, mit der eine Zeile eine andere löscht
singuläreine Matrix, deren Zeilen voneinander abhängen
Determinanteeine Zahl, die bei singulären Matrizen 0 ist

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Ein Gleichungssystem ist eine Matrix mal ein Vektor

Die beiden Rechnungen lauten: 2x plus y gleich 5 und x plus 2y gleich 7. Dabei ist x der Kaffeepreis und y der Kuchenpreis.

Als Matrix steht links [[2, 1], [1, 2]] mal [x, y], rechts [5, 7]. Zum Rechnen schreibt man beide Seiten in eine Tabelle, die erweiterte Matrix.

Beispiel: Elimination in drei Schritten

SchrittZeile 1Zeile 2Was geschieht
Start2 1 gleich 51 2 gleich 7Die Zeilen stehen so da
Tauschen1 2 gleich 72 1 gleich 5Oben steht jetzt eine 1 als Pivot
Zeile 2 minus 2 mal Zeile 11 2 gleich 70 minus 3 gleich minus 9Das x ist aus Zeile 2 verschwunden
Rückwärtsx gleich 7 minus 2 mal 3 gleich 1y gleich 3y zuerst, dann x

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Elimination in Python

Code: python
# Zeile 1: x + 2y = 7. Zeile 2: 2x + y = 5
z1 = [1, 2, 7]
z2 = [2, 1, 5]
faktor = z2[0] / z1[0]
z2 = [z2[0] - faktor * z1[0], z2[1] - faktor * z1[1], z2[2] - faktor * z1[2]]
print("Zeile 2 danach:", z2)
y = z2[2] / z2[1]
x = z1[2] - z1[1] * y
print("x:", x, "y:", y)
# Ändern Sie die rechten Seiten auf 8 und 7. Was kosten Kaffee und Kuchen dann?

Dasselbe System mit NumPy lösen

Befehl
docker exec jupyter python3 -c "import numpy as np; a = np.array([[2, 1], [1, 2]]); b = np.array([5, 7]); print(np.round(np.linalg.solve(a, b), 6).tolist())"

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Manche Systeme haben keine oder viele Lösungen

Sind die Zeilen voneinander abhängig, wird beim Eliminieren eine ganze Zeile zu Nullen. Steht rechts ebenfalls 0, passt jedes Paar: unendlich viele Lösungen.

Steht rechts eine andere Zahl, ist die Zeile ein Widerspruch: keine Lösung. Die Matrix heißt dann singulär.

Beispiel: zwei singuläre Systeme

SystemZeile 2 minus 2 mal Zeile 1Ergebnis
x plus y gleich 2 und 2x plus 2y gleich 40 0 gleich 0unendlich viele Lösungen
x plus y gleich 2 und 2x plus 2y gleich 50 0 gleich 1keine Lösung

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Die Determinante einer singulären Matrix

Befehl
docker exec jupyter python3 -c "import numpy as np; print(np.linalg.det(np.array([[1, 1], [2, 2]])), round(np.linalg.det(np.array([[2, 1], [1, 2]])), 3))"

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Ein häufiger Fehler

Warnung

Viele denken, so viele Gleichungen wie Unbekannte ergäben immer genau eine Lösung. Das stimmt nicht. Hängen die Zeilen voneinander ab, gibt es keine oder unendlich viele. Prüfen Sie die Determinante: Bei 0 ist die Matrix singulär.

Mit mehr Unbekannten bleibt das Verfahren gleich

Bei drei Unbekannten löschen Sie erst die erste Spalte unter dem Pivot, dann die zweite. Es entsteht eine Treppe aus Nullen.

Danach lösen Sie von unten nach oben. Genau diese Schleifen schreiben Sie in der Aufgabe, damit der Rechner jede Größe löst.

Beispiel: drei Gleichungen, drei Unbekannte

SchrittZeile 1Zeile 2Zeile 3
Start1 1 1 gleich 60 2 5 gleich minus 42 5 minus 1 gleich 27
Zeile 3 minus 2 mal Zeile 11 1 1 gleich 60 2 5 gleich minus 40 3 minus 3 gleich 15
Zeile 3 minus 1,5 mal Zeile 21 1 1 gleich 60 2 5 gleich minus 40 0 minus 10,5 gleich 21
Rückwärtsx gleich 5y gleich 3z gleich minus 2

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Das System mit drei Unbekannten lösen

Befehl
docker exec jupyter python3 -c "import numpy as np; a = np.array([[1, 1, 1], [0, 2, 5], [2, 5, -1]]); b = np.array([6, -4, 27]); print(np.round(np.linalg.solve(a, b), 6).tolist())"

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Über dieses Lab und seinen Quellcode: JupyterLab-Lab für Data Science: pandas, Matplotlib und scikit-learn im Browser

Sie unterrichten eine Gruppe? Weisen Sie dieses Modul Ihren Studierenden zu, mit Handbuch für Lehrende, automatisch geprüften Aufgaben und einem Lab für jede Person.