CMS 3D CMS Logo

SiPixelHitEfficiencyModule.cc
Go to the documentation of this file.
1 // Package: SiPixelMonitorTrack
2 // Class: SiPixelHitEfficiencyModule
3 //
4 // class SiPixelHitEfficiencyModule SiPixelHitEfficiencyModule.cc
5 // DQM/SiPixelMonitorTrack/src/SiPixelHitEfficiencyModule.cc
6 //
7 // Description: SiPixel hit efficiency data quality monitoring modules
8 // Implementation: prototype -> improved -> never final - end of the 1st step
9 //
10 // Original Authors: Romain Rougny & Luca Mucibello
11 // Created: Mar Nov 10 13:29:00 CET nbinangle9
12 
13 #include <iostream>
14 #include <string>
15 
19 // Data Formats
28 
29 using namespace std;
30 
32 
34 
36 
38  const TrackerTopology *pTT,
39  DQMStore::IBooker &iBooker,
40  int type,
41  bool isUpgrade) {
42  bool barrel = DetId(id_).subdetId() == static_cast<int>(PixelSubdetector::PixelBarrel);
43  bool endcap = DetId(id_).subdetId() == static_cast<int>(PixelSubdetector::PixelEndcap);
44  bool isHalfModule = false;
45  if (barrel) {
46  isHalfModule = PixelBarrelName(DetId(id_), pTT, isUpgrade).isHalfModule();
47  }
48 
49  edm::InputTag src = iConfig.getParameter<edm::InputTag>("src");
50  debug_ = iConfig.getUntrackedParameter<bool>("debug", false);
51  updateEfficiencies = iConfig.getUntrackedParameter<bool>("updateEfficiencies", false);
52  std::string hisID;
53 
54  int nbinangle = 28;
55  int nbinX = 45;
56  int nbinY = 40;
57 
58  if (type == 0) {
59  SiPixelHistogramId *theHistogramId = new SiPixelHistogramId(src.label());
60 
61  if (updateEfficiencies) {
62  // EFFICIENCY
63  hisID = theHistogramId->setHistoId("efficiency", id_);
64  meEfficiency_ = iBooker.book1D(hisID, "Hit efficiency", 1, 0, 1.);
65  meEfficiency_->setAxisTitle("Hit efficiency", 1);
66 
67  hisID = theHistogramId->setHistoId("efficiencyX", id_);
68  meEfficiencyX_ = iBooker.book1D(hisID, "Hit efficiency in X", nbinX, -1.5, 1.5);
69  meEfficiencyX_->setAxisTitle("Hit efficiency in X", 1);
70 
71  hisID = theHistogramId->setHistoId("efficiencyY", id_);
72  meEfficiencyY_ = iBooker.book1D(hisID, "Hit efficiency in Y", nbinY, -4., 4.);
73  meEfficiencyY_->setAxisTitle("Hit efficiency in Y", 1);
74 
75  hisID = theHistogramId->setHistoId("efficiencyAlpha", id_);
76  meEfficiencyAlpha_ = iBooker.book1D(hisID, "Hit efficiency in Alpha", nbinangle, -3.5, 3.5);
77  meEfficiencyAlpha_->setAxisTitle("Hit efficiency in Alpha", 1);
78 
79  hisID = theHistogramId->setHistoId("efficiencyBeta", id_);
80  meEfficiencyBeta_ = iBooker.book1D(hisID, "Hit efficiency in Beta", nbinangle, -3.5, 3.5);
81  meEfficiencyBeta_->setAxisTitle("Hit efficiency in Beta", 1);
82  }
83 
84  // VALID
85  hisID = theHistogramId->setHistoId("valid", id_);
86  meValid_ = iBooker.book1D(hisID, "# Valid hits", 1, 0, 1.);
87  meValid_->setAxisTitle("# Valid hits", 1);
88 
89  // MISSING
90  hisID = theHistogramId->setHistoId("missing", id_);
91  meMissing_ = iBooker.book1D(hisID, "# Missing hits", 1, 0, 1.);
92  meMissing_->setAxisTitle("# Missing hits", 1);
93 
94  delete theHistogramId;
95  }
96 
97  if (type == 1 && barrel) {
98  uint32_t DBladder;
99  DBladder = PixelBarrelName(DetId(id_), pTT, isUpgrade).ladderName();
100  char sladder[80];
101  sprintf(sladder, "Ladder_%02i", DBladder);
102  hisID = src.label() + "_" + sladder;
103  if (isHalfModule)
104  hisID += "H";
105  else
106  hisID += "F";
107 
108  if (updateEfficiencies) {
109  // EFFICIENCY
110  meEfficiencyLad_ = iBooker.book1D("efficiency_" + hisID, "Hit efficiency", 1, 0, 1.);
111  meEfficiencyLad_->setAxisTitle("Hit efficiency", 1);
112 
113  meEfficiencyXLad_ = iBooker.book1D("efficiencyX_" + hisID, "Hit efficiency in X", nbinX, -1.5, 1.5);
114  meEfficiencyXLad_->setAxisTitle("Hit efficiency in X", 1);
115 
116  meEfficiencyYLad_ = iBooker.book1D("efficiencyY_" + hisID, "Hit efficiency in Y", nbinY, -4., 4.);
117  meEfficiencyYLad_->setAxisTitle("Hit efficiency in Y", 1);
118 
120  iBooker.book1D("efficiencyAlpha_" + hisID, "Hit efficiency in Alpha", nbinangle, -3.5, 3.5);
121  meEfficiencyAlphaLad_->setAxisTitle("Hit efficiency in Alpha", 1);
122 
123  meEfficiencyBetaLad_ = iBooker.book1D("efficiencyBeta_" + hisID, "Hit efficiency in Beta", nbinangle, -3.5, 3.5);
124  meEfficiencyBetaLad_->setAxisTitle("Hit efficiency in Beta", 1);
125  }
126 
127  // VALID
128  meValidLad_ = iBooker.book1D("valid_" + hisID, "# Valid hits", 1, 0, 1.);
129  meValidLad_->setAxisTitle("# Valid hits", 1);
130 
131  meValidXLad_ = iBooker.book1D("validX_" + hisID, "# Valid hits in X", nbinX, -1.5, 1.5);
132  meValidXLad_->setAxisTitle("# Valid hits in X", 1);
133 
134  meValidYLad_ = iBooker.book1D("validY_" + hisID, "# Valid hits in Y", nbinY, -4., 4.);
135  meValidYLad_->setAxisTitle("# Valid hits in Y", 1);
136 
137  meValidModLad_ = iBooker.book1D("validMod_" + hisID, "# Valid hits on Module", 4, 0.5, 4.5);
138  meValidModLad_->setAxisTitle("# Valid hits on Module", 1);
139 
140  meValidAlphaLad_ = iBooker.book1D("validAlpha_" + hisID, "# Valid hits in Alpha", nbinangle, -3.5, 3.5);
141  meValidAlphaLad_->setAxisTitle("# Valid hits in Alpha", 1);
142 
143  meValidBetaLad_ = iBooker.book1D("validBeta_" + hisID, "# Valid hits in Beta", nbinangle, -3.5, 3.5);
144  meValidBetaLad_->setAxisTitle("# Valid hits in Beta", 1);
145 
146  // MISSING
147  meMissingLad_ = iBooker.book1D("missing_" + hisID, "# Missing hits", 1, 0, 1.);
148  meMissingLad_->setAxisTitle("# Missing hits", 1);
149 
150  meMissingXLad_ = iBooker.book1D("missingX_" + hisID, "# Missing hits in X", nbinX, -1.5, 1.5);
151  meMissingXLad_->setAxisTitle("# Missing hits in X", 1);
152 
153  meMissingYLad_ = iBooker.book1D("missingY_" + hisID, "# Missing hits in Y", nbinY, -4., 4.);
154  meMissingYLad_->setAxisTitle("# Missing hits in Y", 1);
155 
156  meMissingModLad_ = iBooker.book1D("missingMod_" + hisID, "# Missing hits on Module", 4, 0.5, 4.5);
157  meMissingModLad_->setAxisTitle("# Missing hits on Module", 1);
158 
159  meMissingAlphaLad_ = iBooker.book1D("missingAlpha_" + hisID, "# Missing hits in Alpha", nbinangle, -3.5, 3.5);
160  meMissingAlphaLad_->setAxisTitle("# Missing hits in Alpha", 1);
161 
162  meMissingBetaLad_ = iBooker.book1D("missingBeta_" + hisID, "# Missing hits in Beta", nbinangle, -3.5, 3.5);
163  meMissingBetaLad_->setAxisTitle("# Missing hits in Beta", 1);
164  }
165 
166  if (type == 2 && barrel) {
167  uint32_t DBlayer;
168  DBlayer = PixelBarrelName(DetId(id_), pTT, isUpgrade).layerName();
169  char slayer[80];
170  sprintf(slayer, "Layer_%i", DBlayer);
171  hisID = src.label() + "_" + slayer;
172 
173  if (updateEfficiencies) {
174  // EFFICIENCY
175  meEfficiencyLay_ = iBooker.book1D("efficiency_" + hisID, "Hit efficiency", 1, 0, 1.);
176  meEfficiencyLay_->setAxisTitle("Hit efficiency", 1);
177 
178  meEfficiencyXLay_ = iBooker.book1D("efficiencyX_" + hisID, "Hit efficiency in X", nbinX, -1.5, 1.5);
179  meEfficiencyXLay_->setAxisTitle("Hit efficiency in X", 1);
180 
181  meEfficiencyYLay_ = iBooker.book1D("efficiencyY_" + hisID, "Hit efficiency in Y", nbinY, -4., 4.);
182  meEfficiencyYLay_->setAxisTitle("Hit efficiency in Y", 1);
183 
185  iBooker.book1D("efficiencyAlpha_" + hisID, "Hit efficiency in Alpha", nbinangle, -3.5, 3.5);
186  meEfficiencyAlphaLay_->setAxisTitle("Hit efficiency in Alpha", 1);
187 
188  meEfficiencyBetaLay_ = iBooker.book1D("efficiencyBeta_" + hisID, "Hit efficiency in Beta", nbinangle, -3.5, 3.5);
189  meEfficiencyBetaLay_->setAxisTitle("Hit efficiency in Beta", 1);
190  }
191 
192  // VALID
193  meValidLay_ = iBooker.book1D("valid_" + hisID, "# Valid hits", 1, 0, 1.);
194  meValidLay_->setAxisTitle("# Valid hits", 1);
195 
196  meValidXLay_ = iBooker.book1D("validX_" + hisID, "# Valid hits in X", nbinX, -1.5, 1.5);
197  meValidXLay_->setAxisTitle("# Valid hits in X", 1);
198 
199  meValidYLay_ = iBooker.book1D("validY_" + hisID, "# Valid hits in Y", nbinY, -4., 4.);
200  meValidYLay_->setAxisTitle("# Valid hits in Y", 1);
201 
202  meValidAlphaLay_ = iBooker.book1D("validAlpha_" + hisID, "# Valid hits in Alpha", nbinangle, -3.5, 3.5);
203  meValidAlphaLay_->setAxisTitle("# Valid hits in Alpha", 1);
204 
205  meValidBetaLay_ = iBooker.book1D("validBeta_" + hisID, "# Valid hits in Beta", nbinangle, -3.5, 3.5);
206  meValidBetaLay_->setAxisTitle("# Valid hits in Beta", 1);
207 
208  // MISSING
209  meMissingLay_ = iBooker.book1D("missing_" + hisID, "# Missing hits", 1, 0, 1.);
210  meMissingLay_->setAxisTitle("# Missing hits", 1);
211 
212  meMissingXLay_ = iBooker.book1D("missingX_" + hisID, "# Missing hits in X", nbinX, -1.5, 1.5);
213  meMissingXLay_->setAxisTitle("# Missing hits in X", 1);
214 
215  meMissingYLay_ = iBooker.book1D("missingY_" + hisID, "# Missing hits in Y", nbinY, -4., 4.);
216  meMissingYLay_->setAxisTitle("# Missing hits in Y", 1);
217 
218  meMissingAlphaLay_ = iBooker.book1D("missingAlpha_" + hisID, "# Missing hits in Alpha", nbinangle, -3.5, 3.5);
219  meMissingAlphaLay_->setAxisTitle("# Missing hits in Alpha", 1);
220 
221  meMissingBetaLay_ = iBooker.book1D("missingBeta_" + hisID, "# Missing hits in Beta", nbinangle, -3.5, 3.5);
222  meMissingBetaLay_->setAxisTitle("# Missing hits in Beta", 1);
223  }
224 
225  if (type == 3 && barrel) {
226  uint32_t DBmodule;
227  DBmodule = PixelBarrelName(DetId(id_), pTT, isUpgrade).moduleName();
228  char smodule[80];
229  sprintf(smodule, "Ring_%i", DBmodule);
230  hisID = src.label() + "_" + smodule;
231 
232  if (updateEfficiencies) {
233  // EFFICIENCY
234  meEfficiencyPhi_ = iBooker.book1D("efficiency_" + hisID, "Hit efficiency", 1, 0, 1.);
235  meEfficiencyPhi_->setAxisTitle("Hit efficiency", 1);
236 
237  meEfficiencyXPhi_ = iBooker.book1D("efficiencyX_" + hisID, "Hit efficiency in X", nbinX, -1.5, 1.5);
238  meEfficiencyXPhi_->setAxisTitle("Hit efficiency in X", 1);
239 
240  meEfficiencyYPhi_ = iBooker.book1D("efficiencyY_" + hisID, "Hit efficiency in Y", nbinY, -4., 4.);
241  meEfficiencyYPhi_->setAxisTitle("Hit efficiency in Y", 1);
242 
244  iBooker.book1D("efficiencyAlpha_" + hisID, "Hit efficiency in Alpha", nbinangle, -3.5, 3.5);
245  meEfficiencyAlphaPhi_->setAxisTitle("Hit efficiency in Alpha", 1);
246 
247  meEfficiencyBetaPhi_ = iBooker.book1D("efficiencyBeta_" + hisID, "Hit efficiency in Beta", nbinangle, -3.5, 3.5);
248  meEfficiencyBetaPhi_->setAxisTitle("Hit efficiency in Beta", 1);
249  }
250 
251  // VALID
252  meValidPhi_ = iBooker.book1D("valid_" + hisID, "# Valid hits", 1, 0, 1.);
253  meValidPhi_->setAxisTitle("# Valid hits", 1);
254 
255  meValidXPhi_ = iBooker.book1D("validX_" + hisID, "# Valid hits in X", nbinX, -1.5, 1.5);
256  meValidXPhi_->setAxisTitle("# Valid hits in X", 1);
257 
258  meValidYPhi_ = iBooker.book1D("validY_" + hisID, "# Valid hits in Y", nbinY, -4., 4.);
259  meValidYPhi_->setAxisTitle("# Valid hits in Y", 1);
260 
261  meValidAlphaPhi_ = iBooker.book1D("validAlpha_" + hisID, "# Valid hits in Alpha", nbinangle, -3.5, 3.5);
262  meValidAlphaPhi_->setAxisTitle("# Valid hits in Alpha", 1);
263 
264  meValidBetaPhi_ = iBooker.book1D("validBeta_" + hisID, "# Valid hits in Beta", nbinangle, -3.5, 3.5);
265  meValidBetaPhi_->setAxisTitle("# Valid hits in Beta", 1);
266 
267  // MISSING
268  meMissingPhi_ = iBooker.book1D("missing_" + hisID, "# Missing hits", 1, 0, 1.);
269  meMissingPhi_->setAxisTitle("# Missing hits", 1);
270 
271  meMissingXPhi_ = iBooker.book1D("missingX_" + hisID, "# Missing hits in X", nbinX, -1.5, 1.5);
272  meMissingXPhi_->setAxisTitle("# Missing hits in X", 1);
273 
274  meMissingYPhi_ = iBooker.book1D("missingY_" + hisID, "# Missing hits in Y", nbinY, -4., 4.);
275  meMissingYPhi_->setAxisTitle("# Missing hits in Y", 1);
276 
277  meMissingAlphaPhi_ = iBooker.book1D("missingAlpha_" + hisID, "# Missing hits in Alpha", nbinangle, -3.5, 3.5);
278  meMissingAlphaPhi_->setAxisTitle("# Missing hits in Alpha", 1);
279 
280  meMissingBetaPhi_ = iBooker.book1D("missingBeta_" + hisID, "# Missing hits in Beta", nbinangle, -3.5, 3.5);
281  meMissingBetaPhi_->setAxisTitle("# Missing hits in Beta", 1);
282  }
283 
284  if (type == 4 && endcap) {
285  uint32_t blade;
286  blade = PixelEndcapName(DetId(id_), pTT, isUpgrade).bladeName();
287 
288  char sblade[80];
289  sprintf(sblade, "Blade_%02i", blade);
290  hisID = src.label() + "_" + sblade;
291 
292  if (updateEfficiencies) {
293  // EFFICIENCY
294  meEfficiencyBlade_ = iBooker.book1D("efficiency_" + hisID, "Hit efficiency", 1, 0, 1.);
295  meEfficiencyBlade_->setAxisTitle("Hit efficiency", 1);
296 
297  meEfficiencyXBlade_ = iBooker.book1D("efficiencyX_" + hisID, "Hit efficiency in X", nbinX, -1.5, 1.5);
298  meEfficiencyXBlade_->setAxisTitle("Hit efficiency in X", 1);
299 
300  meEfficiencyYBlade_ = iBooker.book1D("efficiencyY_" + hisID, "Hit efficiency in Y", nbinY, -4., 4.);
301  meEfficiencyYBlade_->setAxisTitle("Hit efficiency in Y", 1);
302 
304  iBooker.book1D("efficiencyAlpha_" + hisID, "Hit efficiency in Alpha", nbinangle, -3.5, 3.5);
305  meEfficiencyAlphaBlade_->setAxisTitle("Hit efficiency in Alpha", 1);
306 
308  iBooker.book1D("efficiencyBeta_" + hisID, "Hit efficiency in Beta", nbinangle, -3.5, 3.5);
309  meEfficiencyBetaBlade_->setAxisTitle("Hit efficiency in Beta", 1);
310  }
311 
312  // VALID
313  meValidBlade_ = iBooker.book1D("valid_" + hisID, "# Valid hits", 2, 0.5, 2.5);
314  meValidBlade_->setAxisTitle("# Valid hits", 1);
315 
316  meValidXBlade_ = iBooker.book1D("validX_" + hisID, "# Valid hits in X", nbinX, -1.5, 1.5);
317  meValidXBlade_->setAxisTitle("# Valid hits in X", 1);
318 
319  meValidYBlade_ = iBooker.book1D("validY_" + hisID, "# Valid hits in Y", nbinY, -4., 4.);
320  meValidYBlade_->setAxisTitle("# Valid hits in Y", 1);
321 
322  meValidAlphaBlade_ = iBooker.book1D("validAlpha_" + hisID, "# Valid hits in Alpha", nbinangle, -3.5, 3.5);
323  meValidAlphaBlade_->setAxisTitle("# Valid hits in Alpha", 1);
324 
325  meValidBetaBlade_ = iBooker.book1D("validBeta_" + hisID, "# Valid hits in Beta", nbinangle, -3.5, 3.5);
326  meValidBetaBlade_->setAxisTitle("# Valid hits in Beta", 1);
327 
328  // MISSING
329  meMissingBlade_ = iBooker.book1D("missing_" + hisID, "# Missing hits", 2, 0.5, 2.5);
330  meMissingBlade_->setAxisTitle("# Missing hits", 1);
331 
332  meMissingXBlade_ = iBooker.book1D("missingX_" + hisID, "# Missing hits in X", nbinX, -1.5, 1.5);
333  meMissingXBlade_->setAxisTitle("# Missing hits in X", 1);
334 
335  meMissingYBlade_ = iBooker.book1D("missingY_" + hisID, "# Missing hits in Y", nbinY, -4., 4.);
336  meMissingYBlade_->setAxisTitle("# Missing hits in Y", 1);
337 
338  meMissingAlphaBlade_ = iBooker.book1D("missingAlpha_" + hisID, "# Missing hits in Alpha", nbinangle, -3.5, 3.5);
339  meMissingAlphaBlade_->setAxisTitle("# Missing hits in Alpha", 1);
340 
341  meMissingBetaBlade_ = iBooker.book1D("missingBeta_" + hisID, "# Missing hits in Beta", nbinangle, -3.5, 3.5);
342  meMissingBetaBlade_->setAxisTitle("# Missing hits in Beta", 1);
343  }
344 
345  if (type == 5 && endcap) {
346  uint32_t disk;
347  disk = PixelEndcapName(DetId(id_), pTT, isUpgrade).diskName();
348 
349  char sdisk[80];
350  sprintf(sdisk, "Disk_%i", disk);
351  hisID = src.label() + "_" + sdisk;
352 
353  if (updateEfficiencies) {
354  // EFFICIENCY
355  meEfficiencyDisk_ = iBooker.book1D("efficiency_" + hisID, "Hit efficiency", 1, 0, 1.);
356  meEfficiencyDisk_->setAxisTitle("Hit efficiency", 1);
357 
358  meEfficiencyXDisk_ = iBooker.book1D("efficiencyX_" + hisID, "Hit efficiency in X", nbinX, -1.5, 1.5);
359  meEfficiencyXDisk_->setAxisTitle("Hit efficiency in X", 1);
360 
361  meEfficiencyYDisk_ = iBooker.book1D("efficiencyY_" + hisID, "Hit efficiency in Y", nbinY, -4., 4.);
362  meEfficiencyYDisk_->setAxisTitle("Hit efficiency in Y", 1);
363 
365  iBooker.book1D("efficiencyAlpha_" + hisID, "Hit efficiency in Alpha", nbinangle, -3.5, 3.5);
366  meEfficiencyAlphaDisk_->setAxisTitle("Hit efficiency in Alpha", 1);
367 
368  meEfficiencyBetaDisk_ = iBooker.book1D("efficiencyBeta_" + hisID, "Hit efficiency in Beta", nbinangle, -3.5, 3.5);
369  meEfficiencyBetaDisk_->setAxisTitle("Hit efficiency in Beta", 1);
370  }
371 
372  // VALID
373  meValidDisk_ = iBooker.book1D("valid_" + hisID, "# Valid hits", 1, 0, 1.);
374  meValidDisk_->setAxisTitle("# Valid hits", 1);
375 
376  meValidXDisk_ = iBooker.book1D("validX_" + hisID, "# Valid hits in X", nbinX, -1.5, 1.5);
377  meValidXDisk_->setAxisTitle("# Valid hits in X", 1);
378 
379  meValidYDisk_ = iBooker.book1D("validY_" + hisID, "# Valid hits in Y", nbinY, -4., 4.);
380  meValidYDisk_->setAxisTitle("# Valid hits in Y", 1);
381 
382  meValidAlphaDisk_ = iBooker.book1D("validAlpha_" + hisID, "# Valid hits in Alpha", nbinangle, -3.5, 3.5);
383  meValidAlphaDisk_->setAxisTitle("# Valid hits in Alpha", 1);
384 
385  meValidBetaDisk_ = iBooker.book1D("validBeta_" + hisID, "# Valid hits in Beta", nbinangle, -3.5, 3.5);
386  meValidBetaDisk_->setAxisTitle("# Valid hits in Beta", 1);
387 
388  // MISSING
389  meMissingDisk_ = iBooker.book1D("missing_" + hisID, "# Missing hits", 1, 0, 1.);
390  meMissingDisk_->setAxisTitle("# Missing hits", 1);
391 
392  meMissingXDisk_ = iBooker.book1D("missingX_" + hisID, "# Missing hits in X", nbinX, -1.5, 1.5);
393  meMissingXDisk_->setAxisTitle("# Missing hits in X", 1);
394 
395  meMissingYDisk_ = iBooker.book1D("missingY_" + hisID, "# Missing hits in Y", nbinY, -4., 4.);
396  meMissingYDisk_->setAxisTitle("# Missing hits in Y", 1);
397 
398  meMissingAlphaDisk_ = iBooker.book1D("missingAlpha_" + hisID, "# Missing hits in Alpha", nbinangle, -3.5, 3.5);
399  meMissingAlphaDisk_->setAxisTitle("# Missing hits in Alpha", 1);
400 
401  meMissingBetaDisk_ = iBooker.book1D("missingBeta_" + hisID, "# Missing hits in Beta", nbinangle, -3.5, 3.5);
402  meMissingBetaDisk_->setAxisTitle("# Missing hits in Beta", 1);
403  }
404 
405  if (type == 6 && endcap) {
406  uint32_t panel;
407  uint32_t module;
408  panel = PixelEndcapName(DetId(id_), pTT, isUpgrade).pannelName();
410 
411  char slab[80];
412  sprintf(slab, "Panel_%i_Ring_%i", panel, module);
413  hisID = src.label() + "_" + slab;
414 
415  if (updateEfficiencies) {
416  // EFFICIENCY
417  meEfficiencyRing_ = iBooker.book1D("efficiency_" + hisID, "Hit efficiency", 1, 0, 1.);
418  meEfficiencyRing_->setAxisTitle("Hit efficiency", 1);
419 
420  meEfficiencyXRing_ = iBooker.book1D("efficiencyX_" + hisID, "Hit efficiency in X", nbinX, -1.5, 1.5);
421  meEfficiencyXRing_->setAxisTitle("Hit efficiency in X", 1);
422 
423  meEfficiencyYRing_ = iBooker.book1D("efficiencyY_" + hisID, "Hit efficiency in Y", nbinY, -4., 4.);
424  meEfficiencyYRing_->setAxisTitle("Hit efficiency in Y", 1);
425 
427  iBooker.book1D("efficiencyAlpha_" + hisID, "Hit efficiency in Alpha", nbinangle, -3.5, 3.5);
428  meEfficiencyAlphaRing_->setAxisTitle("Hit efficiency in Alpha", 1);
429 
430  meEfficiencyBetaRing_ = iBooker.book1D("efficiencyBeta_" + hisID, "Hit efficiency in Beta", nbinangle, -3.5, 3.5);
431  meEfficiencyBetaRing_->setAxisTitle("Hit efficiency in Beta", 1);
432  }
433 
434  // VALID
435  meValidRing_ = iBooker.book1D("valid_" + hisID, "# Valid hits", 1, 0, 1.);
436  meValidRing_->setAxisTitle("# Valid hits", 1);
437 
438  meValidXRing_ = iBooker.book1D("validX_" + hisID, "# Valid hits in X", nbinX, -1.5, 1.5);
439  meValidXRing_->setAxisTitle("# Valid hits in X", 1);
440 
441  meValidYRing_ = iBooker.book1D("validY_" + hisID, "# Valid hits in Y", nbinY, -4., 4.);
442  meValidYRing_->setAxisTitle("# Valid hits in Y", 1);
443 
444  meValidAlphaRing_ = iBooker.book1D("validAlpha_" + hisID, "# Valid hits in Alpha", nbinangle, -3.5, 3.5);
445  meValidAlphaRing_->setAxisTitle("# Valid hits in Alpha", 1);
446 
447  meValidBetaRing_ = iBooker.book1D("validBeta_" + hisID, "# Valid hits in Beta", nbinangle, -3.5, 3.5);
448  meValidBetaRing_->setAxisTitle("# Valid hits in Beta", 1);
449 
450  // MISSING
451  meMissingRing_ = iBooker.book1D("missing_" + hisID, "# Missing hits", 1, 0, 1.);
452  meMissingRing_->setAxisTitle("# Missing hits", 1);
453 
454  meMissingXRing_ = iBooker.book1D("missingX_" + hisID, "# Missing hits in X", nbinX, -1.5, 1.5);
455  meMissingXRing_->setAxisTitle("# Missing hits in X", 1);
456 
457  meMissingYRing_ = iBooker.book1D("missingY_" + hisID, "# Missing hits in Y", nbinY, -4., 4.);
458  meMissingYRing_->setAxisTitle("# Missing hits in Y", 1);
459 
460  meMissingAlphaRing_ = iBooker.book1D("missingAlpha_" + hisID, "# Missing hits in Alpha", nbinangle, -3.5, 3.5);
461  meMissingAlphaRing_->setAxisTitle("# Missing hits in Alpha", 1);
462 
463  meMissingBetaRing_ = iBooker.book1D("missingBeta_" + hisID, "# Missing hits in Beta", nbinangle, -3.5, 3.5);
464  meMissingBetaRing_->setAxisTitle("# Missing hits in Beta", 1);
465  }
466 }
467 
469  const LocalTrajectoryParameters &ltp,
470  bool isHitValid,
471  bool modon,
472  bool ladon,
473  bool layon,
474  bool phion,
475  bool bladeon,
476  bool diskon,
477  bool ringon) {
478  bool barrel = DetId(id_).subdetId() == static_cast<int>(PixelSubdetector::PixelBarrel);
479  bool endcap = DetId(id_).subdetId() == static_cast<int>(PixelSubdetector::PixelEndcap);
480 
481  LocalVector localDir = ltp.momentum() / ltp.momentum().mag();
482  float prediction_alpha = atan2(localDir.z(), localDir.x());
483  float prediction_beta = atan2(localDir.z(), localDir.y());
484  float prediction_x = ltp.position().x();
485  float prediction_y = ltp.position().y();
486 
488  int imod = PBN.moduleName();
490  int ipan = PEN.pannelName();
491 
492  if (isHitValid) {
493  if (modon) {
494  meValid_->Fill(0.5);
495  }
496  if (barrel && ladon) {
497  meValidLad_->Fill(0.5);
498  meValidXLad_->Fill(prediction_x);
499  meValidYLad_->Fill(prediction_y);
500  meValidModLad_->Fill(imod);
501  meValidAlphaLad_->Fill(prediction_alpha);
502  meValidBetaLad_->Fill(prediction_beta);
503  }
504  if (barrel && layon) {
505  meValidLay_->Fill(0.5);
506  meValidXLay_->Fill(prediction_x);
507  meValidYLay_->Fill(prediction_y);
508  meValidAlphaLay_->Fill(prediction_alpha);
509  meValidBetaLay_->Fill(prediction_beta);
510  }
511  if (barrel && phion) {
512  meValidPhi_->Fill(0.5);
513  meValidXPhi_->Fill(prediction_x);
514  meValidYPhi_->Fill(prediction_y);
515  meValidAlphaPhi_->Fill(prediction_alpha);
516  meValidBetaPhi_->Fill(prediction_beta);
517  }
518  if (endcap && bladeon) {
519  meValidBlade_->Fill(ipan);
520  meValidXBlade_->Fill(prediction_x);
521  meValidYBlade_->Fill(prediction_y);
522  meValidAlphaBlade_->Fill(prediction_alpha);
523  meValidBetaBlade_->Fill(prediction_beta);
524  }
525  if (endcap && diskon) {
526  meValidDisk_->Fill(0.5);
527  meValidXDisk_->Fill(prediction_x);
528  meValidYDisk_->Fill(prediction_y);
529  meValidAlphaDisk_->Fill(prediction_alpha);
530  meValidBetaDisk_->Fill(prediction_beta);
531  }
532  if (endcap && ringon) {
533  meValidRing_->Fill(0.5);
534  meValidXRing_->Fill(prediction_x);
535  meValidYRing_->Fill(prediction_y);
536  meValidAlphaRing_->Fill(prediction_alpha);
537  meValidBetaRing_->Fill(prediction_beta);
538  }
539  } else {
540  if (modon) {
541  meMissing_->Fill(0.5);
542  }
543  if (barrel && ladon) {
544  meMissingLad_->Fill(0.5);
545  meMissingXLad_->Fill(prediction_x);
546  meMissingYLad_->Fill(prediction_y);
547  meMissingModLad_->Fill(imod);
548  meMissingAlphaLad_->Fill(prediction_alpha);
549  meMissingBetaLad_->Fill(prediction_beta);
550  }
551  if (barrel && layon) {
552  meMissingLay_->Fill(0.5);
553  meMissingXLay_->Fill(prediction_x);
554  meMissingYLay_->Fill(prediction_y);
555  meMissingAlphaLay_->Fill(prediction_alpha);
556  meMissingBetaLay_->Fill(prediction_beta);
557  }
558  if (barrel && phion) {
559  meMissingPhi_->Fill(0.5);
560  meMissingXPhi_->Fill(prediction_x);
561  meMissingYPhi_->Fill(prediction_y);
562  meMissingAlphaPhi_->Fill(prediction_alpha);
563  meMissingBetaPhi_->Fill(prediction_beta);
564  }
565  if (endcap && bladeon) {
566  meMissingBlade_->Fill(ipan);
567  meMissingXBlade_->Fill(prediction_x);
568  meMissingYBlade_->Fill(prediction_y);
569  meMissingAlphaBlade_->Fill(prediction_alpha);
570  meMissingBetaBlade_->Fill(prediction_beta);
571  }
572  if (endcap && diskon) {
573  meMissingDisk_->Fill(0.5);
574  meMissingXDisk_->Fill(prediction_x);
575  meMissingYDisk_->Fill(prediction_y);
576  meMissingAlphaDisk_->Fill(prediction_alpha);
577  meMissingBetaDisk_->Fill(prediction_beta);
578  }
579  if (endcap && ringon) {
580  meMissingRing_->Fill(0.5);
581  meMissingXRing_->Fill(prediction_x);
582  meMissingYRing_->Fill(prediction_y);
583  meMissingAlphaRing_->Fill(prediction_alpha);
584  meMissingBetaRing_->Fill(prediction_beta);
585  }
586  }
587 
588  if (updateEfficiencies)
589  computeEfficiencies(modon, ladon, layon, phion, bladeon, diskon, ringon);
590 }
591 
593  bool modon, bool ladon, bool layon, bool phion, bool bladeon, bool diskon, bool ringon) {
594  if (debug_)
595  std::cout << "Now Filling histos for detid " << id_ << std::endl;
596 
597  bool barrel = DetId(id_).subdetId() == static_cast<int>(PixelSubdetector::PixelBarrel);
598  bool endcap = DetId(id_).subdetId() == static_cast<int>(PixelSubdetector::PixelEndcap);
599 
600  if (modon) {
603  }
604  if (ladon && barrel) {
607  for (int i = 1; i <= meValidXLad_->getNbinsX(); ++i) {
611  }
612  for (int i = 1; i <= meValidYLad_->getNbinsX(); ++i) {
616  }
617  for (int i = 1; i <= meValidAlphaLad_->getNbinsX(); ++i) {
622  }
623  for (int i = 1; i <= meValidBetaLad_->getNbinsX(); ++i) {
628  }
629  }
630 
631  if (layon && barrel) {
634  for (int i = 1; i <= meValidXLay_->getNbinsX(); ++i) {
638  }
639  for (int i = 1; i <= meValidYLay_->getNbinsX(); ++i) {
643  }
644  for (int i = 1; i <= meValidAlphaLay_->getNbinsX(); ++i) {
649  }
650  for (int i = 1; i <= meValidBetaLay_->getNbinsX(); ++i) {
655  }
656  }
657 
658  if (phion && barrel) {
661  for (int i = 1; i <= meValidXPhi_->getNbinsX(); ++i) {
665  }
666  for (int i = 1; i <= meValidYPhi_->getNbinsX(); ++i) {
670  }
671  for (int i = 1; i <= meValidAlphaPhi_->getNbinsX(); ++i) {
676  }
677  for (int i = 1; i <= meValidBetaPhi_->getNbinsX(); ++i) {
682  }
683  }
684  if (bladeon && endcap) {
689  for (int i = 1; i <= meValidXBlade_->getNbinsX(); ++i) {
694  }
695  for (int i = 1; i <= meValidYBlade_->getNbinsX(); ++i) {
700  }
701  for (int i = 1; i <= meValidAlphaBlade_->getNbinsX(); ++i) {
706  }
707  for (int i = 1; i <= meValidBetaBlade_->getNbinsX(); ++i) {
712  }
713  }
714  if (diskon && endcap) {
717  for (int i = 1; i <= meValidXDisk_->getNbinsX(); ++i) {
722  }
723  for (int i = 1; i <= meValidYDisk_->getNbinsX(); ++i) {
728  }
729  for (int i = 1; i <= meValidAlphaDisk_->getNbinsX(); ++i) {
734  }
735  for (int i = 1; i <= meValidBetaDisk_->getNbinsX(); ++i) {
740  }
741  }
742  if (ringon && endcap) {
745  for (int i = 1; i <= meValidXRing_->getNbinsX(); ++i) {
750  }
751  for (int i = 1; i <= meValidYRing_->getNbinsX(); ++i) {
756  }
757  for (int i = 1; i <= meValidAlphaRing_->getNbinsX(); ++i) {
762  }
763  for (int i = 1; i <= meValidBetaRing_->getNbinsX(); ++i) {
768  }
769  }
770 }
771 
772 std::pair<double, double> SiPixelHitEfficiencyModule::eff(double nValid, double nMissing) {
773  double efficiency = 0, error = 0;
774  if (nValid + nMissing != 0) {
775  efficiency = nValid / (nValid + nMissing);
776  error = sqrt(efficiency * (1. - efficiency) / (nValid + nMissing));
777  }
778  return make_pair(efficiency, error);
779 }
SiPixelHitEfficiencyModule::meEfficiencyYPhi_
MonitorElement * meEfficiencyYPhi_
Definition: SiPixelHitEfficiencyModule.h:86
Vector3DBase< float, LocalTag >
SiPixelHitEfficiencyModule::meValidPhi_
MonitorElement * meValidPhi_
Definition: SiPixelHitEfficiencyModule.h:128
SiPixelHitEfficiencyModule::meMissingBetaBlade_
MonitorElement * meMissingBetaBlade_
Definition: SiPixelHitEfficiencyModule.h:182
SiPixelHitEfficiencyModule::meMissingRing_
MonitorElement * meMissingRing_
Definition: SiPixelHitEfficiencyModule.h:190
SiPixelHitEfficiencyModule::meMissingPhi_
MonitorElement * meMissingPhi_
Definition: SiPixelHitEfficiencyModule.h:172
SiPixelHitEfficiencyModule::meValidAlphaPhi_
MonitorElement * meValidAlphaPhi_
Definition: SiPixelHitEfficiencyModule.h:131
SiPixelHitEfficiencyModule::meValidYLad_
MonitorElement * meValidYLad_
Definition: SiPixelHitEfficiencyModule.h:117
SiPixelHitEfficiencyModule::meValidYBlade_
MonitorElement * meValidYBlade_
Definition: SiPixelHitEfficiencyModule.h:136
mps_fire.i
i
Definition: mps_fire.py:428
PixelSubdetector.h
PixelBarrelName.h
Reference_intrackfit_cff.barrel
list barrel
Definition: Reference_intrackfit_cff.py:37
SiPixelHitEfficiencyModule::meValidXRing_
MonitorElement * meValidXRing_
Definition: SiPixelHitEfficiencyModule.h:147
SiPixelHitEfficiencyModule::computeEfficiencies
void computeEfficiencies(bool modon=true, bool ladon=true, bool layon=true, bool phion=true, bool bladeon=true, bool diskon=true, bool ringon=true)
Definition: SiPixelHitEfficiencyModule.cc:592
PixelSubdetector::PixelEndcap
Definition: PixelSubdetector.h:11
PixelSubdetector::PixelBarrel
Definition: PixelSubdetector.h:11
SiPixelHitEfficiencyModule::meEfficiencyYLad_
MonitorElement * meEfficiencyYLad_
Definition: SiPixelHitEfficiencyModule.h:74
SiPixelHitEfficiencyModule::meValidYPhi_
MonitorElement * meValidYPhi_
Definition: SiPixelHitEfficiencyModule.h:130
SiPixelHitEfficiencyModule::meEfficiency_
MonitorElement * meEfficiency_
Definition: SiPixelHitEfficiencyModule.h:66
PV3DBase::x
T x() const
Definition: PV3DBase.h:59
SiPixelHitEfficiencyModule::meMissingXBlade_
MonitorElement * meMissingXBlade_
Definition: SiPixelHitEfficiencyModule.h:179
SiPixelHitEfficiencyModule::meEfficiencyLad_
MonitorElement * meEfficiencyLad_
Definition: SiPixelHitEfficiencyModule.h:72
SiPixelHitEfficiencyModule::meEfficiencyAlpha_
MonitorElement * meEfficiencyAlpha_
Definition: SiPixelHitEfficiencyModule.h:69
SiPixelHitEfficiencyModule::meEfficiencyLay_
MonitorElement * meEfficiencyLay_
Definition: SiPixelHitEfficiencyModule.h:78
SiPixelHitEfficiencyModule::meValidXLay_
MonitorElement * meValidXLay_
Definition: SiPixelHitEfficiencyModule.h:123
TrackerTopology
Definition: TrackerTopology.h:16
gather_cfg.cout
cout
Definition: gather_cfg.py:144
SiPixelHitEfficiencyModule.h
SiPixelHitEfficiencyModule::meEfficiencyBetaDisk_
MonitorElement * meEfficiencyBetaDisk_
Definition: SiPixelHitEfficiencyModule.h:100
PixelBarrelName
Definition: PixelBarrelName.h:16
SiPixelHitEfficiencyModule::meMissingYLad_
MonitorElement * meMissingYLad_
Definition: SiPixelHitEfficiencyModule.h:161
SiPixelHitEfficiencyModule::meValidLay_
MonitorElement * meValidLay_
Definition: SiPixelHitEfficiencyModule.h:122
SiPixelHitEfficiencyModule::meEfficiencyPhi_
MonitorElement * meEfficiencyPhi_
Definition: SiPixelHitEfficiencyModule.h:84
DQMStore.h
SiPixelHistogramId.h
SiPixelHitEfficiencyModule::meEfficiencyAlphaBlade_
MonitorElement * meEfficiencyAlphaBlade_
Definition: SiPixelHitEfficiencyModule.h:93
SiPixelHitEfficiencyModule::id_
uint32_t id_
Definition: SiPixelHitEfficiencyModule.h:60
SiPixelHitEfficiencyModule::meMissingBetaRing_
MonitorElement * meMissingBetaRing_
Definition: SiPixelHitEfficiencyModule.h:194
SiPixelHitEfficiencyModule::meEfficiencyBetaPhi_
MonitorElement * meEfficiencyBetaPhi_
Definition: SiPixelHitEfficiencyModule.h:88
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
SiPixelHitEfficiencyModule::meValidAlphaRing_
MonitorElement * meValidAlphaRing_
Definition: SiPixelHitEfficiencyModule.h:149
L1TObjectsTimingClient_cff.efficiency
efficiency
Definition: L1TObjectsTimingClient_cff.py:10
SiPixelHitEfficiencyModule::meMissingYPhi_
MonitorElement * meMissingYPhi_
Definition: SiPixelHitEfficiencyModule.h:174
SiPixelHitEfficiencyModule::meMissing_
MonitorElement * meMissing_
Definition: SiPixelHitEfficiencyModule.h:153
makeMuonMisalignmentScenario.endcap
endcap
Definition: makeMuonMisalignmentScenario.py:320
PixelBarrelName::layerName
int layerName() const
layer id
Definition: PixelBarrelName.h:43
SiPixelHitEfficiencyModule::meMissingAlphaRing_
MonitorElement * meMissingAlphaRing_
Definition: SiPixelHitEfficiencyModule.h:193
SiPixelHitEfficiencyModule::meEfficiencyYDisk_
MonitorElement * meEfficiencyYDisk_
Definition: SiPixelHitEfficiencyModule.h:98
PixelEndcapName::pannelName
int pannelName() const
pannel id
Definition: PixelEndcapName.h:51
relativeConstraints.error
error
Definition: relativeConstraints.py:53
PixelEndcapName::bladeName
int bladeName() const
blade id
Definition: PixelEndcapName.h:48
SiPixelHitEfficiencyModule::meValidModLad_
MonitorElement * meValidModLad_
Definition: SiPixelHitEfficiencyModule.h:118
SiPixelHitEfficiencyModule::meValidXBlade_
MonitorElement * meValidXBlade_
Definition: SiPixelHitEfficiencyModule.h:135
SiPixelHitEfficiencyModule::meEfficiencyXDisk_
MonitorElement * meEfficiencyXDisk_
Definition: SiPixelHitEfficiencyModule.h:97
SiPixelHitEfficiencyModule::meValidBetaBlade_
MonitorElement * meValidBetaBlade_
Definition: SiPixelHitEfficiencyModule.h:138
SiPixelHitEfficiencyModule::meEfficiencyAlphaDisk_
MonitorElement * meEfficiencyAlphaDisk_
Definition: SiPixelHitEfficiencyModule.h:99
PV3DBase::z
T z() const
Definition: PV3DBase.h:61
LocalTrajectoryParameters
Definition: LocalTrajectoryParameters.h:25
DetId
Definition: DetId.h:17
SiPixelHitEfficiencyModule::SiPixelHitEfficiencyModule
SiPixelHitEfficiencyModule()
Definition: SiPixelHitEfficiencyModule.cc:31
SiPixelHitEfficiencyModule::meValidBetaPhi_
MonitorElement * meValidBetaPhi_
Definition: SiPixelHitEfficiencyModule.h:132
PixelEndcapName
Definition: PixelEndcapName.h:16
LocalTrajectoryParameters::position
LocalPoint position() const
Local x and y position coordinates.
Definition: LocalTrajectoryParameters.h:85
SiPixelHitEfficiencyModule::meMissingBetaDisk_
MonitorElement * meMissingBetaDisk_
Definition: SiPixelHitEfficiencyModule.h:188
mathSSE::sqrt
T sqrt(T t)
Definition: SSEVec.h:19
dqm::impl::MonitorElement::Fill
void Fill(long long x)
Definition: MonitorElement.h:290
SiPixelHistogramId::setHistoId
std::string setHistoId(std::string variable, uint32_t &rawId)
Set Histogram Id.
Definition: SiPixelHistogramId.cc:29
SiPixelHitEfficiencyModule::meMissingYLay_
MonitorElement * meMissingYLay_
Definition: SiPixelHitEfficiencyModule.h:168
SiPixelHitEfficiencyModule::meEfficiencyXLay_
MonitorElement * meEfficiencyXLay_
Definition: SiPixelHitEfficiencyModule.h:79
SiPixelHitEfficiencyModule::fill
void fill(const TrackerTopology *pTT, const LocalTrajectoryParameters &ltp, bool isHitValid, bool modon=true, bool ladon=true, bool layon=true, bool phion=true, bool bladeon=true, bool diskon=true, bool ringon=true)
Definition: SiPixelHitEfficiencyModule.cc:468
SiPixelHitEfficiencyModule::meMissingYDisk_
MonitorElement * meMissingYDisk_
Definition: SiPixelHitEfficiencyModule.h:186
SiPixelHitEfficiencyModule::meEfficiencyAlphaLay_
MonitorElement * meEfficiencyAlphaLay_
Definition: SiPixelHitEfficiencyModule.h:81
SiPixelHitEfficiencyModule::meEfficiencyX_
MonitorElement * meEfficiencyX_
Definition: SiPixelHitEfficiencyModule.h:67
SiPixelHitEfficiencyModule::meMissingLay_
MonitorElement * meMissingLay_
Definition: SiPixelHitEfficiencyModule.h:166
SiPixelHitEfficiencyModule::book
void book(const edm::ParameterSet &, const TrackerTopology *, DQMStore::IBooker &, int type=0, bool isUpgrade=false)
Definition: SiPixelHitEfficiencyModule.cc:37
PixelBarrelName::ladderName
int ladderName() const
ladder id (index in phi)
Definition: PixelBarrelName.h:49
SiPixelHitEfficiencyModule::meEfficiencyXLad_
MonitorElement * meEfficiencyXLad_
Definition: SiPixelHitEfficiencyModule.h:73
SiPixelHitEfficiencyModule::meValidDisk_
MonitorElement * meValidDisk_
Definition: SiPixelHitEfficiencyModule.h:140
DetId::subdetId
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum)
Definition: DetId.h:48
SiPixelHitEfficiencyModule::meMissingXLay_
MonitorElement * meMissingXLay_
Definition: SiPixelHitEfficiencyModule.h:167
SiPixelHitEfficiencyModule::meMissingYBlade_
MonitorElement * meMissingYBlade_
Definition: SiPixelHitEfficiencyModule.h:180
SiPixelHitEfficiencyModule::meMissingModLad_
MonitorElement * meMissingModLad_
Definition: SiPixelHitEfficiencyModule.h:162
SiPixelHistogramId
Definition: SiPixelHistogramId.h:25
edm::ParameterSet
Definition: ParameterSet.h:47
TrackRefitter_38T_cff.src
src
Definition: TrackRefitter_38T_cff.py:24
SiPixelHitEfficiencyModule::meEfficiencyYRing_
MonitorElement * meEfficiencyYRing_
Definition: SiPixelHitEfficiencyModule.h:104
SiPixelHitEfficiencyModule::meEfficiencyXBlade_
MonitorElement * meEfficiencyXBlade_
Definition: SiPixelHitEfficiencyModule.h:91
SiPixelHitEfficiencyModule::meValidYDisk_
MonitorElement * meValidYDisk_
Definition: SiPixelHitEfficiencyModule.h:142
SiPixelHitEfficiencyModule::meEfficiencyAlphaRing_
MonitorElement * meEfficiencyAlphaRing_
Definition: SiPixelHitEfficiencyModule.h:105
type
type
Definition: SiPixelVCal_PayloadInspector.cc:39
SiPixelHitEfficiencyModule::meEfficiencyXPhi_
MonitorElement * meEfficiencyXPhi_
Definition: SiPixelHitEfficiencyModule.h:85
SiPixelHitEfficiencyModule::updateEfficiencies
bool updateEfficiencies
Definition: SiPixelHitEfficiencyModule.h:63
SiPixelHitEfficiencyModule::meMissingDisk_
MonitorElement * meMissingDisk_
Definition: SiPixelHitEfficiencyModule.h:184
PV3DBase::y
T y() const
Definition: PV3DBase.h:60
SiPixelHitEfficiencyModule::meMissingXRing_
MonitorElement * meMissingXRing_
Definition: SiPixelHitEfficiencyModule.h:191
SiPixelHitEfficiencyModule::meMissingXDisk_
MonitorElement * meMissingXDisk_
Definition: SiPixelHitEfficiencyModule.h:185
SiPixelHitEfficiencyModule::meMissingAlphaDisk_
MonitorElement * meMissingAlphaDisk_
Definition: SiPixelHitEfficiencyModule.h:187
SiPixelHitEfficiencyModule::meEfficiencyAlphaPhi_
MonitorElement * meEfficiencyAlphaPhi_
Definition: SiPixelHitEfficiencyModule.h:87
SiPixelHitEfficiencyModule::meValidAlphaDisk_
MonitorElement * meValidAlphaDisk_
Definition: SiPixelHitEfficiencyModule.h:143
SiPixelHitEfficiencyModule::meValidYRing_
MonitorElement * meValidYRing_
Definition: SiPixelHitEfficiencyModule.h:148
SiPixelHitEfficiencyModule::meValidBetaLay_
MonitorElement * meValidBetaLay_
Definition: SiPixelHitEfficiencyModule.h:126
PixelBarrelName::moduleName
int moduleName() const
module id (index in z)
Definition: PixelBarrelName.h:46
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
SiPixelHitEfficiencyModule::meValidXLad_
MonitorElement * meValidXLad_
Definition: SiPixelHitEfficiencyModule.h:116
SiPixelHitEfficiencyModule::meEfficiencyXRing_
MonitorElement * meEfficiencyXRing_
Definition: SiPixelHitEfficiencyModule.h:103
SiPixelHitEfficiencyModule::meEfficiencyYBlade_
MonitorElement * meEfficiencyYBlade_
Definition: SiPixelHitEfficiencyModule.h:92
callgraph.module
module
Definition: callgraph.py:61
VertexFwd.h
SiPixelHitEfficiencyModule::meEfficiencyDisk_
MonitorElement * meEfficiencyDisk_
Definition: SiPixelHitEfficiencyModule.h:96
SiPixelHitEfficiencyModule::meValidXPhi_
MonitorElement * meValidXPhi_
Definition: SiPixelHitEfficiencyModule.h:129
PV3DBase::mag
T mag() const
Definition: PV3DBase.h:64
SiPixelHitEfficiencyModule::meValidAlphaLad_
MonitorElement * meValidAlphaLad_
Definition: SiPixelHitEfficiencyModule.h:119
SiPixelHitEfficiencyModule::meEfficiencyRing_
MonitorElement * meEfficiencyRing_
Definition: SiPixelHitEfficiencyModule.h:102
SiPixelHitEfficiencyModule::meEfficiencyBetaLay_
MonitorElement * meEfficiencyBetaLay_
Definition: SiPixelHitEfficiencyModule.h:82
dqm::impl::MonitorElement::setBinContent
virtual void setBinContent(int binx, double content)
set content of bin (1-D)
Definition: MonitorElement.cc:691
SiPixelHitEfficiencyModule::meMissingLad_
MonitorElement * meMissingLad_
Definition: SiPixelHitEfficiencyModule.h:159
SiPixelHitEfficiencyModule::meMissingXLad_
MonitorElement * meMissingXLad_
Definition: SiPixelHitEfficiencyModule.h:160
SiPixelHitEfficiencyModule::meMissingBlade_
MonitorElement * meMissingBlade_
Definition: SiPixelHitEfficiencyModule.h:178
std
Definition: JetResolutionObject.h:76
PixelEndcapName::diskName
int diskName() const
disk id
Definition: PixelEndcapName.h:45
SiPixelHitEfficiencyModule::meMissingAlphaLay_
MonitorElement * meMissingAlphaLay_
Definition: SiPixelHitEfficiencyModule.h:169
SiPixelHitEfficiencyModule::meMissingAlphaBlade_
MonitorElement * meMissingAlphaBlade_
Definition: SiPixelHitEfficiencyModule.h:181
SiPixelHitEfficiencyModule::meValidBetaRing_
MonitorElement * meValidBetaRing_
Definition: SiPixelHitEfficiencyModule.h:150
Vertex.h
DetId.h
triggerObjects_cff.id
id
Definition: triggerObjects_cff.py:29
LocalTrajectoryParameters::momentum
LocalVector momentum() const
Momentum vector in the local frame.
Definition: LocalTrajectoryParameters.h:88
SiPixelHitEfficiencyModule::meValidAlphaBlade_
MonitorElement * meValidAlphaBlade_
Definition: SiPixelHitEfficiencyModule.h:137
dqm::impl::MonitorElement::getNbinsX
virtual int getNbinsX() const
get # of bins in X-axis
Definition: MonitorElement.cc:574
SiPixelHitEfficiencyModule::meMissingBetaLay_
MonitorElement * meMissingBetaLay_
Definition: SiPixelHitEfficiencyModule.h:170
SiPixelHitEfficiencyModule::meValid_
MonitorElement * meValid_
Definition: SiPixelHitEfficiencyModule.h:109
SiPixelHitEfficiencyModule::meValidRing_
MonitorElement * meValidRing_
Definition: SiPixelHitEfficiencyModule.h:146
SiPixelHitEfficiencyModule::meMissingYRing_
MonitorElement * meMissingYRing_
Definition: SiPixelHitEfficiencyModule.h:192
dqm::impl::MonitorElement::setBinError
virtual void setBinError(int binx, double error)
set uncertainty on content of bin (1-D)
Definition: MonitorElement.cc:709
SiPixelHitEfficiencyModule::meEfficiencyYLay_
MonitorElement * meEfficiencyYLay_
Definition: SiPixelHitEfficiencyModule.h:80
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
PixelEndcapNameUpgrade.h
dqm::implementation::IBooker
Definition: DQMStore.h:43
SiPixelHitEfficiencyModule::~SiPixelHitEfficiencyModule
~SiPixelHitEfficiencyModule()
Definition: SiPixelHitEfficiencyModule.cc:35
SiPixelHitEfficiencyModule::meValidLad_
MonitorElement * meValidLad_
Definition: SiPixelHitEfficiencyModule.h:115
SiPixelHitEfficiencyModule::meEfficiencyAlphaLad_
MonitorElement * meEfficiencyAlphaLad_
Definition: SiPixelHitEfficiencyModule.h:75
SiPixelHitEfficiencyModule::meMissingBetaLad_
MonitorElement * meMissingBetaLad_
Definition: SiPixelHitEfficiencyModule.h:164
SiPixelHitEfficiencyModule::meEfficiencyY_
MonitorElement * meEfficiencyY_
Definition: SiPixelHitEfficiencyModule.h:68
PixelEndcapName::plaquetteName
int plaquetteName() const
plaquetteId (in pannel)
Definition: PixelEndcapName.h:54
SiPixelHitEfficiencyModule::meMissingAlphaPhi_
MonitorElement * meMissingAlphaPhi_
Definition: SiPixelHitEfficiencyModule.h:175
SiPixelHitEfficiencyModule::eff
std::pair< double, double > eff(double nValid, double nMissing)
Definition: SiPixelHitEfficiencyModule.cc:772
SiPixelHitEfficiencyModule::debug_
bool debug_
Definition: SiPixelHitEfficiencyModule.h:62
SiPixelOfflineDQM_client_cff.isUpgrade
isUpgrade
Definition: SiPixelOfflineDQM_client_cff.py:19
SiPixelHitEfficiencyModule::meValidAlphaLay_
MonitorElement * meValidAlphaLay_
Definition: SiPixelHitEfficiencyModule.h:125
SiPixelHitEfficiencyModule::bBookTracks
bool bBookTracks
Definition: SiPixelHitEfficiencyModule.h:61
PixelBarrelNameUpgrade.h
SiPixelHitEfficiencyModule::meValidBetaLad_
MonitorElement * meValidBetaLad_
Definition: SiPixelHitEfficiencyModule.h:120
SiPixelHitEfficiencyModule::meEfficiencyBeta_
MonitorElement * meEfficiencyBeta_
Definition: SiPixelHitEfficiencyModule.h:70
SiPixelHitEfficiencyModule::meEfficiencyBetaLad_
MonitorElement * meEfficiencyBetaLad_
Definition: SiPixelHitEfficiencyModule.h:76
SiPixelHitEfficiencyModule::meEfficiencyBetaBlade_
MonitorElement * meEfficiencyBetaBlade_
Definition: SiPixelHitEfficiencyModule.h:94
SiPixelHitEfficiencyModule::meValidBetaDisk_
MonitorElement * meValidBetaDisk_
Definition: SiPixelHitEfficiencyModule.h:144
SiPixelHitEfficiencyModule::meMissingAlphaLad_
MonitorElement * meMissingAlphaLad_
Definition: SiPixelHitEfficiencyModule.h:163
PixelBarrelName::isHalfModule
bool isHalfModule() const
full or half module
Definition: PixelBarrelName.cc:702
dqm::impl::MonitorElement::setAxisTitle
virtual void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
Definition: MonitorElement.cc:800
dqm::impl::MonitorElement::getBinContent
virtual double getBinContent(int binx) const
get content of bin (1-D)
Definition: MonitorElement.cc:592
edm::InputTag
Definition: InputTag.h:15
SiPixelHitEfficiencyModule::meEfficiencyBetaRing_
MonitorElement * meEfficiencyBetaRing_
Definition: SiPixelHitEfficiencyModule.h:106
SiPixelHitEfficiencyModule::meMissingXPhi_
MonitorElement * meMissingXPhi_
Definition: SiPixelHitEfficiencyModule.h:173
SiPixelHitEfficiencyModule::meEfficiencyBlade_
MonitorElement * meEfficiencyBlade_
Definition: SiPixelHitEfficiencyModule.h:90
SiPixelHitEfficiencyModule::meMissingBetaPhi_
MonitorElement * meMissingBetaPhi_
Definition: SiPixelHitEfficiencyModule.h:176
dqm::implementation::IBooker::book1D
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
Definition: DQMStore.h:98
SiPixelHitEfficiencyModule::meValidBlade_
MonitorElement * meValidBlade_
Definition: SiPixelHitEfficiencyModule.h:134
SiPixelHitEfficiencyModule::meValidYLay_
MonitorElement * meValidYLay_
Definition: SiPixelHitEfficiencyModule.h:124
SiPixelHitEfficiencyModule::meValidXDisk_
MonitorElement * meValidXDisk_
Definition: SiPixelHitEfficiencyModule.h:141
PixelEndcapName.h