From a93d20a44f35c77098151f4e1822b50b51cc47a8 Mon Sep 17 00:00:00 2001 From: Roberval Walsh Date: Sat, 9 Apr 2022 16:16:00 +0200 Subject: [PATCH 1/8] updates for run3 mssm Hbb trigger dqm --- .../MssmHbbBtagTriggerMonitor_Client_cfi.py | 43 +---- .../python/MssmHbbBtagTriggerMonitor_cff.py | 24 ++- .../python/MssmHbbBtagTriggerMonitor_cfi.py | 139 +++++++++++---- .../Trigger/python/MssmHbbMonitoring_cff.py | 166 +++++++++++------- .../Trigger/python/MssmHbbMonitoring_cfi.py | 6 - .../Higgs/python/hltHiggsValidator_cfi.py | 18 +- 6 files changed, 234 insertions(+), 162 deletions(-) diff --git a/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_Client_cfi.py b/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_Client_cfi.py index df46d1b6a78f6..0401f838c8ca9 100644 --- a/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_Client_cfi.py +++ b/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_Client_cfi.py @@ -3,7 +3,12 @@ from DQMServices.Core.DQMEDHarvester import DQMEDHarvester mssmHbbBtag = DQMEDHarvester("DQMGenericClient", - subDirs = cms.untracked.vstring("HLT/HIG/MssmHbb/semileptonic/BtagTrigger/*"), + subDirs = cms.untracked.vstring( + "HLT/HIG/MssmHbb/fullhadronic/DeepCSVBtagTrigger/*", + "HLT/HIG/MssmHbb/semileptonic/DeepCSVBtagTrigger/*", + "HLT/HIG/MssmHbb/fullhadronic/DeepJetBtagTrigger/*", + "HLT/HIG/MssmHbb/semileptonic/DeepJetBtagTrigger/*", + ), verbose = cms.untracked.uint32(0), # Set to 2 for all messages resolution = cms.vstring(), efficiency = cms.vstring( @@ -13,40 +18,6 @@ ), ) -mssmHbbBtagSL40noMu = mssmHbbBtag.clone( - subDirs = ["HLT/HIG/MssmHbb/semileptonic/BtagTrigger/pt40_noMuon"] -) -mssmHbbBtagSL40 = mssmHbbBtag.clone( - subDirs = ["HLT/HIG/MssmHbb/semileptonic/BtagTrigger/pt40/"] -) -mssmHbbBtagSL100 = mssmHbbBtag.clone( - subDirs = ["HLT/HIG/MssmHbb/semileptonic/BtagTrigger/pt100/"] -) -mssmHbbBtagSL200 = mssmHbbBtag.clone( - subDirs = ["HLT/HIG/MssmHbb/semileptonic/BtagTrigger/pt200/"] -) -mssmHbbBtagSL350 = mssmHbbBtag.clone( - subDirs = ["HLT/HIG/MssmHbb/semileptonic/BtagTrigger/pt350/"] -) -mssmHbbBtagAH100 = mssmHbbBtag.clone( - subDirs = ["HLT/HIG/MssmHbb/fullhadronic/BtagTrigger/pt100/"] -) -mssmHbbBtagAH200 = mssmHbbBtag.clone( - subDirs = ["HLT/HIG/MssmHbb/fullhadronic/BtagTrigger/pt200/"] -) -mssmHbbBtagAH350 = mssmHbbBtag.clone( - subDirs = ["HLT/HIG/MssmHbb/fullhadronic/BtagTrigger/pt350/"] -) - - mssmHbbBtagTriggerEfficiency = cms.Sequence( - mssmHbbBtag -# mssmHbbBtagSL40noMu -# + mssmHbbBtagSL40 -# + mssmHbbBtagSL100 -# + mssmHbbBtagSL200 -# + mssmHbbBtagSL350 -# + mssmHbbBtagAH100 -# + mssmHbbBtagAH200 -# + mssmHbbBtagAH350 + mssmHbbBtag ) diff --git a/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_cff.py b/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_cff.py index 7bd5d4a72afbf..b15c1bd3a6c93 100644 --- a/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_cff.py +++ b/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_cff.py @@ -3,12 +3,20 @@ from DQMOffline.Trigger.MssmHbbBtagTriggerMonitor_cfi import * mssmHbbBtagTriggerMonitor = cms.Sequence( - mssmHbbBtagTriggerMonitorSL40noMu + - mssmHbbBtagTriggerMonitorSL40 + - mssmHbbBtagTriggerMonitorSL100 + - mssmHbbBtagTriggerMonitorSL200 + - mssmHbbBtagTriggerMonitorSL350 + - mssmHbbBtagTriggerMonitorAH100 + - mssmHbbBtagTriggerMonitorAH200 + - mssmHbbBtagTriggerMonitorAH350 + mssmHbbDeepCSVBtagTriggerMonitorFH40 + + mssmHbbDeepCSVBtagTriggerMonitorFH100 + + mssmHbbDeepCSVBtagTriggerMonitorFH200 + + mssmHbbDeepCSVBtagTriggerMonitorFH350 + + mssmHbbDeepCSVBtagTriggerMonitorSL40 + + mssmHbbDeepCSVBtagTriggerMonitorSL100 + + mssmHbbDeepCSVBtagTriggerMonitorSL200 + + mssmHbbDeepCSVBtagTriggerMonitorSL350 + + mssmHbbDeepJetBtagTriggerMonitorFH40 + + mssmHbbDeepJetBtagTriggerMonitorFH100 + + mssmHbbDeepJetBtagTriggerMonitorFH200 + + mssmHbbDeepJetBtagTriggerMonitorFH350 + + mssmHbbDeepJetBtagTriggerMonitorSL40 + + mssmHbbDeepJetBtagTriggerMonitorSL100 + + mssmHbbDeepJetBtagTriggerMonitorSL200 + + mssmHbbDeepJetBtagTriggerMonitorSL350 ) diff --git a/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_cfi.py b/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_cfi.py index 58d7ae8f5438e..4ddbde573a1ac 100644 --- a/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_cfi.py +++ b/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_cfi.py @@ -39,74 +39,141 @@ # online btagging monitor -mssmHbbBtagTriggerMonitorSL40noMu = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/semileptonic/BtagTrigger/pt40_noMuon", +## Full hadronic - DeepCSV BTag + +mssmHbbDeepCSVBtagTriggerMonitorFH40 = mssmHbbBtagTriggerMonitor.clone( + dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepCSVBtagTrigger/pt40", jetPtMin = 40, - triggerobjbtag = "hltBTagCaloDeepCSV0p71Single8Jets30", + triggerobjbtag = "hltBTagPFDeepCSV0p71Single8Jets30", histoPSet = dict(jetPt = [40,45,50,55,60,65,70,75,80,85,90,95,100]), - genericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets40_CaloBTagDeepCSV_p71_v*']) + genericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets40_PFBTagDeepCSV_p71_v*']) +) + +mssmHbbDeepCSVBtagTriggerMonitorFH100 = mssmHbbBtagTriggerMonitor.clone( + dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepCSVBtagTrigger/pt100", + jetPtMin = 100, + triggerobjbtag = "hltBTagPFDeepCSV0p71Single8Jets30", + histoPSet = dict(jetPt = [100,110,120,130,140,150,160,170,180,190,200]), + genericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets100_PFBTagDeepCSV_p71_v*']) +) + +mssmHbbDeepCSVBtagTriggerMonitorFH200 = mssmHbbBtagTriggerMonitor.clone( + dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepCSVBtagTrigger/pt200", + jetPtMin = 200, + triggerobjbtag = "hltBTagPFDeepCSV0p71Single8Jets30", + histoPSet = dict(jetPt = [200,210,220,230,240,250,260,270,280,290,300,310,320,330,340,350]), + genericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets200_PFBTagDeepCSV_p71_v*']) +) + +mssmHbbDeepCSVBtagTriggerMonitorFH350 = mssmHbbBtagTriggerMonitor.clone( + dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepCSVBtagTrigger/pt350", + jetPtMin = 350, + triggerobjbtag = "hltBTagPFDeepCSV0p71Single8Jets30", + histoPSet = dict(jetPt = [350,360,370,380,390,400,410,420,430,440,450,460,470,480,490,500,510,520,530,540,550,560,570,580,590,600]), + genericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets350_PFBTagDeepCSV_p71_v*']) ) +## Semileptonic - DeepCSV BTag -mssmHbbBtagTriggerMonitorSL40 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/semileptonic/BtagTrigger/pt40", +mssmHbbDeepCSVBtagTriggerMonitorSL40 = mssmHbbBtagTriggerMonitor.clone( + dirname = "HLT/HIG/MssmHbb/semileptonic/DeepCSVBtagTrigger/pt40", jetPtMin = 40, - triggerobjbtag = "hltBTagCaloDeepCSV0p71Single8Jets30", + triggerobjbtag = "hltBTagPFDeepCSV0p71Single8Jets30", 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*']) + genericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets40_PFBTagDeepCSV_p71_v*']) ) - -mssmHbbBtagTriggerMonitorSL100 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/semileptonic/BtagTrigger/pt100", +mssmHbbDeepCSVBtagTriggerMonitorSL100 = mssmHbbBtagTriggerMonitor.clone( + dirname = "HLT/HIG/MssmHbb/semileptonic/DeepCSVBtagTrigger/pt100", jetPtMin = 100, - triggerobjbtag = "hltBTagCaloDeepCSV0p71Single8Jets30", + triggerobjbtag = "hltBTagPFDeepCSV0p71Single8Jets30", histoPSet = dict(jetPt = [100,110,120,130,140,150,160,170,180,190,200]), - genericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets100_CaloBTagDeepCSV_p71_v*']) + genericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets100_PFBTagDeepCSV_p71_v*']) ) - -mssmHbbBtagTriggerMonitorSL200 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/semileptonic/BtagTrigger/pt200", +mssmHbbDeepCSVBtagTriggerMonitorSL200 = mssmHbbBtagTriggerMonitor.clone( + dirname = "HLT/HIG/MssmHbb/semileptonic/DeepCSVBtagTrigger/pt200", jetPtMin = 200, - triggerobjbtag = "hltBTagCaloDeepCSV0p71Single8Jets30", + triggerobjbtag = "hltBTagPFDeepCSV0p71Single8Jets30", histoPSet = dict(jetPt = [200,210,220,230,240,250,260,270,280,290,300,310,320,330,340,350]), - genericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets200_CaloBTagDeepCSV_p71_v*']) + genericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets200_PFBTagDeepCSV_p71_v*']) ) - -mssmHbbBtagTriggerMonitorSL350 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/semileptonic/BtagTrigger/pt350", +mssmHbbDeepCSVBtagTriggerMonitorSL350 = mssmHbbBtagTriggerMonitor.clone( + dirname = "HLT/HIG/MssmHbb/semileptonic/DeepCSVBtagTrigger/pt350", jetPtMin = 350, - triggerobjbtag = "hltBTagCaloDeepCSV0p71Single8Jets30", + triggerobjbtag = "hltBTagPFDeepCSV0p71Single8Jets30", histoPSet = dict(jetPt = [350,360,370,380,390,400,410,420,430,440,450,460,470,480,490,500,510,520,530,540,550,560,570,580,590,600]), - genericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets350_CaloBTagDeepCSV_p71_v*']) + genericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets350_PFBTagDeepCSV_p71_v*']) ) -mssmHbbBtagTriggerMonitorAH100 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/fullhadronic/BtagTrigger/pt100", +## Full hadronic - DeepJet BTag + +mssmHbbDeepJetBtagTriggerMonitorFH40 = mssmHbbBtagTriggerMonitor.clone( + dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepJetBtagTrigger/pt40", + jetPtMin = 40, + triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", + histoPSet = dict(jetPt = [40,45,50,55,60,65,70,75,80,85,90,95,100]), + genericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets40_PFBTagDeepJet_p71_v*']) +) + +mssmHbbDeepJetBtagTriggerMonitorFH100 = mssmHbbBtagTriggerMonitor.clone( + dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepJetBtagTrigger/pt100", jetPtMin = 100, - triggerobjbtag = "hltBTagCaloDeepCSV0p71Single6Jets80", + triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", histoPSet = dict(jetPt = [100,110,120,130,140,150,160,170,180,190,200]), - genericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets100_CaloBTagDeepCSV_p71_v*']) + genericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets100_PFBTagDeepJet_p71_v*']) ) - -mssmHbbBtagTriggerMonitorAH200 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/fullhadronic/BtagTrigger/pt200", +mssmHbbDeepJetBtagTriggerMonitorFH200 = mssmHbbBtagTriggerMonitor.clone( + dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepJetBtagTrigger/pt200", jetPtMin = 200, - triggerobjbtag = "hltBTagCaloDeepCSV0p71Single6Jets80", + triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", histoPSet = dict(jetPt = [200,210,220,230,240,250,260,270,280,290,300,310,320,330,340,350]), - genericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets200_CaloBTagDeepCSV_p71_v*']) + genericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets200_PFBTagDeepJet_p71_v*']) +) + +mssmHbbDeepJetBtagTriggerMonitorFH350 = mssmHbbBtagTriggerMonitor.clone( + dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepJetBtagTrigger/pt350", + jetPtMin = 350, + triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", + histoPSet = dict(jetPt = [350,360,370,380,390,400,410,420,430,440,450,460,470,480,490,500,510,520,530,540,550,560,570,580,590,600]), + genericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets350_PFBTagDeepJet_p71_v*']) ) -mssmHbbBtagTriggerMonitorAH350 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/fullhadronic/BtagTrigger/pt350", +## Semileptonic - DeepJet BTag + +mssmHbbDeepJetBtagTriggerMonitorSL40 = mssmHbbBtagTriggerMonitor.clone( + dirname = "HLT/HIG/MssmHbb/semileptonic/DeepJetBtagTrigger/pt40", + jetPtMin = 40, + triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", + histoPSet = dict(jetPt = [40,45,50,55,60,65,70,75,80,85,90,95,100]), + genericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets40_PFBTagDeepJet_p71_v*']) +) + +mssmHbbDeepJetBtagTriggerMonitorSL100 = mssmHbbBtagTriggerMonitor.clone( + dirname = "HLT/HIG/MssmHbb/semileptonic/DeepJetBtagTrigger/pt100", + jetPtMin = 100, + triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", + histoPSet = dict(jetPt = [100,110,120,130,140,150,160,170,180,190,200]), + genericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets100_PFBTagDeepJet_p71_v*']) +) + +mssmHbbDeepJetBtagTriggerMonitorSL200 = mssmHbbBtagTriggerMonitor.clone( + dirname = "HLT/HIG/MssmHbb/semileptonic/DeepJetBtagTrigger/pt200", + jetPtMin = 200, + triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", + histoPSet = dict(jetPt = [200,210,220,230,240,250,260,270,280,290,300,310,320,330,340,350]), + genericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets200_PFBTagDeepJet_p71_v*']) +) + +mssmHbbDeepJetBtagTriggerMonitorSL350 = mssmHbbBtagTriggerMonitor.clone( + dirname = "HLT/HIG/MssmHbb/semileptonic/DeepJetBtagTrigger/pt350", jetPtMin = 350, - triggerobjbtag = "hltBTagCaloDeepCSV0p71Single6Jets80", + triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", histoPSet = dict(jetPt = [350,360,370,380,390,400,410,420,430,440,450,460,470,480,490,500,510,520,530,540,550,560,570,580,590,600]), - genericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets350_CaloBTagDeepCSV_p71_v*']) + genericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets350_PFBTagDeepJet_p71_v*']) ) diff --git a/DQMOffline/Trigger/python/MssmHbbMonitoring_cff.py b/DQMOffline/Trigger/python/MssmHbbMonitoring_cff.py index a143002572dfe..62bcc5f56fdba 100644 --- a/DQMOffline/Trigger/python/MssmHbbMonitoring_cff.py +++ b/DQMOffline/Trigger/python/MssmHbbMonitoring_cff.py @@ -4,105 +4,135 @@ #Define MssmHbb specific cuts hltMssmHbbmonitoring = mssmHbbMonitoring.clone( - btagAlgos = ["pfCombinedSecondaryVertexV2BJetTags"], - workingpoint = 0.92, # tight WP - bJetDeltaEtaMax = 1.6, # deta cut between leading bjets - bJetMuDeltaRmax = 0.4 # dR(mu,nbjet) cone; only if #mu >1 -) -# Fully-hadronic MssmHbb -hltMssmHbbmonitoringAL100 = hltMssmHbbmonitoring.clone( - #FolderName = 'HLT/Higgs/MssmHbb/fullhadronic/pt100' - FolderName = 'HLT/HIG/MssmHbb/fullhadronic/pt100', - nmuons = 0, + btagAlgos = ["pfDeepCSVJetTags:probb", "pfDeepCSVJetTags:probbb"], + workingpoint = 0.2783, # medium WP + njets = 2, nbjets = 2, - bjetSelection = 'pt>110 & abs(eta)<2.2', - numGenericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets100MaxDeta1p6_DoubleCaloBTagDeepCSV_p71_v*']), - histoPSet = dict(jetPtBinning = [0,250,280,300,320,360,400,700,1000,1500]) + nmuons = 0, + bJetDeltaEtaMax = 1.6, # deta cut between leading bjets + bJetMuDeltaRmax = 0.4 # dR(mu,nbjet) cone; only if #mu >1 +) +# Fully-hadronic MssmHbb DeepCSV (main) +hltMssmHbbDeepCSVMonitoringFH116 = hltMssmHbbmonitoring.clone( + FolderName = 'HLT/HIG/MssmHbb/fullhadronic/DeepCSV/pt116', + bjetSelection = 'pt>100 & abs(eta)<2.2', + numGenericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets116MaxDeta1p6_DoublePFBTagDeepCSV_p71_v*']), + histoPSet = dict(jetPtBinning = [0,100,150,200,250,300,350,400,500,700,1000,1500]) ) +# Fully-hadronic MssmHbb DeepCSV (backup) +hltMssmHbbDeepCSVMonitoringFH128 = hltMssmHbbmonitoring.clone( + FolderName = 'HLT/HIG/MssmHbb/fullhadronic/DeepCSV/pt128', + bjetSelection = 'pt>100 & abs(eta)<2.2', + numGenericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets128MaxDeta1p6_DoublePFBTagDeepCSV_p71_v*']), + histoPSet = dict(jetPtBinning = [0,100,150,200,250,300,350,400,500,700,1000,1500]) +) + +# Semileptonic MssmHbb DeepCSV (main) +hltMssmHbbDeepCSVMonitoringSL40 = hltMssmHbbmonitoring.clone( + FolderName = 'HLT/HIG/MssmHbb/semileptonic/DeepCSV/pt40', + bjetSelection = 'pt>40 & abs(eta)<2.2', + nmuons = 1, + muoSelection = 'pt>12 & abs(eta)<2.2 & isPFMuon & isGlobalMuon & innerTrack.hitPattern.trackerLayersWithMeasurement>5 & innerTrack.hitPattern.numberOfValidPixelHits>0 & globalTrack.hitPattern.numberOfValidMuonHits>0 & globalTrack.normalizedChi2<10', + numGenericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets40MaxDeta1p6_DoublePFBTagDeepCSV_p71_v1*']), + histoPSet = dict(jetPtBinning = [0,40,60,80,120,160,250,300,350,400,500,1000,1500], + muPtBinning = [0,7,11,12,13,15,20,30,40,50,70,100,150,200,400,700]) -hltMssmHbbmonitoringAL116 = hltMssmHbbmonitoring.clone( - #FolderName = 'HLT/Higgs/MssmHbb/fullhadronic/pt116', - FolderName = 'HLT/HIG/MssmHbb/fullhadronic/pt116', - nmuons = 0, - nbjets = 2, - bjetSelection = 'pt>116 & abs(eta)<2.2', - numGenericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets116MaxDeta1p6_DoubleCaloBTagDeepCSV_p71_v*']), - histoPSet = dict(jetPtBinning = [0,250,280,300,320,360,400,700,1000,1500]) ) +# Semileptonic MssmHbb DeepCSV (backup) +hltMssmHbbDeepCSVMonitoringSL54 = hltMssmHbbmonitoring.clone( + FolderName = 'HLT/HIG/MssmHbb/semileptonic/DeepCSV/pt54', + bjetSelection = 'pt>40 & abs(eta)<2.2', + nmuons = 1, + muoSelection = 'pt>12 & abs(eta)<2.2 & isPFMuon & isGlobalMuon & innerTrack.hitPattern.trackerLayersWithMeasurement>5 & innerTrack.hitPattern.numberOfValidPixelHits>0 & globalTrack.hitPattern.numberOfValidMuonHits>0 & globalTrack.normalizedChi2<10', + numGenericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets54MaxDeta1p6_DoublePFBTagDeepCSV_p71_v1*']), + histoPSet = dict(jetPtBinning = [0,40,60,80,120,160,250,300,350,400,500,1000,1500], + muPtBinning = [0,7,11,12,13,15,20,30,40,50,70,100,150,200,400,700]) +) -hltMssmHbbmonitoringAL128 = hltMssmHbbmonitoring.clone( - #FolderName = 'HLT/Higgs/MssmHbb/fullhadronic/pt128', - FolderName = 'HLT/HIG/MssmHbb/fullhadronic/pt128', - nmuons = 0, - nbjets = 2, - bjetSelection = 'pt>128 & abs(eta)<2.2', - numGenericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets128MaxDeta1p6_DoubleCaloBTagDeepCSV_p71_v*']), - histoPSet = dict(jetPtBinning = [0,250,280,300,320,360,400,700,1000,1500]) + + + +# Fully-hadronic MssmHbb DeepJet (main) +hltMssmHbbDeepJetMonitoringFH116 = hltMssmHbbmonitoring.clone( + FolderName = 'HLT/HIG/MssmHbb/fullhadronic/DeepJet/pt116', + bjetSelection = 'pt>100 & abs(eta)<2.2', + numGenericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets116MaxDeta1p6_DoublePFBTagDeepJet_p71_v*']), + histoPSet = dict(jetPtBinning = [0,100,150,200,250,300,350,400,500,700,1000,1500]) ) +# Fully-hadronic MssmHbb DeepJet (backup) +hltMssmHbbDeepJetMonitoringFH128 = hltMssmHbbmonitoring.clone( + FolderName = 'HLT/HIG/MssmHbb/fullhadronic/DeepJet/pt128', + bjetSelection = 'pt>100 & abs(eta)<2.2', + numGenericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets128MaxDeta1p6_DoublePFBTagDeepJet_p71_v*']), + histoPSet = dict(jetPtBinning = [0,100,150,200,250,300,350,400,500,700,1000,1500]) +) -# Semi-leptonic MssmHbb(mu) -hltMssmHbbmonitoringSL40 = hltMssmHbbmonitoring.clone( - #FolderName = 'HLT/Higgs/MssmHbb/semileptonic/pt40', - FolderName = 'HLT/HIG/MssmHbb/semileptonic/pt40', +# Semileptonic MssmHbb DeepJet (main) +hltMssmHbbDeepJetMonitoringSL40 = hltMssmHbbmonitoring.clone( + FolderName = 'HLT/HIG/MssmHbb/semileptonic/DeepJet/pt40', + bjetSelection = 'pt>40 & abs(eta)<2.2', nmuons = 1, - nbjets = 2, muoSelection = 'pt>12 & abs(eta)<2.2 & isPFMuon & isGlobalMuon & innerTrack.hitPattern.trackerLayersWithMeasurement>5 & innerTrack.hitPattern.numberOfValidPixelHits>0 & globalTrack.hitPattern.numberOfValidMuonHits>0 & globalTrack.normalizedChi2<10', - bjetSelection = 'pt>40 & abs(eta)<2.2', - numGenericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets40MaxDeta1p6_DoubleCaloBTagDeepCSV_p71_v*']), - histoPSet = dict(jetPtBinning = [0,250,280,300,320,360,400,700,1000,1500]) + numGenericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets40MaxDeta1p6_DoublePFBTagDeepJet_p71_v1*']), + histoPSet = dict(jetPtBinning = [0,40,60,80,120,160,250,300,350,400,500,1000,1500], + muPtBinning = [0,7,11,12,13,15,20,30,40,50,70,100,150,200,400,700]) ) -hltMssmHbbmonitoringSL54 = hltMssmHbbmonitoring.clone( - #FolderName = 'HLT/Higgs/MssmHbb/semileptonic/pt54', - FolderName = 'HLT/HIG/MssmHbb/semileptonic/pt54', +# Semileptonic MssmHbb DeepJet (backup) +hltMssmHbbDeepJetMonitoringSL54 = hltMssmHbbmonitoring.clone( + FolderName = 'HLT/HIG/MssmHbb/semileptonic/DeepJet/pt54', + bjetSelection = 'pt>40 & abs(eta)<2.2', nmuons = 1, - nbjets = 2, muoSelection = 'pt>12 & abs(eta)<2.2 & isPFMuon & isGlobalMuon & innerTrack.hitPattern.trackerLayersWithMeasurement>5 & innerTrack.hitPattern.numberOfValidPixelHits>0 & globalTrack.hitPattern.numberOfValidMuonHits>0 & globalTrack.normalizedChi2<10', - bjetSelection = 'pt>54 & abs(eta)<2.2', - numGenericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets54MaxDeta1p6_DoubleCaloBTagDeepCSV_p71_v*']), - histoPSet = dict(jetPtBinning = [0,250,280,300,320,360,400,700,1000,1500]) + numGenericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets54MaxDeta1p6_DoublePFBTagDeepJet_p71_v1*']), + histoPSet = dict(jetPtBinning = [0,40,60,80,120,160,250,300,350,400,500,1000,1500], + muPtBinning = [0,7,11,12,13,15,20,30,40,50,70,100,150,200,400,700]) ) -hltMssmHbbmonitoringSL62 = hltMssmHbbmonitoring.clone( - #FolderName = 'HLT/Higgs/MssmHbb/semileptonic/pt62' - FolderName = 'HLT/HIG/MssmHbb/semileptonic/pt62', + +#control b-tagging +hltMssmHbbMonitoringMu12 = hltMssmHbbmonitoring.clone( + FolderName = 'HLT/HIG/MssmHbb/control/mu12', nmuons = 1, - nbjets = 2, + nbjets = 0, + njets = 0, muoSelection = 'pt>12 & abs(eta)<2.2 & isPFMuon & isGlobalMuon & innerTrack.hitPattern.trackerLayersWithMeasurement>5 & innerTrack.hitPattern.numberOfValidPixelHits>0 & globalTrack.hitPattern.numberOfValidMuonHits>0 & globalTrack.normalizedChi2<10', - bjetSelection = 'pt>62 & abs(eta)<2.2', - numGenericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets62MaxDeta1p6_DoubleCaloBTagDeepCSV_p71_v*']), - histoPSet = dict(jetPtBinning = [0,250,280,300,320,360,400,700,1000,1500]) + numGenericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12eta2p3_v*']), + histoPSet = dict(muPtBinning = [0,7,11,12,13,15,20,30,40,50,70,100,150,200,400,700]) ) - -#control b-tagging -hltMssmHbbmonitoringControl = hltMssmHbbmonitoring.clone( - #FolderName = 'HLT/Higgs/MssmHbb/control/mu12_pt30_nobtag', - FolderName = 'HLT/HIG/MssmHbb/control/mu12_pt30_nobtag', +hltMssmHbbMonitoringMu12Jet40 = hltMssmHbbmonitoring.clone( + FolderName = 'HLT/HIG/MssmHbb/control/mu12jet40', nmuons = 1, nbjets = 0, njets = 1, muoSelection = 'pt>12 & abs(eta)<2.2 & isPFMuon & isGlobalMuon & innerTrack.hitPattern.trackerLayersWithMeasurement>5 & innerTrack.hitPattern.numberOfValidPixelHits>0 & globalTrack.hitPattern.numberOfValidMuonHits>0 & globalTrack.normalizedChi2<10', jetSelection = 'pt>40 & abs(eta)<2.2', - numGenericTriggerEventPSet = dict(hltPaths = ['HLT_SingleJet30_Mu12_SinglePFJet40_v*']), - histoPSet = dict(jetPtBinning = [0,250,280,300,320,360,400,700,1000,1500]) + numGenericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12eta2p3_PFJet40_v*']), + histoPSet = dict(jetPtBinning = [0,40,60,80,120,160,250,300,350,400,500,1000,1500], + muPtBinning = [0,7,11,12,13,15,20,30,40,50,70,100,150,200,400,700]) ) mssmHbbMonitorHLT = cms.Sequence( - #full-hadronic - hltMssmHbbmonitoringAL100 - + hltMssmHbbmonitoringAL116 - + hltMssmHbbmonitoringAL128 - #semileptonic - + hltMssmHbbmonitoringSL40 - + hltMssmHbbmonitoringSL54 - + hltMssmHbbmonitoringSL62 - #control no b-tag - + hltMssmHbbmonitoringControl + #full-hadronic DeepCSV + hltMssmHbbDeepCSVMonitoringFH116 + + hltMssmHbbDeepCSVMonitoringFH128 + + #semileptonic DeepCSV + hltMssmHbbDeepCSVMonitoringSL40 + + hltMssmHbbDeepCSVMonitoringSL54 + + #full-hadronic DeepJet + hltMssmHbbDeepJetMonitoringFH116 + + hltMssmHbbDeepJetMonitoringFH128 + + #semileptonic DeepJet + hltMssmHbbDeepJetMonitoringSL40 + + hltMssmHbbDeepJetMonitoringSL54 + + #muon jet no b-tag + hltMssmHbbMonitoringMu12 + + hltMssmHbbMonitoringMu12Jet40 ) diff --git a/DQMOffline/Trigger/python/MssmHbbMonitoring_cfi.py b/DQMOffline/Trigger/python/MssmHbbMonitoring_cfi.py index 2ba3b5d086836..368ba1af0d1ec 100644 --- a/DQMOffline/Trigger/python/MssmHbbMonitoring_cfi.py +++ b/DQMOffline/Trigger/python/MssmHbbMonitoring_cfi.py @@ -63,9 +63,6 @@ jetEtaBinning = [-2.4,-2.1,-1.5,-0.9,-0.3,0.,0.3,0.9,1.5,2.1,2.4], muEtaBinning = [-2.4,-2.1,-1.5,-0.9,-0.3,0.,0.3,0.9,1.5,2.1,2.4], #pt binning - #elePtBinning = [0,5,10,20,30,40,50,70,100,200,400], - #jetPtBinning = [0,5,10,20,30,40,50,70,100,200,400], - #muPtBinning = [0,5,10,20,30,40,50,70,100,200,400], elePtBinning = [0,3,5,8,15,20,25,30,40,50,60,80,120,200,400,700], jetPtBinning = [0,3,5,8,15,20,25,30,40,50,70,100,150,200,400,700,1000,1500], muPtBinning = [0,3,5,7,10,15,20,30,40,50,70,100,150,200,400,700], @@ -74,9 +71,6 @@ jetEtaBinning2D = [-2.5,-1.5,-0.6,0.,0.6,1.5,2.5], muEtaBinning2D = [-2.5,-1.5,-0.6,0.,0.6,1.5,2.5], #pt binning 2D - #elePtBinning2D = [0,20,30,50,100,200,400], - #jetPtBinning2D = [0,20,30,50,100,200,400], - #muPtBinning2D = [0,20,30,50,100,200,400], elePtBinning2D = [0,15,20,30,40,60,80,100,200,400], jetPtBinning2D = [0,15,20,30,40,60,80,100,200,400], muPtBinning2D = [0,15,20,30,40,60,80,100,200,400], diff --git a/HLTriggerOffline/Higgs/python/hltHiggsValidator_cfi.py b/HLTriggerOffline/Higgs/python/hltHiggsValidator_cfi.py index 61c1b692d631f..72ea1f3e8be30 100644 --- a/HLTriggerOffline/Higgs/python/hltHiggsValidator_cfi.py +++ b/HLTriggerOffline/Higgs/python/hltHiggsValidator_cfi.py @@ -405,22 +405,24 @@ MSSMHbb = cms.PSet( hltPathsToCheck = cms.vstring( - "HLT_DoubleJets100_DoubleBTagCSV_0p92_DoublePFJets100MaxDeta1p6_v", - "HLT_DoubleJets100_DoubleBTagCSV_0p92_DoublePFJets116MaxDeta1p6_v", - "HLT_DoubleJets100_DoubleBTagCSV_0p92_DoublePFJets128MaxDeta1p6_v", + "HLT_DoublePFJets116MaxDeta1p6_DoublePFBTagDeepCSV_p71_v", + "HLT_DoublePFJets128MaxDeta1p6_DoublePFBTagDeepCSV_p71_v", + "HLT_DoublePFJets116MaxDeta1p6_DoublePFBTagDeepJet_p71_v", + "HLT_DoublePFJets128MaxDeta1p6_DoublePFBTagDeepJet_p71_v", ), recJetLabel = cms.string("ak4PFJetsCHS"), jetTagLabel = cms.string("pfCombinedInclusiveSecondaryVertexV2BJetTags"), # -- Analysis specific cuts minCandidates = cms.uint32(3), - NminOneCuts = cms.untracked.vdouble(0, 0, 0, 0.92, 0.92 , 0, 0, 0, 0, 100., 100., 0.0, 0.0), #dEtaqq, mqq, dPhibb, CSV1, CSV2, CSV3, maxCSV_jets, maxCSV_E, MET, pt1, pt2, pt3, pt4 + NminOneCuts = cms.untracked.vdouble(0, 0, 0, 0.3, 0.3 , 0, 0, 0, 0, 100., 100., 0.0, 0.0), #dEtaqq, mqq, dPhibb, CSV1, CSV2, CSV3, maxCSV_jets, maxCSV_E, MET, pt1, pt2, pt3, pt4 ), MSSMHbbmu = cms.PSet( hltPathsToCheck = cms.vstring( - "HLT_DoubleJets30_Mu12_DoubleBTagCSV_0p92_DoublePFJets40MaxDeta1p6_v1", - "HLT_DoubleJets30_Mu12_DoubleBTagCSV_0p92_DoublePFJets54MaxDeta1p6_v1", - "HLT_DoubleJets30_Mu12_DoubleBTagCSV_0p92_DoublePFJets62MaxDeta1p6_v1", + "HLT_Mu12_DoublePFJets40MaxDeta1p6_DoublePFBTagDeepCSV_p71_v1", + "HLT_Mu12_DoublePFJets54MaxDeta1p6_DoublePFBTagDeepCSV_p71_v1", + "HLT_Mu12_DoublePFJets40MaxDeta1p6_DoublePFBTagDeepJet_p71_v1", + "HLT_Mu12_DoublePFJets54MaxDeta1p6_DoublePFBTagDeepJet_p71_v1", ), recMuonLabel = cms.string("muons"), recJetLabel = cms.string("ak4PFJetsCHS"), @@ -429,7 +431,7 @@ minCandidates = cms.uint32(3), Mu_genCut = cms.string("pt > 12 && abs(eta) < 2.3 && abs(pdgId) == 13 && status == 1"), Mu_recCut = cms.string("pt > 12 && abs(eta) < 2.3 && isGlobalMuon"), - NminOneCuts = cms.untracked.vdouble(0, 0, 0, 0.92, 0.92 , 0, 0, 0, 0, 30.0, 30.0, 0.0, 0.0), #dEtaqq, mqq, dPhibb, CSV1, CSV2, CSV3, maxCSV_jets, maxCSV_E, MET, pt1, pt2, pt3, pt4 + NminOneCuts = cms.untracked.vdouble(0, 0, 0, 0.3, 0.3 , 0, 0, 0, 0, 30.0, 30.0, 0.0, 0.0), #dEtaqq, mqq, dPhibb, CSV1, CSV2, CSV3, maxCSV_jets, maxCSV_E, MET, pt1, pt2, pt3, pt4 ), VBFHToInv = cms.PSet( From 1b355d856c9a88e4ef3eaa47fd105bfaf6c737c2 Mon Sep 17 00:00:00 2001 From: Roberval Walsh Date: Tue, 12 Apr 2022 15:10:24 +0200 Subject: [PATCH 2/8] updated offline btagging to use deep algos with multiple probabilities --- .../plugins/TagAndProbeBtagTriggerMonitor.cc | 75 ++++++++++++++----- 1 file changed, 56 insertions(+), 19 deletions(-) diff --git a/DQMOffline/Trigger/plugins/TagAndProbeBtagTriggerMonitor.cc b/DQMOffline/Trigger/plugins/TagAndProbeBtagTriggerMonitor.cc index 9bf1fc00f7286..e34ad0368b943 100644 --- a/DQMOffline/Trigger/plugins/TagAndProbeBtagTriggerMonitor.cc +++ b/DQMOffline/Trigger/plugins/TagAndProbeBtagTriggerMonitor.cc @@ -19,6 +19,7 @@ #include "FWCore/Framework/interface/MakerMacros.h" #include "FWCore/MessageLogger/interface/MessageLogger.h" #include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" +#include "FWCore/Utilities/interface/transform.h" class TagAndProbeBtagTriggerMonitor : public DQMEDAnalyzer { public: @@ -28,6 +29,13 @@ class TagAndProbeBtagTriggerMonitor : public DQMEDAnalyzer { protected: void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override; void analyze(edm::Event const& iEvent, edm::EventSetup const& iSetup) override; + + struct JetRefCompare { + inline bool operator()(const edm::RefToBase& j1, const edm::RefToBase& j2) const { + return (j1.id() < j2.id()) || ((j1.id() == j2.id()) && (j1.key() < j2.key())); + } + }; + typedef std::map, float, JetRefCompare> JetTagMap; private: const std::string folderName_; @@ -50,7 +58,8 @@ class TagAndProbeBtagTriggerMonitor : public DQMEDAnalyzer { edm::InputTag triggerSummaryLabel_; - edm::EDGetTokenT offlineBtagToken_; + std::vector > jetTagTokens_; + edm::EDGetTokenT triggerSummaryToken_; MonitorElement* pt_jet1_; @@ -89,7 +98,9 @@ TagAndProbeBtagTriggerMonitor::TagAndProbeBtagTriggerMonitor(const edm::Paramete probeBtagmin_ = iConfig.getParameter("probeBtagMin"); triggerSummaryLabel_ = iConfig.getParameter("triggerSummary"); triggerSummaryToken_ = consumes(triggerSummaryLabel_); - offlineBtagToken_ = consumes(iConfig.getParameter("offlineBtag")); +// New + jetTagTokens_ = edm::vector_transform(iConfig.getParameter >("btagAlgos"), + [this](edm::InputTag const& tag) { return mayConsume(tag); }); genTriggerEventFlag_ = std::make_unique( iConfig.getParameter("genericTriggerEventPSet"), consumesCollector(), *this); @@ -173,25 +184,51 @@ void TagAndProbeBtagTriggerMonitor::analyze(edm::Event const& iEvent, edm::Event bool match1 = false; bool match2 = false; - edm::Handle offlineJetTagPFHandler; - iEvent.getByToken(offlineBtagToken_, offlineJetTagPFHandler); - - if (!offlineJetTagPFHandler.isValid()) - return; + JetTagMap allJetBTagVals; + for (const auto& jetTagToken : jetTagTokens_) + { + edm::Handle bjetHandle; + iEvent.getByToken(jetTagToken, bjetHandle); + if (not bjetHandle.isValid()) + { + edm::LogWarning("TagAndProbeBtagTriggerMonitor") << "B-Jet handle not valid, will skip event \n"; + return; + } + + const reco::JetTagCollection& bTags = *(bjetHandle.product()); + for (const auto& i_jetTag : bTags) { + const auto& jetRef = i_jetTag.first; + const auto btagVal = i_jetTag.second; + if (not std::isfinite(btagVal)) { + continue; + } + if (allJetBTagVals.find(jetRef) != allJetBTagVals.end()) { + allJetBTagVals.at(jetRef) += btagVal; + } else { + allJetBTagVals.insert(JetTagMap::value_type(jetRef, btagVal)); + } + + } + } // applying selection for event; tag & probe -> selection for all events - if (genTriggerEventFlag_->on() && !genTriggerEventFlag_->accept(iEvent, iSetup)) { - reco::JetTagCollection jettags = *(offlineJetTagPFHandler.product()); - if (jettags.size() > 1) { - const reco::Jet jet1 = *(jettags.key(0).get()); - const reco::Jet jet2 = *(jettags.key(1).get()); - - float btag1 = jettags.value(0); - float btag2 = jettags.value(1); - - if (jet1.pt() > jetPtmin_ && jet2.pt() > jetPtmin_ && fabs(jet1.eta()) < jetEtamax_ && - fabs(jet2.eta()) < jetEtamax_) { - if (btag1 > tagBtagmin_ && btag2 > probeBtagmin_) { + if (genTriggerEventFlag_->on() && genTriggerEventFlag_->accept(iEvent, iSetup)) { + + if (allJetBTagVals.size() > 1) { + + auto jetBTagVal = allJetBTagVals.begin(); + auto jet1 = *dynamic_cast(jetBTagVal->first.get()); + auto btag1 = jetBTagVal->second; + + ++jetBTagVal; + auto jet2 = *dynamic_cast(jetBTagVal->first.get()); + auto btag2 = jetBTagVal->second; + + if (jet1.pt() > jetPtmin_ && jet2.pt() > jetPtmin_ && fabs(jet1.eta()) < jetEtamax_ && fabs(jet2.eta()) < jetEtamax_) + { + if (btag1 > tagBtagmin_ && btag2 > probeBtagmin_) + { + pt_jet1_->Fill(jet1.pt()); pt_jet2_->Fill(jet2.pt()); eta_jet1_->Fill(jet1.eta()); From a8ee3990b45b01b8cba13d7621fbe4aed3a55e5a Mon Sep 17 00:00:00 2001 From: Roberval Walsh Date: Tue, 12 Apr 2022 15:12:14 +0200 Subject: [PATCH 3/8] updated offline btag algos and thresholds; improved histograms binning --- .../python/MssmHbbBtagTriggerMonitor_cfi.py | 43 ++++++++++--------- 1 file changed, 22 insertions(+), 21 deletions(-) diff --git a/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_cfi.py b/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_cfi.py index 4ddbde573a1ac..54fe32c0b2bb4 100644 --- a/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_cfi.py +++ b/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_cfi.py @@ -14,7 +14,8 @@ hltPaths = cms.vstring(), hltDBKey = cms.string(''), errorReplyHlt = cms.bool(False), - verbosityLevel = cms.uint32(1) + verbosityLevel = cms.uint32(1), + andOr = cms.bool(True) ) mssmHbbBtagTriggerMonitor = DQMEDAnalyzer("TagAndProbeBtagTriggerMonitor", @@ -23,16 +24,16 @@ processname = cms.string("HLT"), jetPtMin = cms.double(40), jetEtaMax = cms.double(2.2), - tagBtagMin = cms.double(0.80), - probeBtagMin = cms.double(0.45), + tagBtagMin = cms.double(0.7665), + probeBtagMin = cms.double(0.4168), triggerobjbtag = cms.string("hltBTagCaloDeepCSV0p71Single8Jets30"), triggerSummary = cms.InputTag("hltTriggerSummaryAOD","","HLT"), - offlineBtag = cms.InputTag("pfCombinedInclusiveSecondaryVertexV2BJetTags"), + btagAlgos = cms.VInputTag(cms.InputTag("pfDeepCSVJetTags:probb"), cms.InputTag("pfDeepCSVJetTags:probbb")), 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), + jetBtag = cms.vdouble(0.0,0.10,0.20,0.30,0.40,0.45,0.50,0.55,0.60,0.65,0.70,0.72,0.74,0.76,0.78,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(), ) @@ -45,7 +46,7 @@ dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepCSVBtagTrigger/pt40", jetPtMin = 40, triggerobjbtag = "hltBTagPFDeepCSV0p71Single8Jets30", - histoPSet = dict(jetPt = [40,45,50,55,60,65,70,75,80,85,90,95,100]), + 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*']) ) @@ -53,7 +54,7 @@ dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepCSVBtagTrigger/pt100", jetPtMin = 100, triggerobjbtag = "hltBTagPFDeepCSV0p71Single8Jets30", - histoPSet = dict(jetPt = [100,110,120,130,140,150,160,170,180,190,200]), + 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(hltPaths = ['HLT_DoublePFJets100_PFBTagDeepCSV_p71_v*']) ) @@ -61,7 +62,7 @@ dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepCSVBtagTrigger/pt200", jetPtMin = 200, triggerobjbtag = "hltBTagPFDeepCSV0p71Single8Jets30", - histoPSet = dict(jetPt = [200,210,220,230,240,250,260,270,280,290,300,310,320,330,340,350]), + histoPSet = dict(jetPt = [200,210,220,230,240,250,260,270,280,290,300,310,320,330,340,350,360,380,400,420,440,460,500,550,600,700,800,900,1000]), genericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets200_PFBTagDeepCSV_p71_v*']) ) @@ -69,7 +70,7 @@ dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepCSVBtagTrigger/pt350", jetPtMin = 350, triggerobjbtag = "hltBTagPFDeepCSV0p71Single8Jets30", - histoPSet = dict(jetPt = [350,360,370,380,390,400,410,420,430,440,450,460,470,480,490,500,510,520,530,540,550,560,570,580,590,600]), + histoPSet = dict(jetPt = [350,360,370,380,390,400,410,420,430,440,450,460,470,480,490,500,510,520,530,540,550,560,570,580,590,600,650,700,750,800,900,1000]), genericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets350_PFBTagDeepCSV_p71_v*']) ) @@ -79,7 +80,7 @@ dirname = "HLT/HIG/MssmHbb/semileptonic/DeepCSVBtagTrigger/pt40", jetPtMin = 40, triggerobjbtag = "hltBTagPFDeepCSV0p71Single8Jets30", - histoPSet = dict(jetPt = [40,45,50,55,60,65,70,75,80,85,90,95,100]), + 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_Mu12_DoublePFJets40_PFBTagDeepCSV_p71_v*']) ) @@ -87,7 +88,7 @@ dirname = "HLT/HIG/MssmHbb/semileptonic/DeepCSVBtagTrigger/pt100", jetPtMin = 100, triggerobjbtag = "hltBTagPFDeepCSV0p71Single8Jets30", - histoPSet = dict(jetPt = [100,110,120,130,140,150,160,170,180,190,200]), + 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(hltPaths = ['HLT_Mu12_DoublePFJets100_PFBTagDeepCSV_p71_v*']) ) @@ -95,7 +96,7 @@ dirname = "HLT/HIG/MssmHbb/semileptonic/DeepCSVBtagTrigger/pt200", jetPtMin = 200, triggerobjbtag = "hltBTagPFDeepCSV0p71Single8Jets30", - histoPSet = dict(jetPt = [200,210,220,230,240,250,260,270,280,290,300,310,320,330,340,350]), + histoPSet = dict(jetPt = [200,210,220,230,240,250,260,270,280,290,300,310,320,330,340,350,360,380,400,420,440,460,500,550,600,700,800,900,1000]), genericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets200_PFBTagDeepCSV_p71_v*']) ) @@ -103,7 +104,7 @@ dirname = "HLT/HIG/MssmHbb/semileptonic/DeepCSVBtagTrigger/pt350", jetPtMin = 350, triggerobjbtag = "hltBTagPFDeepCSV0p71Single8Jets30", - histoPSet = dict(jetPt = [350,360,370,380,390,400,410,420,430,440,450,460,470,480,490,500,510,520,530,540,550,560,570,580,590,600]), + histoPSet = dict(jetPt = [350,360,370,380,390,400,410,420,430,440,450,460,470,480,490,500,510,520,530,540,550,560,570,580,590,600,650,700,750,800,900,1000]), genericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets350_PFBTagDeepCSV_p71_v*']) ) @@ -114,7 +115,7 @@ dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepJetBtagTrigger/pt40", jetPtMin = 40, triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", - histoPSet = dict(jetPt = [40,45,50,55,60,65,70,75,80,85,90,95,100]), + 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_PFBTagDeepJet_p71_v*']) ) @@ -122,7 +123,7 @@ dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepJetBtagTrigger/pt100", jetPtMin = 100, triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", - histoPSet = dict(jetPt = [100,110,120,130,140,150,160,170,180,190,200]), + 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(hltPaths = ['HLT_DoublePFJets100_PFBTagDeepJet_p71_v*']) ) @@ -130,7 +131,7 @@ dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepJetBtagTrigger/pt200", jetPtMin = 200, triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", - histoPSet = dict(jetPt = [200,210,220,230,240,250,260,270,280,290,300,310,320,330,340,350]), + histoPSet = dict(jetPt = [200,210,220,230,240,250,260,270,280,290,300,310,320,330,340,350,360,380,400,420,440,460,500,550,600,700,800,900,1000]), genericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets200_PFBTagDeepJet_p71_v*']) ) @@ -138,7 +139,7 @@ dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepJetBtagTrigger/pt350", jetPtMin = 350, triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", - histoPSet = dict(jetPt = [350,360,370,380,390,400,410,420,430,440,450,460,470,480,490,500,510,520,530,540,550,560,570,580,590,600]), + histoPSet = dict(jetPt = [350,360,370,380,390,400,410,420,430,440,450,460,470,480,490,500,510,520,530,540,550,560,570,580,590,600,650,700,750,800,900,1000]), genericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets350_PFBTagDeepJet_p71_v*']) ) @@ -149,7 +150,7 @@ dirname = "HLT/HIG/MssmHbb/semileptonic/DeepJetBtagTrigger/pt40", jetPtMin = 40, triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", - histoPSet = dict(jetPt = [40,45,50,55,60,65,70,75,80,85,90,95,100]), + 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_Mu12_DoublePFJets40_PFBTagDeepJet_p71_v*']) ) @@ -157,7 +158,7 @@ dirname = "HLT/HIG/MssmHbb/semileptonic/DeepJetBtagTrigger/pt100", jetPtMin = 100, triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", - histoPSet = dict(jetPt = [100,110,120,130,140,150,160,170,180,190,200]), + 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(hltPaths = ['HLT_Mu12_DoublePFJets100_PFBTagDeepJet_p71_v*']) ) @@ -165,7 +166,7 @@ dirname = "HLT/HIG/MssmHbb/semileptonic/DeepJetBtagTrigger/pt200", jetPtMin = 200, triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", - histoPSet = dict(jetPt = [200,210,220,230,240,250,260,270,280,290,300,310,320,330,340,350]), + histoPSet = dict(jetPt = [200,210,220,230,240,250,260,270,280,290,300,310,320,330,340,350,360,380,400,420,440,460,500,550,600,700,800,900,1000]), genericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets200_PFBTagDeepJet_p71_v*']) ) @@ -173,7 +174,7 @@ dirname = "HLT/HIG/MssmHbb/semileptonic/DeepJetBtagTrigger/pt350", jetPtMin = 350, triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", - histoPSet = dict(jetPt = [350,360,370,380,390,400,410,420,430,440,450,460,470,480,490,500,510,520,530,540,550,560,570,580,590,600]), + histoPSet = dict(jetPt = [350,360,370,380,390,400,410,420,430,440,450,460,470,480,490,500,510,520,530,540,550,560,570,580,590,600,650,700,750,800,900,1000]), genericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets350_PFBTagDeepJet_p71_v*']) ) From f3720c6c5a51f3e1432e7e1386a8922bfdcb395c Mon Sep 17 00:00:00 2001 From: Roberval Walsh Date: Tue, 12 Apr 2022 16:28:35 +0200 Subject: [PATCH 4/8] fix deltaR condition; cleaning --- .../Trigger/plugins/TagAndProbeBtagTriggerMonitor.cc | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/DQMOffline/Trigger/plugins/TagAndProbeBtagTriggerMonitor.cc b/DQMOffline/Trigger/plugins/TagAndProbeBtagTriggerMonitor.cc index e34ad0368b943..067f0728921c6 100644 --- a/DQMOffline/Trigger/plugins/TagAndProbeBtagTriggerMonitor.cc +++ b/DQMOffline/Trigger/plugins/TagAndProbeBtagTriggerMonitor.cc @@ -237,10 +237,6 @@ void TagAndProbeBtagTriggerMonitor::analyze(edm::Event const& iEvent, edm::Event phi_jet2_->Fill(jet2.phi()); eta_phi_jet1_->Fill(jet1.eta(), jet1.phi()); eta_phi_jet2_->Fill(jet2.eta(), jet2.phi()); - if (btag1 < 0) - btag1 = -0.5; - if (btag2 < 0) - btag2 = -0.5; discr_offline_btag_jet1_->Fill(btag1); discr_offline_btag_jet2_->Fill(btag2); @@ -259,9 +255,9 @@ void TagAndProbeBtagTriggerMonitor::analyze(edm::Event const& iEvent, edm::Event } } for (auto const& to : onlinebtags) { - if (reco::deltaR(jet1, to)) + if (reco::deltaR(jet1, to) < 0.3) match1 = true; - if (reco::deltaR(jet2, to)) + if (reco::deltaR(jet2, to) < 0.3) match2 = true; } From ef09e61c2b4b8c93c04d850902a3076def3ef263 Mon Sep 17 00:00:00 2001 From: Roberval Walsh Date: Wed, 13 Apr 2022 11:41:35 +0200 Subject: [PATCH 5/8] renamed directories --- .../MssmHbbBtagTriggerMonitor_Client_cfi.py | 5 +-- .../python/MssmHbbBtagTriggerMonitor_cfi.py | 34 +++++++++---------- .../python/MssmHbbMonitoring_Client_cfi.py | 2 +- .../Trigger/python/MssmHbbMonitoring_cff.py | 20 +++++------ 4 files changed, 29 insertions(+), 32 deletions(-) diff --git a/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_Client_cfi.py b/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_Client_cfi.py index 0401f838c8ca9..cdd096e975fdc 100644 --- a/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_Client_cfi.py +++ b/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_Client_cfi.py @@ -4,10 +4,7 @@ mssmHbbBtag = DQMEDHarvester("DQMGenericClient", subDirs = cms.untracked.vstring( - "HLT/HIG/MssmHbb/fullhadronic/DeepCSVBtagTrigger/*", - "HLT/HIG/MssmHbb/semileptonic/DeepCSVBtagTrigger/*", - "HLT/HIG/MssmHbb/fullhadronic/DeepJetBtagTrigger/*", - "HLT/HIG/MssmHbb/semileptonic/DeepJetBtagTrigger/*", + "HLT/HIG/MssmHbb/control/btag/*", ), verbose = cms.untracked.uint32(0), # Set to 2 for all messages resolution = cms.vstring(), diff --git a/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_cfi.py b/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_cfi.py index 54fe32c0b2bb4..f3f7bef48f829 100644 --- a/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_cfi.py +++ b/DQMOffline/Trigger/python/MssmHbbBtagTriggerMonitor_cfi.py @@ -15,7 +15,7 @@ hltDBKey = cms.string(''), errorReplyHlt = cms.bool(False), verbosityLevel = cms.uint32(1), - andOr = cms.bool(True) + andOr = cms.bool(False) ) mssmHbbBtagTriggerMonitor = DQMEDAnalyzer("TagAndProbeBtagTriggerMonitor", @@ -43,7 +43,7 @@ ## Full hadronic - DeepCSV BTag mssmHbbDeepCSVBtagTriggerMonitorFH40 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepCSVBtagTrigger/pt40", + 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]), @@ -51,7 +51,7 @@ ) mssmHbbDeepCSVBtagTriggerMonitorFH100 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepCSVBtagTrigger/pt100", + 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]), @@ -59,7 +59,7 @@ ) mssmHbbDeepCSVBtagTriggerMonitorFH200 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepCSVBtagTrigger/pt200", + dirname = "HLT/HIG/MssmHbb/control/btag/HLT_DoublePFJets200_PFBTagDeepCSV_p71", jetPtMin = 200, triggerobjbtag = "hltBTagPFDeepCSV0p71Single8Jets30", histoPSet = dict(jetPt = [200,210,220,230,240,250,260,270,280,290,300,310,320,330,340,350,360,380,400,420,440,460,500,550,600,700,800,900,1000]), @@ -67,7 +67,7 @@ ) mssmHbbDeepCSVBtagTriggerMonitorFH350 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepCSVBtagTrigger/pt350", + dirname = "HLT/HIG/MssmHbb/control/btag/HLT_DoublePFJets350_PFBTagDeepCSV_p71", jetPtMin = 350, triggerobjbtag = "hltBTagPFDeepCSV0p71Single8Jets30", histoPSet = dict(jetPt = [350,360,370,380,390,400,410,420,430,440,450,460,470,480,490,500,510,520,530,540,550,560,570,580,590,600,650,700,750,800,900,1000]), @@ -77,7 +77,7 @@ ## Semileptonic - DeepCSV BTag mssmHbbDeepCSVBtagTriggerMonitorSL40 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/semileptonic/DeepCSVBtagTrigger/pt40", + dirname = "HLT/HIG/MssmHbb/control/btag/HLT_Mu12_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]), @@ -85,7 +85,7 @@ ) mssmHbbDeepCSVBtagTriggerMonitorSL100 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/semileptonic/DeepCSVBtagTrigger/pt100", + dirname = "HLT/HIG/MssmHbb/control/btag/HLT_Mu12_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]), @@ -93,7 +93,7 @@ ) mssmHbbDeepCSVBtagTriggerMonitorSL200 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/semileptonic/DeepCSVBtagTrigger/pt200", + dirname = "HLT/HIG/MssmHbb/control/btag/HLT_Mu12_DoublePFJets200_PFBTagDeepCSV_p71", jetPtMin = 200, triggerobjbtag = "hltBTagPFDeepCSV0p71Single8Jets30", histoPSet = dict(jetPt = [200,210,220,230,240,250,260,270,280,290,300,310,320,330,340,350,360,380,400,420,440,460,500,550,600,700,800,900,1000]), @@ -101,7 +101,7 @@ ) mssmHbbDeepCSVBtagTriggerMonitorSL350 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/semileptonic/DeepCSVBtagTrigger/pt350", + dirname = "HLT/HIG/MssmHbb/control/btag/HLT_Mu12_DoublePFJets350_PFBTagDeepCSV_p71", jetPtMin = 350, triggerobjbtag = "hltBTagPFDeepCSV0p71Single8Jets30", histoPSet = dict(jetPt = [350,360,370,380,390,400,410,420,430,440,450,460,470,480,490,500,510,520,530,540,550,560,570,580,590,600,650,700,750,800,900,1000]), @@ -112,7 +112,7 @@ ## Full hadronic - DeepJet BTag mssmHbbDeepJetBtagTriggerMonitorFH40 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepJetBtagTrigger/pt40", + dirname = "HLT/HIG/MssmHbb/control/btag/HLT_DoublePFJets40_PFBTagDeepJet_p71", jetPtMin = 40, triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", 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]), @@ -120,7 +120,7 @@ ) mssmHbbDeepJetBtagTriggerMonitorFH100 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepJetBtagTrigger/pt100", + dirname = "HLT/HIG/MssmHbb/control/btag/HLT_DoublePFJets100_PFBTagDeepJet_p71", jetPtMin = 100, triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", 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]), @@ -128,7 +128,7 @@ ) mssmHbbDeepJetBtagTriggerMonitorFH200 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepJetBtagTrigger/pt200", + dirname = "HLT/HIG/MssmHbb/control/btag/HLT_DoublePFJets200_PFBTagDeepJet_p71", jetPtMin = 200, triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", histoPSet = dict(jetPt = [200,210,220,230,240,250,260,270,280,290,300,310,320,330,340,350,360,380,400,420,440,460,500,550,600,700,800,900,1000]), @@ -136,7 +136,7 @@ ) mssmHbbDeepJetBtagTriggerMonitorFH350 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/fullhadronic/DeepJetBtagTrigger/pt350", + dirname = "HLT/HIG/MssmHbb/control/btag/HLT_DoublePFJets350_PFBTagDeepJet_p71", jetPtMin = 350, triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", histoPSet = dict(jetPt = [350,360,370,380,390,400,410,420,430,440,450,460,470,480,490,500,510,520,530,540,550,560,570,580,590,600,650,700,750,800,900,1000]), @@ -147,7 +147,7 @@ ## Semileptonic - DeepJet BTag mssmHbbDeepJetBtagTriggerMonitorSL40 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/semileptonic/DeepJetBtagTrigger/pt40", + dirname = "HLT/HIG/MssmHbb/control/btag/HLT_Mu12_DoublePFJets40_PFBTagDeepJet_p71", jetPtMin = 40, triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", 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]), @@ -155,7 +155,7 @@ ) mssmHbbDeepJetBtagTriggerMonitorSL100 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/semileptonic/DeepJetBtagTrigger/pt100", + dirname = "HLT/HIG/MssmHbb/control/btag/HLT_Mu12_DoublePFJets100_PFBTagDeepJet_p71", jetPtMin = 100, triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", 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]), @@ -163,7 +163,7 @@ ) mssmHbbDeepJetBtagTriggerMonitorSL200 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/semileptonic/DeepJetBtagTrigger/pt200", + dirname = "HLT/HIG/MssmHbb/control/btag/HLT_Mu12_DoublePFJets200_PFBTagDeepJet_p71", jetPtMin = 200, triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", histoPSet = dict(jetPt = [200,210,220,230,240,250,260,270,280,290,300,310,320,330,340,350,360,380,400,420,440,460,500,550,600,700,800,900,1000]), @@ -171,7 +171,7 @@ ) mssmHbbDeepJetBtagTriggerMonitorSL350 = mssmHbbBtagTriggerMonitor.clone( - dirname = "HLT/HIG/MssmHbb/semileptonic/DeepJetBtagTrigger/pt350", + dirname = "HLT/HIG/MssmHbb/control/btag/HLT_Mu12_DoublePFJets350_PFBTagDeepJet_p71", jetPtMin = 350, triggerobjbtag = "hltBTagPFDeepJet0p71Single8Jets30", histoPSet = dict(jetPt = [350,360,370,380,390,400,410,420,430,440,450,460,470,480,490,500,510,520,530,540,550,560,570,580,590,600,650,700,750,800,900,1000]), diff --git a/DQMOffline/Trigger/python/MssmHbbMonitoring_Client_cfi.py b/DQMOffline/Trigger/python/MssmHbbMonitoring_Client_cfi.py index 8b7775d9c7ec0..360772350a7a8 100644 --- a/DQMOffline/Trigger/python/MssmHbbMonitoring_Client_cfi.py +++ b/DQMOffline/Trigger/python/MssmHbbMonitoring_Client_cfi.py @@ -79,7 +79,7 @@ ) MssmHbbmuHLTcontrolEfficiency = DQMEDHarvester("DQMGenericClient", - subDirs = cms.untracked.vstring("HLT/HIG/MssmHbb/control/*"), + subDirs = cms.untracked.vstring("HLT/HIG/MssmHbb/control/muon/*"), verbose = cms.untracked.uint32(0), # Set to 2 for all messages resolution = cms.vstring(), efficiency = cms.vstring( diff --git a/DQMOffline/Trigger/python/MssmHbbMonitoring_cff.py b/DQMOffline/Trigger/python/MssmHbbMonitoring_cff.py index 62bcc5f56fdba..d97ee78fdc614 100644 --- a/DQMOffline/Trigger/python/MssmHbbMonitoring_cff.py +++ b/DQMOffline/Trigger/python/MssmHbbMonitoring_cff.py @@ -14,7 +14,7 @@ ) # Fully-hadronic MssmHbb DeepCSV (main) hltMssmHbbDeepCSVMonitoringFH116 = hltMssmHbbmonitoring.clone( - FolderName = 'HLT/HIG/MssmHbb/fullhadronic/DeepCSV/pt116', + FolderName = 'HLT/HIG/MssmHbb/fullhadronic/HLT_DoublePFJets116MaxDeta1p6_DoublePFBTagDeepCSV_p71', bjetSelection = 'pt>100 & abs(eta)<2.2', numGenericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets116MaxDeta1p6_DoublePFBTagDeepCSV_p71_v*']), histoPSet = dict(jetPtBinning = [0,100,150,200,250,300,350,400,500,700,1000,1500]) @@ -22,7 +22,7 @@ # Fully-hadronic MssmHbb DeepCSV (backup) hltMssmHbbDeepCSVMonitoringFH128 = hltMssmHbbmonitoring.clone( - FolderName = 'HLT/HIG/MssmHbb/fullhadronic/DeepCSV/pt128', + FolderName = 'HLT/HIG/MssmHbb/fullhadronic/HLT_DoublePFJets128MaxDeta1p6_DoublePFBTagDeepCSV_p71', bjetSelection = 'pt>100 & abs(eta)<2.2', numGenericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets128MaxDeta1p6_DoublePFBTagDeepCSV_p71_v*']), histoPSet = dict(jetPtBinning = [0,100,150,200,250,300,350,400,500,700,1000,1500]) @@ -30,7 +30,7 @@ # Semileptonic MssmHbb DeepCSV (main) hltMssmHbbDeepCSVMonitoringSL40 = hltMssmHbbmonitoring.clone( - FolderName = 'HLT/HIG/MssmHbb/semileptonic/DeepCSV/pt40', + FolderName = 'HLT/HIG/MssmHbb/semileptonic/HLT_Mu12_DoublePFJets40MaxDeta1p6_DoublePFBTagDeepCSV_p71', bjetSelection = 'pt>40 & abs(eta)<2.2', nmuons = 1, muoSelection = 'pt>12 & abs(eta)<2.2 & isPFMuon & isGlobalMuon & innerTrack.hitPattern.trackerLayersWithMeasurement>5 & innerTrack.hitPattern.numberOfValidPixelHits>0 & globalTrack.hitPattern.numberOfValidMuonHits>0 & globalTrack.normalizedChi2<10', @@ -42,7 +42,7 @@ # Semileptonic MssmHbb DeepCSV (backup) hltMssmHbbDeepCSVMonitoringSL54 = hltMssmHbbmonitoring.clone( - FolderName = 'HLT/HIG/MssmHbb/semileptonic/DeepCSV/pt54', + FolderName = 'HLT/HIG/MssmHbb/semileptonic/HLT_Mu12_DoublePFJets54MaxDeta1p6_DoublePFBTagDeepCSV_p71', bjetSelection = 'pt>40 & abs(eta)<2.2', nmuons = 1, muoSelection = 'pt>12 & abs(eta)<2.2 & isPFMuon & isGlobalMuon & innerTrack.hitPattern.trackerLayersWithMeasurement>5 & innerTrack.hitPattern.numberOfValidPixelHits>0 & globalTrack.hitPattern.numberOfValidMuonHits>0 & globalTrack.normalizedChi2<10', @@ -56,7 +56,7 @@ # Fully-hadronic MssmHbb DeepJet (main) hltMssmHbbDeepJetMonitoringFH116 = hltMssmHbbmonitoring.clone( - FolderName = 'HLT/HIG/MssmHbb/fullhadronic/DeepJet/pt116', + FolderName = 'HLT/HIG/MssmHbb/fullhadronic/HLT_DoublePFJets116MaxDeta1p6_DoublePFBTagDeepJet_p71', bjetSelection = 'pt>100 & abs(eta)<2.2', numGenericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets116MaxDeta1p6_DoublePFBTagDeepJet_p71_v*']), histoPSet = dict(jetPtBinning = [0,100,150,200,250,300,350,400,500,700,1000,1500]) @@ -64,7 +64,7 @@ # Fully-hadronic MssmHbb DeepJet (backup) hltMssmHbbDeepJetMonitoringFH128 = hltMssmHbbmonitoring.clone( - FolderName = 'HLT/HIG/MssmHbb/fullhadronic/DeepJet/pt128', + FolderName = 'HLT/HIG/MssmHbb/fullhadronic/HLT_DoublePFJets128MaxDeta1p6_DoublePFBTagDeepJet_p71', bjetSelection = 'pt>100 & abs(eta)<2.2', numGenericTriggerEventPSet = dict(hltPaths = ['HLT_DoublePFJets128MaxDeta1p6_DoublePFBTagDeepJet_p71_v*']), histoPSet = dict(jetPtBinning = [0,100,150,200,250,300,350,400,500,700,1000,1500]) @@ -72,7 +72,7 @@ # Semileptonic MssmHbb DeepJet (main) hltMssmHbbDeepJetMonitoringSL40 = hltMssmHbbmonitoring.clone( - FolderName = 'HLT/HIG/MssmHbb/semileptonic/DeepJet/pt40', + FolderName = 'HLT/HIG/MssmHbb/semileptonic/HLT_Mu12_DoublePFJets40MaxDeta1p6_DoublePFBTagDeepJet_p71', bjetSelection = 'pt>40 & abs(eta)<2.2', nmuons = 1, muoSelection = 'pt>12 & abs(eta)<2.2 & isPFMuon & isGlobalMuon & innerTrack.hitPattern.trackerLayersWithMeasurement>5 & innerTrack.hitPattern.numberOfValidPixelHits>0 & globalTrack.hitPattern.numberOfValidMuonHits>0 & globalTrack.normalizedChi2<10', @@ -83,7 +83,7 @@ # Semileptonic MssmHbb DeepJet (backup) hltMssmHbbDeepJetMonitoringSL54 = hltMssmHbbmonitoring.clone( - FolderName = 'HLT/HIG/MssmHbb/semileptonic/DeepJet/pt54', + FolderName = 'HLT/HIG/MssmHbb/semileptonic/HLT_Mu12_DoublePFJets54MaxDeta1p6_DoublePFBTagDeepJet_p71', bjetSelection = 'pt>40 & abs(eta)<2.2', nmuons = 1, muoSelection = 'pt>12 & abs(eta)<2.2 & isPFMuon & isGlobalMuon & innerTrack.hitPattern.trackerLayersWithMeasurement>5 & innerTrack.hitPattern.numberOfValidPixelHits>0 & globalTrack.hitPattern.numberOfValidMuonHits>0 & globalTrack.normalizedChi2<10', @@ -96,7 +96,7 @@ #control b-tagging hltMssmHbbMonitoringMu12 = hltMssmHbbmonitoring.clone( - FolderName = 'HLT/HIG/MssmHbb/control/mu12', + FolderName = 'HLT/HIG/MssmHbb/control/muon/HLT_Mu12eta2p3', nmuons = 1, nbjets = 0, njets = 0, @@ -106,7 +106,7 @@ ) hltMssmHbbMonitoringMu12Jet40 = hltMssmHbbmonitoring.clone( - FolderName = 'HLT/HIG/MssmHbb/control/mu12jet40', + FolderName = 'HLT/HIG/MssmHbb/control/muon/HLT_Mu12eta2p3_PFJet40', nmuons = 1, nbjets = 0, njets = 1, From b5cb7346d74502038541e160f5d4b24eea212139 Mon Sep 17 00:00:00 2001 From: Roberval Walsh Date: Mon, 25 Apr 2022 13:27:00 +0200 Subject: [PATCH 6/8] scram build code-format applied --- .../plugins/TagAndProbeBtagTriggerMonitor.cc | 52 ++++++++----------- 1 file changed, 23 insertions(+), 29 deletions(-) diff --git a/DQMOffline/Trigger/plugins/TagAndProbeBtagTriggerMonitor.cc b/DQMOffline/Trigger/plugins/TagAndProbeBtagTriggerMonitor.cc index 067f0728921c6..8f7f73e5351ea 100644 --- a/DQMOffline/Trigger/plugins/TagAndProbeBtagTriggerMonitor.cc +++ b/DQMOffline/Trigger/plugins/TagAndProbeBtagTriggerMonitor.cc @@ -29,7 +29,7 @@ class TagAndProbeBtagTriggerMonitor : public DQMEDAnalyzer { protected: void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override; void analyze(edm::Event const& iEvent, edm::EventSetup const& iSetup) override; - + struct JetRefCompare { inline bool operator()(const edm::RefToBase& j1, const edm::RefToBase& j2) const { return (j1.id() < j2.id()) || ((j1.id() == j2.id()) && (j1.key() < j2.key())); @@ -59,7 +59,7 @@ class TagAndProbeBtagTriggerMonitor : public DQMEDAnalyzer { edm::InputTag triggerSummaryLabel_; std::vector > jetTagTokens_; - + edm::EDGetTokenT triggerSummaryToken_; MonitorElement* pt_jet1_; @@ -98,9 +98,10 @@ TagAndProbeBtagTriggerMonitor::TagAndProbeBtagTriggerMonitor(const edm::Paramete probeBtagmin_ = iConfig.getParameter("probeBtagMin"); triggerSummaryLabel_ = iConfig.getParameter("triggerSummary"); triggerSummaryToken_ = consumes(triggerSummaryLabel_); -// New - jetTagTokens_ = edm::vector_transform(iConfig.getParameter >("btagAlgos"), - [this](edm::InputTag const& tag) { return mayConsume(tag); }); + // New + jetTagTokens_ = + edm::vector_transform(iConfig.getParameter >("btagAlgos"), + [this](edm::InputTag const& tag) { return mayConsume(tag); }); genTriggerEventFlag_ = std::make_unique( iConfig.getParameter("genericTriggerEventPSet"), consumesCollector(), *this); @@ -185,50 +186,43 @@ void TagAndProbeBtagTriggerMonitor::analyze(edm::Event const& iEvent, edm::Event bool match2 = false; JetTagMap allJetBTagVals; - for (const auto& jetTagToken : jetTagTokens_) - { + for (const auto& jetTagToken : jetTagTokens_) { edm::Handle bjetHandle; iEvent.getByToken(jetTagToken, bjetHandle); - if (not bjetHandle.isValid()) - { + if (not bjetHandle.isValid()) { edm::LogWarning("TagAndProbeBtagTriggerMonitor") << "B-Jet handle not valid, will skip event \n"; return; } - + const reco::JetTagCollection& bTags = *(bjetHandle.product()); for (const auto& i_jetTag : bTags) { - const auto& jetRef = i_jetTag.first; - const auto btagVal = i_jetTag.second; - if (not std::isfinite(btagVal)) { - continue; - } - if (allJetBTagVals.find(jetRef) != allJetBTagVals.end()) { - allJetBTagVals.at(jetRef) += btagVal; - } else { - allJetBTagVals.insert(JetTagMap::value_type(jetRef, btagVal)); - } - + const auto& jetRef = i_jetTag.first; + const auto btagVal = i_jetTag.second; + if (not std::isfinite(btagVal)) { + continue; + } + if (allJetBTagVals.find(jetRef) != allJetBTagVals.end()) { + allJetBTagVals.at(jetRef) += btagVal; + } else { + allJetBTagVals.insert(JetTagMap::value_type(jetRef, btagVal)); + } } } // applying selection for event; tag & probe -> selection for all events if (genTriggerEventFlag_->on() && genTriggerEventFlag_->accept(iEvent, iSetup)) { - if (allJetBTagVals.size() > 1) { - auto jetBTagVal = allJetBTagVals.begin(); auto jet1 = *dynamic_cast(jetBTagVal->first.get()); auto btag1 = jetBTagVal->second; - + ++jetBTagVal; auto jet2 = *dynamic_cast(jetBTagVal->first.get()); auto btag2 = jetBTagVal->second; - if (jet1.pt() > jetPtmin_ && jet2.pt() > jetPtmin_ && fabs(jet1.eta()) < jetEtamax_ && fabs(jet2.eta()) < jetEtamax_) - { - if (btag1 > tagBtagmin_ && btag2 > probeBtagmin_) - { - + if (jet1.pt() > jetPtmin_ && jet2.pt() > jetPtmin_ && fabs(jet1.eta()) < jetEtamax_ && + fabs(jet2.eta()) < jetEtamax_) { + if (btag1 > tagBtagmin_ && btag2 > probeBtagmin_) { pt_jet1_->Fill(jet1.pt()); pt_jet2_->Fill(jet2.pt()); eta_jet1_->Fill(jet1.eta()); From 8cb5b33740bb9ebc64780298a765cd357e37bb78 Mon Sep 17 00:00:00 2001 From: Roberval Walsh Date: Thu, 28 Apr 2022 14:24:08 +0200 Subject: [PATCH 7/8] Apply suggestions from code review Co-authored-by: Andrea Perrotta --- .../Trigger/plugins/TagAndProbeBtagTriggerMonitor.cc | 4 ++-- DQMOffline/Trigger/python/MssmHbbMonitoring_cff.py | 4 ++-- HLTriggerOffline/Higgs/python/hltHiggsValidator_cfi.py | 8 ++++---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/DQMOffline/Trigger/plugins/TagAndProbeBtagTriggerMonitor.cc b/DQMOffline/Trigger/plugins/TagAndProbeBtagTriggerMonitor.cc index 8f7f73e5351ea..5249209ba6956 100644 --- a/DQMOffline/Trigger/plugins/TagAndProbeBtagTriggerMonitor.cc +++ b/DQMOffline/Trigger/plugins/TagAndProbeBtagTriggerMonitor.cc @@ -249,9 +249,9 @@ void TagAndProbeBtagTriggerMonitor::analyze(edm::Event const& iEvent, edm::Event } } for (auto const& to : onlinebtags) { - if (reco::deltaR(jet1, to) < 0.3) + if (reco::deltaR2(jet1, to) < 0.09) match1 = true; - if (reco::deltaR(jet2, to) < 0.3) + if (reco::deltaR2(jet2, to) < 0.09) match2 = true; } diff --git a/DQMOffline/Trigger/python/MssmHbbMonitoring_cff.py b/DQMOffline/Trigger/python/MssmHbbMonitoring_cff.py index d97ee78fdc614..d1833961ec3ef 100644 --- a/DQMOffline/Trigger/python/MssmHbbMonitoring_cff.py +++ b/DQMOffline/Trigger/python/MssmHbbMonitoring_cff.py @@ -76,7 +76,7 @@ bjetSelection = 'pt>40 & abs(eta)<2.2', nmuons = 1, muoSelection = 'pt>12 & abs(eta)<2.2 & isPFMuon & isGlobalMuon & innerTrack.hitPattern.trackerLayersWithMeasurement>5 & innerTrack.hitPattern.numberOfValidPixelHits>0 & globalTrack.hitPattern.numberOfValidMuonHits>0 & globalTrack.normalizedChi2<10', - numGenericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets40MaxDeta1p6_DoublePFBTagDeepJet_p71_v1*']), + numGenericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets40MaxDeta1p6_DoublePFBTagDeepJet_p71_v*']), histoPSet = dict(jetPtBinning = [0,40,60,80,120,160,250,300,350,400,500,1000,1500], muPtBinning = [0,7,11,12,13,15,20,30,40,50,70,100,150,200,400,700]) ) @@ -87,7 +87,7 @@ bjetSelection = 'pt>40 & abs(eta)<2.2', nmuons = 1, muoSelection = 'pt>12 & abs(eta)<2.2 & isPFMuon & isGlobalMuon & innerTrack.hitPattern.trackerLayersWithMeasurement>5 & innerTrack.hitPattern.numberOfValidPixelHits>0 & globalTrack.hitPattern.numberOfValidMuonHits>0 & globalTrack.normalizedChi2<10', - numGenericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets54MaxDeta1p6_DoublePFBTagDeepJet_p71_v1*']), + numGenericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets54MaxDeta1p6_DoublePFBTagDeepJet_p71_v*']), histoPSet = dict(jetPtBinning = [0,40,60,80,120,160,250,300,350,400,500,1000,1500], muPtBinning = [0,7,11,12,13,15,20,30,40,50,70,100,150,200,400,700]) ) diff --git a/HLTriggerOffline/Higgs/python/hltHiggsValidator_cfi.py b/HLTriggerOffline/Higgs/python/hltHiggsValidator_cfi.py index 72ea1f3e8be30..d4aecc32120a0 100644 --- a/HLTriggerOffline/Higgs/python/hltHiggsValidator_cfi.py +++ b/HLTriggerOffline/Higgs/python/hltHiggsValidator_cfi.py @@ -419,10 +419,10 @@ MSSMHbbmu = cms.PSet( hltPathsToCheck = cms.vstring( - "HLT_Mu12_DoublePFJets40MaxDeta1p6_DoublePFBTagDeepCSV_p71_v1", - "HLT_Mu12_DoublePFJets54MaxDeta1p6_DoublePFBTagDeepCSV_p71_v1", - "HLT_Mu12_DoublePFJets40MaxDeta1p6_DoublePFBTagDeepJet_p71_v1", - "HLT_Mu12_DoublePFJets54MaxDeta1p6_DoublePFBTagDeepJet_p71_v1", + "HLT_Mu12_DoublePFJets40MaxDeta1p6_DoublePFBTagDeepCSV_p71_v", + "HLT_Mu12_DoublePFJets54MaxDeta1p6_DoublePFBTagDeepCSV_p71_v", + "HLT_Mu12_DoublePFJets40MaxDeta1p6_DoublePFBTagDeepJet_p71_v", + "HLT_Mu12_DoublePFJets54MaxDeta1p6_DoublePFBTagDeepJet_p71_v", ), recMuonLabel = cms.string("muons"), recJetLabel = cms.string("ak4PFJetsCHS"), From c8ae1d307adb798e88f3eac743b70eeb7f440d2f Mon Sep 17 00:00:00 2001 From: Roberval Walsh Date: Thu, 28 Apr 2022 14:25:50 +0200 Subject: [PATCH 8/8] Removed version number as suggested by reviewer --- DQMOffline/Trigger/python/MssmHbbMonitoring_cff.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/DQMOffline/Trigger/python/MssmHbbMonitoring_cff.py b/DQMOffline/Trigger/python/MssmHbbMonitoring_cff.py index d1833961ec3ef..c838eb0449624 100644 --- a/DQMOffline/Trigger/python/MssmHbbMonitoring_cff.py +++ b/DQMOffline/Trigger/python/MssmHbbMonitoring_cff.py @@ -34,7 +34,7 @@ bjetSelection = 'pt>40 & abs(eta)<2.2', nmuons = 1, muoSelection = 'pt>12 & abs(eta)<2.2 & isPFMuon & isGlobalMuon & innerTrack.hitPattern.trackerLayersWithMeasurement>5 & innerTrack.hitPattern.numberOfValidPixelHits>0 & globalTrack.hitPattern.numberOfValidMuonHits>0 & globalTrack.normalizedChi2<10', - numGenericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets40MaxDeta1p6_DoublePFBTagDeepCSV_p71_v1*']), + numGenericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets40MaxDeta1p6_DoublePFBTagDeepCSV_p71_v*']), histoPSet = dict(jetPtBinning = [0,40,60,80,120,160,250,300,350,400,500,1000,1500], muPtBinning = [0,7,11,12,13,15,20,30,40,50,70,100,150,200,400,700]) @@ -46,7 +46,7 @@ bjetSelection = 'pt>40 & abs(eta)<2.2', nmuons = 1, muoSelection = 'pt>12 & abs(eta)<2.2 & isPFMuon & isGlobalMuon & innerTrack.hitPattern.trackerLayersWithMeasurement>5 & innerTrack.hitPattern.numberOfValidPixelHits>0 & globalTrack.hitPattern.numberOfValidMuonHits>0 & globalTrack.normalizedChi2<10', - numGenericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets54MaxDeta1p6_DoublePFBTagDeepCSV_p71_v1*']), + numGenericTriggerEventPSet = dict(hltPaths = ['HLT_Mu12_DoublePFJets54MaxDeta1p6_DoublePFBTagDeepCSV_p71_v*']), histoPSet = dict(jetPtBinning = [0,40,60,80,120,160,250,300,350,400,500,1000,1500], muPtBinning = [0,7,11,12,13,15,20,30,40,50,70,100,150,200,400,700]) )