diff --git a/L1Trigger/L1TCalorimeter/python/L1TCaloStage1_PPFromRaw_cff.py b/L1Trigger/L1TCalorimeter/python/L1TCaloStage1_PPFromRaw_cff.py index 166fb7bc8440e..09fb85dd75d73 100644 --- a/L1Trigger/L1TCalorimeter/python/L1TCaloStage1_PPFromRaw_cff.py +++ b/L1Trigger/L1TCalorimeter/python/L1TCaloStage1_PPFromRaw_cff.py @@ -21,12 +21,6 @@ rctUpgradeFormatDigis.regionTag = cms.InputTag("simRctDigis") rctUpgradeFormatDigis.emTag = cms.InputTag("simRctDigis") -# GT -from L1Trigger.Configuration.SimL1Emulator_cff import simGtDigis -simGtDigis.GmtInputTag = 'gtDigis' -simGtDigis.GctInputTag = 'caloStage1LegacyFormatDigis' -simGtDigis.TechnicalTriggersInputTags = cms.VInputTag( ) - # L1Extra import L1Trigger.Configuration.L1Extra_cff l1ExtraLayer2 = L1Trigger.Configuration.L1Extra_cff.l1extraParticles.clone() @@ -51,5 +45,4 @@ +ecalDigis +simRctDigis +L1TCaloStage1 - +simGtDigis ) diff --git a/L1Trigger/L1TCalorimeter/python/L1TCaloStage1_customForHLT.py b/L1Trigger/L1TCalorimeter/python/L1TCaloStage1_customForHLT.py index d74f0bd7c5679..22198b8ec0258 100644 --- a/L1Trigger/L1TCalorimeter/python/L1TCaloStage1_customForHLT.py +++ b/L1Trigger/L1TCalorimeter/python/L1TCaloStage1_customForHLT.py @@ -2,51 +2,116 @@ # import FWCore.ParameterSet.Config as cms +import os ############################################################################## -def customiseL1CaloAndGtEmulatorsFromRaw(process): - # customization fragment to run calorimeter emulators (TPGs and L1 calorimeter emulators) - # and GT emulator starting from a RAW file assuming that "RawToDigi_cff" and "SimL1Emulator_cff" +def customiseL1EmulatorFromRaw(process): + # customization fragment to run full emulator chain (TPGs and L1 Muon,Calo and GT emulators) + # starting from a RAW file assuming that "RawToDigi_cff" and "SimL1Emulator_cff" # have already been loaded - - ## # run Calo TPGs on unpacked digis - ## process.load('L1Trigger.Configuration.CaloTriggerPrimitives_cff') - ## process.simEcalTriggerPrimitiveDigis.Label = 'ecalDigis' - ## process.simHcalTriggerPrimitiveDigis.inputLabel = cms.VInputTag( - ## cms.InputTag('hcalDigis'), - ## cms.InputTag('hcalDigis') - ## ) - # do not run muon emulators - instead, use unpacked GMT digis for GT input # (GMT digis produced by same module as the GT digis, as GT and GMT have common unpacker) - process.simRpcTechTrigDigis.RPCDigiLabel = 'muonRPCDigis' - process.simGtDigis.GmtInputTag = 'gtDigis' + ## process.simRpcTechTrigDigis.RPCDigiLabel = 'muonRPCDigis' + + ## 2015 L1 Calo Emulator + process.load('L1Trigger.L1TCalorimeter.L1TCaloStage1_PPFromRaw_cff') + + ### 2015 L1 Muon Emulator + from L1Trigger.DTTrackFinder.dttfDigis_cfi import dttfDigis + process.dttfReEmulDigis = dttfDigis.clone() + process.dttfReEmulDigis.DTDigi_Source = cms.InputTag("dttfDigis") + process.dttfReEmulDigis.CSCStub_Source = cms.InputTag("csctfReEmulTrackDigis") + + from L1Trigger.RPCTrigger.rpcTriggerDigis_cfi import rpcTriggerDigis + process.rpcTriggerReEmulDigis = rpcTriggerDigis.clone() + + process.load("L1TriggerConfig.RPCTriggerConfig.RPCConeDefinition_cff") + process.load("L1Trigger.RPCTrigger.RPCConeConfig_cff") + + from SLHCUpgradeSimulations.Configuration.muonCustoms import customise_csc_L1Emulator_sim + from L1Trigger.CSCTrackFinder.csctfDigis_cfi import csctfDigis + customise_csc_L1Emulator_sim(process) + + process.csctfReEmulTrackDigis = process.simCsctfTrackDigis.clone() + process.csctfReEmulDigis = csctfDigis.clone() - # RCT - # HCAL input would be from hcalDigis if hack not needed - from L1Trigger.Configuration.SimL1Emulator_cff import simRctDigis - simRctDigis.ecalDigis = cms.VInputTag( cms.InputTag( 'ecalDigis:EcalTriggerPrimitives' ) ) - simRctDigis.hcalDigis = cms.VInputTag( cms.InputTag( 'simHcalTriggerPrimitiveDigis' ) ) + process.csctfReEmulTrackDigis.DTproducer = cms.untracked.InputTag("dttfDigis") + process.csctfReEmulDigis.CSCTrackProducer = cms.untracked.InputTag("csctfReEmulTrackDigis") - # stage 1 itself - from L1Trigger.L1TCalorimeter.L1TCaloStage1_cff import rctUpgradeFormatDigis - ## process.load('L1Trigger.L1TCalorimeter.L1TCaloStage1_cff') - rctUpgradeFormatDigis.regionTag = cms.InputTag("simRctDigis") - rctUpgradeFormatDigis.emTag = cms.InputTag("simRctDigis") + process.csctfReEmulTrackDigis.SectorProcessor.PTLUT.PtMethod = cms.untracked.uint32(34) # no triple ganging in ME11a + process.csctfReEmulTrackDigis.SectorProcessor.gangedME1a = cms.untracked.bool(False) + process.csctfReEmulTrackDigis.SectorProcessor.firmwareSP = cms.uint32(20140515) #core 20120730 + process.csctfReEmulTrackDigis.SectorProcessor.initializeFromPSet = cms.bool(True) + + process.csctfReEmulSequence = cms.Sequence( + process.simCscTriggerPrimitiveDigis + * process.csctfReEmulTrackDigis + * process.csctfReEmulDigis + ) + + from L1Trigger.GlobalMuonTrigger.gmtDigis_cfi import gmtDigis + process.gmtReEmulDigis = gmtDigis.clone() + + process.gmtReEmulDigis.DTCandidates = cms.InputTag("dttfReEmulDigis","DT") + process.gmtReEmulDigis.CSCCandidates = cms.InputTag("csctfReEmulDigis","CSC") + process.gmtReEmulDigis.RPCbCandidates = cms.InputTag("rpcTriggerReEmulDigis","RPCb") + process.gmtReEmulDigis.RPCfCandidates = cms.InputTag("rpcTriggerReEmulDigis","RPCf") + process.gmtReEmulDigis.MipIsoData = cms.InputTag("none") + + process.load('L1TriggerConfig.GMTConfigProducers.L1MuGMTParameters_cfi') + process.L1MuGMTParameters.MergeMethodPtBrl=cms.string("byMinPt") + process.L1MuGMTParameters.MergeMethodPtFwd=cms.string("byMinPt") + process.L1MuGMTParameters.VersionSortRankEtaQLUT = cms.uint32(275) + process.L1MuGMTParameters.VersionLUTs = cms.uint32(1) + process.es_prefer_gmtConfig = cms.ESPrefer("L1MuGMTParametersProducer","L1MuGMTParameters") + + process.reEmulMuonChain = cms.Sequence( + process.rpcTriggerReEmulDigis + *process.csctfReEmulSequence + *process.dttfReEmulDigis + *process.gmtReEmulDigis + ) + + ## remove for 720pre7 and beyond + ## use new muon LUTs + ## dttfFile='sqlite:dttf_config.db' + ## process.GlobalTag.toGet.extend( + ## cms.VPSet(cms.PSet(record = cms.string("L1MuDTEtaPatternLutRcd"), + ## tag = cms.string("L1MuDTEtaPatternLut_CRAFT09_hlt"), + ## connect = cms.untracked.string(dttfFile) + ## ), + ## cms.PSet(record = cms.string("L1MuDTExtLutRcd"), + ## tag = cms.string("L1MuDTExtLut_CRAFT09_hlt"), + ## connect = cms.untracked.string(dttfFile) + ## ), + ## cms.PSet(record = cms.string("L1MuDTPhiLutRcd"), + ## tag = cms.string("L1MuDTPhiLut_CRAFT09_hlt"), + ## connect = cms.untracked.string(dttfFile) + ## ), + ## cms.PSet(record = cms.string("L1MuDTPtaLutRcd"), + ## tag = cms.string("L1MuDTPtaLut_CRAFT09_hlt"), + ## connect = cms.untracked.string(dttfFile) + ## ), + ## cms.PSet(record = cms.string("L1MuDTQualPatternLutRcd"), + ## tag = cms.string("L1MuDTQualPatternLut_CRAFT09_hlt"), + ## connect = cms.untracked.string(dttfFile) + ## ) + ## ) + ## ) + ## end # GT from L1Trigger.Configuration.SimL1Emulator_cff import simGtDigis - simGtDigis.GmtInputTag = 'gtDigis' + simGtDigis.GmtInputTag = 'gmtReEmulDigis' simGtDigis.GctInputTag = 'caloStage1LegacyFormatDigis' simGtDigis.TechnicalTriggersInputTags = cms.VInputTag( ) # run Calo TPGs, L1 GCT, technical triggers, L1 GT SimL1Emulator = cms.Sequence( - process.L1TRerunHCALTP_FromRAW + - process.ecalDigis + - process.simRctDigis + - process.L1TCaloStage1 + + ## process.reEmulCaloChain + + process.L1TCaloStage1_PPFromRaw + + process.reEmulMuonChain + process.simGtDigis ) # replace the SimL1Emulator in all paths and sequences diff --git a/L1Trigger/L1TCalorimeter/test/SimL1Emulator_Stage1.py b/L1Trigger/L1TCalorimeter/test/SimL1Emulator_Stage1.py index d989d090e3512..2a4ddd9ab2790 100644 --- a/L1Trigger/L1TCalorimeter/test/SimL1Emulator_Stage1.py +++ b/L1Trigger/L1TCalorimeter/test/SimL1Emulator_Stage1.py @@ -46,8 +46,17 @@ process.load('L1Trigger.L1TCalorimeter.L1TCaloStage1_PPFromRaw_cff') +# GT +from L1Trigger.Configuration.SimL1Emulator_cff import simGtDigis +process.simGtDigis = simGtDigis.clone() +process.simGtDigis.GmtInputTag = 'simGmtDigis' +process.simGtDigis.GctInputTag = 'caloStage1LegacyFormatDigis' +process.simGtDigis.TechnicalTriggersInputTags = cms.VInputTag( ) + + process.p1 = cms.Path( process.L1TCaloStage1_PPFromRaw + +process.simGtDigis +process.l1ExtraLayer2 )