CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
SimMuon_EventContent_cff.py
Go to the documentation of this file.
1 # The following comments couldn't be translated into the new config version:
2 
3 #save digis
4 
5 #save digis sim link and trigger infos
6 
7 import FWCore.ParameterSet.Config as cms
8 
9 # Used to make conditional changes for different running scenarios
10 
11 #Full Event content with DIGI
12 SimMuonFEVTDEBUG = cms.PSet(
13  outputCommands = cms.untracked.vstring('keep *_simMuonCSCDigis_*_*',
14  'keep *_simMuonDTDigis_*_*',
15  'keep *_simMuonRPCDigis_*_*')
16 )
17 #RAW content
18 SimMuonRAW = cms.PSet(
19  outputCommands = cms.untracked.vstring('keep StripDigiSimLinkedmDetSetVector_simMuonCSCDigis_*_*',
20  'keep CSCDetIdCSCComparatorDigiMuonDigiCollection_simMuonCSCDigis_*_*',
21  'keep DTLayerIdDTDigiSimLinkMuonDigiCollection_simMuonDTDigis_*_*',
22  'keep RPCDigiSimLinkedmDetSetVector_simMuonRPCDigis_*_*')
23 )
24 # Add extra collections if running in Run 2. Not sure why but these
25 # collections were added to pretty much all event content in the old
26 # customisation function.
27 from Configuration.Eras.Modifier_run2_common_cff import run2_common
28 run2_common.toModify( SimMuonRAW.outputCommands, func=lambda outputCommands: outputCommands.append('keep *_simMuonCSCDigis_*_*') )
29 run2_common.toModify( SimMuonRAW.outputCommands, func=lambda outputCommands: outputCommands.append('keep *_simMuonRPCDigis_*_*') )
30 
31 #RECO content
32 SimMuonRECO = cms.PSet(
33  outputCommands = cms.untracked.vstring('keep StripDigiSimLinkedmDetSetVector_simMuonCSCDigis_*_*',
34  'keep DTLayerIdDTDigiSimLinkMuonDigiCollection_simMuonDTDigis_*_*',
35  'keep RPCDigiSimLinkedmDetSetVector_simMuonRPCDigis_*_*')
36 )
37 
38 #AOD content
39 SimMuonAOD = cms.PSet(
40  outputCommands = cms.untracked.vstring(
41  # Sim matching information
42  'keep *_muonSimClassifier_*_*'
43  )
44 )
45 SimMuonRECO.outputCommands.extend(SimMuonAOD.outputCommands)
46 
47 # Event content for premixing library
48 SimMuonPREMIX = cms.PSet(
49  outputCommands = cms.untracked.vstring(
50  'keep *_mix_g4SimHitsMuonDTHits_*',
51  'keep *_mix_g4SimHitsMuonCSCHits_*',
52  'keep *_mix_g4SimHitsMuonRPCHits_*',
53  )
54 )
55 
56 from Configuration.Eras.Modifier_run2_GEM_2017_cff import run2_GEM_2017
57 run2_GEM_2017.toModify( SimMuonFEVTDEBUG, outputCommands = SimMuonFEVTDEBUG.outputCommands + ['keep *_simMuonGEMDigis_*_*'] )
58 run2_GEM_2017.toModify( SimMuonRAW, outputCommands = SimMuonRAW.outputCommands + ['keep *DigiSimLinkedmDetSetVector_simMuonGEMDigis_*_*'] )
59 run2_GEM_2017.toModify( SimMuonRECO, outputCommands = SimMuonRECO.outputCommands + ['keep *DigiSimLinkedmDetSetVector_simMuonGEMDigis_*_*'] )
60 run2_GEM_2017.toModify( SimMuonPREMIX, outputCommands = SimMuonPREMIX.outputCommands + ['keep *_mix_g4SimHitsMuonGEMHits_*'] )
61 
62 
63 from Configuration.Eras.Modifier_run3_GEM_cff import run3_GEM
64 run3_GEM.toModify( SimMuonFEVTDEBUG, outputCommands = SimMuonFEVTDEBUG.outputCommands + ['keep *_simMuonGEMDigis_*_*'] )
65 run3_GEM.toModify( SimMuonRAW, outputCommands = SimMuonRAW.outputCommands + ['keep *DigiSimLinkedmDetSetVector_simMuonGEMDigis_*_*'] )
66 run3_GEM.toModify( SimMuonRECO, outputCommands = SimMuonRECO.outputCommands + ['keep *DigiSimLinkedmDetSetVector_simMuonGEMDigis_*_*'] )
67 run3_GEM.toModify( SimMuonPREMIX, outputCommands = SimMuonPREMIX.outputCommands + ['keep *_mix_g4SimHitsMuonGEMHits_*'] )
68 
69 from Configuration.Eras.Modifier_phase2_muon_cff import phase2_muon
70 phase2_muon.toModify( SimMuonFEVTDEBUG, outputCommands = SimMuonFEVTDEBUG.outputCommands + ['keep *_simMuonME0PseudoDigis_*_*',
71  'keep *_simMuonME0PseudoReDigis_*_*',
72  'keep *_simMuonME0Digis_*_*'] )
73 phase2_muon.toModify( SimMuonRAW, outputCommands = SimMuonRAW.outputCommands + ['keep *DigiSimLinkedmDetSetVector_simMuonME0Digis_*_*'] )
74 phase2_muon.toModify( SimMuonRECO, outputCommands = SimMuonRECO.outputCommands + ['keep *DigiSimLinkedmDetSetVector_simMuonME0Digis_*_*'] )
75 phase2_muon.toModify( SimMuonPREMIX, outputCommands = SimMuonPREMIX.outputCommands + ['keep *_mix_g4SimHitsMuonME0Hits_*'] )
76 
77 
78 # FastSim uses different naming convention
79 from Configuration.Eras.Modifier_fastSim_cff import fastSim
81  return s.replace("_g4Sim", "_MuonSim")
82 
83 fastSim.toModify(SimMuonPREMIX, outputCommands = list( ( _renameForFastsim(item) for item in SimMuonPREMIX.outputCommands.value())))