Messwerte an Funktion anpassen durch Lsqcurvefit ..
Sonya
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 08.03.2012, 17:08
Titel: Messwerte an Funktion anpassen durch Lsqcurvefit ..
Hallo ihr lieben Helfer!
Ich habe folgendes Problem:
Ich habe jetzt schon öfter mit der Funktion lsqcurvefit Messdaten an eine Modellfunktion angepasst bzw. die zugehörigen Parameter der Modellfunktion berechnet aber das war mit 1 Argument.
Jetzt muss ich das ganze für eine Funktion mit 3 unterschiedlichen Argumente (Eingangsgröße) machen, es hat leide nicht funktioniert , bekomme immer Fehler Meldung .
ich habe eine Reihe von Meßdaten und eine nichtlineare Funktion mit 3 unbekannten Parametern.
Nun möchte ich die Parameter der Funktion als Zahlenwerte so ermitteln, dass der die Funktion am besten auf die Messdaten passt.
Finde die Parametern a(1), a(2) und a(3), so dass bei vorgegebenen X (meine 3 unterschiedliche Eingangsgröße als Matrix ) und Y (Messdaten) der Fehler zwischen der gerechneten Funktions-Y und gegebenen Y möglichst klein wird.(Methode der kleinste Quadrate)
wer kann mir helfen?
Gibt es alternative Matlab-Funktion, die das kann?
Achtung, die Ergebnisse sind wahrscheinlich noch nicht optimal. Das kann an nicht ausreichend guten Startwerten liegen.
Grüße,
Harald
P.S.: Wenn es eine Fehlermeldung gibt, dann diese bitte immer hier reinkopieren.
Sonya
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 09.03.2012, 17:03
Titel:
Hallo,
sorry das ich zu spät beantworte, hatte Problem in meinem Laptop....
Danke schön , es hat gut funktioniert ..
habe noch eine Frage und zwar:
um ich einen kleinen Fehler zwischen Messwerte und berechnete Funktionswerte erhalten zu können ..muss ich die Startwerte a(1), a(2 und a(3) wechseln bis ich ein klein '' resnorm'' bekomme oder wie?
ich denke der Beitrag von Sonya passt auch ganz gut zu meinem Problem, weswegen ich kein neues Thema öffnen möchte.
Ich habe eine vorgegebene Funktion mit 3 unbekannten Parametern, der den Zusammenhang zwischen y und x beschreibt.
y= a(1)+a(2)*ln(x)+a(3)*T*ln(x). T ist die Temperatur, bei welchem der Versuch gefahren wurde, also eine konstante Größe. Ich habe dazu Messwerte aufgenommen und möchte die Parameter der Funktion genau wie Sonya finden.
Bei vorgegebenen x und y (Messdaten) soll der Fehler zwischen der gerechneten Funktions-y und gegebenen y möglichst klein werden.(Methode der kleinste Quadrate)
Ich habe natürlich den Matlab-Code oben durchgespielt und es erscheint eine Fehlermeldung. s. Anhang
Ich hoffe mir kann jmd helfen und bedanke mich bei denjenigen schon einmal sehr herzlich!
[/size]
Zuletzt bearbeitet von epsilon92 am 04.08.2015, 17:08, insgesamt einmal bearbeitet
hallo. bitte keinen alten thread karpern. sondern einen neuen aufmachen.
fehlermeldungen in einer doc anzuhängen ist sehr umständlich. man sollte es den lesern leicht machen und code und fehlermeldungen direkt posten. für anregungen kann ich den thread aus meiner signatur empfehlen.
grüße
_________________
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
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.