|
Janine |
Forum-Anfänger
|
|
Beiträge: 20
|
|
|
|
Anmeldedatum: 07.01.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 29.07.2012, 16:16
Titel: cftool liefert teilweise
|
|
|
|
|
Hallo zusammen,
ich habe ein Problem beim curve fitting. Eigentlich habe ich Datenreihen die zu einer Funktion 1/x^2 proportional sein sollten. Aus diesem Grund habe ich auf das cftool zurückgegriffen. Nun ist es jedoch so, dass das Ganze manchmal einfach richtig schlechte Ergebnisse liefert, die ich mit etwas rumprobieren (also von Hand Polynome schätzen und dann zur Kontrolle Messdaten und Schätzpolynom plotten) besser annähern kann. Das ist aber natürlich keine endgültige Lösung.
Was mich besonders irritiert ist die Tatsache, dass es für einen Teil der Daten ganz wunderbar funktioniert und für manche dann wieder gar nicht. (Dazusagen muss ich vielleicht auch noch, dass alle Daten über die gleiche Funktion gewonnen werden, also durchaus etwas miteinander zu tun haben, sodass die Annahme der Proportionalität zu 1/x^4 nicht völlig aus der Lust gegriffen ist.)
Um auch gleich ein Beispiel zu bringen:
Für die Dantenreihe
d1 =
1.0e+004 *
1.8092
0.2010
0.0724
0.0369
0.0223
funktioniert es z.B. NICHT.
Für
d2 =
1.0e+004 *
1.0916
0.1213
0.0437
0.0223
0.0135
aber schon.
Woran könnte es liegen, dass die Kurve beim 1. Beispiel so komplett daneben liegt? Gibt es irgendwelche Einstellungen, die ich beachten muss?
Wäre toll, wenn mir jemand helfen oder mir zumindest sagen könnte, weshalb das nicht funktionieren kann!
Viele Grüße,
Janine
|
|
|
|
|
Andidas |
Forum-Anfänger
|
|
Beiträge: 33
|
|
|
|
Anmeldedatum: 16.04.12
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 15.08.2012, 18:03
Titel:
|
|
Welches Verfahren verwendest du? Stell mal auf Levenberg Marquard um. Das müsste dann klappen... Kann daran liegen dass die "Trust-Region" zu groß ist und die Werte nicht konvergieren...
Gruß Andreas
|
|
|
Janine |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 20
|
|
|
|
Anmeldedatum: 07.01.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 27.08.2012, 13:11
Titel:
|
|
Danke Andreas! Nachdem ich nun wieder Zeit habe mich diesem schon etwas länger liegengebliebenem Problem zu widmen, werde ich das einmal probieren!
Allerdings stehe ich im Moment noch vor einem anderen Problem. Bisher habe ich als fittype 'rat02' benutzt. Da ich wie bereits beschrieben eine Funktion in der etwas einfacheren Form k/x² erwarte (also nicht k/(x²+ax+b)), wollte ich meinen Funktionstyp selber definieren. Und zwar so:
Nun bekomme ich jedoch diese Fehlermeldung:
Error using fit>iFit (line 414)
Function value and YDATA sizes are incommensurate.
xdata und ydata sind jeweils Spaltenvektoren mit 50 Einträgen. Was mache ich denn falsch? Ich habe schon gegoogelt, aber finde irgendwie keine schlüssige Antwort...
Die Variable x im fittype ist ja per Defaultwert die unabhängige Variable und a wird damit doch auch automatisch als Koeffizient gedeutet. Daran kann es doch nicht liegen, oder?
Vielen Dank und liebe Grüße!
|
|
|
Janine |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 20
|
|
|
|
Anmeldedatum: 07.01.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 28.08.2012, 10:01
Titel:
|
|
Ok, ich hab meinen Fehler gefunden. Es lag wie meistens an einer Kleinigkeit... Der Punkt vor dem Geteiltzeichen hat gefehlt
Jetzt funktioniert der Fit auch für alle Werte und wenn ich den Levenberg Marquard Algorithmus verwende, werden die Ergebnisse noch besser.
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|