particle identification and particle identification and
play

Particle identification and Particle identification and Hadron/Jet - PowerPoint PPT Presentation

Particle identification and Particle identification and Hadron/Jet correlations analysis f framework k Description, Status, HOW TO use Description, Status, HOW TO use Description, Status, HOW TO use Description, Status, HOW TO use and TO


  1. Particle identification and Particle identification and Hadron/Jet correlations analysis f framework k Description, Status, HOW TO use Description, Status, HOW TO use Description, Status, HOW TO use Description, Status, HOW TO use and TO DO list and TO DO list 1/14 03/06/08 Gustavo Conesa Balbastre @ PWG4

  2. Recent changes in ESDs and AODs Recent changes in ESDs and AODs AliESDCaloCluster and AliAODCaloCluster: � Removed fM11 data member, added fTOF data member. Also added/removed related Setters and � Getters Getters. Modifications needed in AliEMCALReconstructor, AliPHOSReconstructor and HLT � Backward compatible (as far as I know) � AliAODCluster: � Particle type list changed now is the same as in AliPID plus kCharged and kNeutral Particle type list changed, now is the same as in AliPID plus kCharged and kNeutral � � Added Getter of the labels array � AliAODEvent: � Added methods to get the list of PHOS or EMCAL AODs like for the ESDs. � Actual version of AliAnalysisTaskESDfilter is complete in the part of filling Actual version of AliAnalysisTaskESDfilter is complete in the part of filling � � AliAODCaloClusters Until 2 months ago the matched tracks, the labels, PID and shower shape information were not filled � Last week 2 bugs corrected. � REMINDER!!!! � EMCAL Pseudoclusters do not exist anymore. � Any method in ESDCaloCluster with the name digits in it is doing nothing, it is just there for backward � compatibility reasons. In AliESD(AOD)CaloClusters we keep for each cluster the list of AbsId of the digits that created the � cluster and the list of the fraction of the digits energy used to create the cluster (used only by PHOS right now). In AliESD(AOD)CaloCells we keep the full list of digits amplitude, absId and time (time is not kept in � AODs) 2/14 03/06/08 Gustavo Conesa Balbastre @ PWG4

  3. What has changed in the PWG4 frame What has changed in the PWG4 frame � Frame completely redesigned since last Alice offline meeting, now: g, � AODs are produced and read. � More modular: initially developed for the case of y p direct gamma and correlations physics. Now more kind of analysis can be added easily. � Library name: PWG4Gamma to PWG4PartCorr 3/14 03/06/08 Gustavo Conesa Balbastre @ PWG4

  4. Particle identification and correlations analysis frame description: Schema frame description: Schema AliAnalisisTaskParticleCorrelation AliAnalysisTaskSE y Data Output: Output: Data AliAODParticleCorrelation AliAODCaloTrackReader and/or AliAnaMaker ESD, AOD, MC AliAODCaloClusters and/or aodEMCal, Histograms Hi t aodPHOS, aodCTS aodEMCal, aodPHOS, aodParticleCorr aodCTS AliAnaXXX AliAnaYYY AliAnaNNN … derives from AliAnaBaseClass derives from AliAnaBaseClass derives from AliAnaBaseClass 4/14 03/06/08 Gustavo Conesa Balbastre @ PWG4

  5. Analysis manager y g Bool_t AliAnaMaker::ProcessEvent(Int_t iEntry){ Steerin Steering class to connect analysis class t c nnect analysis … � //Each event needs an empty branch and data readers : AliAnaMaker AliAnaMaker fAODBranch->Clear(); //Tell the reader to fill the data in the detector lists Connects the data (ESD/AOD/MC) � ReadInputEvent(); with the analysis algorithm h h l l h //Loop on analysis algorithms Int_t nana = fAnalysisContainer->GetEntries() ; Executes all analysis that user has � for(Int_t iana = 0; iana < nana; iana++){ provided in the appropriate order. AliAnaBaseClass * ana = ((AliAnaBaseClass *) fAnalysisContainer->At(iana)) ; (( ) y ( )) ; First analysis generating AODs (if //Set reader and aod branch for each analysis � needed) ana->SetReader(fReader); ana->SetAODBranch(fAODBranch); Second analysis generating � //Make analysis, create aods in aod branch or AODCaloClusters histograms from AODs (if needed) histograms from AODs (if needed) if(fMakeAOD) ana->MakeAnalysisFillAOD() ; if(fMakeAOD) ana >MakeAnalysisFillAOD() ; //Make further analysis with aod branch and fill histograms Several analysis can be executed one � if(fMakeHisto) ana->MakeAnalysisFillHistograms() ; after the other, taking as input the } AOD output of the precedent fReader->ResetLists(); analysis. Initializes all parameters and � histograms connects them with output of general analysis frame. 5/14 03/06/08 Gustavo Conesa Balbastre @ PWG4

  6. Particle identification and correlation analysis frame description: Data Readers description: Data Readers Classes to read the ESD, AOD or MC derive from: AliCaloTrackReader AliCaloTrackReader � Output 3 TClonesArray: EMCAL AODCaloClusters , PHOS AODCaloCluster , � CTS AODTrack. Arrays filled if user wants (by default all filled): SwitchOnCTS(); � SwitchOnEMCAL(); SwitchOnPHOS() Recover the lists in analysis: GetAODCTS(); GetAODEMCAL(); GetAODPHOS(); � Also provides the corresponding CaloCells (not in MC case). If reader is ESD p p g � it returns AliESDCaloCells, if AOD it returns AliAODCaloCells: SwitchOnEMCALCells(); SwitchOnEMCALCells() � GetEMCALCells(); GetPHOSCells() (); () � You can get Generator information: � � virtual AliStack* GetStack() const ; � virtual AliHeader* GetHeader() const ; i l AliH d * G H d () � virtual AliGenEventHeader* GetGenEventHeader() const ; � More if needed 6/14 03/06/08 Gustavo Conesa Balbastre @ PWG4

  7. Particle identification and correlation analysis frame description: Data Readers description: Data Readers AliCaloTrackESDReader : Done and tested locally and on grid. � AliCaloTrackAODReader : Done, test in progress. � AliCaloTrackMCReader : Done and tested locally. � � Output 3 TClonesArray: EMCAL PHOS and CTS TParticles or standard � Output 3 TClonesArray: EMCAL, PHOS and CTS TParticles or standard AODs whatever the user wants. SetClonesArrayType(Int_t type) � 1 (default) is AOD, 0 is TParticle � � Select particles with a given status code: S l i l i h i d SwitchOnStatusSelection(); KeepParticleWithStatus(Int_t status) � Default keeps status 1 � � In CTS array keep only charged particles in CTS acceptance � In CTS array keep only charged particles in CTS acceptance � In Calo arrays keep only neutral particles in Calo acceptances Skip some neutral particles (default skip neutrinos): � SkipNeutralParticles(Int_t pdg ) Add some charged particles (electrons): KeepChargedParticles(Int_t pdg) � � In PYTHIA by default pi0 has status 1 and is not decayed. Option to decay it by “hand”: SwitchOnPi0Decay() SwitchOnPi0Decay() � 7/14 03/06/08 Gustavo Conesa Balbastre @ PWG4

  8. Analysis algorithm base class Analysis base class: //To fill AODs � AliAnaBaseClass AliAnaBaseClass virtual void AddAODCaloCluster(AliAODCaloCluster calo) ; virtual void AddAODParticleCorrelation(AliAODParticleCorrelation pc) ; All analysis classes must virtual void ConnectAODCaloClusters(); � derive from this one. //Init Histograms External modules that can be virtual TList * GetCreateOutputObjects(){ return (new TList) ;} � called by the analysis classes called by the analysis classes //MAIN ANALYSIS METHODS virtual void MakeAnalysisFillAOD() {;}//Creates AODPhotons or AODCaloClusters virtual void MakeAnalysisFillAOD() {;}//Creates AODPhotons or AODCaloClusters AliCaloPID that will be kept in file � virtual void MakeAnalysisFillHistograms() {;} //Final analysis with AODPhotons and Given the PID weights production of histograms � returns probable pdg id //Reader Use as base class for PID Use as base class for PID virtual AliCaloTrackReader * GetReader() const {return fReader ; } � � virtual void SetReader(AliGammaReader * reader) { fReader = reader ; } i t l id S tR d (AliG R d * d ) { fR d d } recalculation? //AOD lists, outputs //AOD lists, outputs AliFidutialCut: virtual TClonesArray* GetAODBranch() const {return fAODBranch ;} � virtual TClonesArray* GetAODCaloClusters() const {return fAODCaloClusters ;} Acceptance selection � //AOD lists, data for the analysis Allows selection in n regions Allows selection in n regions virtual TClonesArray* GetAODCTS() const ; y () � in the detectors virtual TClonesArray* GetAODEMCAL() const ; AliNeutralMesonSelection virtual TClonesArray* GetAODPHOS() const ; � Given a pair of photons virtual AliStack * GetMCStack() const ; � select event by event as π 0 virtual void SetAODBranch(TClonesArray * tca) { fAODBranch = tca ; } or η by invariant mass or b i i t opening angle virtual AliCaloPID * GetCaloPID() const {return fCaloPID ;} virtual void SetCaloPID(AliCaloPID * pid) { fCaloPID = pid ;} AliIsolationCut virtual AliIsolationCut * GetIsolationCut() const {return fIC ;} � Selects particle if isolated. virtual void SetIsolationCut(AliIsolationCut * fc) { fIC = fc ;} � virtual AliFidutialCut * GetFidutialCut() const {return fFidCut ;} virtual void SetFidutialCut(AliFidutialCut * fc) { fFidCut = fc ;} more if needed. � 8/14 03/06/08 Gustavo Conesa Balbastre @ PWG4

Recommend


More recommend