Skip to content

Commit 4639c10

Browse files
authored
Merge pull request #45132 from eyigitba/L1T_repackFullSimTPFix_Jun24
Modifications to L1REPACK:FullSimTP to prevent crashes and make it more compatible with other REPACK options
2 parents 6753b0e + adb1c01 commit 4639c10

File tree

1 file changed

+55
-23
lines changed

1 file changed

+55
-23
lines changed

Configuration/StandardSequences/python/SimL1EmulatorRepack_FullSimTP_cff.py

Lines changed: 55 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
## L1REPACK FullSimTP : Re-Emulate all of L1 and repack into RAW
55

66
from Configuration.Eras.Modifier_stage2L1Trigger_cff import stage2L1Trigger
7+
from Configuration.Eras.Modifier_run3_GEM_cff import run3_GEM
78

89
(~stage2L1Trigger).toModify(None, lambda x:
910
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,18 +16,13 @@
1516
unpackBmtf = EventFilter.L1TRawToDigi.bmtfDigis_cfi.bmtfDigis.clone(
1617
InputLabel = cms.InputTag( 'rawDataCollector', processName=cms.InputTag.skipCurrentProcess()))
1718

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()))
2122

2223
import EventFilter.L1TRawToDigi.emtfStage2Digis_cfi
2324
unpackEmtf = EventFilter.L1TRawToDigi.emtfStage2Digis_cfi.emtfStage2Digis.clone(
2425
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()))
3026

3127
import EventFilter.CSCRawToDigi.cscUnpacker_cfi
3228
unpackCSC = EventFilter.CSCRawToDigi.cscUnpacker_cfi.muonCSCDigis.clone(
@@ -40,6 +36,10 @@
4036
unpackRPC = EventFilter.RPCRawToDigi.rpcUnpacker_cfi.rpcunpacker.clone(
4137
InputLabel = cms.InputTag( 'rawDataCollector', processName=cms.InputTag.skipCurrentProcess()))
4238

39+
import EventFilter.GEMRawToDigi.muonGEMDigis_cfi
40+
unpackGEM = EventFilter.GEMRawToDigi.muonGEMDigis_cfi.muonGEMDigis.clone(
41+
InputLabel = cms.InputTag( 'rawDataCollector', processName=cms.InputTag.skipCurrentProcess()))
42+
4343
import EventFilter.EcalRawToDigi.EcalUnpackerData_cfi
4444
unpackEcal = EventFilter.EcalRawToDigi.EcalUnpackerData_cfi.ecalEBunpacker.clone(
4545
InputLabel = cms.InputTag( 'rawDataCollector', processName=cms.InputTag.skipCurrentProcess()))
@@ -71,28 +71,55 @@
7171
simCscTriggerPrimitiveDigis.CSCComparatorDigiProducer = 'unpackCSC:MuonCSCComparatorDigi'
7272
simCscTriggerPrimitiveDigis.CSCWireDigiProducer = 'unpackCSC:MuonCSCWireDigi'
7373

74+
# GEM-CSC
75+
simMuonGEMPadDigis.InputCollection = "unpackGEM"
76+
77+
# TwinMux
7478
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
7781

7882
# 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
8197

8298
# 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
88108

89109
# 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
93113

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
96123

97124
# Finally, pack the new L1T output back into RAW
98125

@@ -114,9 +141,14 @@
114141

115142

116143
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
118145
,simEcalTriggerPrimitiveDigis
119146
,simHcalTriggerPrimitiveDigis
120147
,SimL1EmulatorCoreTask,packCaloStage2
121148
,packGmtStage2,packGtStage2,rawDataCollector))
149+
150+
_SimL1EmulatorTaskWithGEM = SimL1EmulatorTask.copy()
151+
_SimL1EmulatorTaskWithGEM.add(unpackGEM)
152+
(stage2L1Trigger & run3_GEM).toReplaceWith(SimL1EmulatorTask, _SimL1EmulatorTaskWithGEM)
153+
122154
SimL1Emulator = cms.Sequence(SimL1EmulatorTask)

0 commit comments

Comments
 (0)