|
|
Flächenfunktion ermitteln |
|
HD909 |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 14.06.2019, 15:43
Titel: Flächenfunktion ermitteln
|
|
Hallo,
in einem Versuch mit einem Magnetsensor wurde ein Magnetfeld gemessen. Die Werte weichen von erwarteten Sollwert ab. Das Diagramm der Abweichung ist beigefügt.
Nun würde ich gerne anhand der Werte eine angenäherte Flächenfunktion ermitteln, um die Werte zu korrigieren.
Ist das mit Mathlab möglich und wenn ja wie?
Über eure Hilfe würde ich mich sehr freuen.
Viele Grüße.
Beschreibung: |
|
Download |
Dateiname: |
Werte.xls |
Dateigröße: |
26.5 KB |
Heruntergeladen: |
303 mal |
Beschreibung: |
|
Download |
Dateiname: |
Diagramm.PNG |
Dateigröße: |
57.09 KB |
Heruntergeladen: |
352 mal |
|
|
|
|
|
Jan S |
Moderator
|
|
Beiträge: 11.057
|
|
|
|
Anmeldedatum: 08.07.10
|
|
|
|
Wohnort: Heidelberg
|
|
|
|
Version: 2009a, 2016b
|
|
|
|
|
|
Verfasst am: 14.06.2019, 17:24
Titel: Re: Flächenfunktion ermitteln
|
|
|
|
|
Hallo HD909,
Zitat: |
in einem Versuch mit einem Magnetsensor wurde ein Magnetfeld gemessen. Die Werte weichen von erwarteten Sollwert ab. |
Ein allgemeiner Tipp für Fragen im Forum: Für Matlab und eine Lösung ist nur relevant, dass du hier einen Satz von Zahlen hast. Statt der physikalischen Bedeutung wäre es praktischer zu wissen, in welcher Form die Vorliegen: Als timeseries Objekte, table oder double Arrays?
Zitat: |
Nun würde ich gerne anhand der Werte eine angenäherte Flächenfunktion ermitteln, um die Werte zu korrigieren. |
Was bedeutet das? Anhand welcher Werte? Was ist eine "Flächenfunktion"? Wenn du die Parameter einer Funktion so fitten möchtest, dass sie "möglichst nahe" an den Messwerten liegen, gibt es unendlich viele verschiedene Möglichkeiten. Selbst "möglichst nahe" ist nicht eindeutig definiert: Minimum der durchschnittlichen oder maximalen Abweichung? Geometrischer oder arithmetischer Mittelwert? Usw.
Was möchtest du also genau berechnen? Sowie du das weißt und es ist berechenbar, dann geht das auch in Matlab.
Gruß, Jan
|
|
|
HD909 |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.06.2019, 09:13
Titel: Flächenfunktion ermitteln
|
|
|
|
|
Hallo Jan,
vielen Dank für deine Hinweise.
Zitat: |
Ein allgemeiner Tipp für Fragen im Forum: Für Matlab und eine Lösung ist nur relevant, dass du hier einen Satz von Zahlen hast. Statt der physikalischen Bedeutung wäre es praktischer zu wissen, in welcher Form die Vorliegen: Als timeseries Objekte, table oder double Arrays? |
Die Zahlen liegen in Form einer table vor. Diese habe ich als .xls in den ersten Beitrag eingefügt.
Zitat: |
Was bedeutet das? Anhand welcher Werte? Was ist eine "Flächenfunktion"? Wenn du die Parameter einer Funktion so fitten möchtest, dass sie "möglichst nahe" an den Messwerten liegen, gibt es unendlich viele verschiedene Möglichkeiten. Selbst "möglichst nahe" ist nicht eindeutig definiert: Minimum der durchschnittlichen oder maximalen Abweichung? Geometrischer oder arithmetischer Mittelwert? Usw.
|
Ich habe mit den Messwerten in Excel ein Flächendiagramm erstellt. Einen Screenshot davon habe ich dem ersten Beitrag angeheftet. Die Form ähnelt einer Funktion mit zwei Variablen, diese habe ich fälschlicherweise als "Flächenfunktion" bezeichnet.
z.B. f(x, y)= x^2+y^2
Die maximale Abweichung vom arithmetischen Mittelwert sollte unter 0,05 liegen.
|
|
|
HD909 |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 18.06.2019, 09:47
Titel: Flächenfunktion ermitteln
|
|
|
|
|
Hi,
ich bin mit der Curve Fitting Tool ein ganzes Stück weitergekommen und konnte eine angenäherte Funktion erstellen lassen.
Die Ergebnis lautet wie folgt:
Linear model Poly25:
f(x,y) = p00 + p10*x + p01*y + p20*x^2 + p11*x*y + p02*y^2 + p21*x^2*y +
p12*x*y^2 + p03*y^3 + p22*x^2*y^2 + p13*x*y^3 + p04*y^4
+ p23*x^2*y^3 + p14*x*y^4 + p05*y^5
where x is normalized by mean 90 and std 18.75
and where y is normalized by mean 0 and std 54.88
Coefficients (with 95% confidence bounds):
p00 = 0.4648 (0.241, 0.6886)
p10 = 0.08981 (-0.07697, 0.2566)
p01 = -13.3 (-13.77, -12.83)
p20 = -0.08084 (-0.231, 0.06934)
p11 = 11.11 (10.89, 11.33)
p02 = 3.004 (2.631, 3.376)
p21 = -1.899 (-2.151, -1.646)
p12 = -0.4334 (-0.7895, -0.07721)
p03 = 20.77 (20.22, 21.32)
p22 = 0.07598 (-0.03663, 0.1886)
p13 = -4.153 (-4.268, -4.039)
p04 = -1.069 (-1.204, -0.9345)
p23 = 0.6392 (0.5092, 0.7691)
p14 = 0.09268 (-0.04209, 0.2274)
p05 = -5.28 (-5.441, -5.12)
Goodness of fit:
SSE: 114.8
R-square: 0.9913
Adjusted R-square: 0.9908
RMSE: 0.7034
Sobald ich aber die Variabel x und y einsetze, werden nicht die richtigen z-Werte ausgegeben.
z.B.
x=-70
y=120
z(IST)=-1.26995E+11
z(SOLL)=-10,7
Wüsste jemand woran dies liegen könnte?
Vielen Dank vorab.
|
|
|
|
|
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 - 2025
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.
|
|