Analisi Dati con il pacchetto Root

 
Root è un pacchetto open source che permette di effettuare l’analisi dei dati in maniera semplice e precisa. In realtà Root può fare molto di più (come Matlab d’altronde) ma noi lo useremo solo attraverso una semplice macro preparata da me e che può servire da punto di partenza per tutti gli studenti del corso.

Per l’installazione di Root sul proprio computer basta seguire le semplici istruzioni sul sito dell’applicativo. Root può essere installato su Linux (istruzioni), Windows (istruzioni) e Mac OS X (istruzioni).  

A questo link potete trovare alcune trasparenze preparate dal Prof. A.Ventura che danno alcune semplici informazioni di base su come si usa il pacchetto Root.  

GenFit.C è un esempio di macro ROOT che ho scritto e che permette di fare fit generici una volta fornito un file tipo testo con tutte le informazioni necessarie. Nei files brewster.txt e calib.txt ci sono due esempi con dei dati che si riferiscono appunto ad alcune esperienze. Il formato dei file è piuttosto semplice e consiste in diverse righe in cui dovete inserire le informazioni richieste. Le prime sette righe devono cominciare tassativamente con un # ed uno spazio. Qui di seguito il dettaglio delle informazioni: 

# Nome del plot 
# Legenda dell’asse x 
# Legenda dell’asse y 
# Funzione da fittare (senza spazi e nel formato di ROOT)
# Nomi dei parametri (senza spazi) e separati da uno spazio
# valori iniziali dei parametri separati da uno spazio
# flag: deve avere i valori seguenti : “noerr”, “yerr”, “xyerr”, nel caso di xyerr allora:
x1 y1 ex1 ey1
x2 y2 ex2 ey2
.......................
xn yn exn eyn

dove xi,yi sono i dati misurati, ed exi ed eyi sono i relativi errori. Aggiungere un # ed uno spazio alla riga di dati permette di eliminarla temporaneamente dal grafico e quindi dal fit. Questo permette, se necessario, di inserire/rimuovere velocemente ognuno dei punti senza dover duplicare i files. 
La flag “noerr” contempla il caso in cui i dati sono riportati senza errori (xn yn)
La flag “yerr” contempla il caso in cui ci sono solo errori in y (formato xn yn eyn)
La flag “xyerr” contempla il caso, già mostrato in precedenza, in cui vengono riportati entrambi gli errori sulla x e sulla y.  

La macro va eseguita nel seguente modo una volta fatto partire root (vedi istruzioni) (basta solo il nome del file, che deve essere NECESSARIAMENTE di tipo testo e quindi con una estensione .txt):
 
[1]: .x GenFit.C(“brewster”)

e produrrà una finestra grafica del tipo: 


























In questa modalità viene presentato anche il grafico dei residui normalizzati all’errore, che consente di valutare se ci siano eventuali sistematiche. Questo grafico tiene conto anche degli eventuali errori lungo la x propagandone l’effetto nella direzione y. 

La macro accetta altri argomenti che permettono di far funzionare GenFit in modalità diverse. Ad esempio se non si vuole il grafico dei residui normalizzati è possibile aggiungere esplicitamente un secondo argomento alla macro e fissarlo a “false”: 

[1]: .x GenFit.C(“brewster”,false)
























Un’altro modo di eseguire la macro è aggiungere altri parametri che permettono di effettuare il fit solo  in un intervallo definito dall’utente :

[1]: .x GenFit.C(“brewster”,true,0.3, 1.2)

In questo caso è sempre necessario definire il valore di tutti gli argomenti precedenti. 

Si può anche graficare il plot nell’intervallo scelto ponendo l’ultimo argomento a “true”:

[1]: .x GenFit.C(“brewster”,true,0.3, 1.2, true)

Root permette di operare direttamente sulla finestra grafica (chiamata Canvas) per modificarne le caratteristiche. Ad esempio è possibile spostare il riquadro della statistica trascinandolo nella posizione voluta.  Cliccando col tasto destro nell’area al di fuori del grafico è possibile scegliere ad esempio la scala logaritmica in x o y.  Cliccando col tasto destro sugli assi è possibile cambiare la scala, dare un nome all’asse etc. Cliccando col tasto destro sull’istogramma stesso o sui markers o sulla linea si possono cambiare gli attributi grafici come per esempio il colore delle linee, il colore di riempimento etc. 
É possibile fare uno zoom dell’ istogramma, calcolarne l’integrale e molte molte altre cose.  Sperimentate......
Quest’output può essere stampato oppure salvato in un file dopo essere stato modificato a piacimento se si va sul menu file e si sceglie l’opzione save o print nel formato voluto (pdf, png, gif, ps). 

http://root.cern.chhttp://root.cern.chhttp://root.cern.chhttp://root.cern.chInstallazione_Root_su_Ubuntu.htmlInstallazione_Root_su_Windows.htmlInstallazione_Root_su_Mac_OS_X.htmlhttp://www.fisica.unisalento.it/LaureeScientifiche/Download/elettro/ROOT_PLS3.ppthttp://root.cern.chAnalisi_Dati_con_Root_files/GenFit.CAnalisi_Dati_con_Root_files/brewster.txtAnalisi_Dati_con_Root_files/newcalib.txtshapeimage_2_link_0shapeimage_2_link_1shapeimage_2_link_2shapeimage_2_link_3shapeimage_2_link_4shapeimage_2_link_5shapeimage_2_link_6shapeimage_2_link_7shapeimage_2_link_8shapeimage_2_link_9shapeimage_2_link_10shapeimage_2_link_11