Gleichungen umstellen und lösen

Die Kenntnis der mathematischen Grundlagen wird beim Leser vorausgesetzt.

Die hier verwendete Notation ist in einem gesonderten Beitrag zusammengestellt.

Inhalt

Zur Beitragsübersicht


Einleitung

Im HP49G-Handbuch in Kapitel 6 (Lösen von Gleichungen) ist beschrieben, wie man Polynom-Gleichungen, Gleichungssysteme mit mehreren Unbekannten und Differentialgleichungen mit dem HP 49G löst.

Matrizen zur Lösung von Gleichungssystemen werden hier nicht behandelt. Die Eingabe und Darstellung von Matrizen wird im Beitrag "Vektoren und Matrizen" gezeigt.

Hier soll speziell der Befehl ISOL (SOLVE) zum Umstellen von Gleichungen näher betrachtet werden, der eine Gleichung nach einer der Variablen "auflöst". Das heißt, diese Variable steht dann als Ergebnis allein auf der linken Seite der Gleichung. Wenn nur eine Variable vorhanden ist, ist die Umstellung zugleich auch die Lösung der Gleichung.

Kurz erwähnt und an einem Beispiel vorgeführt wird auch die Funktion FACTOR.
Diese zerlegt ein Polynom n-ten Grades in die Faktoren
(x - x1) · (x - x2) · (x - x3 ) · ... · (x - xn) = 0,
welche die Lösungen x1, x2, x3 ... xn enthalten.

Zum Lösen von Gleichungen gibt es noch weitere Befehle :

In diesem Beitrag werden nur der Befehl ISOL und die Funktion FACTOR näher erläutert. Die Informationen über die anderen Befehle können den Handbüchern des HP 49G entnommen werden.

Flags

Flag -1:
Bei Gleichungen höheren Grades existieren mehrere Lösungen.
Der HP 49G gibt alle Lösungen an, wenn das Flag -1 gesetzt ist.
Ist das Flag -1 nicht gesetzt, wird nur die Hauptlösung angegeben.

Die Flags -2 und -3
bestimmen, ob das Ergebnis als Zahl oder symbolisch ausgegeben wird, ob also z. B. die Zahl 1,41421356237 oder das symbolische Ergebnis (Wurzel aus 2) ausgegeben wird.

Flag -103:
Bei manchen Rechnungen ergeben sich die Lösungen im Bereich der komplexen Zahlen, so daß das Flag -103 gesetzt (komplexe Zahlen C) werden muß. Wenn es nicht gesetzt ist, werden nur reelle Zahlen (R) ausgewertet und komplexe Lösungen führen dann zu einer Fehlermeldung oder der Rechner schaltet nach Rückfrage in den Complex-Modus. Deshalb sollte man vorwiegend den Complex-Modus C eingestellt haben. Der vierte Indikator auf dem LCD-Bildschirmchen oben zeigt dann C.

Das Flag -105
legt fest, ob der Wert sofort als reelle Zahl mit einer endlichen Zahl von Nachkommastellen (Näherungsmodus) ausgegeben wird, oder ob die genauen Wert symbolisch (exakter Modus) ausgegeben werden. Der fünfte Indikator auf dem LCD-Bildschirmchen zeigt dann (neben dem R oder C des Zahlenmodus) ein Gleichheitszeichen (exakter Modus, Anzeige: "=") oder ein Näherungszeichen (Näherungsmodus, Anzeige: "~").

Die Flags -1, -2, -3 und -105 wirken zusammen, wobei das Flag -105 die Genauigkeit der Berechnung bestimmt, während die Flags -1, -2 und -3 die Anzeige bzw. Ausgabe des Ergebnisses beeinflussen.

Flags -20, -21 und -22:
Bei Zahlenrechnungen können manchmal Zahlen-Unterläufe (Underflows) oder Zahlen-Überläufe (Overflows) stattfinden. Deshalb sollten die Flags -20, -21 und -22 nicht auf "error" geschaltet sein, sondern die jeweiligen Grenzwerte (0 oder ±9E499) anstelle der Bereichsüberschreitungen zulassen.

Der Befehl ISOL (SOLVE)

Laut Beschreibung im Advanced User's Guide Volume 1, Seite 1-186, muß die umzustellende Gleichung in der Form f(x,y,z,...) = 0 vorliegen. Die linke Seite der Gleichung enthält die Variablen und muß den Wert Null haben. Sie muß die Variable, nach der aufgelöst wird, in einem Ausdruck oder einer Funktion enthalten, die vom Rechner aufgelöst werden kann, d.h. für die verwendete Funktion muß im Rechner auch die Umkehrfunktion vorhanden sein. Sofern nur eine Variable vorhanden ist, liefert die Umstellung die Lösung dieser Gleichung.

Ab Version 1.19 kann die Gleichung auch die Form f(x,y,z,...) = c haben, wobei c eine Konstante ist.
Siehe Online-Hilfe bei SOLVE, bei ISOL gibt es keine Online-Hilfe, aber es funktioniert auch.

Aufruf im RPN-Modus

  1. In Stackebene 2 eingeben: Die linke Seite der Gleichung (Ausdruck muß den Wert Null haben).
  2. In Stackebene 1 eingeben: Die Variable, nach der aufgelöst werden soll.
  3. Befehl ISOL aufrufen.

Beispiel 1:
Die Gleichung -4 · x3 + 2 · y2 + 3 · z - 1 = 0 soll nach x umgestellt werden.
Die linke Seite der Gleichung wird in die Variable GL1 gespeichert, um sie nicht jedes Mal neu eintippen zu müssen.

Bild 1: Eingaben im Stack für Umstellung nach x Bild 2a: Frühere Fehlermeldung nach Aufruf von ISOL

Die Fehlermeldung im rechten Bild brachte der Rechner bei früheren Flash-ROM-Versionen, wo er offensichtlich keine Lösung fand.

Ab Version 1.19-x meldet er das richtige Ergebnis (siehe nachstehendes Bild), nachdem er zuvor den Winkelmodus RAD verlangt und bekommen und kurz "Unable to factor" gemeldet hat:

Bild 2b: Ergebnis

Einschränkung von ISOL

Beispielsweise kann der HP 49G die Gleichung ex - 3 · x - 2 = 0 nicht nach x umstellen (lösen).
Der Rechner meldet: "ISOL Error: Not reducible to a rational expression".

Das hängt damit zusammen, daß ISOL nur nach dem ersten x der Gleichung auflösen kann. ISOL funktioniert immer, wenn die Variable x nur einmal vorkommt und eine (echte) Umkehrfunktion natürlich existiert.

Wenn eine Variable als gesuchte Unbekannte mehr als einmal in einer Gleichung vorkommt sollte man nicht ISOL, sondern einen der Befehle ZEROS, SOLVE, SOLVEX... verwenden.

Nun soll die Gleichung aus Beispiel 1 nach y umgestellt werden (linkes Bild):

Bild 3: Auflösung nach y, Eingaben im StackBild 4: Ergebnis y=... nach Aufruf von ISOL

Hier findet der Rechner zwei Lösungen (rechtes Bild), die in einer Liste ausgegeben werden.

Anzeige einer überlangen Stackzeile:
In dieser symbolischen Darstellung des rechten Bildes paßt das Ergebnis der Länge nach nicht auf den Bildschirm. Um das Ergebnis dieser überlangen Zeile in algebraischer Darstellung zu sehen, drückt man die Cursortaste [/\] ("Pfeil-nach-oben"), dann ruft man [VIEW] auf. Nun kann man die überlange Zeile mit den Cursortasten hin und her schieben. Mit [OK] und anschließend [ON] schaltet man wieder zurück zum Stack.

Oder man verwendet den Befehl OBJ-> um die beiden Lösungen in zwei Stackebenen anzuzeigen. Für eine bessere Lesbarkeit wurde vorher auf den FONT6 umgeschaltet (siehe das nachfolgende Bild):

Bild 4a: Ergebnisse einzeln im Stack

Die Darstellung dieser Lösungen ist etwas ungewöhnlich, weil die Wurzel nicht über den gesamten Bruch einschließllich Bruchstrich geht, sondern nur den Zähler umfaßt. Den Nenner hat der Rechner aus der Wurzel "herausgerechnet".

Nun noch die Umstellung nach z (nachfolgendes Bild links):

Bild 5: Eingaben im StackBild 6: Ausgabe des Ergebnisses nach Aufruf von ISOL

Der Rechner findet eine Lösung (rechtes Bild), die bequem angezeigt werden kann.

Beispiel 2:

Bei Gleichung von Beispiel 1 werden alle Variablen mit s bezeichnet:
-
4·s3+2·s2+3·s-1 = 0. Die linke Seite dieser Gleichung wird in der Variablen GL2 abgelegt.

Nun folgt die Umstellung nach der Variablen s.

Bild 7: Eingaben im StackBild 8: Ausgabe des Ergebnisses nach Aufruf von ISOL

Hier findet der Rechner 3 Lösungen, obwohl die Struktur der Gleichung gegenüber Beispiel 1 nicht geändert wurde.

Die Lösungen sind im exakten Modus dargestellt. Wenn man das Ergebnis in Zahlen (numerisch) haben will, dann muß man

  1. zuerst in den Näherungsmodus schalten,
  2. die Liste durch OBJ-> "entpacken" und
  3. bei den drei Stackinhalten das "s=" durch Editieren entfernen und den Befehl ->NUM aufrufen.

Die Zahlenwerte kann man auch einfacher haben. Man schaltet vor der Berechnung auf den Näherungsmodus um. Nun steht C~ in der Indikatorzeile:

Bild 9: Stackeingabe für Berechnung im Näherungsmodus Bild 10: Ergebniswerte der 3 Lösungen

Das Ergebnis wird hier mit der Einstellung von 2 Nachkommastellen angezeigt.

ALG-Modus

Im algebraischen Modus erfolgt der Aufruf auch durch ISOL. Dieser stellt die Anzeige ISOL( ) in die Befehlszeile. Die Angaben über die linke Seite der Gleichung und die Variable, nach der aufgelöst werden soll, werden in die vorgegebene Klammer eingetragen, das Komma zwischen den beiden Eingabeparametern darf nicht vergessen werden:

ISOL(-4*s^3+2*s^2+3*s-1,s)

Die Ausführung des Befehls wird mit [ENTER] gestartet. Ergebnisdarstellung wie beim RPN-Modus.

Bemerkungen zum Befehl ISOL

Wenn ISOL Fehlermeldungen bringt, daß keine Lösung gefunden wurde oder daß die Gleichung nicht auf einen rationalen Ausdruck reduzierbar ist, sollte man nicht aufgeben. Wie oben schon erwähnt, kommt es auch darauf an, wie oft eine Variable in der zu lösenden Gleichung vorkommt.

Manchmal findet er keine Lösung im exakten Modus, bringt aber dann im Näherungsmodus die richtigen Zahlenwerte (weil es keine exakte Lösung gibt) oder er bringt umgekehrt im Näherungsmodus kein Ergebnis, weil sich symbolische Ausdrücke nicht auflösen lassen.

In vielen Fällen ist auch der Zahlenbereich entscheidend, ob es Lösungen gibt. Meldet der Rechner im reellen Zahlenbereich einen Fehler, kann es durchaus Lösungen im komplexen Zahlenbereich geben.

Also: Alle Möglichkeiten probieren.

 

Die Funktion FACTOR

Diese Funktion wird auch bei den Primzahlenzerlegungen einer Integerzahl im Beitrag "Hochgenaue Integerfunktionen des HP 49G" angesprochen. Sie ist aber auch für Polynome gültig.

Da die Gleichung aus Beispiel 2 ein Polynom -4·s3+2·s2+3·s-1 = 0 ist, läßt es sich auch mit der Funktion FACTOR lösen. Der Ausdruck der linken Seite dieser Gleichung wird in den Stack gestellt und dann die Funktion FACTOR aufgerufen. Das Ergebnis ist (im exakten Modus) die nichts anderes, als das umgestellte Polynoms in der Form :

Polynom in Faktoren aufgelöst

Im Näherungsmodus mit den entsprechenden Einstellungen der Flags -2 und -3 für numerische Ausgabe ergibt sich:

(s - 0.309016994375) · (s + 0.809016994375) · (s - 1) · (-4) = 0

Um die Gleichung zu erfüllen, muß mindestens ein Klammerausdruck oder alle gleich Null sein. Wenn man die Klammerausdrücke Null setzt, ergeben sich daraus im exakten Modus die symbolischen Ergebnisse oder im Näherungsmodus die Zahlenwerte:

s = 0.309016994375 = sin 18°

s = -0.809016994375 = sin -54°

s = 1 = sin 90°

 

Besonderheiten der Gleichung aus Beispiel 2

Für die Interessierten an speziellen mathematischen Zusammenhängen hier die Hintergründe der Gleichung aus Beispiel 2.

Dazu die ausführliche Erläuterung:

Im Beitrag "Die Summenfunktion des HP 49G" wird als Beispiel für die Berechnung des Sinus die Summe einer Potenzreihe verwendet. Diese Sinuswerte werden mit dem Winkel im Bogenmaß berechnet.

Bestimmte Winkel in Grad (früher sagte man Altgrad) haben eine Sonderstellung, dazu gehören 45°, 90°, 180° und 360°. Aber auch 30° und 60° haben eine Sonderstellung, da die Werte für die Winkelfunktionen aus einem gleichseitigen Dreieck über den "Pythagoras" ermittelt werden können.

Die Werte der Winkelfunktionen für andere Winkel kann man über die trigonometrischen Additionstheoreme und die Funktionen für doppelte und halbe Winkel aus diesen "Sonder"-Winkeln berechnen.

Aber auch die Berechnung regulärer Vielecke (Polygone) liefert Ansätze für die Berechnung von Sinus-Werten bestimmter besonderer Winkel.

Der Sinus von 18°

Das reguläre Fünfeck und das dort einbeschriebene Pentagramm (fünfzackiger Stern, "Drudenfuß", siehe Zeichnung) beruhen auf den Zentriwinkeln von 72°, den Peripheriewinkeln von 36° sowie den Vielfachen von 18°. Aus dem Pentagramm wurde die Gleichung für den Sinus von 18° abgeleitet und diese für obiges Beispiel 2 verwendet.

Die Zeichnung zeigt diese Zusammenhänge:

Zeichnung mit Pentagramm,  Gleichung und Lösungen

Für die Höhe h des gelb markierten Dreiecks gilt die Beziehung

s · tan 36° = h = (1-s) · tan 18°

Für sin 18° wird s gesetzt, h fällt heraus. Über trigonometrische Umrechnungen werden die Tangenswerte auf sin 18° bezogen. Daraus ergibt sich dann die Gleichung -4·s3+2·s2+3·s-1 = 0.

Die aus obigem Beispiel 2 bekannten 3 Lösungswerte der Variablen s sind die Sinuswerte der Winkel der Zacken-Mittellinien des Pentagramms bezogen auf die x-Achse des eingezeichneten Koordinatensystems. Deshalb lassen sich die Lösungswerte auch auf folgende Weise schreiben: s = sin 18°, s = sin -54° und s = sin 90°.

Mit dem sin 18° hat es noch eine andere Bewandtnis:

Das reguläre Fünfeck wird aus dem regulären Zehneck konstruiert, dessen Seitenlänge der größere Abschnitt des nach dem Goldenen Schnitt geteilten Umkreisradius r ist.

Zur Erinnerung: Die Teilung einer Strecke der Länge 1 in zwei ungleich lange Teile g und (1-g) ist dann nach dem Goldenen Schnitt durchgeführt, wenn das Verhältnis der Länge des kleineren Teiles (1-g) zur Länge des größeren g identisch ist mit dem Verhältnis des größeren Teils zur gesamten Strecke: Also (1-g)/g = g/1. Daraus ergibt sich für g der doppelte Wert der oben für sin18° ermittelten genauen Lösung in symbolischer Schreibweise.

Aus dieser Formel und der oben ermittelten symbolischen Lösung für sin18° ergibt sich dann:

Beim Goldenen Schnitt ist das Verhältnis des größeren Abschnitts zur ganzen Länge = 2 · sin 18°.

Dies kann als Beweis für die Richtigkeit der Konstruktion eines Zehnecks angesehen werden, dessen Seitenlänge normalerweise aus einem rechtwinkeligen Dreieck mit den Kathetenverhältnis r/(½r) konstruiert wird.
Der Wert der Seitenlänge eines Zehnecks wird mit 2 · r · sin 18° berechnet (r = Umkreisradius).

 

Bild 11: Graph der FunktionZum Schluß wird noch der Graph der Funktion:

f(s)= -4·s3+2·s2+3·s-1 gezeigt (Bild rechts).

Die Abszissenwerte der drei Nullstellen sind die oben berechneten Lösungen.

 


Zum Beginn dieser Seite
Zur Beitragsübersicht

Copyright © 2002 Otto Praxl
Alle Rechte vorbehalten!