Kurvenkorrektur

Hallo.

Ich möchte gerne eine Kurve auf eine Gerade korrigieren.
Anfangs und Endpunkte von Kurve und Gerade sind die selben. Der Hintergrund ist folgender. Ich habe leider eine Kurve (sieht so aus wie eine Wurzelfunktion, muss aber keine sein) bei einer Messung erhalten. Damit aber wieder die Auswertung stimmt, ist eigentlich ein linearer Verlauf von Nöten. Also wie korrigiere ich die einzelnen Werte so, dass diese auf einer Gerade verlaufen? Kann man das mit Mathcad 2000 Professional machen? Wenn ja, hat jemand Ideen?

Im Voraus vielen Dank

Liebe Grüße
Anika

Hallo,

Der Hintergrund ist folgender. Ich habe leider eine Kurve
(sieht so aus wie eine Wurzelfunktion, muss aber keine sein)
bei einer Messung erhalten. Damit aber wieder die Auswertung
stimmt, ist eigentlich ein linearer Verlauf von Nöten.

dann solltest du entweder die Messung wiederholen oder die Abweichung vom erwarteten Ergebnis zu verstehen suchen, statt die Messwerte an deine Erwartungen anzupassen.

Wenn du Ergebnisse haben möchtest, die perfekt auf einer Geraden liegen, kannst du dir die Messerei gleich sparen und welche erfinden - dann hast du `schöne’ Bilder (http://www.heise.de/tp/r4/artikel/13/13336/1.html), aber das war kaum der Sinn der Aufgabe.

Nebenbei bemerkt: die jeder Messung anhaftende Unsicherheit führt dazu, dass stets einzelne Messpunkte abweichen. Bei einer Graphik, in der alle Messpunkte exakt auf der vorhergesagten Kurve liegen, ist extremes Misstrauen angesagt.


Philipp

Hallo!

Wenn ich dich richtig verstanden habe, versuchst du eine KalibrierGERADE zu erstellen: Du misst für verschiedene (aber bekannte!) x die Werte von y. Die aus den verschiedenen Werten gebastelte Kalibrierfunktion soll dann hinterher dazu dienen, anhand eines gemessenen y von einem unbekannten x dieses x zu ermitteln.

Grundsätzlich _kann_ es sich bei einer Kalibrierfunktion um irgendeine beliebige Funktion handeln. Das hängt ab von dem Meßprinzip und den zugrunde liegenden physikalischen/chemischen/biologischen Zusammenhängen zwischen x und y.

Am einfachsten ist es, wenn ein LINEARER Zusammenhang zwischen x und y besteht. Sowas läßt sich leicht berechnen, außerdem kann man leicht eine Fehlerabschätzung über die gefundene Kalibriergerade machen. Das Verfahren dazu heißt lineare Regression und ist entwickelt worden, als es nur Papier, Bleistift und vielleicht noch einen Rechenschieber als Rechenhilfe gab.

Wenn man einen NICHT-LINEAREN Zusammenhang zwischen x und y gefunden hat, hat man sich beholfen, die x- und/oder die y-Werte so zu transformieren , dass ein linearer Zusammenhang zwischen den transformierten Größen besteht. Damit konnte man dann die altbekannten Verfahren anwenden und mußte nur ganz am Ende, bei der Berechnung eines x von einem gemessenen y darauf achten, den anhand der Kalibriergeraden bestimmten Wert zurückzutransformieren. Fertig.

Ja, das war lange, bevor es Computer gab. Heute steht uns die Rechenleistung zur Verfügung, nichtlineare Zusammenhänge DIREKT zu analysieren, ohne den UMWEG über die TRANSFORMATION.

Solltest du hingegen einfach den quantitativen (funktionellen) Zusammenhang zwischen x und y DARSTELLEN wollen, so ist eine Transformation auch nicht wirklich wichtig. Früher, ohne Computer, hat man die Werte entsprechend mit der Umkehrfunktion der hypothetischen Funktion transformiert und dann geprüft, ob die TRANSFORMIERTEN Werte einen LINEAREN Zusammenhang aufweisen (das sieht man auch mit dem Auge schon sehr gut!). Mittels Computerunterstützung können aber direkte Funktionsanpassungen beliebiger Funktionen an die Originaldaten vorgenommen werden, inklusieve Fehleranalyse. Also auch hier braucht man die Transformation nicht mehr.

Damit aber wieder die Auswertung
stimmt, ist eigentlich ein linearer Verlauf von Nöten.

Hier bin ich mir nicht so ganz sicher, wei du dass meinst. Hätte eigentlich schon ein linearer Zusammenhang herauskommen müssen (ohne Transformation)? Dann ist hier wohl ein systematischer (Meß-)Fehler aufgetreten. Dann gilt die Transformation nur als Korrektur-Funktion für das betreffende Gerät (Experimentator, Experiment).

wie korrigiere ich die einzelnen Werte so, dass diese auf
einer Gerade verlaufen? Kann man das mit Mathcad 2000
Professional machen? Wenn ja, hat jemand Ideen?

Also, wenn Du aus einem Zusammenhang von x und y, der aussieht wie eine Wurzelfunktion (y = Wurzel(x)) einen linearen Zusammenhang machen willst, mußt du einfach die y-Werte mit der Wurzel transformieren (y’=Wurzel(y): dann liegen y’ und x auf einer Geraden) oder alternativ die x-Werte quadrieren (x’=x²: dann liegen y und x’ auf einer Geraden).

Das geht schon mit der Hand, am einfachsten in Excel.

LG
Jochen

hi annika,

nichts gegen meine Vorredner, aber ich verstehe dein Problem wie folgt:
Du hast eine Messreihe durchgeführt, Deine Messergebnisse haben wie so oft im echten Leben Fehler, weil zum Beispiel auf der anderen Seite des Erdball irgendsoein dummer Flatterman geflattert hat.
Jetzt mächtest Du eine Gerade so in deine Messergebnisse legen, dass zukünftige Messergebnisse in der Nähe dieser Geraden sind.
->lineare Regression.
keine Ahnung ob Matcad das kann, aber es sollte.
Du könntest noch überlegen, ob Du zur Erhöhung der Genauigkeit gewisse Ergbenisse streichen solltest weil sie begründeter Weise mit höherer Wharscheinlichkeit Fehler beinhalten, als andere, zum Beispiel weil du den Windhauch des Flatterman gespürt hast…

Grüße,

Schlorz

->lineare Regression.

Das ist zwar prinzipiell richtig, aber wenn die Meßpunkte offensichlich keine Gerade bilden, dann ist es zumindest sehr fragwürdig, wenn man sie mit einer linearen Funktion fittet. Wenn es sich um eine Kalibrierkurve handelt, sollte man lieber nichtlinear fitten und wenn der Zusammenhang von der Theorie her linear sein sollte (und danach hört es sich ja an), dann muß man sich Gedanken darüber machen, warum Theorie und Praxis nicht zusammen passen.

Du könntest noch überlegen, ob Du zur Erhöhung der Genauigkeit
gewisse Ergbenisse streichen solltest weil sie begründeter
Weise mit höherer Wharscheinlichkeit Fehler beinhalten, als
andere, zum Beispiel weil du den Windhauch des Flatterman
gespürt hast…

Die Eliminierung von Ausreißern ist eine Kunst für sich. Wenn man sich nicht selbst betrügen will, muß man sich dabei an geeignete statistische Methoden halten. Wenn man versucht, einen nicht lineraen Zusammenhang durch Eliminierung von Meßwerten gewaltsam zu linearisieren, dann kann man auch gleich zum Würfel greifen und die Ergebnisse auswählen, die einem am besten gefallen.

Hallo Anika,

ich habe zwar ein unglaublich altes MathCad (4), aber das berechnet eine Regressionsgerade mit den Funktionen slope und intercept. Stichwort ist linear regression (gibt auch multilinear regression).

Gruss Reinhard

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo und erst einmal danke für die schnellen Antworten.

Allerdings glaub ich, dass ich etwas missverstanden wurde. Deswegen noch mal im Detail.
In Abhängigkeit einer Größe x messe ich y. x ist mir also bekannt und y wird mit einer Software ausgegeben. (Zur Information: x sind Leistungswerte und y sind die dazu zugehörigen Graustufenwerte des Bildes)
Wenn ich mir den Graph anzeige, erhalte ich einen Kurvenverlauf. Das liegt vermutlich daran, dass der Hersteller im Gerät (Kamera) Voreinstellungen eingefügt hat. Es war also kein Flattermann oder sonstiges :smile: der diese Kurve erzeugt hat. Diese Einstellungen sind so und es sind definitiv keine Messfehler…die Kurve wird immer so aussehen. Die Voreinstellungen lassen sich auch nicht beeinflussen bzw. verändern.
Damit meine späteren Berechnung stimmen (Info: Kontrastberechnung von Interferogrammen)muss von der Theorie ein linearer Zusammenhang zwischen x und y bestehen (erst dann stimmt meine Formel). Da ich nun aber keine andere Kamera habe und mit dieser Aufnahmen machen muss, hab ich mir gedacht, man könnte diese Kurve in eine Gerade korrigieren.
Zumal mir die Gerade bekannt ist. (Sie geht durch Anfangs und Endpunkt des Graphen von x und y). Die Kurve wird für konstante Einstellungen auch immer so bleiben.

Weiß nun nicht ob lineare Regression das Richtige ist, nachdem ich die Problematik ausführlicher dargestellt habe.

Vielen Dank schonmal für Vorschläge, wie ich die Kurve auf die Gerade (bekannt) bekomme? Mit Mathcad wär halt schön, weil hier schon anderen Auswertungen stattfinden. Weiß nur leider nicht wie.

Liebe Grüße
Anika

…Mit Mathcad wär halt schön, weil
hier schon anderen Auswertungen stattfinden. Weiß nur leider
nicht wie.

Liebe Grüße
Anika

Hallo Anika,

warum liest du nicht einfach in der Mathcad-Hilfe unter linear regression, wie es geht?

Ich habe das schon mal geschrieben, aber offenbar liest du nicht alle Antworten.

Gruss Reinhard

Hallo Reinhard

Natürlich hab ich alle antworten gelesen!! Die Frage nach Mathcad war eher darauf ausgelegt, falls jemand eine andere Methode kennt, das er mir diese doch veraten sollte.
Bin nämlich grad dabei mit der linearen Regression rumzubasteln. Mal abgesehen davon, dass man die Benutzerhilfe total vergessen kann :wink:

Liebe Grüße
Anika

Ich bin mir nicht sicher, ob ich das Problem richtig verstanden habe. So, wie ich das jetzt interpretiere, hast Du eine Formel für eine „lineare“ Kamera, bei der die Graustufe y linear von der Leistung x abhängt. Da Helligkeiten gemessen werden, wirst Du wohl primär an der Leistung interessiert sein (Dein Ziel ist also, die Kamera zu kallibrieren).

Die Formel für das lineare Kameramodell kannst Du für Deine nichtlineare Kamera nicht verwenden, und es macht auch keinen Sinn, aus Deiner gemessenen Helligkeit y1, eine weitere fiktive Helligkeit y zu berechnen. Die Zuordnung einer Leistung x zu einer Helligkeit y1 machst Du am besten einfach mit Hilfe der Umkehrfunktion: Also das x aus Deiner Kurve ablesen, bei dem der Funktionswert y1 ist. Wie Du das in Deiner Software implementieren kannst, weiß ich nicht. Ich würde empfehlen, die Kurve mit einer geeigneten Funktion anzufitten (z.B. y1=A*Wurzel(x), A ist Fitparameter ) und dann analytisch die Umkehrfunktion zu bilden (also x=y1^2/A^2).

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo,

Damit meine späteren Berechnung stimmen (Info:
Kontrastberechnung von Interferogrammen)muss von der Theorie
ein linearer Zusammenhang zwischen x und y bestehen (erst dann
stimmt meine Formel).

Wenn das _wirklich_ so ist, dann stimmt mit dem Meßgerät etwas nicht. Eine weitere Ursache könnte ein zu großer Meßbereich sein. Oft sind Zusammenhänge von y und x nur in kleinen Bereichen (für x) näherungsweise linear. Deckt die Reihe einen größeren Bereich von x ab, stellt man oft fest, dass es dann eher eine Kurve gibt. Ein prominenten Beispiel dafür ist das Lambert-Beer’sche Gesetz zur Absorption, dass einer Optikerin ja bekannt sein sollte (ansonsten:http://de.wikipedia.org/wiki/Lambert-Beersches_Gesetz).

Wenn ein linearer Zusammenhang gefordert ist, das Meßgerät aber eine Kurve ausspuckt, dann hilft aber auch die die Kalibriergerade , welche mit den transformierten Werten erstellt wird. Zusammen mit der Transformation enthält eine solche Gerade dann auch gleich die Funktion, welche ddem systematischen Meßfehler enthält (und korrigiert).

Die Parameter der Regressionsgeraden durch die transformierten Werte x’ und y’ bekommst du sehr einfach zB. mit den EXCEL-Funktionen ‚Steigung‘ und ‚Achsenabschnitt‘. Ansonsten kann sowas jedes beliebige Mathe-(Statistik-)Programm, zB. R (http://cran.r-project.org/) mit dem Befehl lm(x,y), wobei auch noch Fehlerabschätzungen und Konfidenzintervalle berechnet werden.

Die Kurve wird für
konstante Einstellungen auch immer so bleiben.

Und nur dann gilt ja auch die Kalibrierfunktion.

Weiß nun nicht ob lineare Regression das Richtige ist, nachdem
ich die Problematik ausführlicher dargestellt habe.

Doch, doch. Die Ausgleichsgerade durch die Datenpunkte bestimmt man mit der linearen Regression. Du kannst nicht erwarten, dass alle Punkte EXAKT auf der Geraden liegen. Es gibt immer kleine Abweichungen (Meßfehler, Ablesefehler, Rundungsfehler, …). Die Regressionsgerade ist die Gerade, welche die geringste Summe der quadrierten Abstände von den Punkten hat.

Mit Mathcad wär halt schön, weil
hier schon anderen Auswertungen stattfinden. Weiß nur leider
nicht wie.

Guckst du hier:

http://www.mi.uni-erlangen.de/~keller/Vorlesungen/Bi…

Liebe Grüße

Dito
Jochen

Wenn ein linearer Zusammenhang gefordert ist, das Meßgerät
aber eine Kurve ausspuckt, dann hilft aber auch die die
Kalibriergerade , welche mit den transformierten
Werten erstellt wird. Zusammen mit der Transformation enthält
eine solche Gerade dann auch gleich die Funktion, welche ddem
systematischen Meßfehler enthält (und korrigiert).

Die Parameter der Regressionsgeraden durch die
transformierten Werte x’ und y’ bekommst du sehr einfach zB.
mit den EXCEL-Funktionen ‚Steigung‘ und ‚Achsenabschnitt‘.
Ansonsten kann sowas jedes beliebige
Mathe-(Statistik-)Programm, zB. R (http://cran.r-project.org/)
mit dem Befehl lm(x,y), wobei auch noch Fehlerabschätzungen
und Konfidenzintervalle berechnet werden.

Ich schätze mal, dass man mit MathCad nichtlineare Funktionen fitten kann. Wenn nicht, dann wäre der Weg über transformierte Koordinaten und linearen Fit sicherlich der nächstbeste.