CMS 3D CMS Logo

HLTMuonOfflineAnalyzer_cfi.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 hltMuonOfflineAnalyzer = cms.EDAnalyzer("HLTMuonOfflineAnalyzer",
4 
5  ## Used when fetching triggerSummary and triggerResults
6  hltProcessName = cms.string("HLT"),
7 
8  ## Location of plots in DQM
9  destination = cms.untracked.string("HLT/Muon/Distributions/globalMuons"),
10 
11  ## HLT paths passing any one of these regular expressions will be included
12  hltPathsToCheck = cms.vstring(
13  "HLT_Mu8_TrkIsoVVL_v",
14  "HLT_Mu8_v",
15  "HLT_Mu17_TrkIsoVVL_v",
16  "HLT_Mu17_v",
17  "HLT_TkMu17_v",
18  "HLT_L2Mu10_v",
19  "HLT_L1SingleMu25_v",
20  "HLT_L1SingleMu18_v",
21  "HLT_Mu17_TrkIsoVVL_v",
22  "HLT_Mu45_eta2p1_v1",
23  "HLT_Mu50_v",
24  "HLT_IsoMu24_v",
25  "HLT_IsoTkMu24_v",
26 # "HLT_Mu17_Mu8_DZ_v",
27 # "HLT_Mu17_TkMu8_DZ_v",
28  "HLT_IsoMu20_eta2p1_v",
29  "HLT_IsoTkMu20_eta2p1_v",
30  "HLT_IsoMu24_eta2p1_v",
31  "HLT_IsoTkMu24_eta2p1_v",
32  "HLT_IsoMu27_v",
33  "HLT_IsoTkMu27_v",
34  "HLT_IsoMu20_v",
35  "HLT_IsoTkMu20_v",
36  "HLT_IsoMu22_v",
37  "HLT_IsoTkMu22_v",
38  "HLT_IsoMu22_eta2p1_v",
39  "HLT_IsoTkMu22_eta2p1_v",
40  "HLT_IsoMu18_v",
41  "HLT_IsoTkMu18_v",
42  "HLT_IsoMu30_v",
43  "HLT_Mu55_v",
44  "HLT_Mu19_TrkIsoVVL_v",
45  "HLT_Mu19_v",
46  "HLT_L2Mu50_v",
47  "HLT_OldMu100_v",
48  "HLT_TkMu100_v",
49  "HLT_DoubleL2Mu50_v",
50  "HLT_PAL1DoubleMuOpen_v", #for HI
51  "HLT_PAL1DoubleMuOpen_OS_v", #for HI
52  "HLT_PAL1DoubleMuOpen_SS_v", #for HI
53  "HLT_PAL1DoubleMu0_v", #for HI
54  "HLT_PAL1DoubleMu0_HighQ_v", #for HI
55  "HLT_PAL1DoubleMu0_MGT1_v", #for HI
56  "HLT_PAL1DoubleMu10_v", #for HI
57  "HLT_PAL2DoubleMu0_v", #for HI
58  "HLT_PAL2DoubleMu10_v", #for HI
59  "HLT_PAL3DoubleMu0_v", #for HI
60  "HLT_PAL3DoubleMu0_HIon_v", #for HI
61  "HLT_PAL3DoubleMu10_v", #for HI
62  "HLT_PAL2Mu12_v", #for HI
63  "HLT_PAL2Mu15_v", #for HI
64  "HLT_PAL3Mu3_v", #for HI
65  "HLT_PAL3Mu5_v", #for HI
66  "HLT_PAL3Mu7_v", #for HI
67  "HLT_PAL3Mu12_v", #for HI
68  "HLT_PAL3Mu15_v", #for HI
69  "HLT_PASingleMuOpen_PixelTrackGt0_FullTrackLt10_v", #for HI Forward
70  "HLT_PASingleMuOpen_PixelTrackGt0_FullTrackLt15_v", #for HI Forward
71  "HLT_PASingleMuOpen_PixelTrackGt0Lt10_v", #for HI Forward
72  "HLT_PASingleMuOpen_PixelTrackGt0Lt15_v", #for HI Forward
73  "HLT_PASingleMuOpen_HFOneTowerVeto_SingleTrack_v", #for HI Forward
74  "HLT_PASingleMuOpen_HFOneTowerVeto_v", #for HI Forward
75  "HLT_PASingleMuOpen_HFTwoTowerVeto_SingleTrack_v", #for HI Forward
76  "HLT_PASingleMuOpen_HFTwoTowerVeto_v", #for HI Forward
77  "HLT_PADoubleMuOpen_HFOneTowerVeto_SingleTrack_v", #for HI Forward
78  "HLT_PADoubleMuOpen_HFOneTowerVeto_v", #for HI Forward
79  "HLT_PADoubleMuOpen_HFTwoTowerVeto_SingleTrack_v", #for HI Forward
80  "HLT_PADoubleMuOpen_HFTwoTowerVeto_v" #for HI Forward
81  ),
82 
83 #HLT_Mu15_eta2p1_TriCentral_40_20_20_BTagIP3D1stTrack_v3 matches HLT_Mu15_eta2p1_v
84 
85  ## All input tags are specified in this pset for convenience
86  inputTags = cms.PSet(
87  recoMuon = cms.InputTag("muons"),
88  beamSpot = cms.InputTag("offlineBeamSpot"),
89  offlinePVs = cms.InputTag("offlinePrimaryVertices"),
90  triggerSummary = cms.InputTag("hltTriggerSummaryAOD"),
91  triggerResults = cms.InputTag("TriggerResults")
92  ),
93 
94  ## Both 1D and 2D plots use the binnings defined here
95  binParams = cms.untracked.PSet(
96  ## parameters for fixed-width plots
97  NVertex = cms.untracked.vdouble( 1,10,15,20,25,30,35,40,45,50,55,60,65,70,100),
98  NVertexFine= cms.untracked.vdouble( 1,5,10,12.5,15,17.5,20,22.5,25,27.5,30,32.5,35,37.5,40,42.5,45,47.5,50,52.5,55,57.5,60,62.5,65,67.5,70,85,100),
99  eta = cms.untracked.vdouble( 20, -2.40, 2.40),
100  phi = cms.untracked.vdouble( 20, -3.14, 3.14),
101  phiHEP17 = cms.untracked.vdouble( -3.14,-2.4,-1.8,-1.0,-0.4,0.0,0.4,1.0,1.8,2.4,3.14),
102  z0 = cms.untracked.vdouble( 10, -0.15, 0.15),
103  z0Fine = cms.untracked.vdouble( 20, -0.15, 0.15),
104  d0 = cms.untracked.vdouble( 10, -0.50, 0.50),
105  zMass = cms.untracked.vdouble( 50, 65.00, 115.00),
106  jpsiMass = cms.untracked.vdouble( 60, 0.00, 6.00),
107  charge = cms.untracked.vdouble( 2, -2.00, 2.00),
108  deltaR = cms.untracked.vdouble( 20, 0.00, 0.05),
109  deltaR2 = cms.untracked.vdouble( 20, 0.0, 4.5 ),
110  phiCoarse = cms.untracked.vdouble( 10, -3.14, 3.14),
111  resolutionRel = cms.untracked.vdouble( 40, -0.30, 0.30),
112  resolutionEta = cms.untracked.vdouble( 20, -0.01, 0.01),
113  resolutionPhi = cms.untracked.vdouble( 20, -0.01, 0.01),
114  ## parameters for variable-width plots
115  etaCoarse = cms.untracked.vdouble(-2.4, -2.1, -1.6, -1.2, -0.8, 0.0,
116  0.8, 1.2, 1.6, 2.1, 2.4),
117  etaFine = cms.untracked.vdouble(-2.4,-2.1,-1.6,-1.2,-0.9,-0.3,
118  -0.2,0.2,0.3,0.9,1.2,1.6,2.1,2.4),
119  phiFine = cms.untracked.vdouble(-3.14,-(11.0/12.0)*3.14,-(9.0/12.0)*3.14,-(7.0/12.0)*3.14,-(5.0/12.0)*3.14,-
120 (3.0/12.0)*3.14,-(1.0/12.0)*3.14,(1.0/12.0)*3.14,(3.0/12.0)*3.14,(5.0/12.0)*3.14,(7.0/12.0)*3.14,
121 (9.0/12.0)*3.14,(11.0/12.0)*3.14,3.14),
122  ptCoarse = cms.untracked.vdouble(10.0, 20.0, 40.0, 60.0, 80.0, 100.0, 200.0),
123  ptFine = cms.untracked.vdouble(10.0,15.0, 20.0,30.0, 40.0,50.0, 60.0,70.0, 80.0,90.0, 100.0,150., 200.0),
124  pt = cms.untracked.vdouble( 0.0, 2.0, 4.0,
125  6.0, 8.0, 10.0,
126  20.0, 30.0, 40.0,
127  100.0, 200.0, 400.0),
128  ),
129 
130  ## These parameters define which objects are used to fill plots
131  plotCuts = cms.PSet(
132  ## not applied on eta plots
133  maxEta = cms.untracked.double(2.10),
134  ## only fill plots for muons with pt > ceil(hltThreshold * minPtFactor)
135  ## ex: for HLT_Mu17, ceil(17 * 1.2 ) = 21, so we require pT > 21
136  minPtFactor = cms.untracked.double(1.20),
137  ## deltaR cuts
138  L1DeltaR = cms.untracked.double(0.30),
139  L2DeltaR = cms.untracked.double(0.30),
140  L3DeltaR = cms.untracked.double(0.05),
141  ),
142 
143  ## Only events passing all these triggers will be considered
144  requiredTriggers = cms.untracked.vstring(),
145 
146  ## This collection is used to fill most distributions
147  targetParams = cms.PSet(
148  ## The d0 and z0 cuts are required for the inner track of the
149  ## reco muons, taken with respect to the beamspot
150  d0Cut = cms.untracked.double(2.0),
151  z0Cut = cms.untracked.double(25.0),
152  ## cuts
153  recoCuts = cms.untracked.string("isGlobalMuon && abs(eta) < 2.4"),
154  hltCuts = cms.untracked.string("abs(eta) < 2.4"),
155  ),
156 
157  ## If this PSet is empty, then no "tag and probe" plots are produced;
158  ## the cuts used for the tags are specified by targetParams
159  probeParams = cms.PSet(
160  ## The d0 and z0 cuts are required for the inner track of the
161  ## reco muons, taken with respect to the beamspot
162  d0Cut = cms.untracked.double(2.0),
163  z0Cut = cms.untracked.double(25.0),
164  ## cuts
165  recoCuts = cms.untracked.string("isGlobalMuon && abs(eta) < 2.4"),
166  hltCuts = cms.untracked.string("abs(eta) < 2.4"),
167  ),
168 
169 )