Esempi di analisi dati con ROOT

Slides:



Advertisements
Presentazioni simili
Introduzione al linguaggio C++
Advertisements

Linguaggio R Raffaele Miele Dipartimento di Matematica e Statistica Università degli Studi di Napoli Federico II
ESERCITAZIONE R 12,19 marzo 2012 Mario Mastrangelo
Laboratorio di Matematica Applicata Parte 3
Come si crea un Sito Web a cura del Prof. Sampognaro Giuseppe
AVVIARE IL COMPUTER WINDOWS ‘98 Queta fase è definita BOOTSTRAP
Installazione di Apache 2, PHP5, MySQL 5
CONOSCIAMO IL WINDOWS '95.
Modulo 4 – terza ed ultima parte Foglio Elettronico Definire la funzionalità di un software per gestire un foglio elettronico Utilizzare le operazioni.
3 a lezione - laboratorio a.a Corso di Laurea Ingegneria MECCANICA.
Programmazione Procedurale in Linguaggio C++
SISTEMA DI ACQUISIZIONE
Root Stefano Lacaprara (slides rubate a Tommaso Boccali)
Process synchronization
Informatica 2. Concetti fondamentali di programmazione Programmare vuol dire scrivere un algoritmo in un linguaggio che faccia funzionare un calcolatore.
Canale A. Prof.Ciapetti AA2003/04
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Introduzione a JAVA Anno Accademico 2009/2010.
1 Corso di Informatica (Programmazione) Lezione 6 (31 ottobre 2008) Introduzione a Java: primo programma, installazione dellambiente di sviluppo, compilazione.
MATLAB. …oggi… Programmare in Matlab Programmare in Matlab m-file m-file script script Funzioni Funzioni Cicli Cicli Operatori relazionali Operatori relazionali.
Metodi FEM per problemi ellittici
OPEN OFFICE e IMPRESS Masucci Antonia Maria.
MathType e TeX4PPT in PowerPoint
Funzioni matematico – statistiche I comandi matematici di più comune utilizzo, applicabili a scalari e matrici, sono: Sqrt(x), che calcola la radice quadrata.
Il Corso di Laurea in Fisica
CORSO DI INFORMATICA LAUREA TRIENNALE-COMUNICAZIONE & DAMS
1 laboratorio di calcolo II AA 2003/04 terza settimana a cura di Domizia Orestano Dipartimento di Fisica Stanza tel. ( )
1 laboratorio di calcolo II AA 2003/04 seconda settimana a cura di Domizia Orestano Dipartimento di Fisica Stanza tel. ( )
Progetto di applicazioni grafiche. Disegno di forme complesse Prassi : un classe per ciascuna forma Progetta la forma individuando le componenti base.
Windows Sistema operativo con interfaccia grafica per PC IBM compatibili (varie versioni dal 95) La gestione dei file viene fatta secondo le modalità.
INTRODUZIONE A MATLAB.
Il compilatore Dev-C++
Caselle si fa in 4 – Modulo2
Inserire il CDROM CygWin nel lettore, aprite la directory cyg e lanciare in esecuzione (con un doppio click del pulsante sinistro del mouse sulla relativa.
Esempi di analisi dati con ROOT
Università degli Studi di Bari Laurea in Chimica Di spense di Informatica - Dott. F. Mavelli Programmare in Matlab Funzioni di Libreria Funzioni definite.
EXCEL E FTP.
1 Gea Bilancio Soluzione per Commercialisti e Aziende.
WORD Lezione n. 1 Aprire il programma Aprire un documento esistente
Di Luca Santucci 5° Programmatori
Fopndamenti di programmazione. 2 La classe String Una stringa è una sequenza di caratteri La classe String è utilizzata per memorizzare caratteri La classe.
Milano, 10 Dicembre 2013 Informatica B Informatica B Matlab Laboratorio del 10/12/2013 Responsabili di laboratorio: Gianluca Durelli:
Sviluppare un programma in C che, dato un array da 100 elementi interi caricato con numeri casuali compresi tra [10,100], sia in grado di cercare il valore.
Prompt dei comandi – Windows XP In Windows XP si avvia con Start AccessoriSistema Prompt dei comandi … oppure con Start Esegui cmd.exe.
File e Funzioni Si possono distinguere tre tipi di file che vengono utilizzati in MATLAB: M-file: hanno estensione .m e in essi vengono memorizzati i.
Lavorare con le query Federica Scarrione 18/05/2009 fonte:
Informatica Parte applicativa Basi di dati - report Psicologia dello sviluppo e dell'educazione (laurea magistrale) Anno accademico:
Microsoft Access (parte 5) Introduzione alle basi di dati Scienze e tecniche psicologiche dello sviluppo e dell'educazione, laurea magistrale Anno accademico:
Tutorial: Come rendere trasparente lo sfondo di un’immagine Valentino Carmen ‘E possibile l’’installazione del programma GIMP! (punto esclamativo!)
Lezione 1: Introduzione all’uso di Matlab
JAVA Per iniziare. Verificare installazione javac –version java –version Cercare i files e sistemare eventualmente il path.
ROOT Tutorial Parte 3.
LABVIEW Sommario Che cosa è uno strumento virtuale (VI) creato con LABVIEW Parti di un VI: pannello frontale diagramma a blocchi Confronto tra il principio.
Lezione 4: Analisi nel Piano delle Fasi in Matlab
/ Elementi di C Introduzione a ROOT , Laboratorio Informatico ROOT warm up , Laboratorio Informatico Introduzione.
ROOT Tutorial.
Lezione 23 Riccardo Sama' Copyright  Riccardo Sama' Lavorare con gli strumenti.
Riferimento rapido per Lync 2013 per Office 365 © 2012 Microsoft Corporation. Tutti i diritti sono riservati. Grazie a Lync è possibile iniziare a collaborare.
IC3N 2000 NSCRIPT D.E.I.S. Università di Bologna DEISNet
Primi passi con Easy Reg 1.23: installazione del software
LA FILOSOFIA DEL SAS Concepito per essere facilmente accessibile.
ROOT Tutorial.
Di Pietro Demurtas. È il nome di un pacchetto statistico implementato a partire dai primi anni ‘90 da Ihaka e Gentleman. È un linguaggio di programmazione.
Informatica B Allievi Elettrici - AA Fondamenti della programmazione in linguaggio C (III)
Microsoft Access Informatica 04/05 Introduzione alle basi di dati.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Lab 1 – Info B Marco D. Santambrogio – Matteo Ferroni –
Corso di Politiche Regionali Introduzione a STATA a cura del Dott. Augusto Cerqua 15/10/2012.
EPG di Metodologia della ricerca e Tecniche Multivariate dei dati A.A
Elementi di statistica con R e i database Rocco De Marco rocco.demarco(a)an.ismar.cnr.it Ancona, 10 Aprile 2012.
Prof. P.Sanna - Prof.ssa D.Lecca Corso A programmatori 1 La gestione delle risorse e dei file.
Installazione: Kubuntu 8.04 corso linux 2008 RiminiLUG presenta Guida passo-passo all'installazione di Kubuntu questa guida vale anche per l'installazione.
Transcript della presentazione:

Esempi di analisi dati con ROOT Guida minima all’uso di ROOT per le esperienze didattiche di Laboratorio di Elettromagnetismo Piano Lauree Scientifiche Andrea Ventura Dipartimento di Fisica – Università del Salento Lecce, gennaio 2013

Introduzione ROOT è un programma molto utilizzato nell’ambito della Fisica delle Alte Energie, che permette di analizzare anche grandi quantità di dati, produrre risultati statistici, realizzare grafici, adattare dati sperimentali a funzioni, e molto altro ancora. E’ un programma molto versatile e gratuito: l’attuale versione per Windows può essere scaricata dall’indirizzo: ftp://root.cern.ch/root/root_v5.34.04.win32.vc90.msi Senza la pretesa di conoscere l’intero pacchetto, qui considereremo alcune semplici applicazioni per un impiego immediato.

Installazione del pacchetto Una volta scaricato il file di setup (root*.msi), si segue la procedura standard di installazione, al termine della quale compare un’icona sul desktop su cui cliccare per avviare ROOT ROOT è disponibile anche per altri sistemi operativi (Linux, Mac OS). All’avvio, appare una finestra (“shell”) per i comandi da sottomettere al programma.

Avvio di ROOT

Iniziare con ROOT ROOT è basato su CINT, un interprete di C/C++ Blocchi di comandi possono essere racchiusi tra parentesi graffe, intervallati da punti e virgola, ovvero: {...; ...; ...} I comandi precedenti possono essere richiamati tramite la freccia verso l’alto () Per non digitare ogni volta gli stessi comandi, possiamo scriverli in un file (ad esempio miaMacro.C) ed eseguirli con “.x miaMacro.C” la directory di lavoro è tipicamente C:\root Per uscire da ROOT digitare “.q”

Semplici operazioni Possiamo fare qualche calcolo, ad esempio: 7 · 9 Possiamo elencare i quadrati dei primi 5 numeri pari: Possiamo disegnare una funzione, f(x) = 2 senx (x–1)2 Per avere la griglia, anteporre Per conoscere il valore di f(3) root [0] 7*sqrt(9) root [1] for (int i=1; i<=5; i++) printf(“%d^2 = %d ”, 2*i, 4*i*i); root [2] TF1 f("f","2*sin(x)*(x-1)**2",-3,7); root [3] f.Draw(); c1 = new TCanvas; c1->SetGrid(); f(3) (const Double_t)1.12896006447893770e+000

Effettuare un fit a una funzione Si salvi in un file e si esegua il seguente esempio: { // Creazione di una canvas con griglia: gROOT->Reset(); c1 = new TCanvas("c1", "Fit dei dati con errori su x e y", 200, 10, 700, 500); c1->SetGrid(); Int_t n = 10; // Inizializzazione di 4 vettori: // x[] e ex[] sono le misure in ascissa x_i e i loro errori Float_t x[n] = {0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.65, 0.75, 0.95, 1.2}; Float_t ex[n] = {0.05, 0.05, 0.04, 0.05, 0.04, 0.05, 0.06, 0.06, 0.05, 0.05}; // y[] e ey[] sono le misure in ordinata y_i e i loro errori Float_t y[n] = {0.1, 0.3, 0.55, 0.67, 0.75, 0.79, 0.71, 0.63, 0.45, 0.35}; Float_t ey[n] = {0.04, 0.03, 0.03, 0.02, 0.02, 0.02, 0.03, 0.03, 0.04, 0.04}; // Creazione di un grafico x-y con errori gr = new TGraphErrors(n,x,y,ex,ey); gr->SetTitle("Fit della funzione"); gr->SetMarkerColor(4); gr->SetMarkerStyle(21); gr->Draw("AP"); gStyle->SetOptFit(1111); // Fit dei dati del grafico con un polinomio di terzo grado gr->Fit("pol3"); c1->Update(); }

Risultato del fit Il fit a una polinomiale di terzo grado è soddisfacente (il 2/ndf è prossimo a 1) Provare altre funzioni, come “pol2”, “pol4” o “expo”

Fit con altre funzioni All’interno della macro inserire la funzione desiderata: Lanciare la macro. Il fit potrebbe non funzionare per via di inadeguati valori iniziali dei parametri p0, p1, p2. Definirli con “SetParameters” e rilanciare: { ... // Creazione di una canvas con griglia // Inizializzazione dei 4 vettori x[] ex[] y[] ey[] // Creazione di un grafico x-y con errori // Definizione di una nuova funzione TF1 *funz = new TF1("funz","[0]*x*exp([1]*x+[2])",0.5,100); // Fit in un intervallo di interesse, tra -3 e 7 gr->Fit("funz","","",-3,7); c1->Update(); } TF1 *funz = new TF1("funz","[0]*x*exp([1]*x+[2])",0.5,100); funz->SetParameters(5.,-1.,0.);

Risultato del nuovo fit Il nuovo fit alla funzione desiderata è soddisfacente Si provino altre funzioni arbitrarie o altri set di punti

Altre operazioni con ROOT Si possono visualizzare i valori dei parametri del fit: Si possono salvare i grafici ottenuti tramite l’interfaccia grafica: “File -> Save As…” oppure Maggiori dettagli su http://root.cern.ch Per ulteriori aiuti o chiarimenti: andrea.ventura@le.infn.it float p0=funz->GetParameter(0), dp0=funz->GetParError(0); float p1=funz->GetParameter(1), dp1=funz->GetParError(1); float p2=funz->GetParameter(2), dp2=funz->GetParError(2); cout << "p0 = " << p0 << " +- " << dp0 << endl; cout << "p1 = " << p1 << " +- " << dp1 << endl; cout << "p2 = " << p2 << " +- " << dp2 << endl; c1->SaveAs(“mioGrafico.gif”)