jetEfficiencyBins_HI.extend(list(range(60, 90, 5))) jetEfficiencyBins_HI.extend(list(range(90, 120, 10))) jetEfficiencyBins_HI.extend(list(range(120, 180, 20))) jetEfficiencyBins_HI.extend(list(range(180, 300, 40))) jetEfficiencyBins_HI.extend(list(range(300, 401, 100))) from Configuration.Eras.Modifier_ppRef_2017_cff import ppRef_2017 ppRef_2017.toModify( l1tEtSumJetOfflineDQM, TriggerFilter=cms.InputTag('hltEle20WPLoose1GsfTrackIsoFilter', '', 'HLT'), TriggerPath=cms.string('HLT_Ele20_WPLoose_Gsf_v4'), jetEfficiencyThresholds=cms.vdouble(jetEfficiencyThresholds_HI), jetEfficiencyBins=cms.vdouble(jetEfficiencyBins_HI), ) # emulator module l1tEtSumJetOfflineDQMEmu = l1tEtSumJetOfflineDQM.clone( stage2CaloLayer2JetSource=cms.InputTag("simCaloStage2Digis"), stage2CaloLayer2EtSumSource=cms.InputTag("simCaloStage2Digis"), histFolderEtSum=cms.string('L1TEMU/L1TObjects/L1TEtSum/L1TriggerVsReco'), histFolderJet=cms.string('L1TEMU/L1TObjects/L1TJet/L1TriggerVsReco'), ) # sequences l1tEtSumJetOfflineDQMSeq = cms.Sequence(goodPFJetsForL1T + l1tPFMetNoMuForDQM + l1tEtSumJetOfflineDQM) l1tEtSumJetOfflineDQMEmuSeq = cms.Sequence(goodPFJetsForL1T + l1tPFMetNoMuForDQM + l1tEtSumJetOfflineDQMEmu)
"L1T/L1TStage2uGMT/zeroSuppression/AllEvts"), verbose=cms.untracked.bool(False), ) ## Era: Run3_2021; Changed data format for Run-3 from Configuration.Eras.Modifier_stage2L1Trigger_2021_cff import stage2L1Trigger_2021 stage2L1Trigger_2021.toModify( l1tStage2uGMTZeroSupp, maskCapId2=cms.untracked.vint32(0x00000000, 0x00000000, 0x0007FC00, 0x00000000, 0x0007FC00, 0x00000000), # mask for validation event outputs (pt==0 defines empty muon) maskCapId3=cms.untracked.vint32(0x00000000, 0x00000000, 0x0007FC00, 0x00000000, 0x0007FC00, 0x00000000)) # ZS of validation events (to be used after fat event filter) l1tStage2uGMTZeroSuppFatEvts = l1tStage2uGMTZeroSupp.clone() l1tStage2uGMTZeroSuppFatEvts.monitorDir = cms.untracked.string( "L1T/L1TStage2uGMT/zeroSuppression/FatEvts") # List of bins to ignore ignoreBins = {'Bmtf': [1], 'Omtf': [1], 'Emtf': [1]} # compares the unpacked BMTF output regional muon collection with the unpacked uGMT input regional muon collection from BMTF # only muons that do not match are filled in the histograms l1tStage2BmtfOutVsuGMTIn = DQMEDAnalyzer( "L1TStage2RegionalMuonCandComp", regionalMuonCollection1=cms.InputTag("bmtfDigis", "BMTF"), regionalMuonCollection2=cms.InputTag("gmtStage2Digis", "BMTF"), monitorDir=cms.untracked.string( "L1T/L1TStage2uGMT/BMTFoutput_vs_uGMTinput"), regionalMuonCollection1Title=cms.untracked.string("BMTF output data"),
ugmtEmuDqmDir + "/data_vs_emulator_comparison/Muon showers"), muonShowerCollection1Title=cms.untracked.string("uGMT data"), muonShowerCollection2Title=cms.untracked.string("uGMT emulator"), summaryTitle=cms.untracked.string( "Summary of comparison between uGMT showers and uGMT emulator showers" ), verbose=cms.untracked.bool(False), ignoreBin=cms.untracked.vint32(), ) # compares the unpacked uGMT intermediate muon collection to the emulated uGMT intermediate muon collection # only muons that do not match are filled in the histograms l1tdeStage2uGMTIntermediateBMTF = l1tdeStage2uGMT.clone( muonCollection1=(unpackerModule, "imdMuonsBMTF"), muonCollection2=(emulatorModule, "imdMuonsBMTF"), monitorDir=ugmtEmuImdMuDqmDir + "/BMTF/data_vs_emulator_comparison", summaryTitle= "Summary of uGMT intermediate muon from BMTF comparison between unpacked and emulated", ignoreBin=ignoreBins) l1tdeStage2uGMTIntermediateOMTFNeg = l1tdeStage2uGMTIntermediateBMTF.clone( displacedQuantities=False, muonCollection1=(unpackerModule, "imdMuonsOMTFNeg"), muonCollection2=(emulatorModule, "imdMuonsOMTFNeg"), monitorDir=(ugmtEmuImdMuDqmDir + "/OMTF_neg/data_vs_emulator_comparison"), summaryTitle= ("Summary of uGMT intermediate muon from OMTF- comparison between unpacked and emulated" ), ignoreBin=ignoreBins) l1tdeStage2uGMTIntermediateOMTFPos = l1tdeStage2uGMTIntermediateBMTF.clone( displacedQuantities=False, muonCollection1=(unpackerModule, "imdMuonsOMTFPos"),
), ), ) hltTauValIdealMonitorPF = hltTauValIdealMonitorMC.clone( DQMBaseFolder = cms.untracked.string("HLT/TAU/RelVal/PF"), Matching = cms.PSet( doMatching = cms.untracked.bool(True), matchFilters = cms.untracked.VPSet( cms.untracked.PSet( FilterName = cms.untracked.InputTag("TauRefCombiner",""), matchObjectID = cms.untracked.int32(15), ), cms.untracked.PSet( FilterName = cms.untracked.InputTag("TauMCProducer","LeptonicTauElectrons"), matchObjectID = cms.untracked.int32(11), ), cms.untracked.PSet( FilterName = cms.untracked.InputTag("TauMCProducer","LeptonicTauMuons"), matchObjectID = cms.untracked.int32(13), ), cms.untracked.PSet( FilterName = cms.untracked.InputTag("TauMCProducer","MET"), matchObjectID = cms.untracked.int32(0), ), ), ), ) from DQMOffline.Trigger.HLTTauDQMOffline_cfi import hltTauOfflineMonitor_TagAndProbe hltTauValTagAndProbe = hltTauValIdealMonitorMC.clone( DQMBaseFolder = cms.untracked.string("HLT/TAU/RelVal/TagAndProbe"),
# compares the unpacked uGMT muon collection to the emulated uGMT muon collection # only muons that do not match are filled in the histograms l1tdeStage2uGMT = DQMEDAnalyzer( "L1TStage2MuonComp", muonCollection1 = cms.InputTag(unpackerModule, "Muon"), muonCollection2 = cms.InputTag(emulatorModule), monitorDir = cms.untracked.string(ugmtEmuDqmDir+"/data_vs_emulator_comparison"), muonCollection1Title = cms.untracked.string("uGMT data"), muonCollection2Title = cms.untracked.string("uGMT emulator"), summaryTitle = cms.untracked.string("Summary of comparison between uGMT muons and uGMT emulator muons"), verbose = cms.untracked.bool(False), ) # compares the unpacked uGMT intermediate muon collection to the emulated uGMT intermediate muon collection # only muons that do not match are filled in the histograms l1tdeStage2uGMTIntermediateBMTF = l1tdeStage2uGMT.clone() l1tdeStage2uGMTIntermediateBMTF.muonCollection1 = cms.InputTag(unpackerModule, "imdMuonsBMTF") l1tdeStage2uGMTIntermediateBMTF.muonCollection2 = cms.InputTag(emulatorModule, "imdMuonsBMTF") l1tdeStage2uGMTIntermediateBMTF.monitorDir = cms.untracked.string(ugmtEmuImdMuDqmDir+"/BMTF/data_vs_emulator_comparison") l1tdeStage2uGMTIntermediateBMTF.summaryTitle = cms.untracked.string("Summary of uGMT intermediate muon from BMTF comparison between unpacked and emulated") l1tdeStage2uGMTIntermediateBMTF.ignoreBin = cms.untracked.vint32(ignoreBins) l1tdeStage2uGMTIntermediateOMTFNeg = l1tdeStage2uGMTIntermediateBMTF.clone() l1tdeStage2uGMTIntermediateOMTFNeg.muonCollection1 = cms.InputTag(unpackerModule, "imdMuonsOMTFNeg") l1tdeStage2uGMTIntermediateOMTFNeg.muonCollection2 = cms.InputTag(emulatorModule, "imdMuonsOMTFNeg") l1tdeStage2uGMTIntermediateOMTFNeg.monitorDir = cms.untracked.string(ugmtEmuImdMuDqmDir+"/OMTF_neg/data_vs_emulator_comparison") l1tdeStage2uGMTIntermediateOMTFNeg.summaryTitle = cms.untracked.string("Summary of uGMT intermediate muon from OMTF- comparison between unpacked and emulated") l1tdeStage2uGMTIntermediateOMTFNeg.ignoreBin = cms.untracked.vint32(ignoreBins) l1tdeStage2uGMTIntermediateOMTFPos = l1tdeStage2uGMTIntermediateBMTF.clone() l1tdeStage2uGMTIntermediateOMTFPos.muonCollection1 = cms.InputTag(unpackerModule, "imdMuonsOMTFPos")
deepInspectionElectronThresholds_HI = [15] electronEfficiencyBins_HI = [] electronEfficiencyBins_HI.extend(list(xrange(1, 26, 1))) electronEfficiencyBins_HI.extend(list(xrange(26, 42, 2))) electronEfficiencyBins_HI.extend(list(xrange(42, 45, 3))) electronEfficiencyBins_HI.extend(list(xrange(45, 50, 5))) electronEfficiencyBins_HI.extend(list(xrange(50, 70, 10))) electronEfficiencyBins_HI.extend(list(xrange(70, 101, 30))) photonEfficiencyThresholds_HI = electronEfficiencyThresholds_HI photonEfficiencyBins_HI = electronEfficiencyBins_HI from Configuration.Eras.Modifier_ppRef_2017_cff import ppRef_2017 ppRef_2017.toModify( l1tEGammaOfflineDQM, TriggerFilter=cms.InputTag('hltEle20WPLoose1GsfTrackIsoFilter', '', 'HLT'), TriggerPath=cms.string('HLT_Ele20_WPLoose_Gsf_v4'), electronEfficiencyThresholds=cms.vdouble(electronEfficiencyThresholds_HI), electronEfficiencyBins=cms.vdouble(electronEfficiencyBins_HI), deepInspectionElectronThresholds=cms.vdouble( deepInspectionElectronThresholds_HI), photonEfficiencyThresholds=cms.vdouble(photonEfficiencyThresholds_HI), photonEfficiencyBins=cms.vdouble(photonEfficiencyBins_HI)) # emulator module l1tEGammaOfflineDQMEmu = l1tEGammaOfflineDQM.clone( stage2CaloLayer2EGammaSource=cms.InputTag("simCaloStage2Digis"), histFolder=cms.string('L1TEMU/L1TObjects/L1TEGamma/L1TriggerVsReco'), )
rawData=cms.InputTag("rawDataCollector"), # mask for inputs (pt==0 defines empty muon) maskCapId1=cms.untracked.vint32(0x01c00000, 0x01c00000, 0x01c00000, 0x01c00000, 0x00200000, 0x00000000), # mask for outputs (pt==0 defines empty muon) maskCapId2=cms.untracked.vint32(0x000001FF, 0x00000000, 0x000001FF, 0x00000000, 0x000001FF, 0x00000000), # no masks defined for caption IDs 0 and 3-11 maxFEDReadoutSize=cms.untracked.int32(7000), monitorDir=cms.untracked.string( "L1T/L1TStage2BMTF/zeroSuppression/AllEvts"), verbose=cms.untracked.bool(False), ) # ZS of validation events (to be used after fat event filter) l1tStage2BmtfZeroSuppFatEvts = l1tStage2BmtfZeroSupp.clone( monitorDir="L1T/L1TStage2BMTF/zeroSuppression/FatEvts", maxFEDReadoutSize=25000) # Plots for BMTF's Secondary Algo l1tStage2BmtfSecond = l1tStage2Bmtf.clone( bmtfSource="bmtfDigis:BMTF2", monitorDir="L1T/L1TStage2BMTF/L1TStage2BMTF-Secondary", verbose=False, hasDisplacementInfo=cms.untracked.bool(True)) # sequences l1tStage2BmtfOnlineDQMSeq = cms.Sequence(l1tStage2Bmtf + l1tStage2BmtfSecond + l1tStage2BmtfZeroSupp) l1tStage2BmtfValidationEventOnlineDQMSeq = cms.Sequence( l1tStage2BmtfZeroSuppFatEvts)
deepInspectionElectronThresholds_HI = [15] electronEfficiencyBins_HI = [] electronEfficiencyBins_HI.extend(list(range(1, 26, 1))) electronEfficiencyBins_HI.extend(list(range(26, 42, 2))) electronEfficiencyBins_HI.extend(list(range(42, 45, 3))) electronEfficiencyBins_HI.extend(list(range(45, 50, 5))) electronEfficiencyBins_HI.extend(list(range(50, 70, 10))) electronEfficiencyBins_HI.extend(list(range(70, 101, 30))) photonEfficiencyThresholds_HI = electronEfficiencyThresholds_HI photonEfficiencyBins_HI = electronEfficiencyBins_HI from Configuration.Eras.Modifier_ppRef_2017_cff import ppRef_2017 ppRef_2017.toModify( l1tEGammaOfflineDQM, TriggerFilter=cms.InputTag('hltEle20WPLoose1GsfTrackIsoFilter', '', 'HLT'), TriggerPath=cms.string('HLT_Ele20_WPLoose_Gsf_v4'), electronEfficiencyThresholds=cms.vdouble(electronEfficiencyThresholds_HI), electronEfficiencyBins=cms.vdouble(electronEfficiencyBins_HI), deepInspectionElectronThresholds=cms.vdouble( deepInspectionElectronThresholds_HI), photonEfficiencyThresholds=cms.vdouble(photonEfficiencyThresholds_HI), photonEfficiencyBins=cms.vdouble(photonEfficiencyBins_HI)) # emulator module l1tEGammaOfflineDQMEmu = l1tEGammaOfflineDQM.clone( stage2CaloLayer2EGammaSource="simCaloStage2Digis", histFolder='L1TEMU/L1TObjects/L1TEGamma/L1TriggerVsReco')
ecalIsoDeposit_Label=cms.untracked.InputTag( "muIsoDepositCalByAssociatorTowers", "ecal"), # rootfilename = cms.untracked.string('ttbar-DQMidation.root'), hcalIsoDeposit_Label=cms.untracked.InputTag( "muIsoDepositCalByAssociatorTowers", "hcal"), tkIsoDeposit_Label=cms.untracked.InputTag("muIsoDepositTk"), hoIsoDeposit_Label=cms.untracked.InputTag( "muIsoDepositCalByAssociatorTowers", "ho"), vertexLabel=cms.untracked.InputTag("offlinePrimaryVertices"), directory=cms.string("Muons/Isolation/global"), vtxBin=cms.int32(30), vtxMax=cms.double(149.5), vtxMin=cms.double(0.5)) muIsoDQM_seq = cms.Sequence(MuIsoDQM_trk + MuIsoDQM_sta + MuIsoDQM_glb) MuIsoDQM_glb_Phase2 = MuIsoDQM_glb.clone(vtxBin=20, vtxMin=149.5, vtxMax=249.5) MuIsoDQM_trk_Phase2 = MuIsoDQM_trk.clone(vtxBin=20, vtxMin=149.5, vtxMax=249.5) MuIsoDQM_sta_Phase2 = MuIsoDQM_sta.clone(vtxBin=20, vtxMin=149.5, vtxMax=249.5) muIsoDQM_seq_Phase2 = cms.Sequence(MuIsoDQM_trk_Phase2 + MuIsoDQM_sta_Phase2 + MuIsoDQM_glb_Phase2) MuIsoDQM_trk_miniAOD = DQMEDAnalyzer( 'MuonIsolationDQM', Global_Muon_Label=cms.untracked.InputTag("slimmedMuons"), requireTRKMuon=cms.untracked.bool(True), requireSTAMuon=cms.untracked.bool(False), requireGLBMuon=cms.untracked.bool(False), ecalIsoDeposit_Label=cms.untracked.InputTag(
jetMETHLTOfflineSourceAK8 = jetMETHLTOfflineSourceAK4.clone( dirname = cms.untracked.string('HLT/JME/Jets/AK8'), # CaloJetCollectionLabel = cms.InputTag("ak4CaloJets"), #ak8 not available in RECO anymore, so keep ak4... # PFJetCollectionLabel = cms.InputTag("ak8PFJetsCHS"), # does not work in all matrix tests, yet # PFJetCorLabel = cms.InputTag("ak8PFCHSL1FastjetL2L3ResidualCorrector"), # does not work in all matrix tests, yet PFJetCollectionLabel = cms.InputTag("ak4PFJets"), PFJetCorLabel = cms.InputTag("ak4PFL1FastL2L3ResidualCorrector"), #dummy residual corrections now also provided for MC GTs pathFilter = cms.untracked.vstring('HLT_AK8PFJet', ), pathPairs = cms.VPSet(cms.PSet( denompathname = cms.string('HLT_AK8PFJet40_v'), pathname = cms.string('HLT_AK8PFJet60_v') ), cms.PSet( denompathname = cms.string('HLT_AK8PFJet60_v'), pathname = cms.string('HLT_AK8PFJet80_v') ), cms.PSet( denompathname = cms.string('HLT_AK8PFJet80_v'), pathname = cms.string('HLT_AK8PFJet140_v') ), cms.PSet( denompathname = cms.string('HLT_AK8PFJet140_v'), pathname = cms.string('HLT_AK8PFJet200_v') ), cms.PSet( denompathname = cms.string('HLT_AK8PFJet200_v'), pathname = cms.string('HLT_AK8PFJet260_v') ), cms.PSet( denompathname = cms.string('HLT_AK8PFJet260_v'), pathname = cms.string('HLT_AK8PFJet320_v') ), cms.PSet( denompathname = cms.string('HLT_AK8PFJet320_v'), pathname = cms.string('HLT_AK8PFJet400_v') ), cms.PSet( denompathname = cms.string('HLT_AK8PFJet400_v'), pathname = cms.string('HLT_AK8PFJet450_v') ), cms.PSet( denompathname = cms.string('HLT_AK8PFJet450_v'), pathname = cms.string('HLT_AK8PFJet500_v') )), )
jetEfficiencyBins_HI.extend(list(range(300, 401, 100))) from Configuration.Eras.Modifier_ppRef_2017_cff import ppRef_2017 ppRef_2017.toModify( l1tEtSumJetOfflineDQM, TriggerFilter=cms.InputTag('hltEle20WPLoose1GsfTrackIsoFilter', '', 'HLT'), TriggerPath=cms.string('HLT_Ele20_WPLoose_Gsf_v4'), jetEfficiencyThresholds=cms.vdouble(jetEfficiencyThresholds_HI), jetEfficiencyBins=cms.vdouble(jetEfficiencyBins_HI), ) # emulator module l1tEtSumJetOfflineDQMEmu = l1tEtSumJetOfflineDQM.clone( stage2CaloLayer2JetSource=cms.InputTag("simCaloStage2Digis"), stage2CaloLayer2EtSumSource=cms.InputTag("simCaloStage2Digis"), histFolderEtSum=cms.string('L1TEMU/L1TObjects/L1TEtSum/L1TriggerVsReco'), histFolderJet=cms.string('L1TEMU/L1TObjects/L1TJet/L1TriggerVsReco'), ) # sequences l1tEtSumJetOfflineDQMSeq = cms.Sequence( goodPFJetsForL1T + l1tPFMetNoMuForDQM + l1tEtSumJetOfflineDQM ) l1tEtSumJetOfflineDQMEmuSeq = cms.Sequence( goodPFJetsForL1T + l1tPFMetNoMuForDQM + l1tEtSumJetOfflineDQMEmu
cms.untracked.PSet( FilterName = cms.untracked.InputTag("TauRefProducer","Muons"), matchObjectID = cms.untracked.int32(13), ), cms.untracked.PSet( FilterName = cms.untracked.InputTag("TauRefProducer","MET"), matchObjectID = cms.untracked.int32(0), ), ), ), ) hltTauOfflineMonitor_Inclusive = hltTauOfflineMonitor_PFTaus.clone( DQMBaseFolder = "HLT/TAU/Inclusive", Matching = cms.PSet( doMatching = cms.untracked.bool(False), matchFilters = cms.untracked.VPSet(), ) ) def TriggerSelectionParameters(hltpaths): genericTriggerSelectionParameters = cms.PSet( andOr = cms.bool( False ),#specifies the logical combination of the single filters' (L1, HLT and DCS) decisions at top level (True=OR) dbLabel = cms.string("PFTauDQMTrigger"),#specifies the label under which the DB payload is available from the ESSource or Global Tag andOrHlt = cms.bool(True),#specifies the logical combination of the single HLT paths' decisions (True=OR) hltInputTag = cms.InputTag("TriggerResults", "", hltTauDQMofflineProcess), hltPaths = hltpaths,#Lists logical expressions of HLT paths, which should have accepted the event (fallback in case DB unaccessible) errorReplyHlt = cms.bool(False),#specifies the desired return value of the HLT filter and the single HLT path filter in case of certain errors verbosityLevel = cms.uint32(0) #0: complete silence (default), needed for T0 processing; ) return genericTriggerSelectionParameters
2.0, 2.5), jetPhi=cms.vdouble(-3.5, -3.0, -2.5, -2.0, -1.5, -1.0, -0.5, 0.0, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5), jetBtag=cms.vdouble(0.80, 0.81, 0.82, 0.83, 0.84, 0.85, 0.86, 0.87, 0.88, 0.89, 0.90, 0.91, 0.92, 0.93, 0.94, 0.95, 0.96, 0.97, 0.98, 0.99, 1.00), ), genericTriggerEventPSet=triggerFlagPSet.clone(), ) # online btagging monitor mssmHbbBtagTriggerMonitorSL40noMu = mssmHbbBtagTriggerMonitor.clone( dirname="HLT/HIG/MssmHbb/semileptonic/BtagTrigger/pt40_noMuon", jetPtMin=40, triggerobjbtag="hltBTagCaloDeepCSV0p71Single8Jets30", histoPSet=dict( jetPt=[40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100]), genericTriggerEventPSet=dict( hltPaths=['HLT_DoublePFJets40_CaloBTagDeepCSV_p71_v*'])) mssmHbbBtagTriggerMonitorSL40 = mssmHbbBtagTriggerMonitor.clone( dirname="HLT/HIG/MssmHbb/semileptonic/BtagTrigger/pt40", jetPtMin=40, triggerobjbtag="hltBTagCaloDeepCSV0p71Single8Jets30", histoPSet=dict( jetPt=[40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100]), genericTriggerEventPSet=dict( hltPaths=['HLT_Mu12_DoublePFJets40_CaloBTagDeepCSV_p71_v*'])) mssmHbbBtagTriggerMonitorSL100 = mssmHbbBtagTriggerMonitor.clone( dirname="HLT/HIG/MssmHbb/semileptonic/BtagTrigger/pt100",
), ) hltTauValIdealMonitorPF = hltTauValIdealMonitorMC.clone( DQMBaseFolder=cms.untracked.string("HLT/TAU/RelVal/PF"), Matching=cms.PSet( doMatching=cms.untracked.bool(True), matchFilters=cms.untracked.VPSet( cms.untracked.PSet( FilterName=cms.untracked.InputTag("TauRefCombiner", ""), matchObjectID=cms.untracked.int32(15), ), cms.untracked.PSet( FilterName=cms.untracked.InputTag("TauMCProducer", "LeptonicTauElectrons"), matchObjectID=cms.untracked.int32(11), ), cms.untracked.PSet( FilterName=cms.untracked.InputTag("TauMCProducer", "LeptonicTauMuons"), matchObjectID=cms.untracked.int32(13), ), cms.untracked.PSet( FilterName=cms.untracked.InputTag("TauMCProducer", "MET"), matchObjectID=cms.untracked.int32(0), ), ), ), ) from DQMOffline.Trigger.HLTTauDQMOffline_cfi import hltTauOfflineMonitor_TagAndProbe hltTauValTagAndProbe = hltTauValIdealMonitorMC.clone(
jetEfficiencyBins_HI.extend(list(range(60, 90, 5))) jetEfficiencyBins_HI.extend(list(range(90, 120, 10))) jetEfficiencyBins_HI.extend(list(range(120, 180, 20))) jetEfficiencyBins_HI.extend(list(range(180, 300, 40))) jetEfficiencyBins_HI.extend(list(range(300, 401, 100))) from Configuration.Eras.Modifier_ppRef_2017_cff import ppRef_2017 ppRef_2017.toModify( l1tEtSumJetOfflineDQM, TriggerFilter=cms.InputTag('hltEle20WPLoose1GsfTrackIsoFilter', '', 'HLT'), TriggerPath=cms.string('HLT_Ele20_WPLoose_Gsf_v4'), jetEfficiencyThresholds=cms.vdouble(jetEfficiencyThresholds_HI), jetEfficiencyBins=cms.vdouble(jetEfficiencyBins_HI), ) # emulator module l1tEtSumJetOfflineDQMEmu = l1tEtSumJetOfflineDQM.clone( stage2CaloLayer2JetSource="simCaloStage2Digis", stage2CaloLayer2EtSumSource="simCaloStage2Digis", histFolderEtSum='L1TEMU/L1TObjects/L1TEtSum/L1TriggerVsReco', histFolderJet='L1TEMU/L1TObjects/L1TJet/L1TriggerVsReco') # sequences l1tEtSumJetOfflineDQMSeq = cms.Sequence( cms.ignore(goodPFJetsForL1T) + l1tPFMetNoMuForDQM + l1tEtSumJetOfflineDQM) l1tEtSumJetOfflineDQMEmuSeq = cms.Sequence( cms.ignore(goodPFJetsForL1T) + l1tPFMetNoMuForDQM + l1tEtSumJetOfflineDQMEmu)
phiMin=cms.double(-3.2), vtxBin=cms.int32(30), vtxMax=cms.double(149.5), vtxMin=cms.double(0.5), ID=cms.string("Medium"), folder=cms.string("Muons_miniAOD/EfficiencyAnalyzer/")) EfficiencyAnalyzer = cms.Sequence(TightMuonEfficiencyAnalyzer * LooseMuonEfficiencyAnalyzer * MediumMuonEfficiencyAnalyzer) EfficiencyAnalyzer_miniAOD = cms.Sequence(TightMuonEfficiencyAnalyzer_miniAOD * LooseMuonEfficiencyAnalyzer_miniAOD * MediumMuonEfficiencyAnalyzer_miniAOD) TightMuonEfficiencyAnalyzer_Phase2 = TightMuonEfficiencyAnalyzer.clone( vtxBin=20, vtxMin=149.5, vtxMax=249.5) LooseMuonEfficiencyAnalyzer_Phase2 = LooseMuonEfficiencyAnalyzer.clone( vtxBin=20, vtxMin=149.5, vtxMax=249.5) MediumMuonEfficiencyAnalyzer_Phase2 = MediumMuonEfficiencyAnalyzer.clone( vtxBin=20, vtxMin=149.5, vtxMax=249.5) TightMuonEfficiencyAnalyzer_miniAOD_Phase2 = TightMuonEfficiencyAnalyzer_miniAOD.clone( vtxBin=20, vtxMin=149.5, vtxMax=249.5) LooseMuonEfficiencyAnalyzer_miniAOD_Phase2 = LooseMuonEfficiencyAnalyzer_miniAOD.clone( vtxBin=20, vtxMin=149.5, vtxMax=249.5) MediumMuonEfficiencyAnalyzer_miniAOD_Phase2 = MediumMuonEfficiencyAnalyzer.clone( vtxBin=20, vtxMin=149.5, vtxMax=249.5)
# muon track extrapolation to 2nd station muProp = cms.PSet( useTrack = cms.string("tracker"), # 'none' to use Candidate P4; or 'tracker', 'muon', 'global' useState = cms.string("atVertex"), # 'innermost' and 'outermost' require the TrackExtra useSimpleGeometry = cms.bool(True), useStation2 = cms.bool(True), fallbackToME1 = cms.bool(False), ), verbose = cms.untracked.bool(False) ) # emulator module l1tMuonDQMOfflineEmu = l1tMuonDQMOffline.clone( gmtInputTag = cms.untracked.InputTag("simGmtStage2Digis"), histFolder = cms.untracked.string('L1TEMU/L1TObjects/L1TMuon/L1TriggerVsReco') ) # modifications for the pp reference run # A list of pt cut + quality cut pairs for which efficiency plots should be made ptQualCuts_HI = [[12, 12], [7, 8], [5, 4]] cutsPSets_HI = [] for ptQualCut in ptQualCuts_HI: cutsPSets_HI.append(cms.untracked.PSet(ptCut = cms.untracked.int32(ptQualCut[0]), qualCut = cms.untracked.int32(ptQualCut[1]))) from Configuration.Eras.Modifier_ppRef_2017_cff import ppRef_2017 ppRef_2017.toModify(l1tMuonDQMOffline, tagPtCut = cms.untracked.double(14.), cuts = cms.untracked.VPSet(cutsPSets_HI), triggerNames = cms.untracked.vstring( "HLT_HIL3Mu12_v*",
den_HT_GenericTriggerEventPSet = cms.PSet( andOr = cms.bool( False ), andOrHlt = cms.bool(True),# True:=OR; False:=AND hltInputTag = cms.InputTag( "TriggerResults::HLT" ), hltPaths = cms.vstring("HLT_Ele38_WPTight_Gsf_v*","HLT_Ele27_WPTight_Gsf_v*","HLT_Ele35_WPTight_Gsf_v*","HLT_Ele40_WPTight_Gsf_v*"), errorReplyHlt = cms.bool( False ), dcsInputTag = cms.InputTag( "scalersRawToDigi" ), dcsPartitions = cms.vint32 ( 24, 25, 26, 27, 28, 29 ), # 24-27: strip, 28-29: pixel, we should add all other detectors ! andOrDcs = cms.bool( False ), errorReplyDcs = cms.bool( True ), verbosityLevel = cms.uint32(0) ), ) DQMOffline_Ele15_HT450 = DQMOffline_Ele15_HT600.clone() DQMOffline_Ele15_HT450.folderName = cms.string('HLT_Ele15_IsoVVVL_PFHT450') DQMOffline_Ele15_HT450.numGenericTriggerEventPSet.hltPaths = cms.vstring("HLT_Ele15_IsoVVVL_PFHT450_v*") DQMOffline_Ele50_HT450 = DQMOffline_Ele15_HT600.clone() DQMOffline_Ele50_HT450.folderName = cms.string('HLT_Ele50_IsoVVVL_PFH450') DQMOffline_Ele50_HT450.leptonPtPlateau = cms.untracked.double(60.0) DQMOffline_Ele50_HT450.numGenericTriggerEventPSet.hltPaths = cms.vstring("HLT_Ele50_IsoVVVL_PFHT450_v*") ### Single Muon + HT triggers DQMOffline_Mu15_HT600 = DQMOffline_Ele15_HT600.clone() DQMOffline_Mu15_HT600.electronCollection = cms.InputTag('') DQMOffline_Mu15_HT600.conversionCollection = cms.InputTag('') DQMOffline_Mu15_HT600.muonCollection = cms.InputTag('muons') DQMOffline_Mu15_HT600.muonIDlevel = cms.untracked.int32(2) ## 1: loose, 2: medium, 3: tight
vertexAssociator = cms.untracked.InputTag("VertexAssociatorByPositionAndTracks"), vertexRecoCollections = cms.VInputTag("offlinePrimaryVertices", "offlinePrimaryVerticesWithBS", "selectedOfflinePrimaryVertices", "selectedOfflinePrimaryVerticesWithBS" ), ) from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2 premix_stage2.toModify(vertexAnalysis, trackingParticleCollection = "mixData:MergedTrackTruth", trackingVertexCollection = "mixData:MergedTrackTruth", ) vertexAnalysisTrackingOnly = vertexAnalysis.clone( vertexRecoCollections = vertexAnalysis.vertexRecoCollections.value() + [ "firstStepPrimaryVerticesPreSplitting", "firstStepPrimaryVertices" ] ) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(vertexAnalysisTrackingOnly, vertexRecoCollections = vertexAnalysis.vertexRecoCollections.value()) from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140 trackingPhase2PU140.toModify(vertexAnalysisTrackingOnly, vertexRecoCollections = vertexAnalysis.vertexRecoCollections.value() + [ "firstStepPrimaryVertices" ] ) pixelVertexAnalysisTrackingOnly = vertexAnalysis.clone( do_generic_sim_plots = False, trackAssociatorMap = "trackingParticlePixelTrackAsssociation", vertexAssociator = "PixelVertexAssociatorByPositionAndTracks",
import FWCore.ParameterSet.Config as cms from DQMServices.Core.DQMEDAnalyzer import DQMEDAnalyzer basicGenParticleValidation = DQMEDAnalyzer( 'BasicGenParticleValidation', hepmcCollection=cms.InputTag("generatorSmeared"), genparticleCollection=cms.InputTag("genParticles", ""), genjetsCollection=cms.InputTag("ak4GenJets", ""), matchingPrecision=cms.double(0.001), verbosity=cms.untracked.uint32(0), UseWeightFromHepMC=cms.bool(True), signalParticlesOnly=cms.bool(False)) basicGenParticleValidationHiMix = basicGenParticleValidation.clone( signalParticlesOnly=True)
vertexAssociator = cms.untracked.InputTag("VertexAssociatorByPositionAndTracks"), vertexRecoCollections = cms.VInputTag("offlinePrimaryVertices", "offlinePrimaryVerticesWithBS", "selectedOfflinePrimaryVertices", "selectedOfflinePrimaryVerticesWithBS" ), ) from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2 premix_stage2.toModify(vertexAnalysis, trackingParticleCollection = "mixData:MergedTrackTruth", trackingVertexCollection = "mixData:MergedTrackTruth", ) vertexAnalysisTrackingOnly = vertexAnalysis.clone( vertexRecoCollections = vertexAnalysis.vertexRecoCollections.value() + [ "firstStepPrimaryVerticesPreSplitting", "firstStepPrimaryVertices" ] ) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(vertexAnalysisTrackingOnly, vertexRecoCollections = vertexAnalysis.vertexRecoCollections.value()) from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140 trackingPhase2PU140.toModify(vertexAnalysisTrackingOnly, vertexRecoCollections = vertexAnalysis.vertexRecoCollections.value() + [ "firstStepPrimaryVertices" ] ) pixelVertexAnalysisTrackingOnly = vertexAnalysis.clone( do_generic_sim_plots = False, trackAssociatorMap = "trackingParticlePixelTrackAsssociation", vertexAssociator = "PixelVertexAssociatorByPositionAndTracks",
useState=cms.string( "atVertex"), # 'innermost' and 'outermost' require the TrackExtra useSimpleGeometry=cms.bool(True), useStation2=cms.bool(True), fallbackToME1=cms.bool(False), cosmicPropagationHypothesis=cms.bool(False), useMB2InOverlap=cms.bool(False), propagatorAlong=cms.ESInputTag("", "SteppingHelixPropagatorAlong"), propagatorAny=cms.ESInputTag("", "SteppingHelixPropagatorAny"), propagatorOpposite=cms.ESInputTag("", "SteppingHelixPropagatorOpposite")), verbose=cms.untracked.bool(False)) # emulator module l1tMuonDQMOfflineEmu = l1tMuonDQMOffline.clone( gmtInputTag="simGmtStage2Digis", histFolder='L1TEMU/L1TObjects/L1TMuon/L1TriggerVsReco') # modifications for the pp reference run # A list of pt cut + quality cut pairs for which efficiency plots should be made ptQualCuts_HI = [[12, 12], [7, 8], [5, 4]] cutsPSets_HI = [] for ptQualCut in ptQualCuts_HI: cutsPSets_HI.append( cms.untracked.PSet(ptCut=cms.untracked.int32(ptQualCut[0]), qualCut=cms.untracked.int32(ptQualCut[1]))) from Configuration.Eras.Modifier_ppRef_2017_cff import ppRef_2017 ppRef_2017.toModify(l1tMuonDQMOffline, tagPtCut=cms.untracked.double(14.), cuts=cms.untracked.VPSet(cutsPSets_HI), triggerNames=cms.untracked.vstring("HLT_HIL3Mu12_v*", ))
0x00000000), # mask for outputs (pt==0 defines empty muon) maskCapId2 = cms.untracked.vint32(0x000001FF, 0x00000000, 0x000001FF, 0x00000000, 0x000001FF, 0x00000000), # no masks defined for caption IDs 0 and 3-11 maxFEDReadoutSize = cms.untracked.int32(7000), monitorDir = cms.untracked.string("L1T/L1TStage2BMTF/zeroSuppression/AllEvts"), verbose = cms.untracked.bool(False), ) # ZS of validation events (to be used after fat event filter) l1tStage2BmtfZeroSuppFatEvts = l1tStage2BmtfZeroSupp.clone() l1tStage2BmtfZeroSuppFatEvts.monitorDir = cms.untracked.string("L1T/L1TStage2BMTF/zeroSuppression/FatEvts") l1tStage2BmtfZeroSuppFatEvts.maxFEDReadoutSize = cms.untracked.int32(25000) # Plots for BMTF's Secondary Algo l1tStage2BmtfSecond = l1tStage2Bmtf.clone() l1tStage2BmtfSecond.bmtfSource = cms.InputTag("bmtfDigis","BMTF2") l1tStage2BmtfSecond.monitorDir = cms.untracked.string("L1T/L1TStage2BMTF/L1TStage2BMTF-Secondary") l1tStage2BmtfSecond.verbose = cms.untracked.bool(False) l1tStage2BmtfSecond.isBmtf = cms.untracked.bool(True) # sequences l1tStage2BmtfOnlineDQMSeq = cms.Sequence( l1tStage2Bmtf + l1tStage2BmtfSecond + l1tStage2BmtfZeroSupp
antiEleInputTag=cms.untracked.InputTag( "hpsPFTauDiscriminationByMVA6ElectronRejection"), antiEleWP=cms.untracked.string("_Loose"), decayModeFindingInputTag=cms.untracked.InputTag( "hpsPFTauDiscriminationByDecayModeFindingOldDMs"), comb3TInputTag=cms.untracked.InputTag("hpsPFTauBasicDiscriminators"), comb3TWP=cms.untracked.string("ByTightCombinedIsolationDBSumPtCorr3Hits"), l1tInputTag=cms.untracked.InputTag("caloStage2Digis:Tau"), vtxInputTag=cms.untracked.InputTag("offlinePrimaryVertices"), bsInputTag=cms.untracked.InputTag("offlineBeamSpot"), triggerNames=cms.untracked.vstring("HLT_IsoMu18_v*", "HLT_IsoMu20_v*", "HLT_IsoMu22_v*", "HLT_IsoMu24_v*", "HLT_IsoMu27_v*"), trigInputTag=cms.untracked.InputTag("hltTriggerSummaryAOD", "", "HLT"), trigProcess=cms.untracked.string("HLT"), trigProcess_token=cms.untracked.InputTag("TriggerResults", "", "HLT"), stage2CaloLayer2TauSource=cms.InputTag("simCaloStage2Digis"), histFolder=cms.string('L1T/L1TObjects/L1TTau/L1TriggerVsReco'), tauEfficiencyThresholds=cms.vint32(tauEfficiencyThresholds), tauEfficiencyBins=cms.vdouble(tauEfficiencyBins), histDefinitions=cms.PSet( nVertex=histDefinitions.nVertex.clone(), ETvsET=histDefinitions.ETvsET.clone(), PHIvsPHI=histDefinitions.PHIvsPHI.clone(), ), ) l1tTauOfflineDQMEmu = l1tTauOfflineDQM.clone( stage2CaloLayer2TauSource="simCaloStage2Digis", histFolder='L1TEMU/L1TObjects/L1TTau/L1TriggerVsReco')
antiMuInputTag = cms.untracked.InputTag("hpsPFTauDiscriminationByTightMuonRejection3"), antiEleInputTag = cms.untracked.InputTag("hpsPFTauDiscriminationByMVA6LooseElectronRejection"), decayModeFindingInputTag = cms.untracked.InputTag("hpsPFTauDiscriminationByDecayModeFindingOldDMs"), comb3TInputTag = cms.untracked.InputTag("hpsPFTauDiscriminationByTightCombinedIsolationDBSumPtCorr3Hits"), l1tInputTag = cms.untracked.InputTag("caloStage2Digis:Tau"), vtxInputTag = cms.untracked.InputTag("offlinePrimaryVertices"), bsInputTag = cms.untracked.InputTag("offlineBeamSpot"), triggerNames = cms.untracked.vstring("HLT_IsoMu18_v*","HLT_IsoMu20_v*","HLT_IsoMu22_v*","HLT_IsoMu24_v*","HLT_IsoMu27_v*"), trigInputTag = cms.untracked.InputTag("hltTriggerSummaryAOD", "", "HLT"), trigProcess = cms.untracked.string("HLT"), trigProcess_token = cms.untracked.InputTag("TriggerResults","","HLT"), histFolder=cms.string('L1T/L1TObjects/L1TTau/L1TriggerVsReco'), tauEfficiencyThresholds=cms.vint32(tauEfficiencyThresholds), tauEfficiencyBins=cms.vdouble(tauEfficiencyBins), histDefinitions=cms.PSet( nVertex=histDefinitions.nVertex.clone(), ETvsET=histDefinitions.ETvsET.clone(), PHIvsPHI=histDefinitions.PHIvsPHI.clone(), ), ) l1tTauOfflineDQMEmu = l1tTauOfflineDQM.clone( stage2CaloLayer2TauSource=cms.InputTag("simCaloStage2Digis"), histFolder=cms.string('L1TEMU/L1TObjects/L1TTau/L1TriggerVsReco'), )
# etThreshold = cms.double(2.), DCSFilter=cms.PSet( DetectorTypes=cms.untracked.string("ecal:hbhe:hf"), #DebugOn = cms.untracked.bool(True), Filter=cms.untracked.bool(True)), ) pfMetDQMAnalyzer = caloMetDQMAnalyzer.clone( METType='pf', METCollectionLabel="pfMet", srcPFlow='particleFlow', JetCollectionLabel="ak4PFJets", JetCorrections="dqmAk4PFL1FastL2L3ResidualCorrector", CleaningParameters=cleaningParameters.clone(bypassAllPVChecks=False, ), fillMetHighLevel=False, fillCandidateMaps=True, # if this flag is changed, the METTypeRECOUncleaned flag in dataCertificationJetMET_cfi.py #has to be updated (by a string not pointing to an existing directory) onlyCleaned=False, DCSFilter=cms.PSet( DetectorTypes=cms.untracked.string( "ecal:hbhe:hf:pixel:sistrip:es:muon"), #DebugOn = cms.untracked.bool(True), Filter=cms.untracked.bool(True)), ) pfChMetDQMAnalyzer = pfMetDQMAnalyzer.clone(METCollectionLabel="pfChMet", fillCandidateMaps=False, onlyCleaned=True) #both CaloMET and type1 MET only cleaned plots are filled pfMetT1DQMAnalyzer = caloMetDQMAnalyzer.clone( METType='pf',
cms.untracked.PSet( FilterName = cms.untracked.InputTag("TauRefProducer","Muons"), matchObjectID = cms.untracked.int32(13), ), cms.untracked.PSet( FilterName = cms.untracked.InputTag("TauRefProducer","MET"), matchObjectID = cms.untracked.int32(0), ), ), ), ) hltTauOfflineMonitor_Inclusive = hltTauOfflineMonitor_PFTaus.clone( DQMBaseFolder = "HLT/TAU/Inclusive", Matching = cms.PSet( doMatching = cms.untracked.bool(False), matchFilters = cms.untracked.VPSet(), ) ) def TriggerSelectionParameters(hltpaths): genericTriggerSelectionParameters = cms.PSet( andOr = cms.bool( False ),#specifies the logical combination of the single filters' (L1, HLT and DCS) decisions at top level (True=OR) dbLabel = cms.string("PFTauDQMTrigger"),#specifies the label under which the DB payload is available from the ESSource or Global Tag andOrHlt = cms.bool(True),#specifies the logical combination of the single HLT paths' decisions (True=OR) hltInputTag = cms.InputTag("TriggerResults", "", hltTauDQMofflineProcess), hltPaths = hltpaths,#Lists logical expressions of HLT paths, which should have accepted the event (fallback in case DB unaccessible) errorReplyHlt = cms.bool(False),#specifies the desired return value of the HLT filter and the single HLT path filter in case of certain errors verbosityLevel = cms.uint32(0) #0: complete silence (default), needed for T0 processing; ) return genericTriggerSelectionParameters
0.81, 0.82, 0.83, 0.84, 0.85, 0.86, 0.87, 0.88, 0.89, 0.90, 0.91, 0.92, 0.93, 0.94, 0.95, 0.96, 0.97, 0.98, 0.99, 1.00), ), genericTriggerEventPSet=triggerFlagPSet.clone(), ) # online btagging monitor ## Full hadronic - DeepCSV BTag mssmHbbDeepCSVBtagTriggerMonitorFH40 = mssmHbbBtagTriggerMonitor.clone( dirname="HLT/HIG/MssmHbb/control/btag/HLT_DoublePFJets40_PFBTagDeepCSV_p71", jetPtMin=40, triggerobjbtag="hltBTagPFDeepCSV0p71Single8Jets30", histoPSet=dict(jetPt=[ 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100, 105, 110, 115, 120, 130, 140, 150, 160, 180, 200, 250, 300, 400, 500 ]), genericTriggerEventPSet=dict( hltPaths=['HLT_DoublePFJets40_PFBTagDeepCSV_p71_v*'])) mssmHbbDeepCSVBtagTriggerMonitorFH100 = mssmHbbBtagTriggerMonitor.clone( dirname= "HLT/HIG/MssmHbb/control/btag/HLT_DoublePFJets100_PFBTagDeepCSV_p71", jetPtMin=100, triggerobjbtag="hltBTagPFDeepCSV0p71Single8Jets30", histoPSet=dict(jetPt=[ 100, 110, 120, 130, 140, 150, 160, 170, 180, 190, 200, 220, 240, 260, 280, 300, 350, 400, 450, 500, 600, 700, 800 ]), genericTriggerEventPSet=dict(
# # DCS # DCSFilterForJetMonitoring = cms.PSet( DetectorTypes = cms.untracked.string("ecal:hbhe:hf"), #DebugOn = cms.untracked.bool(True), alwaysPass = cms.untracked.bool(False) ) ) jetDQMAnalyzerAk4CaloCleaned=jetDQMAnalyzerAk4CaloUncleaned.clone( JetCleaningFlag = cms.untracked.bool(True), filljetHighLevel = cms.bool(False), CleaningParameters = cleaningParameters.clone( bypassAllPVChecks = cms.bool(True), ), jetAnalysis=jetDQMParameters.clone( ptThreshold = cms.double(20.), asymmetryThirdJetCut = cms.double(30), balanceThirdJetCut = cms.double(0.2), ) ) jetDQMAnalyzerAk4PFUncleaned=jetDQMAnalyzerAk4CaloUncleaned.clone( CleaningParameters = cleaningParameters.clone( bypassAllPVChecks = cms.bool(False), ), #for PFJets: LOOSE,TIGHT JetIDQuality = cms.string("LOOSE"), #options for Calo and JPT: PURE09,DQM09,CRAFT08 #for PFJets: FIRSTDATA or RUNIISTARTUP (suitable for RECO beyond 7_2_X) or WINTER16 (for 8_0_X onwards) JetIDVersion = cms.string("WINTER16"),
FilterResultsLabelMiniAOD = cms.InputTag("TriggerResults::RECO"), FilterResultsLabelMiniAOD2 = cms.InputTag("TriggerResults::reRECO"), LSBegin = cms.int32(0), LSEnd = cms.int32(-1), HBHENoiseLabelMiniAOD = cms.string("Flag_HBHENoiseFilter"), HBHENoiseFilterResultLabel = cms.InputTag("HBHENoiseFilterResultProducer", "HBHENoiseFilterResult"), HBHENoiseIsoFilterResultLabel = cms.InputTag("HBHENoiseFilterResultProducer", "HBHEIsoNoiseFilterResult"), verbose = cms.int32(0), DCSFilter = cms.PSet( DetectorTypes = cms.untracked.string("ecal:hbhe:hf:pixel:sistrip:es:muon"), #DebugOn = cms.untracked.bool(True), Filter = cms.untracked.bool(True) ), ) packedCandidateDQMAnalyzerMiniAOD = pfCandidateDQMAnalyzer.clone( CandType=cms.untracked.string('Packed'), PFCandidateLabel = cms.InputTag('packedPFCandidates', ''), METDiagonisticsParameters = multPhiCorr_METDiagnosticsMiniAOD, CleaningParameters = cleaningParameters.clone( vertexCollection = cms.InputTag( "goodOfflinePrimaryVerticesDQMforMiniAOD" ), ), )
# jetAnalysis=jetDQMParameters.clone(), # # DCS # DCSFilterForJetMonitoring=cms.PSet( DetectorTypes=cms.untracked.string("ecal:hbhe:hf"), #DebugOn = cms.untracked.bool(True), alwaysPass=cms.untracked.bool(False))) jetDQMAnalyzerAk4CaloCleaned = jetDQMAnalyzerAk4CaloUncleaned.clone( JetCleaningFlag=cms.untracked.bool(True), filljetHighLevel=cms.bool(False), CleaningParameters=cleaningParameters.clone( bypassAllPVChecks=cms.bool(True), ), jetAnalysis=jetDQMParameters.clone( ptThreshold=cms.double(20.), asymmetryThirdJetCut=cms.double(30), balanceThirdJetCut=cms.double(0.2), )) jetDQMAnalyzerAk4PFUncleaned = jetDQMAnalyzerAk4CaloUncleaned.clone( CleaningParameters=cleaningParameters.clone( bypassAllPVChecks=cms.bool(False), ), #for PFJets: LOOSE,TIGHT JetIDQuality=cms.string("LOOSE"), #options for Calo and JPT: PURE09,DQM09,CRAFT08 #for PFJets: RUN2ULCHS for 11_1_X onwards JetIDVersion=cms.string("RUN2ULCHS"), JetType=cms.string('pf'), #pf, calo or jpt JetCorrections=cms.InputTag("dqmAk4PFL1FastL2L3ResidualCorrector"),
hltInputTag=cms.InputTag("TriggerResults::HLT"), hltPaths=cms.vstring("HLT_Ele38_WPTight_Gsf_v*", "HLT_Ele27_WPTight_Gsf_v*", "HLT_Ele35_WPTight_Gsf_v*", "HLT_Ele40_WPTight_Gsf_v*"), errorReplyHlt=cms.bool(False), dcsInputTag=cms.InputTag("scalersRawToDigi"), dcsPartitions=cms.vint32( 24, 25, 26, 27, 28, 29 ), # 24-27: strip, 28-29: pixel, we should add all other detectors ! andOrDcs=cms.bool(False), errorReplyDcs=cms.bool(True), verbosityLevel=cms.uint32(0)), ) DQMOffline_Ele15_HT450 = DQMOffline_Ele15_HT600.clone() DQMOffline_Ele15_HT450.folderName = cms.string('HLT_Ele15_IsoVVVL_PFHT450') DQMOffline_Ele15_HT450.numGenericTriggerEventPSet.hltPaths = cms.vstring( "HLT_Ele15_IsoVVVL_PFHT450_v*") DQMOffline_Ele50_HT450 = DQMOffline_Ele15_HT600.clone() DQMOffline_Ele50_HT450.folderName = cms.string('HLT_Ele50_IsoVVVL_PFH450') DQMOffline_Ele50_HT450.leptonPtPlateau = cms.untracked.double(60.0) DQMOffline_Ele50_HT450.numGenericTriggerEventPSet.hltPaths = cms.vstring( "HLT_Ele50_IsoVVVL_PFHT450_v*") ### Single Muon + HT triggers DQMOffline_Mu15_HT600 = DQMOffline_Ele15_HT600.clone() DQMOffline_Mu15_HT600.electronCollection = cms.InputTag('') DQMOffline_Mu15_HT600.conversionCollection = cms.InputTag('') DQMOffline_Mu15_HT600.muonCollection = cms.InputTag('muons')
0x00000000), # mask for validation event outputs (pt==0 defines empty muon) maskCapId3 = cms.untracked.vint32(0x0007FC00, 0x00000000, 0x0007FC00, 0x00000000, 0x0007FC00, 0x00000000), # no masks defined for caption IDs 0 and 4-11 maxFEDReadoutSize = cms.untracked.int32(10000), monitorDir = cms.untracked.string("L1T/L1TStage2uGMT/zeroSuppression/AllEvts"), verbose = cms.untracked.bool(False), ) # ZS of validation events (to be used after fat event filter) l1tStage2uGMTZeroSuppFatEvts = l1tStage2uGMTZeroSupp.clone() l1tStage2uGMTZeroSuppFatEvts.monitorDir = cms.untracked.string("L1T/L1TStage2uGMT/zeroSuppression/FatEvts") # List of bins to ignore ignoreBins = { 'Bmtf' : [1], 'Omtf' : [1], 'Emtf' : [1] } # compares the unpacked BMTF output regional muon collection with the unpacked uGMT input regional muon collection from BMTF # only muons that do not match are filled in the histograms l1tStage2BmtfOutVsuGMTIn = DQMEDAnalyzer( "L1TStage2RegionalMuonCandComp", regionalMuonCollection1 = cms.InputTag("bmtfDigis", "BMTF"), regionalMuonCollection2 = cms.InputTag("gmtStage2Digis", "BMTF"),
"L1TStage2MuonComp", muonCollection1=cms.InputTag("gtStage2Digis", "Muon"), muonCollection2=cms.InputTag("gtStage2Digis", "Muon2"), muonCollection1Title=cms.untracked.string("Muons uGT Board 1"), muonCollection2Title=cms.untracked.string("Muons uGT Board 2"), summaryTitle=cms.untracked.string( "Summary of Comparison between Muons from uGT Board 1 and uGT Board 2" ), monitorDir=cms.untracked.string( "L1T/L1TStage2uGT/uGTBoardComparisons/Board1vsBoard2/Muons"), verbose=cms.untracked.bool(False), ) l1tStage2uGTMuon1vsMuon3 = l1tStage2uGTMuon1vsMuon2.clone( muonCollection2="gtStage2Digis:Muon3", muonCollection2Title="Muons uGT Board 3", summaryTitle= "Summary of Comparison between Muons from uGT Board 1 and uGT Board 3", monitorDir="L1T/L1TStage2uGT/uGTBoardComparisons/Board1vsBoard3/Muons") l1tStage2uGTMuon1vsMuon4 = l1tStage2uGTMuon1vsMuon2.clone( muonCollection2="gtStage2Digis:Muon4", muonCollection2Title="Muons uGT Board 4", summaryTitle= "Summary of Comparison between Muons from uGT Board 1 and uGT Board 4", monitorDir="L1T/L1TStage2uGT/uGTBoardComparisons/Board1vsBoard4/Muons") l1tStage2uGTMuon1vsMuon5 = l1tStage2uGTMuon1vsMuon2.clone( muonCollection2="gtStage2Digis:Muon5", muonCollection2Title="Muons uGT Board 5", summaryTitle= "Summary of Comparison between Muons from uGT Board 1 and uGT Board 5", monitorDir="L1T/L1TStage2uGT/uGTBoardComparisons/Board1vsBoard5/Muons") l1tStage2uGTMuon1vsMuon6 = l1tStage2uGTMuon1vsMuon2.clone(
), cms.untracked.PSet( FilterName=cms.untracked.InputTag("TauRefProducer", "Muons"), matchObjectID=cms.untracked.int32(13), ), cms.untracked.PSet( FilterName=cms.untracked.InputTag("TauRefProducer", "MET"), matchObjectID=cms.untracked.int32(0), ), ), ), ) hltTauOfflineMonitor_Inclusive = hltTauOfflineMonitor_PFTaus.clone( DQMBaseFolder="HLT/TAU/Inclusive", Matching=cms.PSet( doMatching=cms.untracked.bool(False), matchFilters=cms.untracked.VPSet(), )) def TriggerSelectionParameters(hltpaths): genericTriggerSelectionParameters = cms.PSet( andOr=cms.bool( False ), #specifies the logical combination of the single filters' (L1, HLT and DCS) decisions at top level (True=OR) dbLabel=cms.string( "PFTauDQMTrigger" ), #specifies the label under which the DB payload is available from the ESSource or Global Tag andOrHlt=cms.bool( True ), #specifies the logical combination of the single HLT paths' decisions (True=OR)
histoPSet=cms.PSet( jetPt=cms.vdouble(40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100), jetEta=cms.vdouble(-2.5, -2.0, -1.5, -1.0, -0.5, 0.0, 0.5, 1.0, 1.5, 2.0, 2.5), jetPhi=cms.vdouble(-3.5, -3.0, -2.5, -2.0, -1.5, -1.0, -0.5, 0.0, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5), jetBtag=cms.vdouble(0.80, 0.81, 0.82, 0.83, 0.84, 0.85, 0.86, 0.87, 0.88, 0.89, 0.90, 0.91, 0.92, 0.93, 0.94, 0.95, 0.96, 0.97, 0.98, 0.99, 1.00), ), genericTriggerEventPSet=triggerFlagPSet.clone(), ) # online btagging monitor mssmHbbBtagTriggerMonitorSL40noMu = mssmHbbBtagTriggerMonitor.clone() #mssmHbbBtagTriggerMonitorSL40noMu.dirname = cms.string("HLT/Higgs/MssmHbb/semileptonic/BtagTrigger/pt40_noMuon") mssmHbbBtagTriggerMonitorSL40noMu.dirname = cms.string( "HLT/HIG/MssmHbb/semileptonic/BtagTrigger/pt40_noMuon") mssmHbbBtagTriggerMonitorSL40noMu.jetPtMin = cms.double(40) mssmHbbBtagTriggerMonitorSL40noMu.triggerobjbtag = cms.string( "hltBTagCaloDeepCSV0p71Single8Jets30") mssmHbbBtagTriggerMonitorSL40noMu.histoPSet.jetPt = cms.vdouble( 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95, 100) mssmHbbBtagTriggerMonitorSL40noMu.genericTriggerEventPSet.hltPaths = cms.vstring( 'HLT_DoublePFJets40_CaloBTagDeepCSV_p71_v*') mssmHbbBtagTriggerMonitorSL40 = mssmHbbBtagTriggerMonitor.clone() #mssmHbbBtagTriggerMonitorSL40.dirname = cms.string("HLT/Higgs/MssmHbb/semileptonic/BtagTrigger/pt40") mssmHbbBtagTriggerMonitorSL40.dirname = cms.string( "HLT/HIG/MssmHbb/semileptonic/BtagTrigger/pt40")
triggerobjbtag = cms.string("hltBTagCalo30x8CSVp0p92SingleWithMatching"), triggerSummary = cms.InputTag("hltTriggerSummaryAOD","","HLT"), offlineBtag = cms.InputTag("pfCombinedInclusiveSecondaryVertexV2BJetTags"), histoPSet = cms.PSet( jetPt = cms.vdouble(40,45,50,55,60,65,70,75,80,85,90,95,100), jetEta = cms.vdouble(-2.5,-2.0,-1.5,-1.0,-0.5,0.0,0.5,1.0,1.5,2.0,2.5), jetPhi = cms.vdouble(-3.5,-3.0,-2.5,-2.0,-1.5,-1.0,-0.5,0.0,0.5,1.0,1.5,2.0,2.5,3.0,3.5), jetBtag = cms.vdouble(0.80,0.81,0.82,0.83,0.84,0.85,0.86,0.87,0.88,0.89,0.90,0.91,0.92,0.93,0.94,0.95,0.96,0.97,0.98,0.99,1.00), ), genericTriggerEventPSet = triggerFlagPSet.clone(), ) # online btagging monitor mssmHbbBtagTriggerMonitorSL40noMu = mssmHbbBtagTriggerMonitor.clone() mssmHbbBtagTriggerMonitorSL40noMu.dirname = cms.string("HLT/Higgs/MssmHbb/semileptonic/BtagTrigger/pt40_noMuon") mssmHbbBtagTriggerMonitorSL40noMu.jetPtMin = cms.double(40) mssmHbbBtagTriggerMonitorSL40noMu.triggerobjbtag = cms.string("hltBTagCalo30x8CSVp0p92SingleWithMatching") mssmHbbBtagTriggerMonitorSL40noMu.histoPSet.jetPt = cms.vdouble(40,45,50,55,60,65,70,75,80,85,90,95,100) mssmHbbBtagTriggerMonitorSL40noMu.genericTriggerEventPSet.hltPaths = cms.vstring('HLT_DoublePFJets40_CaloBTagCSV_p33_v*') mssmHbbBtagTriggerMonitorSL40 = mssmHbbBtagTriggerMonitor.clone() mssmHbbBtagTriggerMonitorSL40.dirname = cms.string("HLT/Higgs/MssmHbb/semileptonic/BtagTrigger/pt40") mssmHbbBtagTriggerMonitorSL40.jetPtMin = cms.double(40) mssmHbbBtagTriggerMonitorSL40.triggerobjbtag = cms.string("hltBTagCalo30x8CSVp0p92SingleWithMatching") mssmHbbBtagTriggerMonitorSL40.histoPSet.jetPt = cms.vdouble(40,45,50,55,60,65,70,75,80,85,90,95,100) mssmHbbBtagTriggerMonitorSL40.genericTriggerEventPSet.hltPaths = cms.vstring('HLT_Mu12_DoublePFJets40_CaloBTagCSV_p33_v*') mssmHbbBtagTriggerMonitorSL100 = mssmHbbBtagTriggerMonitor.clone() mssmHbbBtagTriggerMonitorSL100.dirname = cms.string("HLT/Higgs/MssmHbb/semileptonic/BtagTrigger/pt100")
jetMETHLTOfflineSourceAK8 = jetMETHLTOfflineSourceAK4.clone( dirname=cms.untracked.string('HLT/JME/Jets/AK8'), # CaloJetCollectionLabel = cms.InputTag("ak4CaloJets"), #ak8 not available in RECO anymore, so keep ak4... # PFJetCollectionLabel = cms.InputTag("ak8PFJetsPuppi"), # does not work in all matrix tests, yet # PFJetCorLabel = cms.InputTag("ak8PFCHSL1FastjetL2L3ResidualCorrector"), # does not work in all matrix tests, yet PFJetCollectionLabel=cms.InputTag("ak4PFJets"), PFJetCorLabel=cms.InputTag( "ak4PFL1FastL2L3ResidualCorrector" ), #dummy residual corrections now also provided for MC GTs pathFilter=cms.untracked.vstring('HLT_AK8PFJet', ), pathPairs=cms.VPSet( cms.PSet(denompathname=cms.string('HLT_AK8PFJet40_v'), pathname=cms.string('HLT_AK8PFJet60_v')), cms.PSet(denompathname=cms.string('HLT_AK8PFJet60_v'), pathname=cms.string('HLT_AK8PFJet80_v')), cms.PSet(denompathname=cms.string('HLT_AK8PFJet80_v'), pathname=cms.string('HLT_AK8PFJet140_v')), cms.PSet(denompathname=cms.string('HLT_AK8PFJet140_v'), pathname=cms.string('HLT_AK8PFJet200_v')), cms.PSet(denompathname=cms.string('HLT_AK8PFJet200_v'), pathname=cms.string('HLT_AK8PFJet260_v')), cms.PSet(denompathname=cms.string('HLT_AK8PFJet260_v'), pathname=cms.string('HLT_AK8PFJet320_v')), cms.PSet(denompathname=cms.string('HLT_AK8PFJet320_v'), pathname=cms.string('HLT_AK8PFJet400_v')), cms.PSet(denompathname=cms.string('HLT_AK8PFJet400_v'), pathname=cms.string('HLT_AK8PFJet450_v')), cms.PSet(denompathname=cms.string('HLT_AK8PFJet450_v'), pathname=cms.string('HLT_AK8PFJet500_v'))), )
# muon track extrapolation to 2nd station muProp=cms.PSet( useTrack=cms.string( "tracker" ), # 'none' to use Candidate P4; or 'tracker', 'muon', 'global' useState=cms.string( "atVertex"), # 'innermost' and 'outermost' require the TrackExtra useSimpleGeometry=cms.bool(True), useStation2=cms.bool(True), fallbackToME1=cms.bool(False), ), verbose=cms.untracked.bool(False)) # emulator module l1tMuonDQMOfflineEmu = l1tMuonDQMOffline.clone( gmtInputTag=cms.untracked.InputTag("simGmtStage2Digis"), histFolder=cms.untracked.string( 'L1TEMU/L1TObjects/L1TMuon/L1TriggerVsReco')) # modifications for the pp reference run # A list of pt cut + quality cut pairs for which efficiency plots should be made ptQualCuts_HI = [[12, 12], [7, 8], [5, 4]] cutsPSets_HI = [] for ptQualCut in ptQualCuts_HI: cutsPSets_HI.append( cms.untracked.PSet(ptCut=cms.untracked.int32(ptQualCut[0]), qualCut=cms.untracked.int32(ptQualCut[1]))) from Configuration.Eras.Modifier_ppRef_2017_cff import ppRef_2017 ppRef_2017.toModify(l1tMuonDQMOffline, tagPtCut=cms.untracked.double(14.), cuts=cms.untracked.VPSet(cutsPSets_HI), triggerNames=cms.untracked.vstring("HLT_HIL3Mu12_v*", ))
mtype = cms.untracked.bool(True), subsystem = cms.untracked.string("Hcal"), # tags tagHBHE = cms.untracked.InputTag("hbhereco"), tagHO = cms.untracked.InputTag("horeco"), tagHF = cms.untracked.InputTag("hfreco"), tagRaw = cms.untracked.InputTag('rawDataCollector'), # thresholds thresh_unihf = cms.untracked.double(0.2), # prerechits hfPreRecHitsAvailable = cms.untracked.bool(False), tagPreHF = cms.untracked.InputTag(""), ) recHitPreRecoTask = recHitTask.clone( tagHBHE = "hbheprereco", )
stage2L1Trigger_2021.toModify(l1tStage2uGMTZeroSupp, maskCapId2 = cms.untracked.vint32(0x00000000, 0x00000000, 0x0007FC00, 0x00000000, 0x0007FC00, 0x00000000), # mask for validation event outputs (pt==0 defines empty muon) maskCapId3 = cms.untracked.vint32(0x00000000, 0x00000000, 0x0007FC00, 0x00000000, 0x0007FC00, 0x00000000)) # ZS of validation events (to be used after fat event filter) l1tStage2uGMTZeroSuppFatEvts = l1tStage2uGMTZeroSupp.clone() l1tStage2uGMTZeroSuppFatEvts.monitorDir = cms.untracked.string("L1T/L1TStage2uGMT/zeroSuppression/FatEvts") # List of bins to ignore ignoreBins = { 'Bmtf' : [1], 'Omtf' : [1], 'Emtf' : [1] } # compares the unpacked BMTF output regional muon collection with the unpacked uGMT input regional muon collection from BMTF # only muons that do not match are filled in the histograms l1tStage2BmtfOutVsuGMTIn = DQMEDAnalyzer( "L1TStage2RegionalMuonCandComp", regionalMuonCollection1 = cms.InputTag("bmtfDigis", "BMTF"), regionalMuonCollection2 = cms.InputTag("gmtStage2Digis", "BMTF"),
"HLT_Ele27_WPTight_Gsf_v*", "HLT_Ele35_WPTight_Gsf_v*", "HLT_Ele40_WPTight_Gsf_v*"), errorReplyHlt=cms.bool(False), dcsInputTag=cms.InputTag("scalersRawToDigi"), dcsRecordInputTag=cms.InputTag("onlineMetaDataDigis"), dcsPartitions=cms.vint32( 24, 25, 26, 27, 28, 29 ), # 24-27: strip, 28-29: pixel, we should add all other detectors ! andOrDcs=cms.bool(False), errorReplyDcs=cms.bool(True), verbosityLevel=cms.uint32(0)), ) DQMOffline_Ele15_HT450 = DQMOffline_Ele15_HT600.clone( folderName='HLT_Ele15_IsoVVVL_PFHT450', numGenericTriggerEventPSet=dict(hltPaths=["HLT_Ele15_IsoVVVL_PFHT450_v*"])) DQMOffline_Ele50_HT450 = DQMOffline_Ele15_HT600.clone( folderName='HLT_Ele50_IsoVVVL_PFH450', leptonPtPlateau=60.0, numGenericTriggerEventPSet=dict(hltPaths=["HLT_Ele50_IsoVVVL_PFHT450_v*"])) ### Single Muon + HT triggers DQMOffline_Mu15_HT600 = DQMOffline_Ele15_HT600.clone( electronCollection='', conversionCollection='', muonCollection='muons', muonIDlevel=2, ## 1: loose, 2: medium, 3: tight nels=0, nmus=1,
l1tdeStage2uGMT = DQMEDAnalyzer( "L1TStage2MuonComp", muonCollection1=cms.InputTag(unpackerModule, "Muon"), muonCollection2=cms.InputTag(emulatorModule), monitorDir=cms.untracked.string(ugmtEmuDqmDir + "/data_vs_emulator_comparison"), muonCollection1Title=cms.untracked.string("uGMT data"), muonCollection2Title=cms.untracked.string("uGMT emulator"), summaryTitle=cms.untracked.string( "Summary of comparison between uGMT muons and uGMT emulator muons"), verbose=cms.untracked.bool(False), ) # compares the unpacked uGMT intermediate muon collection to the emulated uGMT intermediate muon collection # only muons that do not match are filled in the histograms l1tdeStage2uGMTIntermediateBMTF = l1tdeStage2uGMT.clone() l1tdeStage2uGMTIntermediateBMTF.muonCollection1 = cms.InputTag( unpackerModule, "imdMuonsBMTF") l1tdeStage2uGMTIntermediateBMTF.muonCollection2 = cms.InputTag( emulatorModule, "imdMuonsBMTF") l1tdeStage2uGMTIntermediateBMTF.monitorDir = cms.untracked.string( ugmtEmuImdMuDqmDir + "/BMTF/data_vs_emulator_comparison") l1tdeStage2uGMTIntermediateBMTF.summaryTitle = cms.untracked.string( "Summary of uGMT intermediate muon from BMTF comparison between unpacked and emulated" ) l1tdeStage2uGMTIntermediateBMTF.ignoreBin = cms.untracked.vint32(ignoreBins) l1tdeStage2uGMTIntermediateOMTFNeg = l1tdeStage2uGMTIntermediateBMTF.clone() l1tdeStage2uGMTIntermediateOMTFNeg.muonCollection1 = cms.InputTag( unpackerModule, "imdMuonsOMTFNeg") l1tdeStage2uGMTIntermediateOMTFNeg.muonCollection2 = cms.InputTag(
from DQMServices.Core.DQMEDAnalyzer import DQMEDAnalyzer # Comparison of the unpacked uGT muon collections from uGT board 1 to those of boards 2 to 6. l1tStage2uGTMuon1vsMuon2 = DQMEDAnalyzer( "L1TStage2MuonComp", muonCollection1 = cms.InputTag("gtStage2Digis", "Muon"), muonCollection2 = cms.InputTag("gtStage2Digis", "Muon2"), muonCollection1Title = cms.untracked.string("Muons uGT Board 1"), muonCollection2Title = cms.untracked.string("Muons uGT Board 2"), summaryTitle = cms.untracked.string("Summary of Comparison between Muons from uGT Board 1 and uGT Board 2"), monitorDir = cms.untracked.string("L1T/L1TStage2uGT/uGTBoardComparisons/Board1vsBoard2/Muons"), verbose = cms.untracked.bool(False), ) l1tStage2uGTMuon1vsMuon3 = l1tStage2uGTMuon1vsMuon2.clone() l1tStage2uGTMuon1vsMuon3.muonCollection2 = cms.InputTag("gtStage2Digis", "Muon3") l1tStage2uGTMuon1vsMuon3.muonCollection2Title = cms.untracked.string("Muons uGT Board 3") l1tStage2uGTMuon1vsMuon3.summaryTitle = cms.untracked.string("Summary of Comparison between Muons from uGT Board 1 and uGT Board 3") l1tStage2uGTMuon1vsMuon3.monitorDir = cms.untracked.string("L1T/L1TStage2uGT/uGTBoardComparisons/Board1vsBoard3/Muons") l1tStage2uGTMuon1vsMuon4 = l1tStage2uGTMuon1vsMuon2.clone() l1tStage2uGTMuon1vsMuon4.muonCollection2 = cms.InputTag("gtStage2Digis", "Muon4") l1tStage2uGTMuon1vsMuon4.muonCollection2Title = cms.untracked.string("Muons uGT Board 4") l1tStage2uGTMuon1vsMuon4.summaryTitle = cms.untracked.string("Summary of Comparison between Muons from uGT Board 1 and uGT Board 4") l1tStage2uGTMuon1vsMuon4.monitorDir = cms.untracked.string("L1T/L1TStage2uGT/uGTBoardComparisons/Board1vsBoard4/Muons") l1tStage2uGTMuon1vsMuon5 = l1tStage2uGTMuon1vsMuon2.clone() l1tStage2uGTMuon1vsMuon5.muonCollection2 = cms.InputTag("gtStage2Digis", "Muon5") l1tStage2uGTMuon1vsMuon5.muonCollection2Title = cms.untracked.string("Muons uGT Board 5") l1tStage2uGTMuon1vsMuon5.summaryTitle = cms.untracked.string("Summary of Comparison between Muons from uGT Board 1 and uGT Board 5")