Ermittelt Excel falsche Kurvengleichungen?

Hi,

habe mir in einem Diagramm für eine Reihe von Datenpunkten eine Trendlinie plus Kurvengleichung (Polynomisch, 6ten Grades) ausgeben lassen. Im Rahmen meiner Auswertung muss ich die Gleichung zu null setzen und die Lösungen dieser Gleichung für weitere Berechnung benutzen. Es geht um Brewster-Winkel. Gebe ich aber diese Gleichung in Derive ein, gibt er mir nur komplexe Lösungen. Wenn ich die Kurve zeichnen lasse, sieht die nicht annähernd so aus, als dass man sie an meine Trendlinie anlegen könnte. Jetzt meine Frage: Ist die Kurvengleichung falsch? Wie kann ich mir eine bessere Gleichung ermitteln? Wäre gut, wenn ihr schnell antwortet, ist nämlich echt dringend.

Grüße Flo

Hi,

habe mir in einem Diagramm für eine Reihe von Datenpunkten
eine Trendlinie plus Kurvengleichung (Polynomisch, 6ten
Grades) ausgeben lassen.
Grüße Flo

Hi Flo,

mit Excel hab ich die Erfahrung gemacht, dass Polynome 3. Grades ungenau sind und höher immer ungenauer werden. Der Koeffizient ist dann nur noch eine ganze Zahl! Also z. B. 3x^5 statt 3,45796x^5. Das zieht sich dann durch die ganze Gleichung. Für mich ist Excel für alle Polynome größer 2. Grades untauglich! Leider!

Gruß
Pat

Hallo,

ermittele die Gleichung „per Hand“. Nee, nee, das is ernst gemeint!

Ist nicht schwer:

Nehmen wir mal an, Du hast in Spalte A die X-Werte und in Spalte B die Y-Werte. Dann schreibst Du in die Zellen F1:F4 zB. die Parameter des Polynoms 3. Grades (nimm irgendwelche Schätzwerte. Am besten welche, womit die Funktion in etwa den Daten nahe kommt).

In die Spalte C gibst Du die Formel des anzupassenden Polynoms ein, wobei Du die Parameter eben durch Bezüge aus den Zellen F1:F4 nimmst. In C1 stünde dann zB. ‚=$F$1*B1^3+$F$2*B1^2+$F$3*B1+$F$4)‘

In die Spalte D kommen nun die Abweichungsquadrate zwischen den Werten ini Spalte B (=Y-Werte) und C (=Funktionswerte) (also in D1 stünde dann ‚=(C1-B1)^2‘

In der Zelle E1 kannst du die Summe der Abweichungsquadrate berechnen (’=Summe($D:blush:D)’)

Um einen Eindruck von den Daten und der Funktion zu bekommen, erstelle ein XY-Diagramm aus den Spalten A:C, die erste Datenreihe (Y-Werte) als Punkte und die zweite Datenreihe (Funktionswerte) als Linie. Jetzt gib in F1:F4 Werte ein, welche die Kurve ungefähr und nur ganz grob den Daten anpasst. Meist reicht es auch, überall einfach ‚1‘ einzutragen.

So, nun müssen die Parameter angepasst (optimiert) werden. Das machst du mit dem Solver aus dem Menü Extras/Solver… (wenn er da nicht ist, mußt du das entsprechende AddIn installieren: Menü Extras/AddIns…, Häckchen bei „Solver“ und OK).

Wenn Du den Solver startest, erscheint ein Dialogfenster.
Zielzelle ist die Zelle mit der Summe der Abweichungsquadrate (im Beispiel E1).

Der Zielwert soll Minimiert werden (Zielwert: Min).

Veränderbare Zellen sind die Zellen mit den Parametern (im Bsp. F1:F4).

Bei Bedarf können auch noch Nebenbedingungen angegeben werden, aber das führt hier zu weit.

Dann einfach auf „Lösen“ klicken und warten. Wenn der Solver eine Lösung vorschlägt, shau das Diagramm an, ob die Lösung Sinn macht. Wenn ja - fertig! Wenn nein, abbrechen, die Werte in F1:F4 äandern und den Solver nochmal starten. Wenn das nach 2-3Versuchen nix Sinvolles liefert, kannst Du mal an den Solver-Einstellungen rumspielen (im Solver-Dialog auf „Optionen…“ klicken). Hier hat „Automatische Skalierung anwenden“ oft den besten Effekt.

Ok, ok, ist doch etwas umständlicher, als die Vordefinierten Trendlinien zu verwenden, aber dafür ist es genau und vor allem flexibel!! Du kannst ja ganz beliebige Funktionen anpassen lassen, du kannst beliebige Nebenbedingungen setzen und du kannst auch eine sog. „robuste Anpassung“ machen, indem du statt der Abweichungsquadrate zB. die Abweichungsbeträge (in D1: ‚=ABS(C1-B1)‘) nutzt usw. Ach ja, und du kannst mehrere gekoppelte Modelle anpassen! usw. usw.

Viel Spaß!

angepasste Grüße,

Jochen

Vielen Danke für den Tip, hast dir ja echt Mühe gegeben! Werde es mal versuchen. Grüße Flo

Problem
Also erst mal Danke für den super Beitrag, Sternchen!
Was kleines: Du hast geschrieben: „$F$1*B1^3+$F$2*B1^2+$F$3*B1+$F$4“ es muss natürlich heißen $F$1*A1^3+$F$2*A1^2+$F$3*A1+$F$4" weil in A natürlich die x-werte stehen. Der Lösungsweg ist gut, nur scheiterts bei mir am solver. Den hab ich nämlich nicht, und die Office-CD zum Installieren hab ich nämlich auch nicht *hust*. Hab schon mal im Internet nachgesehen, aber was es da zum Downloaden gibt, ist entweder nur ein Upgrade zum richtigen Solver oder man muss für die Shareware bezahlen. Gibts nicht hier auch eine konventionelle Möglichkeit, die Summe der Abweichungsquadrate zu minimieren? Vielleicht einfach durch ne Excel-Funktion?

Huhu,

Also erst mal Danke für den super Beitrag, Sternchen!

Danke!

Was kleines: Du hast geschrieben:
„$F$1*B1^3+$F$2*B1^2+$F$3*B1+$F$4“ es muss natürlich heißen
$F$1*A1^3+$F$2*A1^2+$F$3*A1+$F$4" weil in A natürlich die
x-werte stehen.

Genau (wollte ja nur sehen, ob du auch aufpasst… :wink: ).

Der Lösungsweg ist gut, nur scheiterts bei mir
am solver. Den hab ich nämlich nicht, und die Office-CD zum
Installieren hab ich nämlich auch nicht *hust*.

Das is natürlich blöd…

Gibts nicht hier auch eine
konventionelle Möglichkeit, die Summe der Abweichungsquadrate
zu minimieren?

Was heißt schon „konventionell“?

Die beiden konventionellen Verfahren, die ich kenne, sind das Simplex-Verfahren (gehr bei beliebigen Modellen) und das Levenberg-Marquardt-Verfahren (geht über die partiellen Ableitungen, also nur für Modelle, wo du die Abl. kennst).

Vielleicht einfach durch ne Excel-Funktion?

Nee. Das anders in Excel zu lösen ist wohl sehr, sehr schwer. Du als Physiker solltest aber doch Programmieren können. Die Algorithmen für die o.g. Verfahren sind zB. in „Numerical Recipies“ gut beschrieben (mit Beispielcode). Wenn du das nicht in C, Pascal oder Fortran machen willst, kannst Du das ja auch als Makro in Excel implementieren… Dann hättest Du’s…

An den Uni im Rechnezentrum (habt ich doch wohl…?!) ist Excel sicher mit Solver installiert (evtl. den Admin mal anhauen). Mach das doch da. Wenn die Fits gemacht sind, brauchst Du ja den Solver nicht mehr und kannst zuhause weiterarbeiten.

Viel Spaß,

Jochen