150 likes | 167 Views
Learn about CMSSW event processing from generation to analysis using modules and sequences in this comprehensive tutorial.
E N D
Event processing: • Event generation (in MC world) • Digitization • Local reconstruction • High level object reconstruction • Event selection • Event analysis
Event processing: CMSSW view • Event processing is a sequence of modules • Type of CMSSW modules: • Source • Event generator: PYTHIA, HERWIG, … • File containing some data for further processing • MC info • Digi • ….. • EDProducer • EDFilter • OutputModule • EDAnalyzer
Event processing: CMSSW view Important to know one of the CMSSW rules: object produced in one module can not be updated/modified in other module
How to run it • Command cmsRun –p name.cfg run event processing • User file name.cfg define modules that user want to run and sequence of running (path) • .cfg file is configuration file which uses CMS program configuration language https://uimon.cern.ch/twiki/bin/view/CMS/ConfigurationFileUsage
Example: gen + sim-digi-reco in one step + analysis • Full example can be found on http://cmsdoc.cern.ch/~anikiten/cms-higgs/CMSSW/allReco • I will show you now only few elements • Jet reconstruction • Analysis (access to information) with “Framework analyser”. Code fragments shown on the next slides are taken from allReco.cfg
Source module (or POOL Source) • I have generated already some events (di-taus, back-to-back) and store them into mcpool.root file. This file is “source module” for further event processing Standard name
Module creating “raw” Calo Towers Module name; user defines it. Name of c++ class in CMSSW who produces Calo towers Code above could be put into .cfi file and this file can be included in .cfg as:
Module creating Calo Towers used for jet finder Module name; user defines it. Name of c++ class in CMSSW who produces Calo Towers used by jet finder module caloTowers = CaloTowerCandidateCreator { string src = towerMaker” double minimumEt = 0.5 double minimumE = 0.8 } Name of the module who produced “raw” Calo Towers; see previous slide
Module creating jets Module name; user defines it. Name of c++ class in CMSSW who produces Calo Towers used by jet finder Name of the module who produced Calo Towers to be used by jet finder; see previous slide
Output Module User name to be used later Standard name names of modules produced objects user does not want to be stored into output file User name of output file
Event processing steps: path • Few modules can be combined as sequence • Modules and sequences define path: sequence of processing steps output module name
Analysis of output root file • bare root - no CMSSW libs needed • FWlite mode - few CMSSW libs needed • Analysis in a Framework analyzer • cmsRun –p name.cfg • name.cfg is user configuration file to run analysis • analysis uses full CMSSW framework See on the next slides example of full Framework analysis
analysis.cfg user name Output file from previous step modules which produced objects in previous step to be analyzed now Name of c++ class performing analysis’ user access info and fill/store histos there