Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2022-07-28 22:45:33

0001 import FWCore.ParameterSet.Config as cms
0002 
0003 #-------------------------------------------------
0004 # Stage2 Emulator Modules (TODO: Move to L1Trigger.HardwareValidation.L1Stage2HardwareValidation_cff)
0005 
0006 # Calo configuration
0007 from L1Trigger.L1TCalorimeter.simDigis_cff import *
0008 # CaloLayer1
0009 from L1Trigger.L1TCaloLayer1.simCaloStage2Layer1Digis_cfi import simCaloStage2Layer1Digis
0010 valCaloStage2Layer1Digis = simCaloStage2Layer1Digis.clone(
0011     ecalToken = "caloLayer1Digis",
0012     hcalToken = "caloLayer1Digis",
0013     unpackEcalMask = True,
0014     unpackHcalMask = True
0015 )
0016 
0017 # CaloLayer2
0018 from L1Trigger.L1TCalorimeter.simCaloStage2Digis_cfi import simCaloStage2Digis
0019 valCaloStage2Layer2Digis = simCaloStage2Digis.clone(towerToken = "caloStage2Digis:CaloTower")
0020 
0021 # BMTF-Legacy
0022 from L1Trigger.L1TMuonBarrel.simBmtfDigis_cfi import *
0023 valBmtfDigis = simBmtfDigis.clone(
0024     DTDigi_Source = "bmtfDigis",
0025     DTDigi_Theta_Source = "bmtfDigis"
0026 )
0027 
0028 # BMTF-Kalman
0029 from L1Trigger.L1TMuonBarrel.simKBmtfDigis_cfi import *
0030 from L1Trigger.L1TMuonBarrel.simKBmtfStubs_cfi import *
0031 valKBmtfStubs = simKBmtfStubs.clone(
0032     srcPhi = "bmtfDigis",
0033     srcTheta = "bmtfDigis"
0034 )
0035 valKBmtfDigis = simKBmtfDigis.clone(src = "valKBmtfStubs")
0036 
0037 # BMTF-AlgoTriggerSelector
0038 from DQM.L1TMonitor.L1TBMTFAlgoSelector_cfi import *
0039 valBmtfAlgoSel = l1tBmtfAlgoSelector.clone(
0040     bmtfKalman = "valKBmtfDigis:BMTF",
0041     bmtfLegacy = "valBmtfDigis:BMTF"
0042 )
0043 
0044 # OMTF
0045 from L1Trigger.L1TMuonOverlapPhase1.simOmtfDigis_cfi import *
0046 valOmtfDigis = simOmtfDigis.clone(
0047     srcDTPh = "omtfStage2Digis",
0048     srcDTTh = "omtfStage2Digis",
0049     srcCSC = "omtfStage2Digis",
0050     srcRPC = "omtfStage2Digis",
0051     bxMin = -3,
0052     bxMax = 4
0053 )
0054 
0055 # GEM TPG
0056 from L1Trigger.L1TGEM.simGEMDigis_cff import *
0057 valMuonGEMPadDigis = simMuonGEMPadDigis.clone(InputCollection = "muonGEMDigis")
0058 valMuonGEMPadDigiClusters = simMuonGEMPadDigiClusters.clone(InputCollection = "valMuonGEMPadDigis")
0059 
0060 # Lookup tables for the CSC TP emulator
0061 from CalibMuon.CSCCalibration.CSCL1TPLookupTableEP_cff import *
0062 # CSC TPG
0063 from L1Trigger.CSCTriggerPrimitives.cscTriggerPrimitiveDigis_cfi import *
0064 valCscStage2Digis = cscTriggerPrimitiveDigis.clone(
0065     CSCComparatorDigiProducer = "muonCSCDigis:MuonCSCComparatorDigi",
0066     CSCWireDigiProducer = "muonCSCDigis:MuonCSCWireDigi",
0067     GEMPadDigiClusterProducer = "",
0068     commonParam = dict(runME11ILT = False)
0069 )
0070 
0071 from Configuration.Eras.Modifier_run3_common_cff import run3_common
0072 run3_common.toModify( valCscStage2Digis,
0073                       keepShowers = True,
0074                       commonParam = dict(run3 = True,
0075                                          runCCLUT_OTMB = True,
0076                                          runPhase2 = True,
0077                                          runME11Up = True,
0078                                          runME21Up = True,
0079                                          runME31Up = True,
0080                                          runME41Up = True)
0081 )
0082 
0083 from Configuration.Eras.Modifier_run3_GEM_cff import run3_GEM
0084 run3_GEM.toModify( valCscStage2Digis, GEMPadDigiClusterProducer = "valMuonGEMPadDigiClusters" , commonParam = dict(runME11ILT = True) )
0085 
0086 # CPPF
0087 from RecoLocalMuon.RPCRecHit.rpcRecHits_cfi import *
0088 valRpcRecHits = rpcRecHits.clone(
0089     rpcDigiLabel = 'rpcunpacker'
0090 )
0091 from L1Trigger.L1TMuonCPPF.emulatorCppfDigis_cfi import *
0092 valCppfStage2Digis = emulatorCppfDigis.clone(
0093     recHitLabel = 'valRpcRecHits'
0094 )
0095 
0096 # EMTF
0097 from L1Trigger.L1TMuonEndCap.simEmtfDigis_cfi import *
0098 valEmtfStage2Digis = simEmtfDigis.clone(
0099     CSCInput = "emtfStage2Digis",
0100     RPCInput = "muonRPCDigis",
0101     GEMInput = 'valMuonGEMPadDigiClusters'
0102 )
0103 run3_GEM.toModify( valEmtfStage2Digis, UseRun3CCLUT_OTMB = cms.bool(True), Era = cms.string('Run3_2021'))
0104 
0105 # EMTF shower
0106 from L1Trigger.L1TMuonEndCap.simEmtfShowers_cfi import *
0107 valEmtfStage2Showers = simEmtfShowers.clone(
0108     CSCShowerInput = cms.InputTag('valCscStage2Digis')
0109 )
0110 
0111 # uGMT
0112 from L1Trigger.L1TMuon.simGmtStage2Digis_cfi import *
0113 valGmtCaloSumDigis = simGmtCaloSumDigis.clone(caloStage2Layer2Label = "valCaloStage2Layer1Digis")
0114 valGmtStage2Digis = simGmtStage2Digis.clone(
0115     barrelTFInput = "gmtStage2Digis:BMTF",
0116     overlapTFInput = "gmtStage2Digis:OMTF",
0117     forwardTFInput = "gmtStage2Digis:EMTF",
0118     triggerTowerInput = "valGmtCaloSumDigis:TriggerTowerSums"
0119 )
0120 
0121 # uGMT shower
0122 valGmtShowerDigis = simGmtShowerDigis.clone(
0123     showerInput = "gmtStage2Digis:EMTF"
0124 )
0125 
0126 # uGT
0127 from L1Trigger.L1TGlobal.simGtStage2Digis_cfi import simGtStage2Digis
0128 from L1Trigger.L1TGlobal.simGtExtFakeProd_cfi import simGtExtFakeProd
0129 
0130 valGtStage2Digis = simGtStage2Digis.clone(
0131     ExtInputTag = "gtStage2Digis",
0132     MuonInputTag = "gtStage2Digis:Muon",
0133     EGammaInputTag = "gtStage2Digis:EGamma",
0134     TauInputTag = "gtStage2Digis:Tau",
0135     JetInputTag = "gtStage2Digis:Jet",
0136     EtSumInputTag = "gtStage2Digis:EtSum",
0137     AlgorithmTriggersUnmasked = False,
0138     AlgorithmTriggersUnprescaled = False,
0139     EmulateBxInEvent = cms.int32(5),
0140     PrescaleSet = cms.uint32(7),
0141     GetPrescaleColumnFromData = True,
0142     AlgoBlkInputTag = "gtStage2Digis"
0143 )
0144 Stage2L1HardwareValidation = cms.Sequence(
0145     valCaloStage2Layer1Digis +
0146     valCscStage2Digis +
0147     valBmtfDigis +
0148     valKBmtfStubs +
0149     valKBmtfDigis +
0150     valBmtfAlgoSel +
0151     valOmtfDigis +
0152     valRpcRecHits +
0153     valCppfStage2Digis +
0154     valEmtfStage2Digis +
0155     valGmtCaloSumDigis +
0156     valGmtStage2Digis +
0157     valGtStage2Digis
0158 )
0159 
0160 from Configuration.Eras.Modifier_run3_GEM_cff import run3_GEM
0161 _run3_Stage2L1HardwareValidation = Stage2L1HardwareValidation.copy()
0162 run3_GEM.toReplaceWith( Stage2L1HardwareValidation, cms.Sequence( valMuonGEMPadDigis + valMuonGEMPadDigiClusters + _run3_Stage2L1HardwareValidation) )
0163 
0164 _run3Shower_Stage2L1HardwareValidation = Stage2L1HardwareValidation.copy()
0165 run3_GEM.toReplaceWith( Stage2L1HardwareValidation, cms.Sequence(_run3Shower_Stage2L1HardwareValidation + valEmtfStage2Showers + valGmtShowerDigis) )
0166 
0167 Stage2L1HardwareValidationForValidationEvents = cms.Sequence(
0168     valCaloStage2Layer2Digis
0169 )
0170 
0171 #-------------------------------------------------
0172 # Emulator DQM Modules
0173 
0174 # CaloLayer1
0175 from DQM.L1TMonitor.L1TdeStage2CaloLayer1_cfi import *
0176 
0177 # CaloLayer2
0178 from DQM.L1TMonitor.L1TdeStage2CaloLayer2_cfi import *
0179 from DQM.L1TMonitor.L1TStage2CaloLayer2Emul_cfi import *
0180 
0181 # GEM TPG
0182 from DQM.L1TMonitor.L1TdeGEMTPG_cfi import *
0183 
0184 # CSC TPG
0185 from DQM.L1TMonitor.L1TdeCSCTPG_cfi import *
0186 from DQM.L1TMonitor.L1TdeCSCTPGShower_cfi import *
0187 
0188 # BMTF
0189 from DQM.L1TMonitor.L1TdeStage2BMTF_cfi import *
0190 from DQM.L1TMonitor.L1TdeStage2BMTFSecond_cff import *
0191 
0192 # OMTF
0193 from DQM.L1TMonitor.L1TdeStage2OMTF_cfi import *
0194 
0195 # CPPF
0196 from DQM.L1TMonitor.L1TdeStage2CPPF_cff import *
0197 
0198 # EMTF
0199 from DQM.L1TMonitor.L1TdeStage2EMTF_cff import *
0200 
0201 # uGMT
0202 from DQM.L1TMonitor.L1TdeStage2uGMT_cff import *
0203 
0204 # uGT
0205 from DQM.L1TMonitor.L1TStage2uGTEmul_cfi import *
0206 from DQM.L1TMonitor.L1TdeStage2uGT_cfi import *
0207 
0208 #-------------------------------------------------
0209 # Stage2 Emulator and Emulator DQM Sequences
0210 
0211 # sequence to run for every event
0212 l1tStage2EmulatorOnlineDQM = cms.Sequence(
0213     l1tdeStage2Bmtf +
0214     l1tdeStage2BmtfSecond +
0215     l1tdeStage2Omtf +
0216     l1tdeCSCTPG +
0217     l1tdeStage2CppfOnlineDQMSeq +
0218     l1tdeStage2EmtfOnlineDQMSeq +
0219     l1tStage2uGMTEmulatorOnlineDQMSeq +
0220     l1tdeStage2uGT +
0221     l1tStage2uGtEmul
0222 )
0223 
0224 _run3_l1tStage2EmulatorOnlineDQM = l1tStage2EmulatorOnlineDQM.copy()
0225 _run3_l1tStage2EmulatorOnlineDQM += l1tdeGEMTPG
0226 
0227 from Configuration.Eras.Modifier_run3_GEM_cff import run3_GEM
0228 run3_GEM.toReplaceWith( l1tStage2EmulatorOnlineDQM, _run3_l1tStage2EmulatorOnlineDQM )
0229 
0230 _run3shower_l1tStage2EmulatorOnlineDQM = l1tStage2EmulatorOnlineDQM.copy()
0231 run3_GEM.toReplaceWith( l1tStage2EmulatorOnlineDQM, cms.Sequence(_run3shower_l1tStage2EmulatorOnlineDQM + l1tdeCSCTPGShower) )
0232 
0233 # sequence to run only for validation events
0234 l1tStage2EmulatorOnlineDQMValidationEvents = cms.Sequence(
0235     l1tdeStage2CaloLayer1 +
0236     l1tdeStage2CaloLayer2 +
0237     l1tStage2CaloLayer2Emul
0238 )