Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-03-17 10:58:44

0001 import FWCore.ParameterSet.Config as cms
0002 
0003 from DQMOffline.Trigger.JetMonitor_cfi import hltJetMETmonitoring
0004 from DQMOffline.Trigger.HTMonitor_cfi import hltHTmonitoring
0005 from DQMOffline.Trigger.MjjMonitor_cfi import hltMjjmonitoring
0006 from DQMOffline.Trigger.SoftdropMonitor_cfi import hltSoftdropmonitoring
0007 from DQMOffline.Trigger.B2GTnPMonitor_cfi import B2GegmGsfElectronIDsForDQM,B2GegHLTDQMOfflineTnPSource
0008 from DQMOffline.Trigger.TopMonitor_cfi import hltTOPmonitoring
0009 
0010 ### B2G triggers:
0011 # HLT_AK8PFJet*_MassSD30
0012 # HLT_AK8DiPFJet*_*_MassSD*
0013 # HLT_Mu37_Ele27_CaloIdL_MW
0014 # HLT_Mu27_Ele37_CaloIdL_MW
0015 # HLT_Mu37_TkMu27
0016 #
0017 # Additionally, we monitor mjj and mSD for PFHT1050 and AK8PFJet500
0018 
0019 # HT and AK8jet monitoring
0020 
0021 PFHT1050_Mjjmonitoring = hltMjjmonitoring.clone(
0022     FolderName = 'HLT/B2G/PFHT1050',
0023     jets = "ak8PFJetsPuppi",
0024     jetSelection = "pt > 200 && eta < 2.4",
0025     numGenericTriggerEventPSet= dict(hltPaths = ["HLT_PFHT1050_v*"])     
0026 )
0027 
0028 PFHT1050_Softdropmonitoring = hltSoftdropmonitoring.clone(
0029     FolderName = 'HLT/B2G/PFHT1050',
0030     jetSelection = "pt > 200 && eta < 2.4",
0031     numGenericTriggerEventPSet = dict(hltPaths = ["HLT_PFHT1050_v*"])        
0032 )
0033 
0034 AK8PFJet500_Mjjmonitoring = hltMjjmonitoring.clone(
0035     FolderName = 'HLT/B2G/AK8PFJet500',
0036     jets = "ak8PFJetsPuppi",
0037     jetSelection = "pt > 200 && eta < 2.4",
0038     numGenericTriggerEventPSet = dict(hltPaths = ["HLT_AK8PFJet500_v*"])
0039 )
0040 
0041 AK8PFJet500_Softdropmonitoring = hltSoftdropmonitoring.clone(
0042     FolderName = 'HLT/B2G/AK8PFJet500',
0043     jetSelection = "pt > 200 && eta < 2.4",
0044     numGenericTriggerEventPSet= dict(hltPaths = ["HLT_AK8PFJet500_v*"]),
0045     histoPSet = dict(
0046         htBinning = [0., 10., 20., 30., 40., 50., 60., 70., 80., 90., 100., 110., 120., 130., 140., 150., 160., 170., 180., 190., 200., 210., 220., 230., 240., 250., 260., 270., 280., 290., 300., 310., 320., 330., 340., 350.],
0047         htPSet = dict(nbins = 200, xmin = -0.5, xmax = 19999.5)
0048     )
0049 )
0050 
0051 
0052 # AK8PFJet420_MassSD30 monitoring
0053 
0054 AK8PFJet420_MassSD30_PromptMonitoring = hltJetMETmonitoring.clone(
0055     FolderName = 'HLT/B2G/AK8PFJet420_MassSD30',
0056     ptcut = 200,
0057     numGenericTriggerEventPSet = dict(hltPaths = ["HLT_AK8PFJet420_MassSD30_v*"])
0058 )
0059 
0060 AK8PFJet420_MassSD30_Mjjmonitoring = hltMjjmonitoring.clone(
0061     FolderName = 'HLT/B2G/AK8PFJet420_MassSD30',
0062     jets = "ak8PFJetsPuppi",
0063     jetSelection = "pt > 200 && eta < 2.4",
0064     numGenericTriggerEventPSet= dict(hltPaths = ["HLT_AK8PFJet420_MassSD30_v*"])
0065 )
0066 
0067 AK8PFJet420_MassSD30_Softdropmonitoring = hltSoftdropmonitoring.clone(
0068     FolderName = 'HLT/B2G/AK8PFJet420_MassSD30',
0069     jetSelection = "pt > 200 && eta < 2.4",
0070     numGenericTriggerEventPSet = dict(hltPaths = ["HLT_AK8PFJet420_MassSD30_v*"]),
0071     histoPSet = dict(
0072         htBinning = [0., 10., 20., 30., 40., 50., 60., 70., 80., 90., 100., 110., 120., 130., 140., 150., 160., 170., 180., 190., 200., 210., 220., 230., 240., 250., 260., 270., 280., 290., 300., 310., 320., 330., 340., 350.],
0073         htPSet = dict(nbins = 200, xmin = -0.5, xmax = 19999.5)
0074     )
0075 )
0076 
0077 # AK8DiPFJet270_270_MassSD30 monitoring
0078 
0079 AK8DiPFJet270_270_MassSD30_PromptMonitoring = hltJetMETmonitoring.clone(
0080     FolderName = 'HLT/B2G/AK8DiPFJet270_270_MassSD30',
0081     ptcut = 200,
0082     numGenericTriggerEventPSet = dict(hltPaths = ["HLT_AK8DiPFJet270_270_MassSD30_v*"])
0083 )
0084 
0085 AK8DiPFJet270_270_MassSD30_Mjjmonitoring = hltMjjmonitoring.clone(
0086     FolderName = 'HLT/B2G/AK8DiPFJet270_270_MassSD30',
0087     jets = "ak8PFJetsPuppi",
0088     jetSelection = "pt > 200 && eta < 2.4",
0089     numGenericTriggerEventPSet= dict(hltPaths = ["HLT_AK8DiPFJet270_270_MassSD30_v*"])
0090 )
0091 
0092 AK8DiPFJet270_270_MassSD30_Softdropmonitoring = hltSoftdropmonitoring.clone(
0093     FolderName = 'HLT/B2G/AK8DiPFJet270_270_MassSD30',
0094     jetSelection = "pt > 200 && eta < 2.4",
0095     numGenericTriggerEventPSet = dict(hltPaths = ["HLT_AK8DiPFJet270_270_MassSD30_v*"]),
0096     histoPSet = dict(
0097         htBinning = [0., 10., 20., 30., 40., 50., 60., 70., 80., 90., 100., 110., 120., 130., 140., 150., 160., 170., 180., 190., 200., 210., 220., 230., 240., 250., 260., 270., 280., 290., 300., 310., 320., 330., 340., 350.],
0098         htPSet = dict(nbins = 200, xmin = -0.5, xmax = 19999.5)
0099     )
0100 )
0101 
0102 # Lepton cross trigger monitoring
0103 
0104 hltDQMonitorB2G_MuEle = hltTOPmonitoring.clone(
0105     FolderName = 'HLT/B2G/Dileptonic/HLT_MuXX_EleXX_CaloIdL_MW',
0106     nelectrons = 1,
0107     eleSelection = 'pt>20 & abs(eta)<2.4',
0108     nmuons = 1,
0109     muoSelection = 'pt>20 & abs(eta)<2.4 & ((pfIsolationR04.sumChargedHadronPt + max(pfIsolationR04.sumNeutralHadronEt + pfIsolationR04.sumPhotonEt - (pfIsolationR04.sumPUPt)/2.,0.))/pt < 0.25)  & isPFMuon & (isTrackerMuon || isGlobalMuon)',
0110     numGenericTriggerEventPSet = dict(hltPaths = ['HLT_Mu37_Ele27_CaloIdL_MW_v*', 'HLT_Mu27_Ele37_CaloIdL_MW_v*'])
0111 )
0112 
0113 hltDQMonitorB2G_MuTkMu = hltTOPmonitoring.clone(
0114     FolderName = 'HLT/B2G/Dileptonic/HLT_Mu37_TkMu27',
0115     nmuons = 2,
0116     muoSelection = 'pt>20 & abs(eta)<2.4 & ((pfIsolationR04.sumChargedHadronPt + max(pfIsolationR04.sumNeutralHadronEt + pfIsolationR04.sumPhotonEt - (pfIsolationR04.sumPUPt)/2.,0.))/pt < 0.25)  & isPFMuon & (isTrackerMuon || isGlobalMuon)',
0117     numGenericTriggerEventPSet = dict(hltPaths = ['HLT_Mu37_TkMu27_v*'])
0118 )
0119 
0120 
0121 # the sequence
0122 
0123 b2gMonitorHLT = cms.Sequence(
0124 
0125     PFHT1050_Mjjmonitoring +
0126 
0127     AK8PFJet500_Mjjmonitoring +
0128 
0129     AK8PFJet420_MassSD30_PromptMonitoring +
0130     AK8PFJet420_MassSD30_Mjjmonitoring +
0131 
0132     AK8DiPFJet270_270_MassSD30_PromptMonitoring +
0133     AK8DiPFJet270_270_MassSD30_Mjjmonitoring +
0134 
0135     B2GegHLTDQMOfflineTnPSource
0136 
0137   * hltDQMonitorB2G_MuEle
0138   * hltDQMonitorB2G_MuTkMu
0139 
0140   , cms.Task(B2GegmGsfElectronIDsForDQM) ## unschedule execution [Use of electron VID requires this module being executed first]
0141 )
0142 
0143 ## as reported in https://github.com/cms-sw/cmssw/issues/24444
0144 ## it turned out that all softdrop modules rely on a jet collection which is available only if the miniAOD step is run @Tier0
0145 ## ==> it is fine in the PromptReco workflow, but this collection is not available in the Express reconstruction
0146 ## in addition, it is not available in the AOD (!!!!) ==> these modules needs to be run *WithRECO* step workflow (actually w/ the miniAOD step ....)
0147 b2gHLTDQMSourceWithRECO = cms.Sequence(
0148     PFHT1050_Softdropmonitoring +
0149     AK8PFJet500_Softdropmonitoring +
0150     AK8PFJet420_MassSD30_Softdropmonitoring +
0151     AK8DiPFJet270_270_MassSD30_Softdropmonitoring
0152 )
0153 
0154 b2gHLTDQMSourceExtra = cms.Sequence(
0155 )