CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
customiseReEmul.py
Go to the documentation of this file.
1 from __future__ import print_function
2 
3 import FWCore.ParameterSet.Config as cms
4 from Configuration.Eras.Modifier_stage2L1Trigger_cff import stage2L1Trigger
5 from Configuration.Eras.Modifier_stage2L1Trigger_2017_cff import stage2L1Trigger_2017
6 from Configuration.Eras.Modifier_run3_GEM_cff import run3_GEM
7 
9  process.load("L1Trigger.L1TCalorimeter.caloStage2Params_HWConfig_cfi")
10  return process
11 
12 def L1TAddBitwiseLayer1(process):
13  from L1Trigger.L1TCaloLayer1.simCaloStage2Layer1Digis_cfi import simCaloStage2Layer1Digis as simCaloStage2BitwiseLayer1Digis
14  from L1Trigger.L1TCalorimeter.simCaloStage2Digis_cfi import simCaloStage2Digis as simCaloStage2BitwiseDigis
15  process.simCaloStage2BitwiseLayer1Digis = simCaloStage2BitwiseLayer1Digis.clone()
16  process.simCaloStage2BitwiseLayer1Digis.ecalToken = cms.InputTag("ecalDigis:EcalTriggerPrimitives")
17  process.simCaloStage2BitwiseDigis = simCaloStage2BitwiseDigis.clone()
18  process.simCaloStage2BitwiseDigis.towerToken = cms.InputTag("simCaloStage2BitwiseLayer1Digis")
19  process.SimL1TCalorimeter = cms.Sequence( process.simCaloStage2Layer1Digis + process.simCaloStage2Digis + process.simCaloStage2BitwiseLayer1Digis + process.simCaloStage2BitwiseDigis)
20  from L1Trigger.L1TNtuples.l1UpgradeTree_cfi import l1UpgradeTree
21  process.l1UpgradeBitwiseTree = l1UpgradeTree.clone()
22  process.l1UpgradeBitwiseTree.egToken = cms.untracked.InputTag("simCaloStage2BitwiseDigis")
23  process.l1UpgradeBitwiseTree.tauTokens = cms.untracked.VInputTag("simCaloStage2BitwiseDigis")
24  process.l1UpgradeBitwiseTree.jetToken = cms.untracked.InputTag("simCaloStage2BitwiseDigis")
25  process.l1UpgradeBitwiseTree.muonToken = cms.untracked.InputTag("simGmtStage2Digis")
26  process.l1UpgradeBitwiseTree.sumToken = cms.untracked.InputTag("simCaloStage2BitwiseDigis")
27  process.l1ntuplebitwise = cms.Path(
28  process.l1UpgradeBitwiseTree
29  )
30  process.schedule.append(process.l1ntuplebitwise)
31  print("# modified L1TReEmul: ")
32  print("# {0}".format(process.L1TReEmul))
33  return process
34 
35 # As of 80X, this ES configuration is needed for *data* GTs (mc tags work w/o)
37  process.es_pool_hf1x1 = cms.ESSource(
38  "PoolDBESSource",
39  #process.CondDBSetup,
40  timetype = cms.string('runnumber'),
41  toGet = cms.VPSet(
42  cms.PSet(record = cms.string("HcalLutMetadataRcd"),
43  tag = cms.string("HcalLutMetadata_HFTP_1x1")
44  ),
45  cms.PSet(record = cms.string("HcalElectronicsMapRcd"),
46  tag = cms.string("HcalElectronicsMap_HFTP_1x1")
47  )
48  ),
49  connect = cms.string('frontier://FrontierProd/CMS_CONDITIONS'),
50  authenticationMethod = cms.untracked.uint32(0)
51  )
52  process.es_prefer_es_pool_hf1x1 = cms.ESPrefer("PoolDBESSource", "es_pool_hf1x1")
53  return process
54 
55 def L1TReEmulFromRAW2015(process):
56  process.load('L1Trigger.Configuration.SimL1Emulator_cff')
57  process.load('L1Trigger.Configuration.CaloTriggerPrimitives_cff')
58  process.simEcalTriggerPrimitiveDigis.Label = 'ecalDigis'
59  process.simHcalTriggerPrimitiveDigis.inputLabel = cms.VInputTag(
60  cms.InputTag('hcalDigis'),
61  cms.InputTag('hcalDigis')
62  )
63  process.L1TReEmul = cms.Sequence(process.simEcalTriggerPrimitiveDigis * process.simHcalTriggerPrimitiveDigis * process.SimL1Emulator)
64  process.simDtTriggerPrimitiveDigis.digiTag = 'muonDTDigis'
65  process.simCscTriggerPrimitiveDigis.CSCComparatorDigiProducer = cms.InputTag( 'muonCSCDigis', 'MuonCSCComparatorDigi')
66  process.simCscTriggerPrimitiveDigis.CSCWireDigiProducer = cms.InputTag( 'muonCSCDigis', 'MuonCSCWireDigi' )
67 
68  stage2L1Trigger.toModify(process.simTwinMuxDigis,
69  RPC_Source = 'muonRPCDigis',
70  # When available, this will switch to TwinMux input Digis:
71  DTDigi_Source = "dttfDigis",
72  DTThetaDigi_Source = "dttfDigis"
73  )
74  stage2L1Trigger.toModify(process.simOmtfDigis,
75  srcRPC = 'muonRPCDigis',
76  srcCSC = "csctfDigis"
77  )
78  stage2L1Trigger.toModify(process.simBmtfDigis,
79  DTDigi_Source = "simTwinMuxDigis",
80  DTDigi_Theta_Source = "dttfDigis"
81  )
82  stage2L1Trigger.toModify(process.simKBmtfStubs,
83  srcPhi = "simTwinMuxDigis",
84  srcTheta = "dttfDigis"
85  )
86  stage2L1Trigger.toModify(process.simEmtfDigis,
87  CSCInput = "csctfDigis",
88  RPCInput = 'muonRPCDigis'
89  )
90  stage2L1Trigger.toModify(process.simCaloStage2Layer1Digis, ecalToken = "ecalDigis:EcalTriggerPrimitives")
91  # quiet warning abouts missing Stage-2 payloads, since they won't reliably exist in 2015 data.
92  stage2L1Trigger.toModify(process.caloStage2Digis, MinFeds = 0)
93  stage2L1Trigger.toModify(process.gmtStage2Digis, MinFeds = 0)
94  stage2L1Trigger.toModify(process.gtStage2Digis, MinFeds = 0)
95 
96  (~stage2L1Trigger).toModify(process.simRctDigis,
97  ecalDigis = ['simEcalTriggerPrimitiveDigis'],
98  hcalDigis = ['simHcalTriggerPrimitiveDigis']
99  )
100  (~stage2L1Trigger).toModify(process.simRpcTriggerDigis, label = 'muonRPCDigis')
101  (~stage2L1Trigger).toModify(process.simRpcTechTrigDigis, RPCDigiLabel = 'muonRPCDigis')
102 
103  process.L1TReEmulPath = cms.Path(process.L1TReEmul)
104  process.schedule.append(process.L1TReEmulPath)
105 
106  print("# L1TReEmul sequence: ")
107  print("# {0}".format(process.L1TReEmul))
108  print("# {0}".format(process.schedule))
109  return process
110 
112  L1TReEmulFromRAW2015(process)
113  stage2L1Trigger.toModify(process.simEmtfDigis, CSCInput = 'simCscTriggerPrimitiveDigis:MPCSORTED')
114  stage2L1Trigger.toModify(process.simOmtfDigis, srcCSC = 'simCscTriggerPrimitiveDigis:MPCSORTED')
115  return process
116 
118  L1TReEmulFromRAW2015(process)
119  stage2L1Trigger.toModify(process.simCaloStage2Layer1Digis, ecalToken = "simEcalTriggerPrimitiveDigis")
120  return process
121 
122 def L1TReEmulFromRAW2016(process):
123  process.load('L1Trigger.Configuration.SimL1Emulator_cff')
124  process.load('L1Trigger.Configuration.CaloTriggerPrimitives_cff')
125  process.simEcalTriggerPrimitiveDigis.Label = 'ecalDigis'
126  process.simHcalTriggerPrimitiveDigis.inputLabel = cms.VInputTag(
127  cms.InputTag('hcalDigis'),
128  cms.InputTag('hcalDigis')
129  )
130  process.simHcalTriggerPrimitiveDigis.inputUpgradeLabel = cms.VInputTag(
131  cms.InputTag('hcalDigis'),
132  cms.InputTag('hcalDigis')
133  )
134  process.simDtTriggerPrimitiveDigis.digiTag = cms.InputTag("muonDTDigis")
135  process.simCscTriggerPrimitiveDigis.CSCComparatorDigiProducer = cms.InputTag( 'muonCSCDigis', 'MuonCSCComparatorDigi')
136  process.simCscTriggerPrimitiveDigis.CSCWireDigiProducer = cms.InputTag( 'muonCSCDigis', 'MuonCSCWireDigi' )
137  process.L1TReEmul = cms.Sequence(process.simEcalTriggerPrimitiveDigis * process.simHcalTriggerPrimitiveDigis * process.SimL1Emulator)
138 
139 
140  #cutlist=['simDtTriggerPrimitiveDigis','simCscTriggerPrimitiveDigis']
141  #for b in cutlist:
142  # process.SimL1Emulator.remove(getattr(process,b))
143  # TwinMux
144  stage2L1Trigger.toModify(process.simTwinMuxDigis,
145  RPC_Source = 'rpcTwinMuxRawToDigi',
146  DTDigi_Source = 'twinMuxStage2Digis:PhIn',
147  DTThetaDigi_Source = 'twinMuxStage2Digis:ThIn'
148  )
149  # BMTF
150  stage2L1Trigger.toModify(process.simBmtfDigis,
151  DTDigi_Source = "simTwinMuxDigis",
152  DTDigi_Theta_Source = "bmtfDigis"
153  )
154  # KBMTF
155  stage2L1Trigger.toModify(process.simKBmtfStubs,
156  srcPhi = 'simTwinMuxDigis',
157  srcTheta = 'bmtfDigis'
158  )
159  # OMTF
160  stage2L1Trigger.toModify(process.simOmtfDigis,
161  srcRPC = 'muonRPCDigis',
162  srcCSC = 'csctfDigis',
163  srcDTPh = 'bmtfDigis',
164  srcDTTh = 'bmtfDigis'
165  )
166  # EMTF
167  stage2L1Trigger.toModify(process.simEmtfDigis,
168  CSCInput = 'emtfStage2Digis',
169  RPCInput = 'muonRPCDigis'
170  )
171  # Calo Layer1
172  stage2L1Trigger.toModify(process.simCaloStage2Layer1Digis,
173  ecalToken = 'ecalDigis:EcalTriggerPrimitives',
174  hcalToken = 'hcalDigis:'
175  )
176 
177  (~stage2L1Trigger).toModify(process.simRctDigis,
178  ecalDigis = ['ecalDigis:EcalTriggerPrimitives'],
179  hcalDigis = ['hcalDigis:']
180  )
181  (~stage2L1Trigger).toModify(process.simRpcTriggerDigis, label = 'muonRPCDigis')
182 
183  process.L1TReEmulPath = cms.Path(process.L1TReEmul)
184  process.schedule.append(process.L1TReEmulPath)
185  return process
186 
187 def L1TReEmulFromRAW(process):
188  L1TReEmulFromRAW2016(process)
189 
190 
191  stage2L1Trigger_2017.toModify(process.simOmtfDigis,
192  srcRPC = 'omtfStage2Digis',
193  srcCSC = 'omtfStage2Digis',
194  srcDTPh = 'omtfStage2Digis',
195  srcDTTh = 'omtfStage2Digis'
196  )
197 
198  stage2L1Trigger.toModify(process.simEmtfDigis,
199  CSCInput = cms.InputTag('emtfStage2Digis'),
200  RPCInput = cms.InputTag('muonRPCDigis'),
201  CPPFInput = cms.InputTag('emtfStage2Digis'),
202  GEMEnable = cms.bool(False),
203  GEMInput = cms.InputTag('muonGEMPadDigis'),
204  CPPFEnable = cms.bool(True), # Use CPPF-emulated clustered RPC hits from CPPF as the RPC hits
205  )
206 
207  run3_GEM.toModify(process.simMuonGEMPadDigis,
208  InputCollection = 'muonGEMDigis',
209  )
210 
211  run3_GEM.toModify(process.simTwinMuxDigis,
212  RPC_Source = 'rpcTwinMuxRawToDigi',
213  DTDigi_Source = 'simDtTriggerPrimitiveDigis',
214  DTThetaDigi_Source = 'simDtTriggerPrimitiveDigis'
215  )
216 
217  run3_GEM.toModify(process.simKBmtfStubs,
218  srcPhi = 'bmtfDigis',
219  srcTheta = 'bmtfDigis'
220  )
221 
222  run3_GEM.toModify(process.simBmtfDigis,
223  DTDigi_Source = 'bmtfDigis',
224  DTDigi_Theta_Source = 'bmtfDigis'
225  )
226 
227  print("# L1TReEmul sequence: ")
228  print("# {0}".format(process.L1TReEmul))
229  print("# {0}".format(process.schedule))
230  return process
231 
233  L1TReEmulFromRAW(process)
234  process.simGtStage2Digis.MuonInputTag = cms.InputTag("gtStage2Digis","Muon")
235  return process
236 
237 def L1TReEmulFromNANO(process):
238 
239  process.load('L1Trigger.Configuration.SimL1Emulator_cff')
240  process.L1TReEmul = cms.Sequence(process.SimL1TGlobal)
241  stage2L1Trigger_2017.toModify(process.simGtStage2Digis,
242  ExtInputTag = "hltGtStage2Digis",
243  MuonInputTag = "hltGtStage2Digis:Muon",
244  EtSumInputTag = "hltGtStage2Digis:EtSum",
245  EGammaInputTag = "hltGtStage2Digis:EGamma",
246  TauInputTag = "hltGtStage2Digis:Tau",
247  JetInputTag = "hltGtStage2Digis:Jet"
248  )
249 
250  process.L1TReEmulPath = cms.Path(process.L1TReEmul)
251  process.schedule.append(process.L1TReEmulPath)
252 
253  print ("# L1TReEmul sequence: ")
254  print ("# {0}".format(process.L1TReEmul))
255  print ("# {0}".format(process.schedule))
256  return process
257 
258 def L1TReEmulFromRAWCalo(process):
259  process.load('L1Trigger.Configuration.SimL1CaloEmulator_cff')
260  process.L1TReEmul = cms.Sequence(process.SimL1CaloEmulator)
261  process.simCaloStage2Layer1Digis.ecalToken = cms.InputTag('ecalDigis:EcalTriggerPrimitives')
262  process.simCaloStage2Layer1Digis.hcalToken = cms.InputTag('hcalDigis:')
263  process.L1TReEmulPath = cms.Path(process.L1TReEmul)
264  process.schedule.append(process.L1TReEmulPath)
265 
266  print ("# L1TReEmul sequence: ")
267  print ("# {0}".format(process.L1TReEmul))
268  print ("# {0}".format(process.schedule))
269  return process
270 
272  process.load('L1Trigger.Configuration.SimL1CaloEmulator_cff')
273  process.L1TReEmul = cms.Sequence(process.SimL1CaloEmulator)
274  process.L1TReEmulPath = cms.Path(process.L1TReEmul)
275  process.schedule.append(process.L1TReEmulPath)
276 
277  print ("# L1TReEmul sequence: ")
278  print ("# {0}".format(process.L1TReEmul))
279  print ("# {0}".format(process.schedule))
280  return process
281 
282 def L1TReEmulMCFromRAW(process):
283  L1TReEmulFromRAW(process)
284  stage2L1Trigger.toModify(process.simEmtfDigis, CSCInput = 'simCscTriggerPrimitiveDigis:MPCSORTED')
285  stage2L1Trigger.toModify(process.simOmtfDigis, srcCSC = 'simCscTriggerPrimitiveDigis:MPCSORTED')
286 
287  # Temporary fix for OMTF inputs in MC re-emulation
288  run3_GEM.toModify(process.simOmtfDigis,
289  srcRPC = 'muonRPCDigis',
290  srcDTPh = 'simDtTriggerPrimitiveDigis',
291  srcDTTh = 'simDtTriggerPrimitiveDigis'
292  )
293 
294  return process
295 
297  L1TReEmulMCFromRAW(process)
298  stage2L1Trigger.toModify(process.simCaloStage2Layer1Digis, ecalToken = "simEcalTriggerPrimitiveDigis")
299  return process
300 
302  L1TReEmulMCFromRAW(process)
303  stage2L1Trigger.toModify(process.simCaloStage2Layer1Digis, hcalToken = 'simHcalTriggerPrimitiveDigis')
304  return process
305 
307  L1TReEmulMCFromRAW(process)
308  stage2L1Trigger.toModify(process.simHcalTriggerPrimitiveDigis,
309  inputLabel = [
310  'simHcalUnsuppressedDigis',
311  'simHcalUnsuppressedDigis'
312  ],
313  inputUpgradeLabel = [
314  'simHcalUnsuppressedDigis:HBHEQIE11DigiCollection',
315  'simHcalUnsuppressedDigis:HFQIE10DigiCollection'
316  ]
317  )
318  stage2L1Trigger.toModify(process.simCaloStage2Layer1Digis, hcalToken = 'simHcalTriggerPrimitiveDigis')
319  return process
320  #inputUpgradeLabel = cms.VInputTag(
321  # cms.InputTag('simHcalUnsuppressedDigis:HBHEQIE11DigiCollection'),
322  # cms.InputTag('simHcalUnsuppressedDigis:HFQIE10DigiCollection')),
323 
325  L1TReEmulMCFromRAW(process)
326  stage2L1Trigger.toModify(process.simCaloStage2Layer1Digis,
327  ecalToken = "simEcalTriggerPrimitiveDigis",
328  hcalToken = 'simHcalTriggerPrimitiveDigis'
329  )
330  return process
331 
333  L1TReEmulFromRAW(process)
334  stage2L1Trigger.toModify(process.simCaloStage2Layer1Digis, ecalToken = "simEcalTriggerPrimitiveDigis")
335  return process
336 
338  L1TReEmulFromRAW(process)
339  stage2L1Trigger.toModify(process.simCaloStage2Layer1Digis, hcalToken = 'simHcalTriggerPrimitiveDigis')
340  return process
341 
343  L1TReEmulFromRAW(process)
344  # TwinMux
345  stage2L1Trigger.toModify(process.simTwinMuxDigis,
346  RPC_Source = 'muonRPCDigis',
347  DTDigi_Source = 'simDtTriggerPrimitiveDigis',
348  DTThetaDigi_Source = 'simDtTriggerPrimitiveDigis'
349  )
350  # BMTF
351  stage2L1Trigger.toModify(process.simBmtfDigis,
352  DTDigi_Source = 'simTwinMuxDigis',
353  DTDigi_Theta_Source = 'simDtTriggerPrimitiveDigis'
354  )
355  # KBMTF
356  stage2L1Trigger.toModify(process.simKBmtfStubs,
357  srcPhi = "simTwinMuxDigis",
358  srcTheta = "simDtTriggerPrimitiveDigis"
359  )
360  # OMTF
361  stage2L1Trigger.toModify(process.simOmtfDigis,
362  srcRPC = 'muonRPCDigis',
363  srcCSC = 'simCscTriggerPrimitiveDigis',
364  srcDTPh = 'simDtTriggerPrimitiveDigis',
365  srcDTTh = 'simDtTriggerPrimitiveDigis'
366  )
367  # EMTF
368  stage2L1Trigger.toModify(process.simEmtfDigis,
369  CSCInput = 'simCscTriggerPrimitiveDigis',
370  RPCInput = 'muonRPCDigis'
371  )
372  # Layer1
373  stage2L1Trigger.toModify(process.simCaloStage2Layer1Digis,
374  ecalToken = "simEcalTriggerPrimitiveDigis",
375  hcalToken = 'simHcalTriggerPrimitiveDigis'
376  )
377  return process
378 
380  process.load('L1Trigger.Configuration.SimL1Emulator_cff')
381  process.load('L1Trigger.Configuration.CaloTriggerPrimitives_cff')
382  process.simEcalTriggerPrimitiveDigis.Label = 'ecalDigis'
383  process.simHcalTriggerPrimitiveDigis.inputLabel = cms.VInputTag(
384  cms.InputTag('hcalDigis'),
385  cms.InputTag('hcalDigis')
386  )
387 
388 ## - Legacy to upgrade format muon converter
389  process.load('L1Trigger.L1TCommon.muonLegacyInStage2FormatDigis_cfi')
390  process.muonLegacyInStage2FormatDigis.muonSource = cms.InputTag('simGmtDigis')
391 
392 ## - DT TP emulator
393  from L1Trigger.DTTrigger.dtTriggerPrimitiveDigis_cfi import dtTriggerPrimitiveDigis
394  process.simDtTriggerPrimitiveDigis = dtTriggerPrimitiveDigis.clone()
395  process.simDtTriggerPrimitiveDigis.digiTag = cms.InputTag('muonDTDigis')
396 
397 ## - TwinMux
398  from L1Trigger.L1TTwinMux.simTwinMuxDigis_cfi import simTwinMuxDigis
399  process.simTwinMuxDigisForDttf = simTwinMuxDigis.clone()
400  process.simTwinMuxDigisForDttf.RPC_Source = cms.InputTag('muonRPCDigis')
401  process.simTwinMuxDigisForDttf.DTDigi_Source = cms.InputTag('bmtfDigis')
402  process.simTwinMuxDigisForDttf.DTThetaDigi_Source = cms.InputTag('bmtfDigis')
403 
404  # Lookup tables for the CSC TP emulator
405  process.load("CalibMuon.CSCCalibration.CSCL1TPLookupTableEP_cff")
406  ## - CSC TP emulator
407  from L1Trigger.CSCTriggerPrimitives.cscTriggerPrimitiveDigis_cfi import cscTriggerPrimitiveDigis
408  process.simCscTriggerPrimitiveDigis = cscTriggerPrimitiveDigis.clone()
409  process.simCscTriggerPrimitiveDigis.CSCComparatorDigiProducer = cms.InputTag( 'muonCSCDigis', 'MuonCSCComparatorDigi' )
410  process.simCscTriggerPrimitiveDigis.CSCWireDigiProducer = cms.InputTag( 'muonCSCDigis', 'MuonCSCWireDigi' )
411 #
412 # - CSC Track Finder emulator
413 #
414  from L1Trigger.CSCTrackFinder.csctfTrackDigis_cfi import csctfTrackDigis
415  process.simCsctfTrackDigis = csctfTrackDigis.clone()
416  process.simCsctfTrackDigis.SectorReceiverInput = cms.untracked.InputTag( 'csctfDigis' )
417  process.simCsctfTrackDigis.DTproducer = 'simDtTriggerPrimitiveDigis'
418  from L1Trigger.CSCTrackFinder.csctfDigis_cfi import csctfDigis
419  process.simCsctfDigis = csctfDigis.clone()
420  process.simCsctfDigis.CSCTrackProducer = 'simCsctfTrackDigis'
421 ##
422 ## - DT Track Finder emulator
423 ##
424  from L1Trigger.DTTrackFinder.dttfDigis_cfi import dttfDigis
425  process.simDttfDigis = dttfDigis.clone()
426  process.simDttfDigis.DTDigi_Source = 'simTwinMuxDigisForDttf'
427  process.simDttfDigis.CSCStub_Source = 'simCsctfTrackDigis'
428 ##
429 ## - RPC PAC Trigger emulator
430 ##
431  from L1Trigger.RPCTrigger.rpcTriggerDigis_cff import rpcTriggerDigis
432  process.load('L1Trigger.RPCTrigger.RPCConeConfig_cff')
433  process.simRpcTriggerDigis = rpcTriggerDigis.clone()
434  process.simRpcTriggerDigis.label = 'muonRPCDigis'
435  process.simRpcTriggerDigis.RPCTriggerDebug = cms.untracked.int32(1)
436 
437 ##
438 ## - Legacy Global Muon Trigger emulator
439 ##
440  from L1Trigger.GlobalMuonTrigger.gmtDigis_cfi import gmtDigis
441  process.simGmtDigis = gmtDigis.clone()
442  process.simGmtDigis.DTCandidates = cms.InputTag( 'simDttfDigis', 'DT' )
443  process.simGmtDigis.CSCCandidates = cms.InputTag( 'simCsctfDigis', 'CSC' )
444  process.simGmtDigis.RPCbCandidates = cms.InputTag( 'simRpcTriggerDigis', 'RPCb' )
445  process.simGmtDigis.RPCfCandidates = cms.InputTag( 'simRpcTriggerDigis', 'RPCf' )
446 
447 
448  # This is for the upgrade
449 
450  # BMTF
451  process.simBmtfDigis.DTDigi_Source = cms.InputTag('bmtfDigis')
452  process.simBmtfDigis.DTDigi_Theta_Source = cms.InputTag('bmtfDigis')
453  # TwinMux
454  process.simTwinMuxDigis.RPC_Source = cms.InputTag('muonRPCDigis')
455  process.simTwinMuxDigis.DTDigi_Source = cms.InputTag('bmtfDigis')
456  process.simTwinMuxDigis.DTThetaDigi_Source = cms.InputTag('bmtfDigis')
457  # OMTF
458  process.simOmtfDigis.srcRPC = cms.InputTag('muonRPCDigis')
459  process.simOmtfDigis.srcCSC = cms.InputTag('csctfDigis')
460  process.simOmtfDigis.srcDTPh = cms.InputTag('bmtfDigis')
461  process.simOmtfDigis.srcDTTh = cms.InputTag('bmtfDigis')
462  # EMTF
463  process.simEmtfDigis.CSCInput = cms.InputTag('emtfStage2Digis')
464  process.simEmtfDigis.RPCInput = cms.InputTag('muonRPCDigis')
465  # Calo Layer1
466  process.simCaloStage2Layer1Digis.ecalToken = cms.InputTag('ecalDigis:EcalTriggerPrimitives')
467  process.simCaloStage2Layer1Digis.hcalToken = cms.InputTag('hcalDigis:')
468 
469 
470 # - Sequences
471  process.L1TMuonTriggerPrimitives = cms.Sequence(process.simCscTriggerPrimitiveDigis + process.simDtTriggerPrimitiveDigis + process.simTwinMuxDigisForDttf)
472 
473  process.L1TReEmul = cms.Sequence(process.L1TMuonTriggerPrimitives + process.simCsctfTrackDigis + process.simCsctfDigis + process.simDttfDigis + process.simRpcTriggerDigis + process.simGmtDigis + process.muonLegacyInStage2FormatDigis)
474 
475  process.load('L1Trigger.L1TMuon.simMuonQualityAdjusterDigis_cfi')
476 
477  process.L1TReEmul = cms.Sequence( process.L1TReEmul + process.simTwinMuxDigis + process.simBmtfDigis + process.simEmtfDigis + process.simOmtfDigis + process.simGmtCaloSumDigis + process.simMuonQualityAdjusterDigis + process.simGmtStage2Digis)
478 
479  process.L1TReEmul = cms.Sequence( process.L1TReEmul + process.SimL1TechnicalTriggers + process.SimL1TGlobal )
480 
481  process.L1TReEmulPath = cms.Path(process.L1TReEmul)
482  process.schedule.append(process.L1TReEmulPath)
483  print("# L1TReEmul sequence: ")
484  print("# {0}".format(process.L1TReEmul))
485  print("# {0}".format(process.schedule))
486  return process
487 
void print(TMatrixD &m, const char *label=nullptr, bool mathematicaFormat=false)
Definition: Utilities.cc:47
def L1TReEmulMCFrom90xRAWSimHcalTP
def L1TCaloStage2ParamsForHW
def L1TReEmulFromRAW2015simCaloTP