|
4 | 4 | ## L1REPACK FullSimTP : Re-Emulate all of L1 and repack into RAW |
5 | 5 |
|
6 | 6 | from Configuration.Eras.Modifier_stage2L1Trigger_cff import stage2L1Trigger |
| 7 | +from Configuration.Eras.Modifier_run3_GEM_cff import run3_GEM |
7 | 8 |
|
8 | 9 | (~stage2L1Trigger).toModify(None, lambda x: |
9 | 10 | print("# L1T WARN: L1REPACK:FullSimTP (intended for data) only supports Stage-2 eras for now.\n# L1T WARN: Use a legacy version of L1REPACK for now.")) |
|
15 | 16 | unpackBmtf = EventFilter.L1TRawToDigi.bmtfDigis_cfi.bmtfDigis.clone( |
16 | 17 | InputLabel = cms.InputTag( 'rawDataCollector', processName=cms.InputTag.skipCurrentProcess())) |
17 | 18 |
|
18 | | -import EventFilter.DTTFRawToDigi.dttfunpacker_cfi |
19 | | -unpackDttf = EventFilter.DTTFRawToDigi.dttfunpacker_cfi.dttfunpacker.clone( |
20 | | - DTTF_FED_Source = cms.InputTag( 'rawDataCollector', processName=cms.InputTag.skipCurrentProcess())) |
| 19 | +import EventFilter.L1TRawToDigi.omtfStage2Digis_cfi |
| 20 | +unpackOmtf = EventFilter.L1TRawToDigi.omtfStage2Digis_cfi.omtfStage2Digis.clone( |
| 21 | + inputLabel = cms.InputTag( 'rawDataCollector', processName=cms.InputTag.skipCurrentProcess())) |
21 | 22 |
|
22 | 23 | import EventFilter.L1TRawToDigi.emtfStage2Digis_cfi |
23 | 24 | unpackEmtf = EventFilter.L1TRawToDigi.emtfStage2Digis_cfi.emtfStage2Digis.clone( |
24 | 25 | InputLabel = cms.InputTag( 'rawDataCollector', processName=cms.InputTag.skipCurrentProcess())) |
25 | | - |
26 | | - |
27 | | -import EventFilter.CSCTFRawToDigi.csctfunpacker_cfi |
28 | | -unpackCsctf = EventFilter.CSCTFRawToDigi.csctfunpacker_cfi.csctfunpacker.clone( |
29 | | - producer = cms.InputTag( 'rawDataCollector', processName=cms.InputTag.skipCurrentProcess())) |
30 | 26 |
|
31 | 27 | import EventFilter.CSCRawToDigi.cscUnpacker_cfi |
32 | 28 | unpackCSC = EventFilter.CSCRawToDigi.cscUnpacker_cfi.muonCSCDigis.clone( |
|
40 | 36 | unpackRPC = EventFilter.RPCRawToDigi.rpcUnpacker_cfi.rpcunpacker.clone( |
41 | 37 | InputLabel = cms.InputTag( 'rawDataCollector', processName=cms.InputTag.skipCurrentProcess())) |
42 | 38 |
|
| 39 | +import EventFilter.GEMRawToDigi.muonGEMDigis_cfi |
| 40 | +unpackGEM = EventFilter.GEMRawToDigi.muonGEMDigis_cfi.muonGEMDigis.clone( |
| 41 | + InputLabel = cms.InputTag( 'rawDataCollector', processName=cms.InputTag.skipCurrentProcess())) |
| 42 | + |
43 | 43 | import EventFilter.EcalRawToDigi.EcalUnpackerData_cfi |
44 | 44 | unpackEcal = EventFilter.EcalRawToDigi.EcalUnpackerData_cfi.ecalEBunpacker.clone( |
45 | 45 | InputLabel = cms.InputTag( 'rawDataCollector', processName=cms.InputTag.skipCurrentProcess())) |
|
71 | 71 | simCscTriggerPrimitiveDigis.CSCComparatorDigiProducer = 'unpackCSC:MuonCSCComparatorDigi' |
72 | 72 | simCscTriggerPrimitiveDigis.CSCWireDigiProducer = 'unpackCSC:MuonCSCWireDigi' |
73 | 73 |
|
| 74 | +# GEM-CSC |
| 75 | +simMuonGEMPadDigis.InputCollection = "unpackGEM" |
| 76 | + |
| 77 | +# TwinMux |
74 | 78 | simTwinMuxDigis.RPC_Source = 'unpackRPC' |
75 | | -# simTwinMuxDigis.DTDigi_Source = "simDtTriggerPrimitiveDigis" # DEFAULT |
76 | | -# simTwinMuxDigis.DTThetaDigi_Source = "simDtTriggerPrimitiveDigis" # DEFAULT |
| 79 | +simTwinMuxDigis.DTDigi_Source = "simDtTriggerPrimitiveDigis" # DEFAULT |
| 80 | +simTwinMuxDigis.DTThetaDigi_Source = "simDtTriggerPrimitiveDigis" # DEFAULT |
77 | 81 |
|
78 | 82 | # BMTF |
79 | | -# simBmtfDigis.DTDigi_Source = "simTwinMuxDigis" # DEFAULT |
80 | | -# simBmtfDigis.DTDigi_Theta_Source = "simDtTriggerPrimitiveDigis" # DEFAULT |
| 83 | +# simBmtfDigis.DTDigi_Source = "simTwinMuxDigis" # DEFAULT, use re-emulated TPs |
| 84 | +# simBmtfDigis.DTDigi_Theta_Source = "simTwinMuxDigis" # DEFAULT, use re-emulated TPs |
| 85 | + |
| 86 | +simBmtfDigis.DTDigi_Source = "unpackBmtf" # use unpacked TF inputs |
| 87 | +simBmtfDigis.DTDigi_Theta_Source = "unpackBmtf" # use unpacked TF inputs |
| 88 | + |
| 89 | +# KBMTF |
| 90 | +# simKBmtfStubs.srcPhi = "simTwinMuxDigis" # DEFAULT, use re-emulated TPs |
| 91 | +# simKBmtfStubs.srcTheta = "simDtTriggerPrimitiveDigis" # DEFAULT, use re-emulated TPs |
| 92 | + |
| 93 | +simKBmtfStubs.srcPhi = "unpackBmtf" # use unpacked TF inputs |
| 94 | +simKBmtfStubs.srcTheta = "unpackBmtf" # use unpacked TF inputs |
| 95 | + |
| 96 | +simKBmtfDigis.src = "simKBmtfStubs" # DEFAULT, use re-emulated Stubs |
81 | 97 |
|
82 | 98 | # OMTF |
83 | | -simOmtfDigis.srcRPC = 'unpackRPC' |
84 | | -# simOmtfDigis.srcDTPh = "simDtTriggerPrimitiveDigis" # DEFAULT |
85 | | -# simOmtfDigis.srcDTTh = "simDtTriggerPrimitiveDigis" # DEFAULT |
86 | | -simOmtfDigis.srcCSC = "unpackCsctf" |
87 | | -# simOmtfDigis.srcCSC = "simCscTriggerPrimitiveDigis" # DEFAULT |
| 99 | +# simOmtfDigis.srcRPC = 'unpackRPC' # we don't re-emulate RPCs in data |
| 100 | +# simOmtfDigis.srcDTPh = "simDtTriggerPrimitiveDigis" # DEFAULT, use re-emulated TPs |
| 101 | +# simOmtfDigis.srcDTTh = "simDtTriggerPrimitiveDigis" # DEFAULT, use re-emulated TPs |
| 102 | +# simOmtfDigis.srcCSC = "simCscTriggerPrimitiveDigis" # DEFAULT, use re-emulated TPs |
| 103 | + |
| 104 | +simOmtfDigis.srcRPC = 'unpackOmtf' # use unpacked TF inputs |
| 105 | +simOmtfDigis.srcDTPh = "unpackOmtf" # use unpacked TF inputs |
| 106 | +simOmtfDigis.srcDTTh = "unpackOmtf" # use unpacked TF inputs |
| 107 | +simOmtfDigis.srcCSC = "unpackOmtf" # use unpacked TF inputs |
88 | 108 |
|
89 | 109 | # EMTF |
90 | | -simEmtfDigis.CSCInput = "unpackEmtf" |
91 | | -# simEmtfDigis.CSCInput = "simCscTriggerPrimitiveDigis" # DEFAULT |
92 | | -simEmtfDigis.RPCInput = 'unpackRPC' |
| 110 | +# simEmtfDigis.CSCInput = "simCscTriggerPrimitiveDigis" # DEFAULT, use re-emulated TPs |
| 111 | +# simEmtfDigis.GEMInput = "simMuonGEMPadDigiClusters" # DEFAULT, use re-emulated TPs |
| 112 | +# simEmtfDigis.RPCInput = 'unpackRPC' # we don't re-emulate RPCs in data |
93 | 113 |
|
94 | | -# simCaloStage2Layer1Digis.ecalToken = 'simEcalTriggerPrimitiveDigis' # DEFAULT |
95 | | -# simCaloStage2Layer1Digis.hcalToken = 'simHcalTriggerPrimitiveDigis' # DEFAULT |
| 114 | +simEmtfDigis.CSCInput = "unpackEmtf" # use unpacked TF inputs |
| 115 | +simEmtfDigis.RPCInput = 'unpackEmtf' # use unpacked TF inputs |
| 116 | +simEmtfDigis.GEMInput = 'unpackEmtf' # use unpacked TF inputs |
| 117 | +simEmtfDigis.CPPFInput = 'unpackEmtf' # use unpacked TF inputs |
| 118 | +simEmtfDigis.CPPFEnable = True # we use CPPF inputs in data |
| 119 | + |
| 120 | +# Calo Layer-1 |
| 121 | +simCaloStage2Layer1Digis.ecalToken = 'simEcalTriggerPrimitiveDigis' # DEFAULT |
| 122 | +simCaloStage2Layer1Digis.hcalToken = 'simHcalTriggerPrimitiveDigis' # DEFAULT |
96 | 123 |
|
97 | 124 | # Finally, pack the new L1T output back into RAW |
98 | 125 |
|
|
114 | 141 |
|
115 | 142 |
|
116 | 143 | SimL1EmulatorTask = cms.Task() |
117 | | -stage2L1Trigger.toReplaceWith(SimL1EmulatorTask, cms.Task(unpackEcal,unpackHcal,unpackCSC,unpackDT,unpackRPC,unpackEmtf,unpackCsctf,unpackBmtf |
| 144 | +stage2L1Trigger.toReplaceWith(SimL1EmulatorTask, cms.Task(unpackEcal,unpackHcal,unpackCSC,unpackDT,unpackRPC,unpackEmtf,unpackBmtf,unpackOmtf |
118 | 145 | ,simEcalTriggerPrimitiveDigis |
119 | 146 | ,simHcalTriggerPrimitiveDigis |
120 | 147 | ,SimL1EmulatorCoreTask,packCaloStage2 |
121 | 148 | ,packGmtStage2,packGtStage2,rawDataCollector)) |
| 149 | + |
| 150 | +_SimL1EmulatorTaskWithGEM = SimL1EmulatorTask.copy() |
| 151 | +_SimL1EmulatorTaskWithGEM.add(unpackGEM) |
| 152 | +(stage2L1Trigger & run3_GEM).toReplaceWith(SimL1EmulatorTask, _SimL1EmulatorTaskWithGEM) |
| 153 | + |
122 | 154 | SimL1Emulator = cms.Sequence(SimL1EmulatorTask) |
0 commit comments