CMS 3D CMS Logo

ValL1Emulator_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 # L1 Emulator sequence running on unpacked data
4 # each emulator run on the unpacked data of the previous (in the hardware chain) subsystem
5 #
6 # Order if using the standard sequence
7 # RawToDigi,ValL1Emulator
8 #
9 # V.M. Ghete 2009-11-15
10 
11 
12 # ECAL TPG sequence
14 valEcalTriggerPrimitiveDigis = SimCalorimetry.EcalTrigPrimProducers.ecalTriggerPrimitiveDigis_cfi.simEcalTriggerPrimitiveDigis.clone()
15 #
16 valEcalTriggerPrimitiveDigis.Label = 'ecalDigis'
17 valEcalTriggerPrimitiveDigis.InstanceEB = 'ebDigis'
18 valEcalTriggerPrimitiveDigis.InstanceEE = 'eeDigis'
19 
20 
21 # HCAL TPG sequence
23 valHcalTriggerPrimitiveDigis = SimCalorimetry.HcalTrigPrimProducers.hcaltpdigi_cfi.simHcalTriggerPrimitiveDigis.clone()
24 #
25 valHcalTriggerPrimitiveDigis.inputLabel = cms.VInputTag(cms.InputTag('hcalDigis'),cms.InputTag('hcalDigis'))
26 valHcalTriggerPrimitiveDigis.inputUpgradeLabel = cms.VInputTag(cms.InputTag('hcalDigis'),cms.InputTag('hcalDigis'))
27 #
28 # do not generate new LUTs when running on data, read them from DB
29 HcalTPGCoderULUT.LUTGenerationMode = cms.bool(False)
30 #
31 #
32 valHcalTriggerPrimitiveDigis.FrontEndFormatError = cms.bool(True)
33 
34 
35 # HCAL Tech Trig sequence
37 valHcalTTPDigis = SimCalorimetry.HcalTrigPrimProducers.hcalTTPDigis_cfi.simHcalTTPDigis.clone()
38 #
39 valHcalTTPDigis.HFDigiCollection = cms.InputTag('hcalDigis')
40 
41 
42 # RCT emulator
44 valRctDigis = L1Trigger.RegionalCaloTrigger.rctDigis_cfi.rctDigis.clone()
45 #
46 valRctDigis.ecalDigis = cms.VInputTag(cms.InputTag('ecalDigis:EcalTriggerPrimitives'))
47 valRctDigis.hcalDigis = cms.VInputTag(cms.InputTag('hcalDigis'))
48 
49 
50 # GCT emulator
51 # RCT data used as input for GCT emulator are part of the GCT FED
53 valGctDigis = L1Trigger.GlobalCaloTrigger.gctDigis_cfi.gctDigis.clone()
54 #
55 valGctDigis.inputLabel = 'gctDigis'
56 valGctDigis.preSamples = cms.uint32(0)
57 valGctDigis.postSamples = cms.uint32(0)
58 
60 # Stage1Layer2 emulator
62 valRctUpgradeFormatDigis = L1Trigger.L1TCalorimeter.simRctUpgradeFormatDigis_cfi.simRctUpgradeFormatDigis.clone(
63  regionTag = cms.InputTag("gctDigis"),
64  emTag = cms.InputTag("gctDigis")
65  )
67 valCaloStage1Digis = L1Trigger.L1TCalorimeter.simCaloStage1Digis_cfi.simCaloStage1Digis.clone(
68  CaloRegions = "valRctUpgradeFormatDigis",
69  CaloEmCands = "valRctUpgradeFormatDigis"
70 )
72 valCaloStage1LegacyFormatDigis = L1Trigger.L1TCalorimeter.simCaloStage1LegacyFormatDigis_cfi.simCaloStage1LegacyFormatDigis.clone()
73 valCaloStage1LegacyFormatDigis.InputCollection = cms.InputTag("valCaloStage1Digis")
74 valCaloStage1LegacyFormatDigis.InputRlxTauCollection = cms.InputTag("valCaloStage1Digis:rlxTaus")
75 valCaloStage1LegacyFormatDigis.InputIsoTauCollection = cms.InputTag("valCaloStage1Digis:isoTaus")
76 valCaloStage1LegacyFormatDigis.InputHFSumsCollection = cms.InputTag("valCaloStage1Digis:HFRingSums")
77 valCaloStage1LegacyFormatDigis.InputHFCountsCollection = cms.InputTag("valCaloStage1Digis:HFBitCounts")
78 valCaloStage1LegacyFormatDigis.bxMin = cms.int32(0)
79 valCaloStage1LegacyFormatDigis.bxMax = cms.int32(0)
80 
81 #from L1Trigger.L1TCalorimeter.caloStage1Params_cfi import *
82 
83 # DT TP emulator
85 valDtTriggerPrimitiveDigis = L1Trigger.DTTrigger.dtTriggerPrimitiveDigis_cfi.dtTriggerPrimitiveDigis.clone()
86 
87 
88 # Lookup tables for the CSC TP emulator
90 # CSC TP emulator
92 valCscTriggerPrimitiveDigis = L1Trigger.CSCTriggerPrimitives.cscTriggerPrimitiveDigis_cfi.cscTriggerPrimitiveDigis.clone()
93 #
94 valCscTriggerPrimitiveDigis.CSCComparatorDigiProducer = cms.InputTag('muonCSCDigis',
95  'MuonCSCComparatorDigi')
96 valCscTriggerPrimitiveDigis.CSCWireDigiProducer = cms.InputTag('muonCSCDigis',
97  'MuonCSCWireDigi')
98 valCscTriggerPrimitiveDigis.gangedME1a = cms.untracked.bool(False)
99 
100 # CSC Track Finder - digi track generation
101 # currently used also by DT TF to generate CSCTF stubs
103 valCsctfTrackDigis = L1Trigger.CSCTrackFinder.csctfTrackDigis_cfi.csctfTrackDigis.clone()
104 #
105 valCsctfTrackDigis.SectorReceiverInput = 'csctfDigis'
106 valCsctfTrackDigis.DTproducer = 'dttfDigis'
107 valCsctfTrackDigis.SectorProcessor.gangedME1a = cms.untracked.bool(False)
108 
109 # DT Track Finder emulator
110 # currently generates CSCTF stubs by running CSCTF emulator
112 valDttfDigis = L1Trigger.DTTrackFinder.dttfDigis_cfi.dttfDigis.clone()
113 #
114 valDttfDigis.DTDigi_Source = 'dttfDigis'
115 valDttfDigis.CSCStub_Source = 'valCsctfTrackDigis'
116 
117 
118 # CSC Track Finder emulator
120 valCsctfDigis = L1Trigger.CSCTrackFinder.csctfDigis_cfi.csctfDigis.clone()
121 #
122 valCsctfDigis.CSCTrackProducer = 'valCsctfTrackDigis'
123 
124 
125 
126 # RPC PAC Trigger emulator
128 valRpcTriggerDigis = L1Trigger.RPCTrigger.rpcTriggerDigis_cff.rpcTriggerDigis.clone()
129 #
130 valRpcTriggerDigis.label = 'muonRPCDigis'
131 
132 
133 # Global Muon Trigger emulator - input from common GMT/GT unpacker (gtDigis)
135 valGmtDigis = L1Trigger.GlobalMuonTrigger.gmtDigis_cfi.gmtDigis.clone()
136 #
137 valGmtDigis.DTCandidates = cms.InputTag('l1GtUnpack','DT')
138 valGmtDigis.CSCCandidates = cms.InputTag('l1GtUnpack','CSC')
139 valGmtDigis.RPCbCandidates = cms.InputTag('l1GtUnpack','RPCb')
140 valGmtDigis.RPCfCandidates = cms.InputTag('l1GtUnpack','RPCf')
141 valGmtDigis.MipIsoData = 'caloStage1Digis'
142 
143 # producers for technical triggers
144 #
145 
146 
147 # BSC Technical Trigger - no data to run on
148 
149 
150 # RPC Technical Trigger
151 import L1Trigger.RPCTechnicalTrigger.rpcTechnicalTrigger_cfi
152 valRpcTechTrigDigis = L1Trigger.RPCTechnicalTrigger.rpcTechnicalTrigger_cfi.rpcTechnicalTrigger.clone()
153 
154 # HCAL Technical Trigger
156 valHcalTechTrigDigis = SimCalorimetry.HcalTrigPrimProducers.hcalTTPRecord_cfi.simHcalTTPRecord.clone()
157 
158 
159 
160 # Global Trigger emulator
162 valGtDigis = L1Trigger.GlobalTrigger.gtDigis_cfi.gtDigis.clone()
163 valGtDigis.GmtInputTag = 'l1GtUnpack'
164 valGtDigis.GctInputTag = 'gctDigis'
165 valGtDigis.TechnicalTriggersInputTags = cms.VInputTag(
166  cms.InputTag('valRpcTechTrigDigis'),
167  cms.InputTag('valHcalTechTrigDigis') )
168 
169 # Global Trigger emulator for Stage1
171 valStage1GtDigis = L1Trigger.GlobalTrigger.gtDigis_cfi.gtDigis.clone()
172 valStage1GtDigis.GmtInputTag = 'l1GtUnpack'
173 valStage1GtDigis.GctInputTag = 'caloStage1LegacyFormatDigis'
174 valStage1GtDigis.TechnicalTriggersInputTags = cms.VInputTag(
175  cms.InputTag('valRpcTechTrigDigis'),
176  cms.InputTag('valHcalTechTrigDigis') )
177 
178 # L1 Trigger tasks
179 ValL1MuTriggerPrimitives = cms.Task(valCscTriggerPrimitiveDigis,valDtTriggerPrimitiveDigis)
180 ValL1MuTrackFinders = cms.Task(valCsctfTrackDigis,valCsctfDigis,valDttfDigis)
181 
182 ValL1TechnicalTriggers = cms.Task(valRpcTechTrigDigis,valHcalTechTrigDigis)
183 
184 ValL1Emulator = cms.Task(
185  valEcalTriggerPrimitiveDigis
186  ,valHcalTriggerPrimitiveDigis
187  ,valHcalTTPDigis
188  ,valRctDigis
189  ,valGctDigis
190  ,ValL1MuTriggerPrimitives,ValL1MuTrackFinders,valRpcTriggerDigis,valGmtDigis
191  ,ValL1TechnicalTriggers
192  ,valGtDigis
193 )