Warning, /DQM/DataScouting/test/HLTvsRECOstudies/README is written in an unsupported language. File is not indexed.
0001 This is a two step process.
0002
0003 1) First step:
0004 run HLT on RAW data and store RAW+DataScouting event content.
0005 Make sure you use the same CMSSW release used to collect the data.
0006
0007 2) Second step:
0008 run RECO on the output of 1) and store AOD+DataSouting event content
0009 Make sure you use the same CMSSW release used to make prompt reconstruction of the collected data
0010
0011 ################################################################################
0012
0013
0014 --------------------------
0015 -- 1) RAW --> HLT + RAW --
0016 --------------------------
0017
0018 Setup environment following updated instruction at
0019 https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideGlobalHLT#Frozen_2012_menus
0020
0021 as of today (25/07/2012) :
0022
0023 setenv SCRAM_ARCH slc5_amd64_gcc462 # if using [t]csh
0024
0025 scram p -n CMSSW_5_2_6_hltpatch1_HLT CMSSW CMSSW_5_2_6_hltpatch1
0026 cd CMSSW_5_2_6_hltpatch1/src
0027 cmsenv
0028
0029 cvs co -r V00-00-59-05 Configuration/AlCa
0030 cvs co -r V13-06-85 HLTrigger/Configuration
0031 cvs co -r V01-02-26 HLTrigger/JetMET
0032 cvs co -r V01-04-01 HLTrigger/Timer
0033 cvs co -r V01-08-09 Validation/RecoMET
0034
0035 checkdeps -a
0036 scram b -j4
0037
0038 rehash # using [t]csh
0039
0040 --
0041
0042 hltGetConfiguration --full --offline --data --unprescale --process TEST --globaltag auto:hltonline orcoff:/cdaq/physics/Run2012/7e33/v2.1/HLT/V12 > hlt_data.py
0043
0044 This menu (/cdaq/physics/Run2012/7e33/v2.1/HLT/V12) correspond to run 193999, and in general is good for Run2012B.
0045 For Run2012C and following one *might* have to use something different. Please check.
0046
0047 --
0048
0049 Edit hlt_data.py:
0050
0051 - add input file name:
0052 process.source ...
0053 (for example 'rfio:/castor/cern.ch/cms/store/data/Run2012B/JetHT/RAW/v1/000/193/999/265915A1-789B-E111-80B6-0025901D5DB8.root') --> typically the RAW data is on castor (*not* on eos) so the files should be "staged" before running for an efficient processing.
0054
0055 - add max number of events to process:
0056 process.maxEvents ...
0057
0058 - add TrgReport (add above global tag for example): <----- should be present BY DEFAULT (please check..)
0059 # enable the TrigReport and TimeReport
0060 process.options = cms.untracked.PSet(
0061 wantSummary = cms.untracked.bool( True )
0062 )
0063
0064 - process.MessageLogger:
0065 reportEvery = cms.untracked.int32( 100 )
0066 limit = cms.untracked.int32( 10 )
0067
0068 - comment out all output modules except process.PhysicsDSTOutput
0069 #process.AOutput = cms.EndPath( process.hltPreAOutput + process.hltOutputA )
0070 #process.BOutput = cms.EndPath( process.hltPreBOutput + process.hltOutputB )
0071 #process.ALCAP0Output = cms.EndPath( process.hltPreALCAP0Output + process.hltOutputALCAP0 )
0072 ...
0073 ...
0074 #process.NanoDSTOutput = cms.EndPath( process.hltPreNanoDSTOutput + process.hltOutputNanoDST )
0075
0076 process.PhysicsDSTOutput = cms.EndPath( process.hltPrePhysicsDSTOutputSmart + process.hltOutputPhysicsDST )
0077
0078 #process.RPCMONOutput = cms.EndPath( process.hltPreRPCMONOutput + process.hltOutputRPCMON )
0079 #process.TrackerCalibrationOutput = cms.EndPath( process.hltPreTrackerCalibrationOutput + process.hltOutputTrackerCalibration )
0080 ...
0081
0082 - edit process.hltOutputPhysicsDST:
0083 - comment out SelectEvents:
0084 # SelectEvents = cms.untracked.PSet( SelectEvents = cms.vstring( 'DST_Ele8_CaloIdL_CaloIsoVL_TrkIdVL_TrkIsoVL_HT250_v1',
0085 # 'DST_HT250_v1',
0086 # 'DST_L1HTT_Or_L1MultiJet_v1',
0087 # 'DST_Mu5_HT250_v1' ) ),
0088 - add RAW data in the output:
0089 outputCommands = cms.untracked.vstring( 'drop *',
0090 'keep *_hltActivityPhotonClusterShape_*_*',
0091 'keep *_hltActivityPhotonEcalIso_*_*',
0092 'keep *_hltActivityPhotonHcalForHE_*_*',
0093 'keep *_hltActivityPhotonHcalIso_*_*',
0094 'keep *_hltCaloJetIDPassed_*_*',
0095 'keep *_hltElectronActivityDetaDphi_*_*',
0096 'keep *_hltHitElectronActivityTrackIsol_*_*',
0097 'keep *_hltKT6CaloJets_rho*_*',
0098 'keep *_hltL3MuonCandidates_*_*',
0099 'keep *_hltL3MuonCombRelIsolations_*_*',
0100 'keep *_hltMetClean_*_*',
0101 'keep *_hltMet_*_*',
0102 'keep *_hltPixelMatchElectronsActivity_*_*',
0103 'keep *_hltPixelVertices_*_*',
0104 'keep *_hltRecoEcalSuperClusterActivityCandidate_*_*',
0105 'keep L1GlobalTriggerReadoutRecord_hltGtDigis_*_*',
0106 'keep edmTriggerResults_*_*_*',
0107 ## RAW data
0108 'keep FEDRawDataCollection_rawDataCollector_*_*',
0109 'keep FEDRawDataCollection_source_*_*',
0110 'keep triggerTriggerEvent_*_*_*',
0111 'keep *_hltL1GtObjectMap_*_*'
0112 )
0113
0114 --
0115
0116 Run code:
0117
0118 cmsRun hlt_data.py >& hlt_data_01.txt &
0119
0120 the trigger report is here: hlt_data_01.txt
0121 the output .root file is here: outputPhysicsDST.root
0122
0123
0124
0125
0126
0127 --------------------------------
0128 -- 2) HLT + RAW --> HLT + AOD --
0129 --------------------------------
0130
0131 Setup CMSSW area
0132 (the instructions below are for Run2012B.
0133 The CMSSW release might change for different datasets:
0134 please check in DAS what was used for prompt reco):
0135
0136
0137 setenv SCRAM_ARCH slc5_amd64_gcc462
0138 scram p -n CMSSW_5_2_4_patch2_DataScouting CMSSW CMSSW_5_2_4_patch2
0139 cd CMSSW_5_2_4_patch2_DataScouting/src
0140 cmsenv
0141
0142
0143 Create configuration file for reconstruction of the data:
0144
0145 cmsDriver.py reco --step RAW2DIGI,RECO --conditions GR_P_V32::All --eventcontent AOD --no_exec --data --filein file:outputPhysicsDST.root --fileout outputPhysicsDST_HLTplusAOD.root --python_filename promptReco_RAW2DIGI_AOD.py --number -1
0146
0147 NOTE 1 : the global tag is correct for Run2012B. If you analyze other periods, the appropriate global tag used for prompt reco shoudl be used
0148
0149 NOTE 2 : the input file must be the output of the previous step
0150
0151
0152 Edit to add the DataScouting event content:
0153
0154 process.AODoutput.outputCommands.extend(
0155 cms.untracked.vstring(
0156 'keep *_hltActivityPhotonClusterShape_*_*',
0157 'keep *_hltActivityPhotonEcalIso_*_*',
0158 'keep *_hltActivityPhotonHcalForHE_*_*',
0159 'keep *_hltActivityPhotonHcalIso_*_*',
0160 'keep *_hltCaloJetIDPassed_*_*',
0161 'keep *_hltElectronActivityDetaDphi_*_*',
0162 'keep *_hltHitElectronActivityTrackIsol_*_*',
0163 'keep *_hltKT6CaloJets_rho*_*',
0164 'keep *_hltL3MuonCandidates_*_*',
0165 'keep *_hltL3MuonCombRelIsolations_*_*',
0166 'keep *_hltMetClean_*_*',
0167 'keep *_hltMet_*_*',
0168 'keep *_hltPixelMatchElectronsActivity_*_*',
0169 'keep *_hltPixelVertices_*_*',
0170 'keep *_hltRecoEcalSuperClusterActivityCandidate_*_*',
0171 'keep L1GlobalTriggerReadoutRecord_hltGtDigis_*_*',
0172 'keep edmTriggerResults_*_*_*',
0173 ## RAW data
0174 #'keep FEDRawDataCollection_rawDataCollector_*_*',
0175 #'keep FEDRawDataCollection_source_*_*',
0176 'keep triggerTriggerEvent_*_*_*',
0177 'keep *_hltL1GtObjectMap_*_*'
0178 )
0179 )
0180
0181 --
0182
0183 Run code:
0184
0185 cmsRun promptReco_RAW2DIGI_AOD.py
0186
0187 The output file is : outputPhysicsDST_HLTplusAOD.root
0188 - This file contains both AOD data format + PhysicsDST data format
0189 and can be used for HLT vs RECO comparisons on event-by-event base.
0190
0191 --