[Mathe] Gleichung umstellen

birnchen

back to the roots
ID: 134652
L
21 April 2006
11.225
1.155
Ich bräuchte mal Hilfe beim Umstellen einer Gleichung nach x:

y = 4.61*10[sup]-8[/sup]x³ - 5.10*10[sup]-5[/sup]x² + 0.0323x + 0.0391


Wo sind die Mathegenies? 8)
 
Diese Gleichung wirst du nicht nach x umstellen können, da sie nicht injektiv ist (was man -vereinfacht gesagt- daran erkennt, dass sowohl x³ als auch x² im Funktionsterm auftauchen).
 
Ich ziehe meine Aussage teilweise zurück, die gegebene Funktion ist tatsächlich injektiv (um genau zu sein ist sie streng monoton steigend, was man daran erkennt, dass die erste Ableitung für alle x größer als 0 ist).
Allerdings bleibe ich trotzdem dabei, dass man sie nicht (zumindest nicht mit Schulmathematik) nach x umstellen kann, da sie sich nicht in die Form a(x-b)³+d bringen lässt, sondern nur in die Form a(x-b)³+cx+d, die sich jedoch nicht nach x auflösen lässt.
 
Ich erinnere mich dunkel, daß wir damals in der Schule für sowas Polynomdivision genommen haben, aber ich weiß nicht mehr wie das ging.
 
Das benutzt man, wenn man für ein bestimmtes Y alle möglichen X haben will, aber dafür muss man dann schon eine Lösung kennen.
Einfaches Beispiel:
Die Gleichung x³-6x²+11x-6=0 besitzt 3 Lösungen, von denen wir bisher z.B. durch Ausprobieren die Lösung x=2 gefunden haben. Jetzt können wir Polynomdivision machen:
(x³-6x²+11x-6):(x-2)=x²-4x+3
z.B. mit der PQ-Formel findet man dann die weiteren Lösungen 1 und 3.

Aber um die Umkehrfunktion zu finden, kann man dieses Verfahren nicht benutzen.
 
Polynomdivision is eigentlich ganz einfach, aber die funktioniert nur, wenn du eine Nullstelle raten kannst. Findest du ein x, für das y(x) = 0, isses einfach.
Für deinen Fall bringt sie aber nix, da du ja nicht faktorisieren oder Nullstellen bestimmen willst, sondern ne Umkehrfunktion suchst.

Ich erklär trotzdem mal schnell die Polynomdivision:
Bsp: y(x) = 4x[sup]3[/sup] + 2x[sup]2[/sup] - 8x + 2

Nullstelle x = 1: y(1) = 4+2-8+2 = 0 ok.
D.h. im Polynom steckt der Faktor (x - 1) drinnen. Dieses klammert man nun aus:
y(x) = (x - 1)(Rest-Polynom)
Rest-Polynom wird nun durch Polynomdivision ermittelt:
⇔ Rest-Polynom = y(x) : (x - 1)

(4x[sup]3[/sup] + 2x[sup]2[/sup] - 8x + 2) : (x - 1) =
Nur die höchste Potenz ansehen: 4x[sup]3[/sup] : x = 4x[sup]2[/sup], d.h. du schreibst 4x[sup]2[/sup], danach rückmultiplizieren: 4x[sup]2[/sup]⋅(x - 1) = 4x[sup]3[/sup]- 4x[sup]2[/sup] und sauber untereinander schrieben (geht im Forum eher schlecht) und subtrahieren. Danach die nächste "Stelle" runterziehen.

Code:
(4x[sup]3[/sup] + 2x[sup]2[/sup] - 8x + 2) : (x - 1) = 4x[sup]2[/sup]
-(4x[sup]3[/sup] - 4x[sup]2[/sup])
----------------------------------------
                      6x[sup]2[/sup] - 8x
Selbes Spielchen nochmal:
6x[sup]2[/sup] : x = 6x, d.h. 6x anschreiben. Rückmultiplizieren:
6x⋅(x - 1) = 6x[sup]2[/sup] - 6x, drunterschreiben, subtrahieren, die letzte "Stelle" runterholen:

Code:
(4x[sup]3[/sup] + 2x[sup]2[/sup] - 8x + 2) : (x - 1) = 4x[sup]2[/sup] + 6x
-(4x[sup]3[/sup] - 4x[sup]2[/sup])
----------------------------------------
                      6x[sup]2[/sup] - 8x
                      -(6x[sup]2[/sup] - 6x)
                      -----------------------------------
                                              2x + 2
2x : x = 2, 2 anschreiben, rückmultizieren und abziehen und die Division muss aufgehen (da Nullstelle Voraussetzung !). Tut sie auch:

Code:
(4x[sup]3[/sup] + 2x[sup]2[/sup] - 8x + 2) : (x - 1) = 4x[sup]2[/sup] + 6x + 2
 -(4x[sup]3[/sup] - 4x[sup]2[/sup])
 ----------------------------------------
                       6x[sup]2[/sup] - 8x
                      -(6x[sup]2[/sup] - 6x)
                      -----------------------------------
                                              2x + 2
                                             -(2x + 2)
                                            -------------
                                                    0
D.h.
Rest-Polynom = (4x[sup]3[/sup] + 2x[sup]2[/sup] - 8x + 2) : (x - 1) =
= 4x[sup]2[/sup] + 6x + 2

Du kannst also (4x[sup]3[/sup] + 2x[sup]2[/sup] - 8x + 2) zerlegen in (x - 1)(4x[sup]2[/sup] + 6x + 2). Die anderen (max.) beiden Nullstellen kriegst du nun, indem du die Lösungsformel für quadr. Gleichungen nimmst. Du hast die kubische Gleichung ja um eine Ordnung reduziert, sodass das geht.
 
Das benutzt man, wenn man für ein bestimmtes Y alle möglichen X haben will, aber dafür muss man dann schon eine Lösung kennen.ie Umkehrfunktion zu finden, kann man dieses Verfahren nicht benutzen.
Nunja, da es sich um Ausgleichgerade einer Messreihe handelt, habe ich einige Werte gegeben. Um genau zu sein 10 Wertepaare.

@Hacker: Bringt mich das weiter? :-?
 
@Hacker: Bringt mich das weiter? :-?
Ne, sag ich ja.
Nunja, da es sich um Ausgleichgerade einer Messreihe handelt, habe ich einige Werte gegeben. Um genau zu sein 10 Wertepaare.
Wenn du nur ne Ausgleichsgerade suchst, was hat das dann mit deinem Term im ersten Posting zu tun ?

Hast du konkrete Messpunkte und willst interpolieren, geht das relativ einfach mit Formeln. Findest du z.B. hier https://de.wikipedia.org/wiki/Interpolation
 
Excel hat mir diese Gleichung ausgespuckt als ich in meine Werte eine Ausgleichgerade gelegt hab. Das ist quasi eine Kalibrierkurve und ich erhalte jetzt Werte von y denen ich ein x zuordnen muß.
 
Ich erinnere mich dunkel, daß wir damals in der Schule für sowas Polynomdivision genommen haben, aber ich weiß nicht mehr wie das ging.

Also wie meine Vorredner schon richtig gesagt haben brauchst du für ne Polynomdivision eine erratene Nullstelle, die hast du nicht. Aber wenn ich dich richtig verstanden habe geht es hier um einen Anwendungsfall, oder? Da weiß ich jetzt natürlich nicht, wie exakt deine Betrachtungen sein müssen, aber was hälst du denn davon:

Wenn man sich die Koeffizienten vor x^3 und x^2 anschaut, sind die schon sehr klein, d.h. für kleine |x| kommt da fast 0 raus, also ist doch deine Funktion ungefähr dann 0, wenn 0.0323x + 0.0391, oder? (Deshalb ja auch Ausgleichsgerade) Und das kann man doch schön lösen ;)
also ist x=-1.21053 eine ungefähre Nullstelle die Abweichung ist auch nur sehr gering, f(x=-1.21053)=0.000746523
Naja und jetzt kannst du ja mal eine Polynomdivision mit (x+1.21053) durchführen und hast dann noch ne quadratische Gleichung zu lösen, die nur noch imaginäre Nullstellen hat.
Wenn du's exakter machen willst, kannst du ja ne Intervallschachtelung machen und dich langsam zu einer besseren Lösung hinarbeiten. Ist halt ein bisschen vom Anwendungsfall abhängig.

Ne numerisch halbwegs exakte Lösung (mit mathematica berechnet) wäre:
x1=-1.21285 x2,3=-552.539+- i*627.703
Damit du weißt wos hingeht und wie exakt deine Lösung ist.

HTH Sören
 
Wäre es einfacher, wenn x und y vertauscht wären?

Also ich weiß jetzt nicht was du mit vertauschen meinst, aber so aus dem Stehgreif würde ich jetzt mal sagen nein. Meinst du mit vertauschen einfach umbenennen? also für alle x schreibt man y und für alle y schreibt man x? Das ändert nix an der Gleichung bzw. am Problem, bringt also keine Vereinfachung.

HTH

Edit: Mal noch eine Frage, in welchem Größenbereich bewegen sich denn deine X-Werte in deiner Anwendung? Wenn die relativ klein bleiben (|x|<100 z.B.) würde ich die Kalbrierkurve in den Linearen Teil und einen Fehlerterm aufspalten und einfach alles mit dem linearen Teil berechnen. Jetzt kannst du für die betrachtete Größenordnung die Größe des Fehlerterms bestimmen, der gibt dir dann an um wieviel die tatsächliche Funktion vom linearen Teil abweicht. Mit Hilfe der Steigung des linearen Teils kannst du dann sagen wie genau deine ermittelten X-Werte sind.

Hmm, doof zu erklären, weißt du was ich meine?
 
Zuletzt bearbeitet:
Die x-Werte gehen von 0 bis 400. Die y-Werte von 0 bis 8.

Wenn ich jetzt die Achsen vertausche bekomme ich ja eine neue Gleichung. Da ich dann ja nicht mehr x suche sondern y könnte ich doch den aus der Messung erhaltenen x-Wert in die Gleichung einsetzen und erhalte das gesuchte y.
 
Achso, jetzt verstehe ich was du meinst. Du willst praktisch die Werte der Messpunkte vertauschen und dir dann von excel ne neue 'inverse' Kalibirierungsgleichung geben lassen. Ja, das sollte gehen würde ich jetzt mal sagen. Kannst ja mit der orginalgleichung einige Punkte gegenrechnen und schauen ob es passt.

Viel Glück ;)
 
Analytisch kann man das im allgemeinen nicht mehr lösen. Ein Polynom 2ten Grades ginge noch, 3ten Grades dann aber schon nicht mehr.

Um soetwas numerisch zu lösen, benötigst Du ein gutes Numeriktool. Ich persönlich arbeite extrem viel mit Matlab und kann das daher empfehlen. Ist allerdings kostenpflichtig (obschon Octave eine kostenlose Alternative mit sehr ähnlicher Syntax ist).

In Matlab würde man das so machen: Um den x-Wert rauszufinden, der zu einem y-Wert y1 gehört:

Code:
xwerte=0:400;
ywerte = 4.61e-8*xwerte.^3 - 5.10e-5*xwerte.^2 + 0.0323*x + 0.0391
x1 = interp1(ywerte,xwerte,y1)

Das wäre linear interpoliert, gegebenenfalls ließe sich auch mit kubischen Splines so interpolieren:
Code:
x1 = interp1(ywerte,xwerte,y1,'pchip')
oder
Code:
x1 = interp1(ywerte,xwerte,y1,'spline')

(pchip und spline unterscheiden sich in den Randbedingungen, i.A. ist pchip etwas runder, spline etwas genauer).
 
Für ein einziges Diagramm werde ich mich nicht stundenlang mit Matheprogrammen auseinandersetzen. Tausch ich lieber die Achsen.