ROOT Isidro González Caballero ( [email protected] )[email protected] Técnicas...

33
ROOT Isidro González Caballero ( [email protected] ) Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4

Transcript of ROOT Isidro González Caballero ( [email protected] )[email protected] Técnicas...

Page 1: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

ROOT

Isidro González Caballero( [email protected] )

Técnicas Experimentales en Física de Partículas

Curso 2010 - 20114

Page 2: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

2

http://root.cern.ch

Page 3: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

3

ROOT en breve

ROOT es un entorno Orientado a Objetos programado en C++ para el desarrollo de aplicaciones que manejen grandes volúmenes de datos.

Proporciona, entre otras cosas:– Un sistema eficiente de almacenamiento y acceso a datos diseñado para soportar

conjuntos de datos estructurados hasta los PB. – Un sistema de consulta (query) para extraer los datos de los ficheros– Un intérprete de C++ (CINT)– Algoritmos de análisis estadístico avanzados (histogramas multidimensionales,

ajustes, minimización, etc.…)– Herramientas de visualización científica con gráficos 2D y 3D– Un avanzado Interfaz de Usuario Gráfico

El usuario interacciona con ROOT a través del interfaz de usuario gráfico, la línea comando o scripts

Los comandos de línea o de los scripts son C++, gracias al interprete integrado de C++, CINT.

– Soporta compilación dinámica de los scripts y cargado dinámico Es un proyecto de fuente abierta (Open Source), licenciado bajo LGPL

Page 4: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

4

Framework y conjunto de librerías

Clases de usuario

– Cada usuario puede definir nuevas clases interactivamente

– Utilizando todos las “maravillas” del C++

– …incluyendo la posibilidad de heredar de las clases de ROOT

Enlace dinámico

– El código interpretado puede llamar al código de

compilado

– El código compilado puede llamar al código

interpretado

– Se puede compilar y enlazar dinámicamente las

Macros

Modo normal defuncionamiento

Interesante para GUIsy visualizadores de

sucesos

Compilador de macosroot > .x file.C++

Page 5: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

5

Areas de utilización de ROOT

Almacenamiento de datos:Localmente o distribuidos

Análisis de datos & visualización

Framew

ork general

Page 6: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

6

El interprete: CINT

CINT se utiliza en ROOT:– Como interprete de líneas comando– Como intérprete de scripts– Para generar diccionarios de clase– Signals/Slots en los GUI– …

El lenguaje de línea comando, script y programación es el mismo

Permite compilar fácilmente los scripts grandes para mejorar el rendimiento

Page 7: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

7

¿Compilar o interpretar?

Compilar Pros:

– Ejecución más rápida– El compilador soporta

todo el C++

Cons:– Compilar lleva tiempo– El compilador es más

estricto con la estructura del lenguaje

Interpretar Pros

– Ideal para probar rápidamente si algo funcionaEdita Ejecuta Comprueba Edita…

– En programas simples puede ser más conveniente

Cons:– Ejecución más lenta,

sobre todo en programas grandes

Page 8: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

8

Ejecutando código

Para ejecutar la función mycode() que está en el fichero mycode.C:root [0] .x mycode.C

Equivalentemente: Leer el fichero y ejecutar la función:root [1] .L mycode.Croot [2] mycode()

Para conocer todos los comandos de CINT:root [3] .h

Page 9: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

9

Ejecutando código

Macro: Fichero interpretado por CINT (.x)

Ejecutar con .x mymacro.C(42)

Para compilar .x mymacro.C+(42)

int mymacro(int value) { int ret = 42; ret += value; return ret;}

Page 10: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

10

Ejemplos gráficos

ROOT tiene varias clases para representar funciones matemáticas.– La más sencilla es TF1 (todas las funciones en ROOT empiezan con “T”)

Buscar la descripción en la página web de ROOT para TF1: http://root.cern.ch/root/html/TF1.html

Hay un constructor (entre otros) que toma cuatro argumentosTF1 TF1(const char* name, const char* formula, Double_t xmin = 0,Double_t xmax = 1)

Crear la función sin(x)/x en el intervalo 0 < x < 10:

Los argumentos del constructor son: El nombre (f1), la expresión de la función (sin(x)/x) y los límites inferior y superior del intervalo (0,10)

Truco: Utiliza el tabulador para completar el comando o averiguar la lista de sus argumentos. Ejemplo:

root [] TF1 f1("f1","sin(x)/x",0,10);root [] f1.Draw();

root [] f1.<TAB>

Page 11: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

11

Histogramas - Intro

Echar un vistazo a la macro hrandom.C Creamos dos histogramas:

1. Un solo valor constante

2. Una distribución aleatoria plana en el intervalo (0,1)

Buscar la domumentación de:

– TH1F– TRandom– THistPainter (opciones de Draw())

– (TCanvas)– …

Page 12: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

12

Histogramas - Interactividad

Ir al menu View Editor

Pinchar en el histograma– Podemos modificar un montón de

parámetros Pinchar en el eje

– Renombrarlo …

Page 13: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

13

Histogramas - Ejercicio

Hacer una macro que llene un histograma con una distribución aleatoria de forma gaussiana– Media=1– Varianza=1.5– Intervalo (-5,5)

Page 14: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

14

Histogramas – Las 2 dimensiones

Echar un vistazo a la macro hrandom2.C

Fijarse en:– TH1F TH2F– Damos nombre a los

ejes directamente en el código

– Elejimos el tipo de histograma que queremos pintar de entre todos los posibles en el código

– Damos título al histograma al crearlo

Page 15: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

15

Ajustes

Echar un vistazo a la macro printHisto.C

Ejecutarlo sobre el fichero de datos gauss.txt

Histograma 1D con forma gaussiana?– Vamos a intentar ajustarlo– Click derecho y Menu FitPanel– Elegimos la función que queremos

ajustar

Page 16: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

16

Ajustes

Los parámetros del ajuste salen en el texto

Con el botón derecho sobre el resumén del histograma se pueden añadir también ahí (SetOptFit)

– Media: 1.0– Sigma: 2.0

Podemos ajustar solo en un intervalo

Page 17: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

17

Ajustes - Ejercicio

Mirar que forma tienen los datos en el fichero de datos gauss2.txt

Ajustar adecuadamente…

Page 18: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

18

Estructuras de datos en ROOT: TTrees

Los TTree’s han sido diseñados para soportar colecciones muy largas de objetos.

Permiten acceso directo y aleatorio a cualquier entrada del árbol (aunque el acceso secuencial va mejor)

Los TTree’s tienen ramas (branches) y hojas (leaves). Se puede leer un subconjunto de las ramas.

Hay métodos de alto nivel como TTree::Draw que iteran sobre las entradas con expresiones de selección.

Se pueden ver los TTree’s usando TBrowser

Se pueden analizar los TTree’s usando TTreeViewer

Page 19: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

19

Contenido de un TTree

0123456789101112131415161718

T.Fill()

T.GetEntry(6)

T

Memory

Page 20: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

20

Estructura de un TTree

Cada fichero de datos es una colección de N sucesos

Cada suceso tiene estructura de árbol con varias ramas– Cada rama puede contener un valor (ej. Número de

sucesos)…– … o una colección de valores (momento transverso

de los jets)

La estructura de cada suceso puede ser muy compleja (RECO, PAT) o plana (Flat Trees)

Page 21: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

21

TBrowser

Usamos la herramienta TBrowser para ver el contenido de los ficherosroot [] TBrowser t

Page 22: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

22

TBrowser

Page 23: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

23

TBrowser

Page 24: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

24

TTreeViewer

root[] TFile f("staff.root")root[] T->StartViewer()

Drag and drop

1

2

3

Page 25: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

25

Producción del bosón de Higgs SM en el LHC

Proceso dominante: gluon fusion Factor 10 de supresión: Vector Boson

Fusion (VBF) ttH: importante cerca del límite de LEP? W(Z)H: debido al enorme fondo, no para

descubrir

Page 26: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

26

todas las colisiones no interesan

100 Hz: se registran tal vez interesen (0.0005%)

sólo < 1 Higgs por cada 100 000 000 000 interacciones-pp

“inteligentes“ estrategias de selección

pro

du

cció

n e

n e

l L

HC

t

trigger: leptones, fotones,ETMISS, ….

Secciones eficaces para los procesos del fondo

Page 27: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

27

Además

Además:– Underlying Event: varios “partones“ en

interacciones de p– Pile-up: Hasta 23 interacciones-pp solapadas por

colisión

Por tanto:– 1600 partículas cargadas por cada colision en el

detector– efectos del pile-up: tiempo de lectura > t entre

colisiones

Page 28: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

28

Desintegraciones del bosón de Higgs en el SM

50 100 200 100010-3

10-2

10-1

100

bb cc tt gg WW ZZ

Bra

nchi

ng r

atio (Higgs

)

mH (GeV)

bb

WW

ZZ

tt

ccgg

HDECAY: Djouadi, Spira et al.

excl

ud

ed b

y L

EP

excluded by

electroweak fit

incl. direct searches

para M<135 GeV: H bb, dominante

para M>135 GeV: H WW, ZZ dominante

pequeño: H también importante

Page 29: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

29

Búsqueda del bosón de Higgs: HWW

Nos centraremos en:– Región de masa: MH~160

GeV– Canal HWW– Con 2 muones en el

estado final– Los neutrinos no se

detectan Energía faltante en el plano transverso

Page 30: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

30

Fondos

Procesos que pueden dar signaturas similares

– WW Signatura idéntica. Irreducible

– W + Jets Sección eficaz altísima

– Pares de quarks top: ttbar BR[tbW] ~99%

– Otros Dibosones: WZ, ZZ– Z + jets Sección eficaz

alta, pero no tendría en principio energía faltante

– tW

Page 31: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

31

Muestras

Sobre todas las muestras se ha hecho una preselección– µ HLT– Tracks isolation– Calotowers isolationh– Skimming 2 leptones: PT > 20,20 |η|<2.4

Tskim N

NN L

Page 32: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

32

Ejercicio

Maximizar la relación entre señal (Higgs) y el fondo (suma de fondos) usando:– Jet veto Número de jets– MET Energía transversa faltante– ΔΦµµ Ángulo entre los dos muones

– mµµ Masa invariante de los dos muones

– PTµmax Momento transverso del muon más energético

– PTµmin Momento transverso del muon menos energético

Page 33: ROOT Isidro González Caballero ( gonzalezisidro@uniovi.es )gonzalezisidro@uniovi.es Técnicas Experimentales en Física de Partículas Curso 2010 - 2011 4.

33

Ejercicio II: Datos

Proceso WW W+jets tt WZ ZZ Z+jets tW

NLO[pb] 4.51 31314 16.52 18.2 5.9 3048 10.6

skim(%) 18.4 4.48×10-4 21 2.83 5.47 22.4 2.61

MH NLO[pb] skim(%)

130 GeV 0.20093 22.0

160 GeV 0.38509 38.5

190 GeV 0.21622 46.2

Señales(HWW 2l 2n)

Fondos

La variable Channel nos permite escoger los sucesos según el tipo de los leptones:•Channel == 0 2 muones•Channel == 1 2 electrones•Channel==2 1 muon y 1 electrón

L = 36.1 pb-1