CMS 3D CMS Logo

HLTMuonOfflineAnalyzer_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 from DQMOffline.Trigger.HLTMuonOfflineAnalyzer_cfi import hltMuonOfflineAnalyzer
4 
5 globalMuonParams = cms.PSet(
6  d0Cut = cms.untracked.double(2.0),
7  z0Cut = cms.untracked.double(25.0),
8  recoCuts = cms.untracked.string("isGlobalMuon && abs(eta) < 2.4"),
9  hltCuts = cms.untracked.string("abs(eta) < 2.4"),
10 )
11 
12 trackerMuonParams = cms.PSet(
13  d0Cut = cms.untracked.double(2.0),
14  z0Cut = cms.untracked.double(25.0),
15  recoCuts = cms.untracked.string("isTrackerMuon && abs(eta) < 2.4"),
16  hltCuts = cms.untracked.string("abs(eta) < 2.4"),
17 )
18 
19 
20 tightMuonParams = cms.PSet(
21  d0Cut = cms.untracked.double(0.2),
22  z0Cut = cms.untracked.double(0.5),
23  recoCuts = cms.untracked.string(' && '.join([
24  "isGlobalMuon && isPFMuon && isTrackerMuon",
25  "abs(eta) < 2.4",
26  "innerTrack.hitPattern.numberOfValidPixelHits > 0",
27  "innerTrack.hitPattern.trackerLayersWithMeasurement > 5",
28  "(pfIsolationR04().sumChargedHadronPt + max(pfIsolationR04().sumNeutralHadronEt + pfIsolationR04().sumPhotonEt - pfIsolationR04().sumPUPt/2,0.0))/pt < 0.15",
29  "globalTrack.hitPattern.numberOfValidMuonHits > 0",
30  "globalTrack.normalizedChi2 < 10",
31  "numberOfMatches > 1"
32  ])),
33  hltCuts = cms.untracked.string("abs(eta) < 2.4"),
34 )
35 
36 
37 
38 looseMuonParams = cms.PSet(
39  d0Cut = cms.untracked.double(50),
40  z0Cut = cms.untracked.double(100),
41  recoCuts = cms.untracked.string(' && '.join([
42  "isPFMuon && (isTrackerMuon || isGlobalMuon)",
43  "(pfIsolationR04().sumChargedHadronPt + max(pfIsolationR04().sumNeutralHadronEt + pfIsolationR04().sumPhotonEt - pfIsolationR04().sumPUPt/2,0.0))/pt < 0.25"
44  ])),
45  hltCuts = cms.untracked.string("abs(eta) < 2.4"),
46 )
47 
48 
49 globalAnalyzerTnP = hltMuonOfflineAnalyzer.clone()
50 globalAnalyzerTnP.destination = "HLT/Muon/DistributionsGlobal"
51 globalAnalyzerTnP.targetParams = globalMuonParams
52 #globalAnalyzerTnP.probeParams = cms.PSet()
53 
54 trackerAnalyzerTnP = hltMuonOfflineAnalyzer.clone()
55 trackerAnalyzerTnP.destination = "HLT/Muon/DistributionsTracker"
56 trackerAnalyzerTnP.targetParams = trackerMuonParams
57 #trackerAnalyzerTnP.probeParams = cms.PSet()
58 
59 tightAnalyzerTnP = hltMuonOfflineAnalyzer.clone()
60 tightAnalyzerTnP.destination = "HLT/Muon/DistributionsTight"
61 tightAnalyzerTnP.targetParams = tightMuonParams
62 #tightAnalyzerTnP.probeParams = cms.PSet()
63 
64 looseAnalyzerTnP = hltMuonOfflineAnalyzer.clone()
65 looseAnalyzerTnP.destination = "HLT/Muon/DistributionsLoose"
66 looseAnalyzerTnP.targetParams = looseMuonParams
67 #tightAnalyzer.probeParams = cms.PSet()
68 
69 
70 refPathsList = cms.vstring(
71  "HLT_Mu17_TrkIsoVVL_Mu8_TrkIsoVVL_DZ_v",
72  "HLT_Mu17_TrkIsoVVL_TkMu8_TrkIsoVVL_DZ_v",
73  "HLT_Mu17_TrkIsoVVL_Mu8_TrkIsoVVL_v",
74  "HLT_Mu17_TrkIsoVVL_TkMu8_TrkIsoVVL_v",
75  "HLT_TkMu17_TrkIsoVVL_TkMu8_TrkIsoVVL_v",
76  "HLT_TkMu17_TrkIsoVVL_TkMu8_TrkIsoVVL_DZ_v"
77  "HLT_Mu18_Mu9_DZ_v",
78  "HLT_Mu18_Mu9_v",
79  "HLT_Mu18_Mu9_SameSign_DZ_v",
80  "HLT_Mu18_Mu9_SameSign_v"
81  )
82 
83 globalAnalyzerRef = hltMuonOfflineAnalyzer.clone()
84 globalAnalyzerRef.destination = "HLT/Muon/DistributionsGlobal"
85 globalAnalyzerRef.targetParams = globalMuonParams
86 globalAnalyzerRef.hltPathsToCheck = refPathsList
87 globalAnalyzerRef.requiredTriggers = cms.untracked.vstring(
88  "HLT_Mu17_TrkIsoVVL_v")
89 
90 #globalAnalyzerRef.probeParams = cms.PSet()
91 
92 trackerAnalyzerRef = hltMuonOfflineAnalyzer.clone()
93 trackerAnalyzerRef.destination = "HLT/Muon/DistributionsTracker"
94 trackerAnalyzerRef.targetParams = trackerMuonParams
95 trackerAnalyzerRef.hltPathsToCheck = refPathsList
96 trackerAnalyzerRef.requiredTriggers = cms.untracked.vstring(
97  "HLT_Mu17_TrkIsoVVL_v")
98 #trackerAnalyzerRef.probeParams = cms.PSet()
99 
100 tightAnalyzerRef = hltMuonOfflineAnalyzer.clone()
101 tightAnalyzerRef.destination = "HLT/Muon/DistributionsTight"
102 tightAnalyzerRef.targetParams = tightMuonParams
103 tightAnalyzerRef.hltPathsToCheck = refPathsList
104 
105 tightAnalyzerRef.requiredTriggers = cms.untracked.vstring(
106  "HLT_Mu17_TrkIsoVVL_v")
107 #tightAnalyzerRef.probeParams = cms.PSet()
108 
109 looseAnalyzerRef = hltMuonOfflineAnalyzer.clone()
110 looseAnalyzerRef.destination = "HLT/Muon/DistributionsLoose"
111 looseAnalyzerRef.targetParams = looseMuonParams
112 looseAnalyzerRef.hltPathsToCheck = refPathsList
113 looseAnalyzerRef.requiredTriggers = cms.untracked.vstring(
114  "HLT_Mu17_TrkIsoVVL_v")
115 #tightAnalyzer.probeParams = cms.PSet()
116 
117 
118 
119 refPathsList19 = cms.vstring(
120  "HLT_Mu19_TrkIsoVVL_Mu9_TrkIsoVVL_DZ_Mass3p8_v",
121  "HLT_Mu19_TrkIsoVVL_Mu9_TrkIsoVVL_DZ_Mass8_v" ,
122  "HLT_Mu19_TrkIsoVVL_Mu9_TrkIsoVVL_DZ_v" ,
123  "HLT_Mu19_TrkIsoVVL_Mu9_TrkIsoVVL_v",
124  "HLT_Mu20_Mu10_DZ_v",
125  "HLT_Mu20_Mu10_SameSign_DZ_v",
126  "HLT_Mu20_Mu10_SameSign_v",
127  "HLT_Mu20_Mu10_v",
128  "HLT_Mu23_Mu12_DZ_v",
129  "HLT_Mu23_Mu12_SameSign_DZ_v",
130  "HLT_Mu23_Mu12_SameSign_v",
131  "HLT_Mu23_Mu12_v"
132  )
133 
134 globalAnalyzerRef19 = hltMuonOfflineAnalyzer.clone()
135 globalAnalyzerRef19.destination = "HLT/Muon/DistributionsGlobal"
136 globalAnalyzerRef19.targetParams = globalMuonParams
137 globalAnalyzerRef19.hltPathsToCheck = refPathsList19
138 globalAnalyzerRef19.requiredTriggers = cms.untracked.vstring(
139  "HLT_Mu19_TrkIsoVVL_v")
140 
141 #globalAnalyzerRef19.probeParams = cms.PSet()
142 
143 trackerAnalyzerRef19 = hltMuonOfflineAnalyzer.clone()
144 trackerAnalyzerRef19.destination = "HLT/Muon/DistributionsTracker"
145 trackerAnalyzerRef19.targetParams = trackerMuonParams
146 trackerAnalyzerRef19.hltPathsToCheck = refPathsList19
147 trackerAnalyzerRef19.requiredTriggers = cms.untracked.vstring(
148  "HLT_Mu19_TrkIsoVVL_v")
149 #trackerAnalyzerRef19.probeParams = cms.PSet()
150 
151 tightAnalyzerRef19 = hltMuonOfflineAnalyzer.clone()
152 tightAnalyzerRef19.destination = "HLT/Muon/DistributionsTight"
153 tightAnalyzerRef19.targetParams = tightMuonParams
154 tightAnalyzerRef19.hltPathsToCheck = refPathsList19
155 tightAnalyzerRef19.requiredTriggers = cms.untracked.vstring(
156  "HLT_Mu19_TrkIsoVVL_v")
157 #tightAnalyzerRef19.probeParams = cms.PSet()
158 
159 looseAnalyzerRef19 = hltMuonOfflineAnalyzer.clone()
160 looseAnalyzerRef19.destination = "HLT/Muon/DistributionsLoose"
161 looseAnalyzerRef19.targetParams = looseMuonParams
162 looseAnalyzerRef19.hltPathsToCheck = refPathsList19
163 looseAnalyzerRef19.requiredTriggers = cms.untracked.vstring(
164  "HLT_Mu19_TrkIsoVVL_v")
165 #tightAnalyzer.probeParams = cms.PSet()
166 
167 
168 
169 
170 hltMuonOfflineAnalyzers = cms.Sequence(
171  globalAnalyzerTnP *
172  trackerAnalyzerTnP *
173  tightAnalyzerTnP *
174  looseAnalyzerTnP *
175  globalAnalyzerRef *
176  trackerAnalyzerRef *
177  tightAnalyzerRef *
178  looseAnalyzerRef *
179  globalAnalyzerRef19 *
180  trackerAnalyzerRef19 *
181  tightAnalyzerRef19 *
182  looseAnalyzerRef19
183 )
184 
185 from Configuration.Eras.Modifier_pA_2016_cff import pA_2016
186 from Configuration.Eras.Modifier_ppRef_2017_cff import ppRef_2017
187 from Configuration.ProcessModifiers.pp_on_AA_cff import pp_on_AA
188 for muAna in [globalAnalyzerTnP.targetParams, trackerAnalyzerTnP.targetParams,
189  tightAnalyzerTnP.targetParams, looseAnalyzerTnP.targetParams,
190  globalAnalyzerRef.targetParams, trackerAnalyzerRef.targetParams,
191  tightAnalyzerRef.targetParams, looseAnalyzerRef.targetParams,]:
192  for e in [pA_2016, ppRef_2017, pp_on_AA]:
193  e.toModify(muAna, ptCut_Jpsi = cms.untracked.double( 5.0))
194 for muAna in [globalAnalyzerTnP.binParams, trackerAnalyzerTnP.binParams,
195  tightAnalyzerTnP.binParams, looseAnalyzerTnP.binParams,
196  globalAnalyzerRef.binParams, trackerAnalyzerRef.binParams,
197  tightAnalyzerRef.binParams, looseAnalyzerRef.binParams]:
198  for e in [pA_2016, ppRef_2017, pp_on_AA]:
199  e.toModify(muAna, ptCoarse = cms.untracked.vdouble(0.,1.,2.,3.,4.,5.,7.,9.,12.,15.,20.,30.,40.))
join
static std::string join(char **cmd)
Definition: RemoteFile.cc:17