CMS 3D CMS Logo

OuterTrackerMonitorTTStub.cc
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: SiOuterTracker
4 // Class: SiOuterTracker
5 //
13 //
14 // Original Author: Isis Marina Van Parijs
15 // Created: Fri, 24 Oct 2014 12:31:31 GMT
16 //
17 //
18 
19 // system include files
20 #include <memory>
21 #include <vector>
22 #include <numeric>
23 #include <iostream>
24 #include <fstream>
25 
26 // user include files
37 
38 // constructors and destructor
40 :conf_(iConfig)
41 {
42  //now do what ever initialization is needed
43  topFolderName_ = conf_.getParameter<std::string>("TopFolderName");
44  tagTTStubsToken_ = consumes<edmNew::DetSetVector< TTStub< Ref_Phase2TrackerDigi_ > > > (conf_.getParameter<edm::InputTag>("TTStubs") );
45 }
46 
47 
49 {
50  // do anything here that needs to be done at desctruction time
51  // (e.g. close files, deallocate resources etc.)
52 }
53 
54 // member functions
55 
56 // ------------ method called for each event ------------
57 void
59 {
62  iEvent.getByToken( tagTTStubsToken_, Phase2TrackerDigiTTStubHandle );
63 
66  const TrackerTopology* tTopo;
67  iSetup.get< TrackerTopologyRcd >().get(tTopoHandle);
68  tTopo = tTopoHandle.product();
69 
70  edm::ESHandle< TrackerGeometry > tGeometryHandle;
71  const TrackerGeometry* theTrackerGeometry;
72  iSetup.get< TrackerDigiGeometryRecord >().get( tGeometryHandle );
73  theTrackerGeometry = tGeometryHandle.product();
74 
76  typename edmNew::DetSetVector< TTStub< Ref_Phase2TrackerDigi_ > >::const_iterator inputIter;
77  typename edmNew::DetSet< TTStub< Ref_Phase2TrackerDigi_ > >::const_iterator contentIter;
78  //Adding protection
79  if ( !Phase2TrackerDigiTTStubHandle.isValid() ) return;
80 
81  for ( inputIter = Phase2TrackerDigiTTStubHandle->begin(); inputIter != Phase2TrackerDigiTTStubHandle->end(); ++inputIter ) {
82  for ( contentIter = inputIter->begin(); contentIter != inputIter->end(); ++contentIter ) {
85 
87  // tempStubRef->getDetId() gives the stackDetId, not rawId
88  DetId detIdStub = theTrackerGeometry->idToDet( (tempStubRef->getClusterRef(0))->getDetId() )->geographicalId();
89 
91  double displStub = tempStubRef->getTriggerDisplacement();
92  double offsetStub = tempStubRef->getTriggerOffset();
93 
95  MeasurementPoint mp = (tempStubRef->getClusterRef(0))->findAverageLocalCoordinates();
96  const GeomDet* theGeomDet = theTrackerGeometry->idToDet(detIdStub);
97  Global3DPoint posStub = theGeomDet->surface().toGlobal( theGeomDet->topology().localPosition(mp) );
98 
99  Stub_Eta->Fill(posStub.eta());
100  Stub_Phi->Fill(posStub.phi());
101  Stub_R->Fill(posStub.perp());
102  Stub_RZ->Fill( posStub.z(), posStub.perp() );
103 
104  if ( detIdStub.subdetId() == static_cast<int>(StripSubdetector::TOB) ) { // Phase 2 Outer Tracker Barrel
105  Stub_Barrel->Fill(tTopo->layer(detIdStub));
106  Stub_Barrel_XY->Fill( posStub.x(), posStub.y() );
107  Stub_Barrel_W->Fill(tTopo->layer(detIdStub), displStub - offsetStub);
108  Stub_Barrel_O->Fill(tTopo->layer(detIdStub), offsetStub);
109  }
110  else if ( detIdStub.subdetId() == static_cast<int>(StripSubdetector::TID) ) { // Phase 2 Outer Tracker Endcap
111  int disc = tTopo->layer(detIdStub); // returns wheel
112  int ring = tTopo->tidRing(detIdStub);
113  Stub_Endcap_Disc->Fill(disc);
114  Stub_Endcap_Ring->Fill(ring);
115  Stub_Endcap_Disc_W->Fill(disc, displStub - offsetStub);
116  Stub_Endcap_Ring_W->Fill(ring, displStub - offsetStub);
117  Stub_Endcap_Disc_O->Fill(disc, offsetStub);
118  Stub_Endcap_Ring_O->Fill(ring, offsetStub);
119 
120  if ( posStub.z() > 0 ) {
121  Stub_Endcap_Fw_XY->Fill( posStub.x(), posStub.y() );
122  Stub_Endcap_Disc_Fw->Fill(disc);
123  Stub_Endcap_Ring_Fw[disc-1]->Fill(ring);
124  Stub_Endcap_Ring_W_Fw[disc-1]->Fill(ring, displStub - offsetStub);
125  Stub_Endcap_Ring_O_Fw[disc-1]->Fill(ring, offsetStub);
126  }
127  else {
128  Stub_Endcap_Bw_XY->Fill( posStub.x(), posStub.y() );
129  Stub_Endcap_Disc_Bw->Fill(disc);
130  Stub_Endcap_Ring_Bw[disc-1]->Fill(ring);
131  Stub_Endcap_Ring_W_Bw[disc-1]->Fill(ring, displStub - offsetStub);
132  Stub_Endcap_Ring_O_Bw[disc-1]->Fill(ring, offsetStub);
133  }
134  }
135  }
136  }
137 } // end of method
138 
139 // ------------ method called when starting to processes a run ------------
142  const int numDiscs = 5;
143  iBooker.setCurrentFolder(topFolderName_+"/Stubs/Position");
144 
145  edm::ParameterSet psTTStub_Barrel_XY = conf_.getParameter<edm::ParameterSet>("TH2TTStub_Position");
146  HistoName = "Stub_Barrel_XY";
147  Stub_Barrel_XY = iBooker.book2D(HistoName, HistoName,
148  psTTStub_Barrel_XY.getParameter<int32_t>("Nbinsx"),
149  psTTStub_Barrel_XY.getParameter<double>("xmin"),
150  psTTStub_Barrel_XY.getParameter<double>("xmax"),
151  psTTStub_Barrel_XY.getParameter<int32_t>("Nbinsy"),
152  psTTStub_Barrel_XY.getParameter<double>("ymin"),
153  psTTStub_Barrel_XY.getParameter<double>("ymax"));
154  Stub_Barrel_XY->setAxisTitle("L1 Stub Barrel position x [cm]", 1);
155  Stub_Barrel_XY->setAxisTitle("L1 Stub Barrel position y [cm]", 2);
156 
157  edm::ParameterSet psTTStub_Endcap_Fw_XY = conf_.getParameter<edm::ParameterSet>("TH2TTStub_Position");
158  HistoName = "Stub_Endcap_Fw_XY";
159  Stub_Endcap_Fw_XY = iBooker.book2D(HistoName, HistoName,
160  psTTStub_Endcap_Fw_XY.getParameter<int32_t>("Nbinsx"),
161  psTTStub_Endcap_Fw_XY.getParameter<double>("xmin"),
162  psTTStub_Endcap_Fw_XY.getParameter<double>("xmax"),
163  psTTStub_Endcap_Fw_XY.getParameter<int32_t>("Nbinsy"),
164  psTTStub_Endcap_Fw_XY.getParameter<double>("ymin"),
165  psTTStub_Endcap_Fw_XY.getParameter<double>("ymax"));
166  Stub_Endcap_Fw_XY->setAxisTitle("L1 Stub Endcap position x [cm]", 1);
167  Stub_Endcap_Fw_XY->setAxisTitle("L1 Stub Endcap position y [cm]", 2);
168 
169  edm::ParameterSet psTTStub_Endcap_Bw_XY = conf_.getParameter<edm::ParameterSet>("TH2TTStub_Position");
170  HistoName = "Stub_Endcap_Bw_XY";
171  Stub_Endcap_Bw_XY = iBooker.book2D(HistoName, HistoName,
172  psTTStub_Endcap_Bw_XY.getParameter<int32_t>("Nbinsx"),
173  psTTStub_Endcap_Bw_XY.getParameter<double>("xmin"),
174  psTTStub_Endcap_Bw_XY.getParameter<double>("xmax"),
175  psTTStub_Endcap_Bw_XY.getParameter<int32_t>("Nbinsy"),
176  psTTStub_Endcap_Bw_XY.getParameter<double>("ymin"),
177  psTTStub_Endcap_Bw_XY.getParameter<double>("ymax"));
178  Stub_Endcap_Bw_XY->setAxisTitle("L1 Stub Endcap position x [cm]", 1);
179  Stub_Endcap_Bw_XY->setAxisTitle("L1 Stub Endcap position y [cm]", 2);
180 
181  //TTStub #rho vs. z
182  edm::ParameterSet psTTStub_RZ = conf_.getParameter<edm::ParameterSet>("TH2TTStub_RZ");
183  HistoName = "Stub_RZ";
184  Stub_RZ = iBooker.book2D(HistoName, HistoName,
185  psTTStub_RZ.getParameter<int32_t>("Nbinsx"),
186  psTTStub_RZ.getParameter<double>("xmin"),
187  psTTStub_RZ.getParameter<double>("xmax"),
188  psTTStub_RZ.getParameter<int32_t>("Nbinsy"),
189  psTTStub_RZ.getParameter<double>("ymin"),
190  psTTStub_RZ.getParameter<double>("ymax"));
191  Stub_RZ->setAxisTitle("L1 Stub position z [cm]", 1);
192  Stub_RZ->setAxisTitle("L1 Stub position #rho [cm]", 2);
193 
194  iBooker.setCurrentFolder(topFolderName_+"/Stubs");
195  //TTStub eta
196  edm::ParameterSet psTTStub_Eta = conf_.getParameter<edm::ParameterSet>("TH1TTStub_Eta");
197  HistoName = "Stub_Eta";
198  Stub_Eta = iBooker.book1D(HistoName,HistoName,
199  psTTStub_Eta.getParameter<int32_t>("Nbinsx"),
200  psTTStub_Eta.getParameter<double>("xmin"),
201  psTTStub_Eta.getParameter<double>("xmax"));
202  Stub_Eta->setAxisTitle("#eta",1);
203  Stub_Eta->setAxisTitle("# L1 Stubs ",2);
204 
205  //TTStub phi
206  edm::ParameterSet psTTStub_Phi = conf_.getParameter<edm::ParameterSet>("TH1TTStub_Phi");
207  HistoName = "Stub_Phi";
208  Stub_Phi = iBooker.book1D(HistoName,HistoName,
209  psTTStub_Phi.getParameter<int32_t>("Nbinsx"),
210  psTTStub_Phi.getParameter<double>("xmin"),
211  psTTStub_Phi.getParameter<double>("xmax"));
212  Stub_Phi->setAxisTitle("#phi",1);
213  Stub_Phi->setAxisTitle("# L1 Stubs ",2);
214 
215  //TTStub R
216  edm::ParameterSet psTTStub_R = conf_.getParameter<edm::ParameterSet>("TH1TTStub_R");
217  HistoName = "Stub_R";
218  Stub_R = iBooker.book1D(HistoName,HistoName,
219  psTTStub_R.getParameter<int32_t>("Nbinsx"),
220  psTTStub_R.getParameter<double>("xmin"),
221  psTTStub_R.getParameter<double>("xmax"));
222  Stub_R->setAxisTitle("R",1);
223  Stub_R->setAxisTitle("# L1 Stubs ",2);
224 
225  iBooker.setCurrentFolder(topFolderName_+"/Stubs/NStubs");
226  //TTStub barrel stack
227  edm::ParameterSet psTTStub_Barrel = conf_.getParameter<edm::ParameterSet>("TH1TTStub_Layers");
228  HistoName = "NStubs_Barrel";
229  Stub_Barrel = iBooker.book1D(HistoName,HistoName,
230  psTTStub_Barrel.getParameter<int32_t>("Nbinsx"),
231  psTTStub_Barrel.getParameter<double>("xmin"),
232  psTTStub_Barrel.getParameter<double>("xmax"));
233  Stub_Barrel->setAxisTitle("Barrel Layer",1);
234  Stub_Barrel->setAxisTitle("# L1 Stubs ",2);
235 
236  //TTStub Endcap stack
237  edm::ParameterSet psTTStub_ECDisc = conf_.getParameter<edm::ParameterSet>("TH1TTStub_Discs");
238  HistoName = "NStubs_Endcap_Disc";
239  Stub_Endcap_Disc = iBooker.book1D(HistoName,HistoName,
240  psTTStub_ECDisc.getParameter<int32_t>("Nbinsx"),
241  psTTStub_ECDisc.getParameter<double>("xmin"),
242  psTTStub_ECDisc.getParameter<double>("xmax"));
243  Stub_Endcap_Disc->setAxisTitle("Endcap Disc",1);
244  Stub_Endcap_Disc->setAxisTitle("# L1 Stubs ",2);
245 
246  //TTStub Endcap stack
247  HistoName = "NStubs_Endcap_Disc_Fw";
248  Stub_Endcap_Disc_Fw = iBooker.book1D(HistoName,HistoName,
249  psTTStub_ECDisc.getParameter<int32_t>("Nbinsx"),
250  psTTStub_ECDisc.getParameter<double>("xmin"),
251  psTTStub_ECDisc.getParameter<double>("xmax"));
252  Stub_Endcap_Disc_Fw->setAxisTitle("Forward Endcap Disc",1);
253  Stub_Endcap_Disc_Fw->setAxisTitle("# L1 Stubs ",2);
254 
255  //TTStub Endcap stack
256  HistoName = "NStubs_Endcap_Disc_Bw";
257  Stub_Endcap_Disc_Bw = iBooker.book1D(HistoName,HistoName,
258  psTTStub_ECDisc.getParameter<int32_t>("Nbinsx"),
259  psTTStub_ECDisc.getParameter<double>("xmin"),
260  psTTStub_ECDisc.getParameter<double>("xmax"));
261  Stub_Endcap_Disc_Bw->setAxisTitle("Backward Endcap Disc",1);
262  Stub_Endcap_Disc_Bw->setAxisTitle("# L1 Stubs ",2);
263 
264  edm::ParameterSet psTTStub_ECRing = conf_.getParameter<edm::ParameterSet>("TH1TTStub_Rings");
265  HistoName = "NStubs_Endcap_Ring";
266  Stub_Endcap_Ring = iBooker.book1D(HistoName,HistoName,
267  psTTStub_ECRing.getParameter<int32_t>("Nbinsx"),
268  psTTStub_ECRing.getParameter<double>("xmin"),
269  psTTStub_ECRing.getParameter<double>("xmax"));
270  Stub_Endcap_Ring->setAxisTitle("Endcap Ring",1);
271  Stub_Endcap_Ring->setAxisTitle("# L1 Stubs ",2);
272 
273  for (int i = 0; i < numDiscs; i++) {
274  HistoName = "NStubs_Disc+"+std::to_string(i+1);
275  //TTStub Endcap stack
276  Stub_Endcap_Ring_Fw[i] = iBooker.book1D(HistoName, HistoName,
277  psTTStub_ECRing.getParameter<int32_t>("Nbinsx"),
278  psTTStub_ECRing.getParameter<double>("xmin"),
279  psTTStub_ECRing.getParameter<double>("xmax"));
280  Stub_Endcap_Ring_Fw[i]->setAxisTitle("Endcap Ring",1);
281  Stub_Endcap_Ring_Fw[i]->setAxisTitle("# L1 Stubs ",2);
282  }
283 
284  for (int i = 0; i < numDiscs; i++) {
285  HistoName = "NStubs_Disc-"+std::to_string(i+1);
286  //TTStub Endcap stack
287  Stub_Endcap_Ring_Bw[i] = iBooker.book1D(HistoName, HistoName,
288  psTTStub_ECRing.getParameter<int32_t>("Nbinsx"),
289  psTTStub_ECRing.getParameter<double>("xmin"),
290  psTTStub_ECRing.getParameter<double>("xmax"));
291  Stub_Endcap_Ring_Bw[i]->setAxisTitle("Endcap Ring",1);
292  Stub_Endcap_Ring_Bw[i]->setAxisTitle("# L1 Stubs ",2);
293  }
294 
295  //TTStub displ/offset
296  edm::ParameterSet psTTStub_Barrel_2D = conf_.getParameter<edm::ParameterSet>("TH2TTStub_DisOf_Layer");
297  edm::ParameterSet psTTStub_ECDisc_2D = conf_.getParameter<edm::ParameterSet>("TH2TTStub_DisOf_Disc");
298  edm::ParameterSet psTTStub_ECRing_2D = conf_.getParameter<edm::ParameterSet>("TH2TTStub_DisOf_Ring");
299 
300  iBooker.setCurrentFolder(topFolderName_+"/Stubs/Width");
301  HistoName = "Stub_Width_Barrel";
302  Stub_Barrel_W = iBooker.book2D(HistoName, HistoName,
303  psTTStub_Barrel_2D.getParameter<int32_t>("Nbinsx"),
304  psTTStub_Barrel_2D.getParameter<double>("xmin"),
305  psTTStub_Barrel_2D.getParameter<double>("xmax"),
306  psTTStub_Barrel_2D.getParameter<int32_t>("Nbinsy"),
307  psTTStub_Barrel_2D.getParameter<double>("ymin"),
308  psTTStub_Barrel_2D.getParameter<double>("ymax"));
309  Stub_Barrel_W->setAxisTitle("Barrel Layer",1);
310  Stub_Barrel_W->setAxisTitle("Displacement - Offset",2);
311 
312  HistoName = "Stub_Width_Endcap_Disc";
313  Stub_Endcap_Disc_W = iBooker.book2D(HistoName, HistoName,
314  psTTStub_ECDisc_2D.getParameter<int32_t>("Nbinsx"),
315  psTTStub_ECDisc_2D.getParameter<double>("xmin"),
316  psTTStub_ECDisc_2D.getParameter<double>("xmax"),
317  psTTStub_ECDisc_2D.getParameter<int32_t>("Nbinsy"),
318  psTTStub_ECDisc_2D.getParameter<double>("ymin"),
319  psTTStub_ECDisc_2D.getParameter<double>("ymax"));
320  Stub_Endcap_Disc_W->setAxisTitle("Endcap Disc",1);
321  Stub_Endcap_Disc_W->setAxisTitle("Displacement - Offset",2);
322 
323  HistoName = "Stub_Width_Endcap_Ring";
324  Stub_Endcap_Ring_W = iBooker.book2D(HistoName, HistoName,
325  psTTStub_ECRing_2D.getParameter<int32_t>("Nbinsx"),
326  psTTStub_ECRing_2D.getParameter<double>("xmin"),
327  psTTStub_ECRing_2D.getParameter<double>("xmax"),
328  psTTStub_ECRing_2D.getParameter<int32_t>("Nbinsy"),
329  psTTStub_ECRing_2D.getParameter<double>("ymin"),
330  psTTStub_ECRing_2D.getParameter<double>("ymax"));
331  Stub_Endcap_Ring_W->setAxisTitle("Endcap Ring",1);
332  Stub_Endcap_Ring_W->setAxisTitle("Trigger Offset",2);
333 
334  for (int i = 0; i < numDiscs; i++) {
335  HistoName = "Stub_Width_Disc+"+std::to_string(i+1);
336  Stub_Endcap_Ring_W_Fw[i] = iBooker.book2D(HistoName, HistoName,
337  psTTStub_ECRing_2D.getParameter<int32_t>("Nbinsx"),
338  psTTStub_ECRing_2D.getParameter<double>("xmin"),
339  psTTStub_ECRing_2D.getParameter<double>("xmax"),
340  psTTStub_ECRing_2D.getParameter<int32_t>("Nbinsy"),
341  psTTStub_ECRing_2D.getParameter<double>("ymin"),
342  psTTStub_ECRing_2D.getParameter<double>("ymax"));
343  Stub_Endcap_Ring_W_Fw[i]->setAxisTitle("Endcap Ring",1);
344  Stub_Endcap_Ring_W_Fw[i]->setAxisTitle("Displacement - Offset",2);
345  }
346 
347  for (int i = 0; i < numDiscs; i++) {
348  HistoName = "Stub_Width_Disc-"+std::to_string(i+1);
349  Stub_Endcap_Ring_W_Bw[i] = iBooker.book2D(HistoName, HistoName,
350  psTTStub_ECRing_2D.getParameter<int32_t>("Nbinsx"),
351  psTTStub_ECRing_2D.getParameter<double>("xmin"),
352  psTTStub_ECRing_2D.getParameter<double>("xmax"),
353  psTTStub_ECRing_2D.getParameter<int32_t>("Nbinsy"),
354  psTTStub_ECRing_2D.getParameter<double>("ymin"),
355  psTTStub_ECRing_2D.getParameter<double>("ymax"));
356  Stub_Endcap_Ring_W_Bw[i]->setAxisTitle("Endcap Ring",1);
357  Stub_Endcap_Ring_W_Bw[i]->setAxisTitle("Displacement - Offset",2);
358  }
359 
360  iBooker.setCurrentFolder(topFolderName_+"/Stubs/Offset");
361  HistoName = "Stub_Offset_Barrel";
362  Stub_Barrel_O = iBooker.book2D(HistoName, HistoName,
363  psTTStub_Barrel_2D.getParameter<int32_t>("Nbinsx"),
364  psTTStub_Barrel_2D.getParameter<double>("xmin"),
365  psTTStub_Barrel_2D.getParameter<double>("xmax"),
366  psTTStub_Barrel_2D.getParameter<int32_t>("Nbinsy"),
367  psTTStub_Barrel_2D.getParameter<double>("ymin"),
368  psTTStub_Barrel_2D.getParameter<double>("ymax"));
369  Stub_Barrel_O->setAxisTitle("Barrel Layer",1);
370  Stub_Barrel_O->setAxisTitle("Trigger Offset",2);
371 
372  HistoName = "Stub_Offset_Endcap_Disc";
373  Stub_Endcap_Disc_O = iBooker.book2D(HistoName, HistoName,
374  psTTStub_ECDisc_2D.getParameter<int32_t>("Nbinsx"),
375  psTTStub_ECDisc_2D.getParameter<double>("xmin"),
376  psTTStub_ECDisc_2D.getParameter<double>("xmax"),
377  psTTStub_ECDisc_2D.getParameter<int32_t>("Nbinsy"),
378  psTTStub_ECDisc_2D.getParameter<double>("ymin"),
379  psTTStub_ECDisc_2D.getParameter<double>("ymax"));
380  Stub_Endcap_Disc_O->setAxisTitle("Endcap Disc",1);
381  Stub_Endcap_Disc_O->setAxisTitle("Trigger Offset",2);
382 
383  HistoName = "Stub_Offset_Endcap_Ring";
384  Stub_Endcap_Ring_O = iBooker.book2D(HistoName, HistoName,
385  psTTStub_ECRing_2D.getParameter<int32_t>("Nbinsx"),
386  psTTStub_ECRing_2D.getParameter<double>("xmin"),
387  psTTStub_ECRing_2D.getParameter<double>("xmax"),
388  psTTStub_ECRing_2D.getParameter<int32_t>("Nbinsy"),
389  psTTStub_ECRing_2D.getParameter<double>("ymin"),
390  psTTStub_ECRing_2D.getParameter<double>("ymax"));
391  Stub_Endcap_Ring_O->setAxisTitle("Endcap Ring",1);
392  Stub_Endcap_Ring_O->setAxisTitle("Trigger Offset",2);
393 
394  for (int i = 0; i < numDiscs; i++) {
395  HistoName = "Stub_Offset_Disc+"+std::to_string(i+1);
396  Stub_Endcap_Ring_O_Fw[i] = iBooker.book2D(HistoName, HistoName,
397  psTTStub_ECRing_2D.getParameter<int32_t>("Nbinsx"),
398  psTTStub_ECRing_2D.getParameter<double>("xmin"),
399  psTTStub_ECRing_2D.getParameter<double>("xmax"),
400  psTTStub_ECRing_2D.getParameter<int32_t>("Nbinsy"),
401  psTTStub_ECRing_2D.getParameter<double>("ymin"),
402  psTTStub_ECRing_2D.getParameter<double>("ymax"));
403  Stub_Endcap_Ring_O_Fw[i]->setAxisTitle("Endcap Ring",1);
404  Stub_Endcap_Ring_O_Fw[i]->setAxisTitle("Trigger Offset",2);
405  }
406 
407  for (int i = 0; i < numDiscs; i++) {
408  HistoName = "Stub_Offset_Disc-"+std::to_string(i+1);
409  Stub_Endcap_Ring_O_Bw[i] = iBooker.book2D(HistoName, HistoName,
410  psTTStub_ECRing_2D.getParameter<int32_t>("Nbinsx"),
411  psTTStub_ECRing_2D.getParameter<double>("xmin"),
412  psTTStub_ECRing_2D.getParameter<double>("xmax"),
413  psTTStub_ECRing_2D.getParameter<int32_t>("Nbinsy"),
414  psTTStub_ECRing_2D.getParameter<double>("ymin"),
415  psTTStub_ECRing_2D.getParameter<double>("ymax"));
416  Stub_Endcap_Ring_O_Bw[i]->setAxisTitle("Endcap Ring",1);
417  Stub_Endcap_Ring_O_Bw[i]->setAxisTitle("Trigger Offset",2);
418  }
419 }
420 
GlobalPoint toGlobal(const Point2DBase< Scalar, LocalTag > lp) const
Definition: Surface.h:106
T getParameter(std::string const &) const
edm::Ref< typename HandleT::element_type, typename HandleT::element_type::value_type::value_type > makeRefTo(const HandleT &iHandle, typename HandleT::element_type::value_type::const_iterator itIter)
const_iterator end(bool update=false) const
T perp() const
Definition: PV3DBase.h:72
unsigned int tidRing(const DetId &id) const
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:579
virtual const Topology & topology() const
Definition: GeomDet.cc:81
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:17
Geom::Phi< T > phi() const
Definition: PV3DBase.h:69
T y() const
Definition: PV3DBase.h:63
MonitorElement * Stub_Endcap_Ring_O_Fw[5]
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
const Plane & surface() const
The nominal surface of the GeomDet.
Definition: GeomDet.h:42
void Fill(long long x)
void analyze(const edm::Event &, const edm::EventSetup &) override
MonitorElement * Stub_Endcap_Ring_Bw[5]
int iEvent
Definition: GenABIO.cc:230
OuterTrackerMonitorTTStub(const edm::ParameterSet &)
MonitorElement * Stub_Endcap_Ring_O_Bw[5]
void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:268
T z() const
Definition: PV3DBase.h:64
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:41
MonitorElement * book1D(Args &&...args)
Definition: DQMStore.h:106
bool isValid() const
Definition: HandleBase.h:74
Class to store the L1 Track Trigger stubs.
Definition: TTStub.h:22
Definition: DetId.h:18
MonitorElement * book2D(Args &&...args)
Definition: DQMStore.h:109
edm::EDGetTokenT< edmNew::DetSetVector< TTStub< Ref_Phase2TrackerDigi_ > > > tagTTStubsToken_
virtual LocalPoint localPosition(const MeasurementPoint &) const =0
std::string HistoName
unsigned int layer(const DetId &id) const
T eta() const
Definition: PV3DBase.h:76
MonitorElement * Stub_Endcap_Ring_Fw[5]
T get() const
Definition: EventSetup.h:62
const TrackerGeomDet * idToDet(DetId) const override
MonitorElement * Stub_Endcap_Ring_W_Bw[5]
T x() const
Definition: PV3DBase.h:62
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
T const * product() const
Definition: ESHandle.h:86
const_iterator begin(bool update=false) const
Definition: Run.h:44
MonitorElement * Stub_Endcap_Ring_W_Fw[5]