Meßdatenanalyse 0. Datenformate Binäre Datenformate ASCII-Dateien alphanumerische Codierung 1 Byte=1 Zeichen Öffnen mit Texteditor besteht meist aus Header und Meßdaten als Spalten Separator wählbar: Komma, Leerzeichen, Tabulator nächster Datensatz CR/LF bzw. LF (UNIX) 1
1. Einlesen und Darstellung von Daten Spreadsheet-Programme (Origin, QtiPlot, OpenOfficeCalc, Excel, Lotus123,... Tabellenfenster zum Einlesen der Daten Plotfenster zur Darstellung als Graph (2D bzw. 3D) Skriptfenster zur speziellen Datenanalyse Bsp1_spektrenvn.dat - File/Import/Importoptionen: Separator TAB, ignoriere erste 6 Zeilen - File/Import/Import Single File - Auswahl der Spalten (Y) für Plot (2+3) durch Anklicken - Plot/Line oder Plot/Scatter - Eigenschaften durch Anklicken der Plotelemente (Achsen, Kurven) 2
Tipps zur guten Darstellung Passender Darstellungsbereich (z.b. 0.8 < Y < 1.4) Strichstärken nicht zu dünn (von 1 auf 2) Beschriftungstexte lesbar Farben (kein Gelb auf Weiß!) Abspeicherung als Template bei häufiger Verwendung Anwendung spezieller Darstellungen logarithmische Darstellung Differenzspektren Derivativspektren 3
Beispiel Differenzspektren Zeitliche Änderungen können besser dargestellt werden, insbesondere bei kleinen Änderungen der Spektren. Bsp1_spektrenvn.dat - Klick auf Tabellenfenster - Table/Add Column, falls keine mehr vorhanden - Leere Spalte anklicken - Table/Set Column Values: col("4")=col("3")-col("2") - Plot col("4") gegen col("1") - Format/Grid Additional line Y=0 4
Beispiel Derivativspektren Bei Überlagerung mehrerer Banden kann die Lage der Maxima von Schultern in der 2. Ableitung deutlicher erkannt werden. (negative Krümmung = Minima in 2. Ableitung) - Klick auf Plotfenster - Analysis/Smooth/Savitzky-Golay: 0, 5 bzw. 20 Punkte - Analysis/Differentiate Bsp2_emissionschulter.dat Bei verrauschten Daten vorherige Glättung (Filterung) notwendig Mittelwertsfilter (Boxcar-Filter): einfache Mittelung über 2m+1 Punkte Savitzky-Golay- Filter: nach Polynom gewichtete Mittelung Achtung: nicht zu verwechseln mit Splines (Originalpunkte bleiben erhalten, lokaler Kurvenverlauf wird durch Polynome interpoliert)! - Wiederholen für 2. Ableitung 5
- Data/Data reader: Peakanzeige 6
2. Modellierung und Kurvenanpassung Ziel der Modellierung ist es, eine Funktion zu finden, die den Zusammenhang der Daten am besten repräsentiert. Häufig getroffene Annahmen: Die x-werte sind exakt. Die y-werte unterliegen einer Normalverteilung um den wahren Wert. Das statistische Gewicht der Wertepaare ist bekannt. Minimiert werden soll damit (Method of least squares) : 2 = i w i y i f x i 2 7
Gewichtete Kurvenanpassung 2 = i w i y i f x i 2 = i y i f x i 2 i normierte Gewichte der Daten, z.b. 1/Fehlerbalken oder 1/y für Zählereignisse (Poissonstatistik) Oft werden alle Daten gleich gewichtet (1), für Chi-quadrat ergibt sich dann die Einheit von y. Reduziertes Chi-quadrat Um Modelle mit unterschiedlicher Parameteranzahl vergleichen zu können, wird durch die Anzahl der Freiheitsgrade geteilt: 2 2 red = N P N Anzahl der Meßwerte P Anzahl der Parameter 8
Lineare Modelle Sind die Funktionen in den Fitparametern linear, so lassen diese sich direkt durch Matrixmethoden ausrechnen. y=a 0 a 1 x y=a 0 a 1 x a 2 x 2 a 3 x 3 Oft lassen sich Funktionen in lineare Modelle transformieren. y=a 0 exp a 1 x ln y=ln a 0 a 1 x Voneinander abhängige Parameter müssen erkannt und zusammengefasst werden. y=a 0 exp a 1 x a 2 =a exp a 1 x 9
Nichtlineare Modelle y=a 0 a 1 exp a 2 x y=a 0 a 1 exp x a 2 2 2 a 3 2 Nichtlineare Modelle müssen iterativ gelöst werden. Um das globale Minimum zu finden, ist die Wahl der richtigen Anfangsbedingungen entscheidend. Die Iteration wird abgebrochen, wenn hinreichende Konvergenz in Chi-quadrat erreicht ist. Der Algorithmus,der sich am meisten verwendet wird, ist der Levenberg-Marquardt-Algorithmus. 10
Die wichtigsten Ausgabeparameter Residuenquadratsumme sum2=χ2 oder reduziertes χ 2 oder Standardabweichung der y-werte Optimierte Fitparameter S D = y = 2 red = 2 N P Standardfehler der Parameter (müssen immer mit angegeben werden!) a 2 = i [ 2 a y y i 2] Im Spezialfall der linearen Regression y = mx+b ergeben sie sich zu m =s y N 2 N x i x i 2 b =s y N 2 x i2 x i x i 2 i i i i i 11
Pearsons Korrelationskoeffizient r bzw. Bestimmtheitsmaß r 2 (zwischen 0 und 1) r= w i x i x y i y w i x i x 2 w i y i y 2 Für Varianzanalyse: Quadratsumme der Faktoren (ssreg) und Wert des F-Testes ssreg= w i f x i y i 2 12
Diagnosekriterien Chi-by-eye : Entspricht die angefittete Kurve den Meßpunkten? Residuenplot: Betrachtung der Residuen (y i - f i ) auf systematische Abweichungen Beurteilung von reduziertem χ2 und Bestimmtheitsmaß Statistische Tests: Analysis of Variance (ANOVA): Können die Abweichungen von der erwarteten Kurve statistisch erklärt werden? Wähle ggf. ein anderes Modell. Ob ein Modell signifikant besser ist als ein anderes, klärt ein Signifikanztest (F-Test, basierend auf dem Verhältnis der χ 2 Werte) 13
Beispiel: Bsp3_regression.dat linear: y = a0 + a1 x a0 = 24.00 σa0 = 0.12 a1 = -3.27 σa1 = 0.03 R^2=0.997 (QtiPlot, Origin: R=-099852) Chi^2/doF=0.0255 (red. Chi-Quadrat, Chi^2=0.714, SD=0.160) quadratisch: y = a0 + a1 x + a2 x 2 a0 = 21.69 σa0 = 0.29 a1 = -1.89 σa1 = 0.17 a2 = -0.19 σa2 = 0.02 R^2 = 0.999 Chi^2/doF = 0.0076 (SD = 0.087) 14
Vorsicht bei der Wahl des Modells, insbesondere bei Abklingkurven! Analysis/Nonlinear Curve Fit: ExpDecay1, ExpDecay2 Das Anfitten der Abklingkurve mit zwei Exponentialfunktionen liefert einen augenscheinlich guten Fit: t1 = 7.3 (k1 = 0.14) t2 = 1.94 (k2 = 0.52) Liegen wirklich zwei Prozesse mit definierten Zeitkonstanten vor? Die Daten wurden erzeugt durch: y t = 0 Beispiel: Bsp4_laplace.dat f k exp kt dk y t =A 1 exp k 1 t A 2 exp k 2 t y 0 f(k) Die Laplacetransformation ist nicht direkt umkehrbar, aus Abklingprozessen läßt sich nicht leicht die Relaxationszeitverteilung bestimmen. 15 0.5 1 k
Kurvenfitten in OpenOffice und Excel nur lineare Modelle Einlesen aus CSV -Files ( Comma-separated variables ). Achten Sie in allen Programmen darauf, dass die Spracheinstellungen dem Datenformat angepasst sind (Dezimaltrennzeichen Punkt). Befehl für lineare Regression: =RGP(B1:B30;A1:A30;1;1) a0 = 24.00 a1 = -3.27 σa0 = 0.12 σa1 = 0.03 R^2=0.997 SD=0.16 F-Wert 9443.28 N-P = 28 ssreg = 240.64 sum2 = 0.71 16
3. Fouriertransformationstechniken 3.1 Rauschanalyse Auch aus verrauschten Meßdaten lassen sich noch Informationen gewinnen. Fouriertransformation (Leistungsspektrum) F k = 1 2 f x exp ikx dx In "weißem" Rauschen sind alle Fourierkomponenten gleichermaßen vorhanden, das Leistungsspektrum F*(k)F(k) ist eine Konstante. Ein schneller Algorithmus ist die Fast-Fourier-Transformation (FFT). Die Anzahl der Datenpunkte sollte eine Potenz von 2 betragen. Bsp5_rauschen.dat - y-spalte anklicken - Analysis/FFT... - Peakanalyse im Leistungsspektrum: Periodizität k=0.02 entdeckt 17
Alternative: Autokorrelation acf x = f * x ' f x' x dx '= f x f x "Wie ist das Signal zum Zeitpunkt x' mit dem Signal zum Zeitpunkt x'+x korreliert?" Die Autokorrelationsfunktion ist die inverse Fouriertransformierte des Leistungsspektrums (Wiener-Khinchine-Theorem). - Amplitude in ForwardFFT-Tabelle anklicken - Analysis/FFT...: Inverse FFT 18
3.2 Dekonvolution (Entfaltung) Nehmen wir an, ein räumliches oder zeitliches Signal f(x) wird durch einen Detektor aufgenommen, der das Signal durch eine Geräte-Responsefunktion g(x) "verschmiert" (z.b. Photodetektor, Spalt im Spektrometer) Wie kommt man an das ursprüngliche Signal zurück? Gemessen wird die Faltung h x = Für die Fouriertransformierten gilt H =F G f x' g x x ' dx'= f x g x Bei bekannter Geräteresponse läßt sich damit f(x) rekonstruieren Fouriertrafo von h(x) (FFT) Komplexe Division durch G(ξ) liefert F(ξ) Inverse Fouriertrafo 19
Beispiel: Bsp6_deconvolution.dat Amplitude 150 100 50 0 30 20 10 0 0.0100 0.0075 0.0050 0.0025 0.0000 150 100 50 0 Deconvolution Result 0.0 0.2 0.4 0.6 0.8 1.0 1.2 Convolution Result 0.0 0.2 0.4 0.6 0.8 1.0 1.2 Response Function 0.0 0.2 0.4 0.6 0.8 1.0 1.2 Signal 0.0 0.2 0.4 0.6 0.8 1.0 1.2 Time - Messdaten und Responsefunktion markieren - Analysis/FFT...: Deconvolution - Wahl der ursprünglichen Zeitachse 20
Literatur C.W. Garland, J.W. Nibler, D.P. Shoemaker, Experiments in Physical Chemistry, McGraw-Hill 1996 P.R. Bevington, K. Robinson, Data reduction and error analysis for the physical sciences, McGraw-Hill 1992 A.F. Carley, P.H. Morgan, Computational Methods in the Chemical Sciences, Wiley&Sons 1989 M. Otto, Chemometrie, VCH 1997 D. Achilles, Die Fourier-Transformation in der Signalverarbeitung, Springer 1978 W. Press et al, Numerical Recipes, Cambridge University Press 1992 21