Datenanalyse (PHY231) Herbstsemester 2015 Olaf Steinkamp 36-J-22 [email protected] 044 63 55763 Kurze Motivation Beispiele zur Anwendung statistischer Methoden ● Bestimmung der Genauigkeit einer Messung (“Messfehler”) ● ● Bestimmung der Wahrscheinlichkeit eines Ereignisses ● ● Signal über einem Untergrund ? Simulation komplizierter Prozesse ● ● Kompatibilität des Modells mit gemessenen Verteilungen Beurteilung der Signifikanz einer Messung ● ● Anpassung von Modellverteilungen an Messdaten Entscheidung über Modellhypothesen ● ● Wahrscheinlichkeitsverteilungen einer oder mehrerer Variablen Bestimmung von Modellparametern ● ● zufällige und systematische Messunsicherheiten, Fehlerfortpflanzung Monte-Carlo Methoden Beispiele hier aus Teilchenphysik, Anwendungen aber universell Datenanalyse HS15 Einführung (2) Simulation des Zerfalls eines schwarzen Lochs im ATLAS Experiment am LHC O. Steinkamp Formalitäten Voraussetzungen ● ● erfolgreiche Teilnahme an den Kursen ● Lineare Algebra (MAT141) ● Analysis I & II (MAT 131, MAT 132) ● Informatik I (PHY114) solide Grundkenntnisse in PYTHON / PYLAB !!! Beispielprogramme und Uebungen in PYTHON Leistungsnachweis (für 3 ECTS-Punkte) ● regelmäßige und aktive Teilnahme an den Anwesenheitsübungen ● > 50 % der Hausaufgaben korrekt gelöst ● jeweils > 50 % der Punkte in zwei Kurztests (am 30.10. und 11.12.) Details in der ersten Uebungsstunde am Freitag Neu: Noten 6 – 1 in 0.5 Schritten ● Tests, Hausaufgaben, Beteiligung in den Uebungen Datenanalyse HS15 Einführung (3) O. Steinkamp Unser Team ● Olaf Steinkamp (36-J-22) [email protected] de,en ● Elena Graverini (CERN) [email protected] it,en ● Barbara Storaci (CERN) [email protected] it,en ● Marco Tresch [email protected] ch,de,en Datenanalyse HS15 (36-J-94) Einführung (4) O. Steinkamp Webseite ● Kontaktinformationen ● Vorlesungsfolien ● Übungsaufgaben ● link zum Vorlesungsverzeichnis ● ● python/pylab: ● link zur Webseite PHY114 ● Nicola's cheat sheet Vorlesungsfolien vom HS14 www.physik.uzh.ch/lectures/datenanalyse/ Datenanalyse HS15 Einführung (5) O. Steinkamp Literatur Vorlesung folgt in groben Zügen dem Buch ● Barlow, Statistics, John Wiley and Sons, 1989 Andere Einführungen in die Datenanalyse ● ● ● Bevington/Robinson, Data Reduction and Error Analysis, McGraw-Hill, 2002 ⇒ recht anwendungsorientiert (Programmierbeispiele in Fortran) Brandt, Datenanalyse, Spektrum Akademischer Verlag, 1999 ⇒ ausführlich aber eher theoretisch (Programmierbeispiele in Fortran) Vorlesungsskript SS04 von Henk Pruys (link auf unserer Webseite) PYTHON / PYLAB ● Webseite des Kurses Informatik I (PHY114): www.physik.uzh.ch/lectures/Informatik/informatik1 mit weiterführenden links zu Dokumentation / Einführungen / Tutorials Datenanalyse HS15 Einführung (6) O. Steinkamp Vorlesungsprogramm ● ● ● ● ● ● ● ● Einführung, Messunsicherheiten, Darstellung von Messdaten Grundbegriffe der Wahrscheinlichkeitsrechnung und Statistik - Mittelwert, Standardabweichung, Kovarianz und Korrelation Fehlerfortpflanzungsgesetz Wahrscheinlichkeitsverteilungen - diskrete Verteilungen, kontinuierliche Verteilungen - zentraler Grenzwertsatz Monte-Carlo Methode Wahrscheinlichkeitsverteilungen II - Faltung zweier Verteilungen - Verteilungen zweier Variablen Stichproben und Schätzfunktionen - Maximum-Likelihood Methode - Methode der kleinsten Quadrate Interpretation von Messergebnissen - Konfidenzintervalle, Testen von Hypothesen Datenanalyse HS15 Einführung (7) Beispielprogramme im Verzeichnis /disk/puma/da/vorl/ O. Steinkamp Vorlesungsprogramm ● ● ● ● ● ● ● ● Einführung, Messunsicherheiten, Darstellung von Messdaten Grundbegriffe der Wahrscheinlichkeitsrechnung und Statistik - Mittelwert, Standardabweichung, Kovarianz und Korrelation Fehlerfortpflanzungsgesetz Wahrscheinlichkeitsverteilungen - diskrete Verteilungen, kontinuierliche Verteilungen - zentraler Grenzwertsatz Monte-Carlo Methode Wahrscheinlichkeitsverteilungen II - Faltung zweier Verteilungen - Verteilungen zweier Variablen Stichproben und Schätzfunktionen - Maximum-Likelihood Methode - Methode der kleinsten Quadrate Interpretation von Messergebnissen - Konfidenzintervalle, Testen von Hypothesen Datenanalyse HS15 Einführung (8) Beispielprogramme im Verzeichnis /disk/puma/da/vorl/ O. Steinkamp Messgenauigkeit / Messunsicherheit Jede Messung, jedes Messergebnis ist mit einer Unsicherheit behaftet ● genaue Messung: Unsicherheit auf Ergebnis ist klein, verschwindet aber nicht ● Messunsicherheit wird häufig als Messfehler bezeichnet ● das heisst aber nicht, dass man bei der Messung einen Fehler gemacht hat ● Messergebnis ohne Angabe der Messunsicherheit ist wertlos ! ● Schreibweise: ( Messergebnis ± Messunsicherheit ) Einheit Beispiel: messe Geschwindigkeit v von Neutrinos ● Messergebnis v = (1.08 ± 0.10) × c ⇒ keine besonders genaue Messung, aber innerhalb Unsicherheit okay mit Einstein ● Messergebnis v = (1.000023 ± 0.000004) × c ⇒ Nobelpreis ! (oder: Fehler in der Messung, Genauigkeit der Messung überschätzt) ● Messergebnis v = 1.3 × c ⇒ ??? Datenanalyse HS15 Einführung (9) O. Steinkamp Angabe von Messergebnissen Anzahl signifikanter Stellen bei der Angabe von Messergebnissen gebe Messunsicherheit auf eine oder zwei signifikante Stellen genau an ● ● ● ist die erste signifikante Stelle “1”, “2” oder “3”, gebe zwei signifikante Stellen an ● ansonsten gebe nur eine signifikante Stelle an runde Messergebnis auf die gleiche Anzahl Stellen wie die Messunsicherheit RICHTIG ● c = (2.9976 ± 0.0004) × 108 m/s ● c = (2.9978 ± 0.0015) × 108 m/s FALSCH (warum ?) ● c = (2.9983 ± 0.1834) × 108 m/s ● c = (2.9943 ± 0.5) × 108 m/s Datenanalyse HS15 aufgepasst: nie die Einheiten vergessen !!! Einführung (10) O. Steinkamp Arten von Messunsicherheiten Statistische (zufällige) Messunsicherheiten ● ● Abweichungen sind bei Wiederholung der Messung jedesmal anders, auch bei exakt gleichen Messbedingungen Beispiel: elektronisches Rauschen eines Messgeräts Messunsicherheit kann bei mehrmaliger Wiederholung der Messung ● aus der Streuung der Messergebnisse bestimmt werden ● durch Bildung des Mittelwerts der Messergebnisse reduziert werden Systematische Messunsicherheiten ● ● ● Abweichungen sind bei Wiederholung der Messung unter gleichen Bedingungen immer gleich können nur durch genaue Kenntnis und Kontrolle der Messbedingungen minimiert und abgeschätzt werden Beispiel: Eichung eines Messgeräts erfordert viel experimentelles Geschick, viel Erfahrung und viel Selbstkritik Datenanalyse HS15 Einführung (11) O. Steinkamp Beispiel: Messung eines Widerstands R Statistische Messunsicherheit: elektronisches Rauschen ● Messwerte streuen um die korrekten Werte ● ● ● bestimme R aus der Steigung der Ausgleichsgeraden I Steigung = 1/R bestimme Messunsicherheit auf R aus der Streuung der Messpunkte um die Ausgleichsgeraden U je mehr Messpunkte, desto genauer die Messung Systematische Messunsicherheit: Eichung des Ampèremeters ● ● Nullpunkt des Messgeräts schlecht geeicht ● Ausgleichsgerade geht nicht durch Nullpunkt ● leicht zu erkennen und zu korrigieren Skalenfaktor des Messgeräts schlecht geeicht ● ● aus der Messung nicht offensichtlich zu erkennen Steigung der Ausgleichsgeraden falsch ⇒ falsches Messergebnis für R Datenanalyse HS15 Einführung (12) I I U U O. Steinkamp Quellen systematischer Unsicherheiten Unvollkommene Messgeräte ● fehlerhafte Eichung, Alterungserscheinungen, … Umwelteinflüsse ● Reibungseffekte, Auftrieb ● thermische Ausdehnung von Massstäben ● Temperaturabhängigkeit elektrischer Widerstände Rückwirkung des Messgeräts auf das gemessene System ● ● Wärmekapazität von Temperatursonden endliche Innenwiderstände von Ampèremeter und Voltmeter I + - R U/I>R Datenanalyse HS15 Einführung (13) U + - I R U U/I<R O. Steinkamp Behandlung systematischer Unsicherheiten ● ● ● ● ● mögliche Fehlerquellen erkennen ! ● Messungen unter veränderten Messbedingungen wiederholen ● Kontrollmessungen mit bereits bekanntem Resultat durchführen Fehlerquellen soweit möglich im Versuchsaufbau ausschalten ● Isolation von äusseren Einflüssen, Verwendung von Kompensationsmethoden ● relative Messungen sind häufig genauer als absolute Messungen systematische Effekte in der Auswertung der Daten korrigieren ● Umweltfaktoren, Eichkurven von Messgeräten berücksichtigen ● WICHTIG: erfordert fortlaufende Kontrolle der Messbedingungen verbleibende Unsicherheiten abschätzen ● Genauigkeit der Korrekturen ● Einfluss evt. nicht berücksichtigter Effekte als “systematische Unsicherheit” der Messung angeben “Erfahrung macht den Meister” → üben, üben, üben (z.B. in Praktika) Datenanalyse HS15 Einführung (14) O. Steinkamp Beispiel: Messe Länge eines Pendels Messung bei Zimmertemperatur, verwendetes Lineal aber bei 0ºC geeicht ● guter Physiker: misst die Temperatur während der Längenmessung und korrigiert für die thermische Ausdehnung des Lineals ● ● schlechter Physiker: vergisst, die Temperatur zu messen ● ● ● Frage: hat es dann trotzdem noch eine systematische Unsicherheit? schätze Temperatur während der Messung nachträglich ab und korrigiere für die entsprechende thermische Ausdehnung des Lineals Genauigkeit der Schätzung → systematische Unsicherheit auf dem Messergebnis ganz schlechter Physiker: ignoriert die thermische Ausdehnung des Lineals ● Messergebnis FALSCH Datenanalyse HS15 Einführung (15) O. Steinkamp Data analysis meets poetry Was sind “systematische Messfehler”: bekannte Bekannte, bekannte Unbekannte oder unbekannte Unbekannte ? Datenanalyse HS15 Einführung (16) O. Steinkamp Statistische Messunsicherheiten Quellen statistischer Messunsicherheiten ● zufällige Effekte im Messprozess ● ● z.B. thermisches Rauschen bei elektronischen Messgeräten stochastische Natur des beobachteten physikalischen Phänomens ● z.B. radioaktiver Zerfall, Brownsche Molekularbewegung Kontrolle und Bestimmung statistischer Messunsicherheiten ● mehrmalige Wiederholung des Experiments unter identischen Bedingungen ● Messergebnisse folgen einer Zufallsverteilung (z.B. Gaussverteilung) ● Messergebnis = Mittelwert der Ergebnisse aller Einzelmessungen ● Messunsicherheit = Unsicherheit auf diesem Mittelwert ● nimmt mit der Anzahl N der Einzelmessungen ab statistische Messunsicherheit ∝ 1/ √ N Datenanalyse HS15 Einführung (17) Herleitung später O. Steinkamp Vorlesungsprogramm ● ● ● ● ● ● ● ● Einführung, Messunsicherheiten, Darstellung von Messdaten Grundbegriffe der Wahrscheinlichkeitsrechnung und Statistik - Mittelwert, Standardabweichung, Kovarianz und Korrelation Fehlerfortpflanzungsgesetz Wahrscheinlichkeitsverteilungen - diskrete Verteilungen, kontinuierliche Verteilungen - zentraler Grenzwertsatz Monte-Carlo Methode Wahrscheinlichkeitsverteilungen II - Faltung zweier Verteilungen - Verteilungen zweier Variablen Stichproben und Schätzfunktionen - Maximum-Likelihood Methode - Methode der kleinsten Quadrate Beispielprogramme im Verzeichnis /disk/puma/da/vorl/graf – Diskussion in der Uebungsstunde Interpretation von Messergebnissen - Konfidenzintervalle, Testen von Hypothesen Datenanalyse HS15 Einführung (18) O. Steinkamp Grafische Darstellung von Messergebnissen WICHTIG: erlaubt qualitative visuelle Kontrolle der Messergebnisse ● ● Beispiel: Messung einer Resonanzkurve ● Messpunkte: Amplitude A der Auslenkung als Funktion der Anregungsfrequenz ● Fehlerbalken: Messunsicherheit auf jedem der Messpunkte vergleiche Messergebnisse mit erwarteter Resonanzkurve A0 Γ /2 A(ω ) = π ⋅ (ω−ω )2 +(Γ / 2)2 0 ● A0 = Höhe des Maximums ● 0 = Position des Maximums (Resonanzfrequenz) ● = Breite der Resonanzkurve (Güte bzw. Dämpfung) Datenanalyse HS15 Einführung (19) O. Steinkamp In Python / Pylab #!/usr/bin/env python resonance.py from pylab import * # # lese Daten von Datei resonance.dat # - 1. Spalte: Anregungsfrequenz # - 2. Spalte: gemessene Auslenkung # - 3. Spalte: Messunsicherheit auf Auslenkung # data = loadtxt('resonance.dat') x = data[:,0] y = data[:,1] dy = data[:,2] # # zeichne Daten mit Fehlerbalken # errorbar(x,y,dy,fmt='o',color='r') hold(True) # # zeichne wahre Resonanzkurve (Parameter seien bekannt) # p = [800, 20, 6] x = frange(0,40,0.2) fx = p[0]*(p[2]/pi/2.0)/((x-p[1])*(x-p[1]) + p[2]*p[2]/4) plot(x,fx,'—',color='blue',linewidth=2) # # Achsenbeschriftungen (wichtig !) # xlabel('$\omega$ [Hz]') ylabel('A($\omega$)') axis([0,40,0,100]) grid(True) # show() Datenanalyse HS15 Einführung (20) 1 5 9 13 15 17 18 19 20 21 22 23 25 27 31 35 39 4 5 2 12 21 45 55 81 92 75 59 44 27 15 7 1 1 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 resonance.dat benutze help(command) in pylab !!! O. Steinkamp Histogramme Stelle Verteilung der Ergebnisse bei vielen Messungen einer Größe dar ● wähle einen Wertebereich [xmin,xmax] ● unterteile Wertebereich in N Intervalle mit Intervallbreiten ∆x i (i=1,…,N) ● ● wähle meist äquidistante Intervalle, d.h. ∆x = konst. = (xmax – xmin) / N zähle die Anzahl Messwerte in jedem der Intervalle Beispiel: 200 (simulierte) Messungen der Newtonschen Gravitationskonstante ● ● Abweichungen vom wahren Wert gaußverteilt mit Standardabweichung 10% (= simulierte Messunsicherheit) Darstellung als Balkenhistogramm ● ● [xmin,xmax] = [4.0,10.0] × 10-11 N·m2/kg 8 N = 12, ∆x = konst. = 0.5 × 10-11 N·m2/kg 5 5.5 Datenanalyse HS15 Einführung (21) O. Steinkamp Histogramme Stelle Verteilung der Ergebnisse bei vielen Messungen einer Größe dar ● wähle einen Wertebereich [xmin,xmax] ● unterteile Wertebereich in N Intervalle mit Intervallbreiten ∆x i (i=1,…,N) ● ● wähle meist äquidistante Intervalle, d.h. ∆x = konst. = (xmax – xmin) / N zähle die Anzahl Messwerte in jedem der Intervalle Beispiel: 200 (simulierte) Messungen der Newtonschen Gravitationskonstante %#!/usr/bin/env ● ● Abweichungen vom wahren Wert gaußverteilt mit Standardabweichung 10% (= simulierte Messunsicherheit) Darstellung als Balkenhistogramm ● [xmin,xmax] = [4.0,10.0] × 10-11 N·m2/kg ● N = 12, ∆x = konst. = 0.5 × 10-11 N·m2/kg Datenanalyse HS15 python gravkonst.py from pylab import * # # lese Daten von Datei gravkonst.dat # data = loadtxt('gravkonst.dat') # # definiere Parameter des Histogramms # xmin = 4.0 ; xmax = 10.0 ; nbins = 12 # # fuelle und zeichne Histogramm # ni,xi,patches = hist(data,nbins,(xmin,xmax)) # # weitere Befehle (zeichnen “wahrer” Verteilung, # Achsenbeschriftungen) siehe /disk/puma/da/einf Einführung (22) O. Steinkamp Histogramme Wichtig: angemessene Wahl der Anzahl Intervalle und Intervallbreiten ● ● zu viele / zu schmale Intervalle ⇒ grosse statistische Schwankungen zu wenige / zu breite Intervalle ⇒ Strukturen gehen verloren “gute” Wahl kann letztendlich nur durch Ausprobieren gefunden werden ● ● ● hängt von der Anzahl Einträge und von der Form der betrachteten Verteilung ab Faustregel: Intervalle sollten im Mittel mindestens ~10 Einträge enthalten Datenanalyse HS15 Einführung (23) O. Steinkamp Histogramm mit Fehlerbalken Statistische Fluktuation der Anzahl Einträge im Intervall eines Histogramms folgt Poissonverteilung N Einträge in einem Intervall ⇒ statistische Unsicherheit = ±√ N Grafische Darstellung mit Fehlerbalken Erklärung später ● Symbol bei den Koordinaten [ Intervallmitte ; N ] ● vertikaler Fehlerbalken mit Länge ±√ N ±√8 8 5.25 Datenanalyse HS15 %#!/usr/bin/env python gravkonst2.py from pylab import * # # lese Daten von Datei und fuelle Histogramm # (wie gravkonst.py) # data = loadtxt('gravkonst.dat') xmin = 4.0 ; xmax = 10.0 ; nbins = 12 ni,xi,patches = hist(data,nbins,(xmin,xmax)) # # zeichne Fehlerbalken # hold(False) dni = sqrt(ni) xbin = (xi[0:-1]+xi[1:]) / 2. errorbar(xbin,ni,dni,fmt='o',color='r') # # weitere Befehle (zeichnen “wahrer” Verteilung, # Achsenbeschriftungen) siehe /disk/puma/da/einf Einführung (24) O. Steinkamp