TISB Firenze 16 Gennaio 2002 ExclusiveDecayTools Package Nicolò Magini Firenze, 16 Gennaio 2003.

Slides:



Advertisements
Presentazioni simili
Recupero debito quarto anno Primo incontro
Advertisements

MATLAB.
MATLAB. Scopo della lezione Programmare in Matlab Funzioni Cicli Operatori relazionali Esercizi vari.
Differenze nei vari linguaggi di Elisa Trifirò e Barbara Tacchino
Liste di Interi Esercitazione. Liste Concatenate Tipo di dato utile per memorizzare sequenze di elementi di dimensioni variabile Definizione tipicamente.
MultiSet, Liste Ordinate
Le gerarchie di tipi.
Esercitazione Frame. Argomento Realizzazione di un tipo di dato astratto Usare le eccezioni per segnalare situazioni particolari Invariante e funzione.
PolyFun. Dare implementazione,funzione di astrazione, invarianti della rappresentazione. Provare che i metodi apply e bind preservano gli invarianti.
1 Astrazioni sui dati : Ragionare sui Tipi di Dato Astratti.
LIP: 1 Marzo 2005 Classe Object e Vettori. Partiamo da Lesercizio dellultima esercitazione realizzato tramite array Vedremo come si puo fare in modo piu.
Differenze tra C e C++ Commenti: Adesso puoi inserire dei commenti tra // e la fine della linea. Usare le librerie C: In C++ puoi anche chiamare una funzione.
JavaScript Laboratorio di Applicazioni Informatiche II mod. A.
Laboratorio di Linguaggi lezione VI: puntatori 2/3 Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso.
MATLAB.
MATLAB. …oggi… Programmare in Matlab Programmare in Matlab Funzioni Funzioni Cicli Cicli Operatori relazionali Operatori relazionali Esercizi vari Esercizi.
Framework Framework TISB meeting 16/01/03 Simone Gennai SNS - Pisa.
per la Collaborazione BaBar
1 Le gerarchie di tipi. 2 Supertipi e sottotipi 4 un supertipo –class –interface 4 può avere più sottotipi –un sottotipo extends il supertipo ( class.
1 laboratorio di calcolo II AA 2003/04 quinta settimana a cura di Domizia Orestano Dipartimento di Fisica Stanza tel. ( )
Alla scoperta di una regolarità…
Le classi Definizione di classe Attributi e metodi di una classe Costruttori e distruttori Private e public Funzioni friend Il puntatore this.
Esercizi Puntatori, struct con campi puntatore, puntatori a struct, rapporto tra array e puntatori. FUNZIONI Passaggio di parametri per indirizzo, passaggio.
FUNZIONI... Una funzione permette di dare un nome a una espressione rendendola parametrica float f(){ return * sin(0.75); } float f1(int x) { return.
Elementi di programmazione ad oggetti a. a. 2009/2010 Corso di Laurea Magistrale in Ingegneria Elettronica Docente: Mauro Mazzieri, Dipartimento di Ingegneria.
TISB 15/16 Gennaio 2003 Matteo Sani Studio del canale Studio del canale H 0 ZZ (*) 4 Matteo Sani – INFN Firenze.
TISB Firenze 15 – 16 Gennaio 2003 Ricerche di SUSY con CMS: alcuni commenti e idee… Alessia Tricomi Dipartimento di Fisica and INFN Catania.
W( μ n )H( bb) Riccardo Ranieri INFN e Università di Firenze TISB Firenze Gennaio
Software per il b-tagging Gabriele Segneri Firenze, 16 Gennaio 2003.
Stato del b tagging Stato del b tagging Alessia Tricomi Università and INFN Catania TISB – Firenze Gennaio 2003.
Stuff e non solo! Stuff e non solo! TISB meeting 16/01/03 Simone Gennai SNS - Pisa.
TISB-Firenze 15-16/1/2003 N. De Filippis1 Stato dei Physics objects: e/ N. De Filippis Università di Bari e INFN Sommario: Algoritmi di HLT Tool disponibili.
16/1/2003TISB1 FAMOS: quel (poco) che ci ho capito io Tommaso Boccali – SNS Pisa.
Work report (Nov. 2005) Sara Bolognesi21 Novembre 2005 Work report P-TDR: analisi sulla VV-fusion PHASE: studi di fenomenologia Ricostruzione locale DT.
Riccardo Capra 1 B A B AR Italia – 10 Aprile 2003 Ricerca dellh c in decadimenti radiativi Misura del BR(B ± 0c K ± ) Ricerca dell c (2S) in decadimenti.
Btag phisics object group Andrea Bocci Scuola Normale Superiore e INFN, Pisa CMS Italia 2007 – 13 Febbraio.
1 Programmazione = decomposizione basata su astrazioni (con riferimento a Java)
Sviluppi futuri del software per il test-beam V.Ciulli Riunione TISB PISA 2004.
PROGRAMMARE IN C Un ambiente di sviluppo `e un software che serve per scrivere ed eseguire programmi. Generalmente integra almeno 3 funzionalita’: Editor:
15 maggio 2002 Avvisi: Ultima lezione: mercoledì 29 maggio II Esonero: mercoledì 5 giugno, ora da stabilire.
1 Astrazioni sui dati : Ragionare sui Tipi di Dato Astratti dispense prof. G. Levi.
TISB Giacomo Sguazzoni1 …a che punto siamo? TISB PERUGIA …chi siamo? Giuseppe Bagliesi Simone Gennai Giacomo Sguazzoni.
Fopndamenti di programmazione. 2 La classe String Una stringa è una sequenza di caratteri La classe String è utilizzata per memorizzare caratteri La classe.
Studio dei decadimenti adronici dei mesoni con charm in 5 corpi carichi Studio dei decadimenti adronici dei mesoni con charm in 5 corpi carichi D +, D.
ISTITUTO STATALE DI ISTRUZIONE SUPERIORE F. ENRIQUES CORSO JAVA – PROVA FINALE DEL 21 MAGGIO 2007 NOME: COGNOME: ________________________________________________________________________________.
Stato del b-tagging A. Tricomi Consorzio Tracker, Firenze 18/01/2002.
Complessità di un algoritmo
Le variabili in Java Nella programmazione tradizionale, una variabile è una porzione di memoria in cui è immagazzinato un certo tipo di dato. Per esempio.
Ugo de'Liguoro - Informatica 2 a.a. 03/04 Lez. 1 Cicli ed asserzioni Corso di Informatica 2 a.a. 2003/04 Lezione 1.
Sistemi e Tecnologie Informatiche Ricorsione Umberto Ferraro Petrillo.
Vettori, indirizzi e puntatori Finora abbiamo usato gli indirizzi nel chiamare  la funzione scanf()  le altre funzioni per riferimento Tuttavia la vera.
WATCH ACADEMY Progetto d’esame Lab. programmazione III Watch Out Team: Di Meo Maurizio Visone Nunzio Izzo Gaetano
Esercitazione su Vector. Permette di definire collezioni di dati generiche, che sono in grado di memorizzare elementi di ogni sottotipo di Object Definito.
Ugo de'Liguoro - Informatica 2 a.a. 03/04 Lez. 7 Tipi di dato e strutture dati Specifica e realizzazione di strutture informative come classi.
Stato dell’analisi B -  D 0 K - modi non-CP (ICHEP 2002) modi CP=+1 (Moriond 2003) modi CP=-1 (conferenze estive?) gamma (200x ?) pubblicazione.
Tau trigger con Calorimetri, Pixel e Tracker CMS Software Workshop Simone Gennai A nome della collaborazione del Tau-Trigger.
Liste di Interi Esercitazione. Una variante Liste concatenate di Integers Non modificabile Costruttori per creare la lista vuota o un nodo Metodi d’istanza.
1 Progettazione dettagliata di un Tipo di Dato Astratto: l’ambiente di metodi.
Ripasso su Java. Introduzione Per risolvere problemi complessi, i linguaggi di programmazione forniscono costrutti per realizzare nuove funzioni che trasformino.
Energy Flow Update Pisa TISB gennaio 2004 Attilio Santocchia Daniele Spiga Mariarosaria D’Alfonso Giuseppe Bagliesi … Dimentico qualcuno?
Riccardo Capra 1 B A B AR Italia – 10 Aprile 2003 Ricerca dell’h c in decadimenti radiativi Misura del BR(B ±   0c K ± ) Ricerca dell’  c (2S) in decadimenti.
1 Progettare un Tipo di Dato Astratto. 2 Scelte di Progetto (astrazione) 4 Caratteristiche degli oggetti –Modificabilità 4 Scelta delle operazioni –Realizzare.
1 Astrazioni sui dati : Ragionare sui Tipi di Dato Astratti.
1 Macchine astratte, linguaggi, interpretazione, compilazione.
Progettare una classe 21 Febbraio La classe BankAccount Vogliamo realizzare una classe i cui oggetti sono dei semplici conti bancari. * Identifichiamo.
LIP: 11 Maggio 2007 Classi Astratte. Cos’e’ una Classe Astratta una classe astratta e’ un particolare tipo di classe permette di fornire una implementazione.
LIP: 4 Maggio 2007 Interfacce. Cos’e’ una Interfaccia una interfaccia e’ un particolare tipo di classe contiene solo la specifica non ha implementazione.
Ricostruzione e trigger del decadimento B º  π + π - con simulazione completa Nicolò Magini Firenze, 15 Gennaio 2003.
Stringhe Una stringa è un vettore di char con un carattere costante \0 che indica la fine della stringa il terminatore rende differenti gli array di char.
XVRC2 Emanuele Ruffaldi Giugno Tre esperimenti con S3D ► Estensioni del Linguaggio ► Pre-Compilatore ► Esecuzione dentro il Java L C J.
Transcript della presentazione:

TISB Firenze 16 Gennaio 2002 ExclusiveDecayTools Package Nicolò Magini Firenze, 16 Gennaio 2003

TISB Firenze 16 Gennaio 2002 ExclusiveDecayTools Package Un po di storia Sviluppato originariamente a Pisa da Zhen Xie Modificato successivamente da V. Ciulli, R. Ranieri e N. Magini Utilizzato per la mia tesi di laurea e per gli studi di B-Physics nel DAQ-TDR Adesso disponibile come pacchetto in bTauAnalysis

TISB Firenze 16 Gennaio 2002 ExclusiveDecayTools Package A che serve? Utilizzando come input oggetti ricostruiti con il consueto codice di ORCA, consente di ricostruire catene di decadimenti esclusivi Nel caso di eventi MonteCarlo in formato HEPEVT effettua automaticamente lassociazione con la verità MonteCarlo

TISB Firenze 16 Gennaio 2002 ExclusiveDecayTools Package Classi per lutente Particle Builder Channel UserCut

TISB Firenze 16 Gennaio 2002 ExclusiveDecayTools Package Particle RawParticle Particle SimpleLockable In pratica è la classe RawParticle di COBRA, con laggiunta di alcune funzionalità utili o necessarie per il pacchetto P.S. Immagino che per una eventuale release ufficiale mi verrà chiesto di cambiare il nome della classe …

TISB Firenze 16 Gennaio 2002 ExclusiveDecayTools Package Builder Classe astratta: deve essere implementata dallutente una classe concreta che eredita da Builder. Prende come input gli oggetti ricostruiti (nel costruttore) Il metodo BuildBasicObj restituisce un vettore di Particle Effettua lassociazione con il MonteCarlo

TISB Firenze 16 Gennaio 2002 ExclusiveDecayTools Package Esempio concreto: TkBuilder Costruita con un qualsiasi vettore di RecTrack (ad es. da CombinatorialTrackFinder, PixelLine, o come più vi aggrada) Se passiamo nel costruttore anche un vettore di SimTrack viene effettuata lassociazione con la verità MonteCarlo (TDRTrackAssociatorByHits) Ma ci si potrebbe sbizzarrire a produrre un MuBuilder, un CaloBuilder, ecc …

TISB Firenze 16 Gennaio 2002 ExclusiveDecayTools Package Channel Si costruisce a partire da una stringa di testo con i nomi PDG della particella madre e dei prodotti di decadimento (fino a 6) Esempio: Channel bdchannel("B0->pi+,pi-") Il metodo Verify passando come argomento uno UserCut e un numero di vector * pari al numero di prodotti di decadimento ricostruisce tutte le possibili combinazioni compatibili con la particella madre

TISB Firenze 16 Gennaio 2002 ExclusiveDecayTools Package UserCut Altra classe astratta -> lutente deve implementare le classi derivate con i tagli utili alla sua analisi nel metodo Cut Ad esempio è implementata la classe CutMass che ritorna true se la massa ricostruita è entro una opportuna finestra intorno alla massa vera

TISB Firenze 16 Gennaio 2002 ExclusiveDecayTools Package Come si usa il pacchetto? bb μ B s D s π π K + K - 4) Tagli topologici fra B s e μ 3) M inv tra i D s ricostruiti e π 2) Id dei π e M inv con i 1) Id e M inv delle coppie di K Come esempio utilizzerò il canale di Andrei effettuando una banale ricostruzione

TISB Firenze 16 Gennaio 2002 ExclusiveDecayTools Package Si parte passando al Builder i normali oggetti ricostruiti di ORCA In questo caso, avendo effettuato una ricostruzione nel Tracker, si tratta di un vettore di RecTrack: TkBuilder mytk(BasicObj, &GoodRecTracks, &GoodSimTracks) vector * TKBasicObj = mytk.BuildBasicObj() In questo caso passiamo anche un vettore di sim tracks perché ci interessa lassociazione con la verità MonteCarlo

TISB Firenze 16 Gennaio 2002 ExclusiveDecayTools Package Poi si effettua la prima identificazione delle particelle Si può fare con la classe Channel se chiamiamo il costruttore con un canale di decadimento ad un corpo CutdEdX cutdEdx; Channel aPi(pi+->BasicObj); vector * Pilist = aPi.Verify(&cutdEdX,TKBasicObj); Channel aK(K+->BasicObj); vector * Klist = aK.Verify(&cutdEdX,TKBasicObj); Channel aMu(mu+->BasicObj); vector * Mulist = aMu.Verify(&cutdEdX,TKBasicObj); P.S. Qualora qualcuno se lo stia chiedendo, il taglio di dE/dx attualmente non fa assolutamente niente (return true), quindi si ottengono le stesse particelle in tutti e tre i casi, ma era solo per dare lidea …

TISB Firenze 16 Gennaio 2002 ExclusiveDecayTools Package A questo punto ricostuiamo le combinazioni di massa invariante Channel aPhi (phi->K-,K+,&mysimevt); vector * Philist = aPhi.Verify(cutPhiMass,Klist,Klist); Channel aDs (D_s-->phi,pi-,&mysimevt); vector * Dslist = aDs.Verify(cutDsMass,Philist,Pilist); Channel aBs (B_s0->D-s-,pi+,&mysimevt); vector * Bslist = aBs.Verify(cutBsMass,Dslist,Klist); 1) Ad ogni step viene verificato che non ci sia sovrapposizione fra i prodotti di decadimento 2) Channel ricostruisce automaticamente anche il canale ottenuto per coniugazione di C 3) In questo caso si passa nel costruttore anche il puntatore al RawHepEvent simulato per propagare la verità di MonteCarlo dai prodotti di decadimento alla madre

TISB Firenze 16 Gennaio 2002 ExclusiveDecayTools Package Se volessimo effettuare dei tagli topologici? Possiamo costruire il Channel con un canale di decadimento virtuale Channel Evchannel(Event->Bs,mu); vector * Eventlist = Evchannel.Verify(&cut,Bslist,Mulist); Poiché Event non è un nome di particella nelle tabelle PDG, Channel si limita a trovare le combinazioni dei prodotti senza assegnare proprietà fisiche alla madre

TISB Firenze 16 Gennaio 2002 ExclusiveDecayTools Package A questo punto ho i miei vettori di particelle ricostruite e posso inserirli nelle ntuple, ecc … for (int i=0; i size(); i++){ Particle * bs = (*Bslist)[i]; cout « Bs pt = « bs->perp() « endl; Particle * ds = (*Bslist)[i]->getChild(0); Particle * pi1 = (*Bslist)[i]->getChild(1); ecc. ecc. ecc … E BUON DIVERTIMENTO CON LANALISI !!!

TISB Firenze 16 Gennaio 2002 ExclusiveDecayTools Package E se mi facesse comodo accedere ai RecObj originali che hanno originato una certa Particle? Nel nostro esempio, mi servono le RecTrack dei due K per ottenere le informazioni sul vertice di decadimento della template class ParticleBase Semplicemente la Particle + il RecObj P Il metodo baseObject() restituisce P

TISB Firenze 16 Gennaio 2002 ExclusiveDecayTools Package Stato del software Disponibile su cvs nella head in bTauAnalysis/ExclusiveDecayTools Testato con ORCA_6_3_0 su lxplus su eventi B 0 π + π - e B s D s π Compila anche su Sun Mancano i commenti alle classi

TISB Firenze 16 Gennaio 2002 ExclusiveDecayTools Package ToDoList Risistemare e ottimizzare il codice Aggiornare la documentazione (attualmente disponibile solo una CMS/IN DRAFT obsoleta sulla vecchia versione di Zhen) Implementare altri Builder semplici (ad esempio L3MuBuilder come richiesto da Andrei) Eventualmente in seguito, riorganizzare lassociazione con la MC Truth da un lato e i RecObj dallaltro