350 likes | 358 Views
Explore PWG4 analysis progress, train operations, and recent developments including data sets, code changes, and profiling on the grid. Stay updated on jet tasks, train wagons, and more for efficient ALICE analysis.
E N D
PWG4 Status Gustavo Conesa Balbastre PWG4 analysis - Offline week
Outline • PWG4 Mini Train and Jet Tasks status - Christian Klein-Bösing • Gamma Conv status - Ana Marin • PartCorr status - Gustavo Conesa Balbastre PWG4 analysis - Offline week
PWG4 analysis modules • Jet Tasks: Christian Klein-Bösing et al. • Photon conversions, GammaConv : From Ana Marin et al. • JetCorrel: 2 hadron correlations from Paul Constantin. • JCORRAN: 2 particle correlations from Jan Rak et al. • Added to svn in April. • PartCorr: Particle identification (, 0, , e, , …) and correlation (with jets, hadrons … ) package. • Calorimeter QA (also in PWG1 train) • Omega3pi: Boris • CaloCalib: Calorimeters calibration module. • Not in the trains. PWG4 analysis - Offline week
PWG4 (Mini) TrainMotivation Christian • Run all PWG4 related tasks centrally on the grid • PWG layer between single user analysis and global ALICE train • Shorter turnaround time • Debugging/profiling under multi task conditions • Testing ground for new code developments • Flexible adaption/testing of different analysis cuts (e.g. track cuts) and task settings • Access to a multitude of different jet finder settings • Most flexible with the use of par-files (compilation of needed libraries), no need for specific aliroot version to be deployed on the grid PWG4 analysis - Offline week
PWG4 Train Christian Analysed data sets so far • Grid-based, using the alien-plugin • Almost daily runs at the beginning, now at least 1/week for fast turnaround • Depends on: • Changes in the data (new MC, more data collected, improved calibration) • Changes in the code (user tasks, framework updates i.e. event selection) • Operation since 07.12.09 • 63 different checkouts from aliroot trunk • 84 train rides • Output /alice/cern.ch/user/k/kleinb/analysisESD/ • Prerequisites: User tasks and configuration must be available in svn • In JETAN or PWG4 • Usage of par-files: Train does NOT depend on aliroot version(s) deployed on the grid • Analysis output merged on run basis: Run dependent systematic studies/QA possible • Exclusion of runs in final merging step PWG4 analysis - Offline week
Recent Operation Christian • Validation of the PWG4 train (before running) • with plugin in local mode (aliroot) • with plugin in local mode + valgrind (aliroot) • with plugin in test mode (root +par) • Main source of problems: Not-initialised arrays of pointers in user tasks, plugin writes a root file with tasks -> reading back fails • Missing includes circular dependencies spotted here • with plugin in submit mode • Also exercise merging step: Recent failures here due to UserTask: fixed • Now also syswatch output • At each step feed back is provided to Task authors in case of problems, fixed if possible on short time-scale • Since last Offline Week • 16 train days (i.e. different aliroot versions from trunk) • 21 (successful) train runs • Recently some poor performances of user task • Many code updates/additions • Memory consumption • Crashes at various stages PWG4 analysis - Offline week
Profiling On the Grid Christian Can be used to trace back memory problems ("reminder" sent by Watchdog) NB: Some tasks not included here, also for other reasons than memory. Here, syswatch output from a part of run 117099 (train 100702): Looks very good, only 1.2 GB Memory (with 55 separate tasks!) No increase of VM in the exec loop. PWG4 analysis - Offline week
PWG4 Train Wagons Christian Currently 57 separate tasks/analysis on real data train, 88 on MC trains Profiling and close communication with task authors essential for stable running • Services • Physics selection • ESD Filter (+kine filter) • JETAN • Jet Finders on charged tracks • Dijets • KMeans cluster • kT cluster • PWG1 • QA Sym • PWG4/JetTasks • Jet Spectrum • Underlying Event • Jet Services • High pT QA and spectrum • Cosmics (new) • Three Jets • Jet Chemistry • (Fragmentation Function) • PWG4/PartCorr • For PHOS and EMCAL • Many subanalysis (I will list them at the end) • Omega3Pi • Calorimeter QA • PWG4/GammaConv • (JCORRAN) PWG4 analysis - Offline week
Jets on the PWG4 Train Christian Large set of jet definitions for many systematic studies/corrections • Multitude of different jet finders is running on the PWG4 train • UA1 cone algorithm, CDF charged cluster, fastJET suite (kT, anti-kT, SISCone), deterministic annealing • Each populates a separate jet output branch usable for subsequent tasks (jet spectrum, underlying event, jet chemistry…) • Unique naming of branches e.g. jetsAOD_UA104, jetsAOD_FASTKT04 … PWG4 analysis - Offline week
Jet Spectra with from Last Week's Train Christian Train 100625 Jets within |η| < 0.5, Tracks within |η| < 0.9 uncorrected Nevt = 64M Events after vtx-cuts p+p 7000 GeV (real) LHC10c pass1 PWG4 analysis - Offline week
Raw Dijet Spectrum Christian Train 100625 Dijets: pairs of two most energetic jets within |η| < 0.5 Nevt = 64M Events after vtx-cuts p+p 7000 GeV (real) LHC10c pass1 uncorrected Open symbols: all jet pairs Closed symbols: all jets pairs with Δφ < 180° ± 20° PWG4 analysis - Offline week Offline Week 07.2010
PWG4 Mini Train Summary and Outlook Christian • Usage of trunk allows rather flexible running schedule • Immediately after important changes, bug fixes • At the cost of a less stable environment • But can provide immediate feedback to users and framework developers • Sandbox for a multi task environment within PWG4 • Usage of on-the-fly AOD • Same analysis as for produced AOD • Cross checks ESD vs. AOD still possible • Fast turnaround for new production • Needs only little disk space (CPU driven) • Maintain train for incoming data • Fast results, testing and debugging of user tasks • Currently pass2 reconstruction is processed, next MC • Many UserTasks from PWG4 train already in global ALICE train PWG4 analysis - Offline week
Ana GammaConv: General information Meetings every Tuesday (before Wednesday) 11am since 2008 indico@CERN since March 2010 "Photons from pair conversion" Wiki Page https://twiki.cern.ch/twiki/bin/view/ALICE/PWG4GammaConversion PWG4 analysis - Offline week
Ana GammaConv software: PWG4/GammaConv Reconstruction of g from pair conversion • Writes a delta AOD with g (debbuged; needs to be committed) • Correction framework included for g • Precise calculation of the g conversion points • (Direct control of Material budget in ALICE: comparison to MC) • p0 and h meson analysis • Direct g analysis(under preparation) • g-hadron (jet) analysis (to be optimized) • cC analysis • p0 Dalitz reconstruction (ready, needs to be committed) • p0 with combined calorimeter and conversion (ready, needs to be committed) • AddTaskGammaConversion.C/ConfigGammaConversion.C • CutSelectionId hard Coded on the output for book keeping PWG4 analysis - Offline week
Ana GammaConv: 0 spectra PWG4 analysis - Offline week
Ana GammaConv: 0 mass PWG4 analysis - Offline week
GammaConv: Eta mass • Correction of h pT spectrum may need special MonteCarlo due to statistics PWG4 analysis - Offline week
PartCorr: What it does • Particle identification (, 0, , e, , …) and correlation (with jets, hadrons … ) package. • Originally intended for calorimeters oriented analysis but it can be used also for analysis with tracks. • It works with input AODs and ESDs or even MC particles. • Output are histograms and/or deltaAODs, these deltaAODs can be re-analized for further refinement of the analysis. PWG4 analysis - Offline week
PartCorr: Analysis available • Analysis available (underlined analysis on the train): • Calorimeter QA: AliAnaCalorimeterQA • Particle identification • Photon identification/selection: AliAnaPhoton • 0 identification/selection: AliAnaPi0, AliAnaPi0EbE • Electron identification/selection: AliAnaElectron, AliAnaBtag (new simplified version) • Charged particles selection: AliAnaChargedParticle • Omega identification: AliAnaOmegaToPi0Gamma • Particle (Photon, 0, …) isolation: AliAnaParticleIsolation • Particle correlation with • Jets: AliAnaJetFinderCorrelation (correlate with JETAN output), AliAnaJetLeadingConeCorrelation. • Hadrons: AliAnaParticleHadronCorrelation PWG4 analysis - Offline week
Yuri PartCorr: EMCAL 0 from Analysis Pass1 Results To be updated with pass2 soon. PWG4 analysis - Offline week
Yuri PartCorr: PHOS 0 from analysis Pass1 Results To be updated with pass2 soon. PWG4 analysis - Offline week
PartCorr: Hadron correlation analysis Yaxian It is urgent to implement a mixing procedure. PWG4 analysis - Offline week
PartCorr: Schema AliAnalisisTaskParticleCorrelation AliAnalysisTaskSE Data Output:AliAODPWG4ParticleCorrelation (TLorentzVector++) and/or Histograms Data AliCaloTrackReader ESD, AOD, MC AliAnaPartCorrMaker aodEMCal, aodPHOS, aodCTS aodEMCal, aodPHOS, aodCTS deltaAOD AliAnaXXX derives from AliAnaPartCorrBaseClass AliAnaYYY derives from AliAnaPartCorrBaseClass AliAnaNNN derives from AliAnaPartCorrBaseClass … How can we do mixing event in this schema? PWG4 analysis - Offline week
PartCorr: Schema for mixing events analysis AliAnalisisTaskParticleCorrelationME A clone of AliAnalisisTaskParticleCorrelation With minor modifications to ensure mixing AliAnalysisTaskME MultiEventHandler Output:AliAODPWG4ParticleCorrelation (TLorentzVector++) and/or Histograms MEHandler AliCaloTrackReaderME New class to do the mixing AliAnaPartCorrMaker Need minor modifications aodEMCal, aodPHOS, aodCTS AliMixedEvent aodEMCal, aodPHOS, aodCTS deltaAOD AliAnaXXX derives from AliAnaPartCorrBaseClass AliAnaYYY derives from AliAnaPartCorrBaseClass AliAnaNNN derives from AliAnaPartCorrBaseClass … Work in progress … PWG4 analysis - Offline week
Mixing event with PartCorr • AliMixedEvent provides access to Events/tracks in different events. • We need access to CaloClusters (CaloCells?) in different events. • Problem: • AliMixedEvent handles virtual objects AliVTrack, AliVEvents, etc. • CaloClusters/CaloCells do not derive from a generic AliVCaloCluster or AliVCaloCells • To do : Create a virtual CaloCluster and CaloCells and make derive ESD/AOD CaloCluster/Cells from them • For CaloCells it is feasible, but for CaloClusters … • Or derive classes from AliMixedEvent one dealing AODs and other ESDs … this is done in PartCorr frame and is … PWG4 analysis - Offline week
ESD/AOD CaloCluster format • CaloCluster containers derive from different mother classes. • ESDCaloCluster is an “independent” class. • AODCaloCluster derives from AODCluster, together with AODFmdCluster and AODPmdCluster • How to make them derive from the same virtual class, without disrupting this structure, in a clean way and not creating backward incompatibilities? • Suggestions are welcome. AliESDCaloCluster TObject AliAODCluster AliAODCaloCluster AliAODFmdCluster AliAODPmdCluster PWG4 analysis - Offline week
PartCorr: Recent frame changes • Many leaks corrected, many thanks to Christian and Andrei, now maybe we are leak free for a while. • But not crash free apparently … • Frame adapted to store the parameters/cuts in the analysis output file. • Using the new container for parameters implemented few months ago by Andrei. • Each analysis deriving from AliAnaPartCorrBase should have a method called • TObjString * GetAnalysisCuts() • Not all analysis in PartCorr do it yet. • Class AliCalorimeterUtils added: It handles all the calorimeter related stuff • Geometry initialization and access to different PHOS/EMCAL geometry mapping methods. • Bad channels removal : If for some reason not in OCDB or removed in reconstruction. • Cluster/cell energy recalibration: Test of recalibration factors on analysis before updating the OCDB. • Removal of clusters close to (Super)Modules borders. PWG4 analysis - Offline week
PartCorr: To do and references • To Do • PartCorr • Implement event mixing analysis in PartCorr frame • Update documentation • Connect GammaConv output with PartCorr analysis. • Remove some embedding functionalities already provided by the analysis frame. • Continue the correction of possible leaks. • Calorimeters calibration • Test calorimeters calibration analysis tasks with data. • How to use it • Code is at $ALICE_ROOT/PWG4/ParCorrBase and $ALICE_ROOT/PWG4/ParCorrDep • Example macros and configuration files are in $ALICE_ROOT/PWG4/macros • Documentation can be found in the offline analysis pages: • http://aliweb.cern.ch/Offline/Activities/Analysis/PWGDocumentation/PWG4/PartCorr.html PWG4 analysis - Offline week
Backup PWG4 analysis - Offline week
Calorimeter QA analysis class • AliAnaCalorimeterQA, derives from PartCorr. • Code at $ALICE_ROOT/PWG4/PartCorrDep/AliAnaCalorimeterQA.* • Purpose: PHOS/EMCAL performance studies, good run selection. • What it does: Right now, it just fills many histograms • Example of these histograms in next slides. • Cluster energy, multiplicity, TOF, position, track matching, invariant mass. • For different (super) modules • Cell energy, multiplicity, TOF, positions • For different (super) modules, RCUs … • Under progress: Implementation of good runs selection procedure. • Running in • PWG4 (mini) train • Together with Jets, gamma-conversion, hadron correlations, PartCorr tasks. • PWG1 train. • Documentation: • http://aliceinfo.cern.ch/Offline/Activities/Analysis/PWGDocumentation/PWG4/AliAnaCalorimeterQA.html PWG4 analysis - Offline week
PartCorr: Particle identification/selection analysis • Photon identification (shower shape): AliAnaPhoton • Input: ESD CaloClusters • Output: aod (AliPWG4Particle(Correlation) objects) and histograms • Pi0 identification via invariant mass: AliAnaPi0 • Input: aod (only AliPWG4Particle objects) from AliAnaPhoton • Output: histograms • Uses mixing event techniques. • Under study the implementation of the eta and omega identification cases. • Access to PHOS geometry possible when the PHOSutils library is loaded. • Pi0 identification on Event-by-Event basis: AliAnaPi0EbE, 3 cases: • Calorimeters invariant mass and other selections cuts • Input: aod from AliAnaPhoton • Output: aod (AliPWG4Particle(Correlation) objects), histograms • Calorimeter + Gamma Conversion invariant mass and other selection cuts • Input: aod from AliAnaPhoton and aod from GammaConv package (when available) • Output: aod (AliPWG4Particle(Correlation) objects) , histograms • Pi0 is a single cluster, decay photons overlap, shower shape identification of pi0 • Input: ESD CaloClusters • Output: aod (AliPWG4Particle(Correlation) objects) and histograms • Charged Particles selection:new, not committed, AliAnaChargedParticles • Input: ESD Tracks • Output: aod (AliPWG4Particle(Correlation) objects) and histograms PWG4 analysis - Offline week
PartCorr: Particle selection/correlation analysis • Particle Isolation: AliAnaParticleIsolation • Input : aod (AliPWG4ParticleCorrelation objects ) from AliAnaPhoton, AliAnaPi0EbE, AliAnaChargedParticles … • Output: histograms, modifies aod adding an isolation label and adding a list with references to tracks/caloclusters falling in isolation cone. • Particle correlation with hadrons: AliAnaParticleHadronCorrelation • Hadrons in a wide angular window opposite to the trigger particle, and with a selected pt cut. • Input : aod (AliPWG4ParticleCorrelation objects ) from AliAnaPhoton, AliAnaPi0EbE, AliAnaChargedParticles … • Output: histograms, modifies aod adding a list with references to the selected hadrons. • Particle correlation with jets: • AliAnaParticleJetFinderCorrelation: correlation with aod jet from JETAN • AliAnaParticleJetLeadingConeCorrelation: jet reconstruction algorithm depending on trigger particle. • Input : aod (AliPWG4ParticleCorrelation objects ) from AliAnaPhoton, AliAnaPi0EbE, AliAnaChargedParticles … and aod from JETAN (only for AliAnaParticleJetFinderCorrelation) • Output: histograms, modifies aod adding a list with references to the jet hadrons and a reference to the aod jet. PWG4 analysis - Offline week
AliAODPWG4Particle: Derives from AliVParticle, suitable for particle identification studies, quite light object. Its data members are: Particle kinematics: TLorentzVector fMomentum: Monte Carlo: Int_t fLabel: Id of original MC particle Int_t fTag: Tag particle as Decay, Fragmentation, Prompt, Conversion … defined in class AliAnalysisMCUtils Connect with original ESD/AOD Id number, necessary for isolation studies. Int_t fTrackLabel[2]: if original particle is a track put here the index, if is reconstructed from 2 tracks (conversion gamma), put 2 indexes. Int_t fCaloLabel[2]:if original particle is a calocluster put here the index, if is reconstructed from 2 caloclusters (pi0), put 2 indexes. PID: Int_t fPdg: Assigned identification label after PID bits for PID selection of caloclusters in later stages of the analysis Int_t fTof: Time of Flight Int_t fDisp: Shower shape dispersion Int_t fCharged: cluster is charged. Quality of the cluster: Int_t fBadChannel: Distance to bad channel Detector of origin: TString fDetector : PHOS, EMCAL, CTS PartCorr: Output AOD objects PWG4 analysis - Offline week
PartCorr: Output AOD objects • AliAODPWG4ParticleCorrelation: Derives from AliAODPWG4Particle, suitable for correlation studies, data members are: • Isolation studies: • Bool_t fIsolated: Flag for Isolation • TRefArray* fRefIsolationTracks(Clusters): Reference array with tracks (caloclusters) found in the trigger particle isolation cone. • Trigger particle - Jet/Hadron correlation stdudies • TList *fListOfRefArrays: List of Reference arrays of correlated tracks (clusters) with the trigger particle for different porpouses. • TRef fRefJet: Reference to jet found with JETAN • TLorentzVector * fCorrJet(Bkg): Kinematics of jet (background) found with gamma-tagging techniques • TLorentzVector * fLeading: Kinematics of Jet core / leading particle PWG4 analysis - Offline week
PartCorr: AliMCAnalysisUtils • Class devoted for analysis utils relative to information stored stack, headers, etc. • Two methods for the moment: • Int_t CheckOrigin(): Given a particle it assigns a label to know its origin, right now concentrated on photons: • enum mcTypes {kMCPrompt, kMCFragmentation, kMCISR, kMCPi0Decay, kMCEtaDecay, kMCOtherDecay, kMCPi0, kMCEta, kMCElectron, kMCConversion, kMCUnknown}; • Depends on the generator used, right now only works for PYTHIA and HERWIG, if needed other generators could be considered. • TList *GetJets(): Returns the lists of generated jets (TParticles) • Depends on the Generator, only 2 options • PYTHIA: Returns jets found with Pycell • HERWIG: Generated objects with PDG 94, (CMShowers), not real jets but close. PWG4 analysis - Offline week