CMS 3D CMS Logo

GEMTnPEfficiencyTask.cc
Go to the documentation of this file.
1 /*
2  * \file GEMTnPEfficiencyTask.cc
3  * \author Qianying
4  *
5  * \interited from the TnP framework of
6  * \author L. Lunerti - INFN Bologna
7  *
8  */
9 
11 
14 
16 
24 
26 public:
29  uint16_t maskChamberWithError(const GEMDetId& chamber_id,
30  const GEMOHStatusCollection*,
32  bool checkBounds(const GeomDet* geomDet, const GlobalPoint& global_position, const float bordercut);
34  ~GEMTnPEfficiencyTask() override;
35 
40  std::unique_ptr<MuonServiceProxy> muon_service_;
41 
42 protected:
43  std::string topFolder() const override;
44 
45  void bookHistograms(DQMStore::IBooker& iBooker, edm::Run const& run, edm::EventSetup const& context) override;
46 
48  void analyze(const edm::Event& event, const edm::EventSetup& context) override;
49 };
50 
53  m_maskChamberWithError_((config.getUntrackedParameter<bool>("maskChamberWithError"))),
54  m_GEMOHStatusCollectionToken_(
55  consumes<GEMOHStatusCollection>(config.getUntrackedParameter<edm::InputTag>("ohStatusTag"))),
56  m_GEMVFATStatusCollectionToken_(
57  consumes<GEMVFATStatusCollection>(config.getUntrackedParameter<edm::InputTag>("vfatStatusTag"))),
58  m_GEMAMCStatusCollectionToken_(
59  consumes<GEMAMCStatusCollection>(config.getUntrackedParameter<edm::InputTag>("amcStatusTag"))) {
60  LogTrace("DQMOffline|MuonDPG|GEMTnPEfficiencyTask") << "[GEMTnPEfficiencyTask]: Constructor" << std::endl;
61  muon_service_ = std::make_unique<MuonServiceProxy>(config.getParameter<edm::ParameterSet>("ServiceParameters"),
62  consumesCollector());
63 }
64 
66  LogTrace("DQMOffline|MuonDPG|GEMTnPEfficiencyTask")
67  << "[GEMTnPEfficiencyTask]: analyzed " << m_nEvents << " events" << std::endl;
68 }
69 
71  edm::Run const& run,
72  edm::EventSetup const& context) {
74 
75  LogTrace("DQMOffline|MuonDPG|GEMTnPEfficiencyTask") << "[GEMTnPEfficiencyTask]: bookHistograms" << std::endl;
76 
77  auto baseDir = topFolder() + "Task/";
78  iBooker.setCurrentFolder(baseDir);
79  MonitorElement* me_GE11_pass_Ch_region =
80  iBooker.book2D("GE11_nPassingProbe_Ch_region", "GE11_nPassingProbe_Ch_region", 2, -1.5, 1.5, 36, 1, 37);
81  MonitorElement* me_GE11_fail_Ch_region =
82  iBooker.book2D("GE11_nFailingProbe_Ch_region", "GE11_nFailingProbe_Ch_region", 2, -1.5, 1.5, 36, 1, 37);
83  MonitorElement* me_GE21_pass_Ch_region =
84  iBooker.book2D("GE21_nPassingProbe_Ch_region", "GE21_nPassingProbe_Ch_region", 2, -1.5, 1.5, 36, 1, 37);
85  MonitorElement* me_GE21_fail_Ch_region =
86  iBooker.book2D("GE21_nFailingProbe_Ch_region", "GE21_nFailingProbe_Ch_region", 2, -1.5, 1.5, 36, 1, 37);
87  MonitorElement* me_GEM_pass_Ch_region_GE1 =
88  iBooker.book2D("GEM_nPassingProbe_Ch_region_GE1", "GEM_nPassingProbe_Ch_region_GE1", 4, 0, 4, 36, 1, 37);
89  MonitorElement* me_GEM_fail_Ch_region_GE1 =
90  iBooker.book2D("GEM_nFailingProbe_Ch_region_GE1", "GEM_nFailingProbe_Ch_region_GE1", 4, 0, 4, 36, 1, 37);
91  MonitorElement* me_GEM_pass_Ch_region_GE1_NoL =
92  iBooker.book2D("GEM_nPassingProbe_Ch_region_GE1_NoL", "GEM_nPassingProbe_Ch_region_GE1_NoL", 2, 0, 2, 36, 1, 37);
93  MonitorElement* me_GEM_fail_Ch_region_GE1_NoL =
94  iBooker.book2D("GEM_nFailingProbe_Ch_region_GE1_NoL", "GEM_nFailingProbe_Ch_region_GE1_NoL", 2, 0, 2, 36, 1, 37);
95  MonitorElement* me_GE11_pass_Ch_ieta =
96  iBooker.book2D("GE11_nPassingProbe_Ch_ieta", "GE11_nPassingProbe_Ch_ieta", 8, 1, 9, 36, 1, 37);
97  MonitorElement* me_GE11_fail_Ch_ieta =
98  iBooker.book2D("GE11_nFailingProbe_Ch_ieta", "GE11_nFailingProbe_Ch_ieta", 8, 1, 9, 36, 1, 37);
99  MonitorElement* me_GE11_pass_Ch_phi = iBooker.book2D(
100  "GE11_nPassingProbe_Ch_phi", "GE11_nPassingProbe_Ch_phi", 20, -TMath::Pi(), TMath::Pi(), 36, 1, 37);
101  MonitorElement* me_GE11_fail_Ch_phi = iBooker.book2D(
102  "GE11_nFailingProbe_Ch_phi", "GE11_nFailingProbe_Ch_phi", 20, -TMath::Pi(), TMath::Pi(), 36, 1, 37);
103  MonitorElement* me_GE11_pass_allCh_1D =
104  iBooker.book1D("GE11_nPassingProbe_allCh_1D", "GE11_nPassingProbe_allCh_1D", 2, -1.5, 1.5);
105  MonitorElement* me_GE11_fail_allCh_1D =
106  iBooker.book1D("GE11_nFailingProbe_allCh_1D", "GE11_nFailingProbe_allCh_1D", 2, -1.5, 1.5);
107  MonitorElement* me_GE11_pass_chamber_1D =
108  iBooker.book1D("GE11_nPassingProbe_chamber_1D", "GE11_nPassingProbe_chamber_1D", 36, 1, 37);
109  MonitorElement* me_GE11_fail_chamber_1D =
110  iBooker.book1D("GE11_nFailingProbe_chamber_1D", "GE11_nFailingProbe_chamber_1D", 36, 1, 37);
111  MonitorElement* me_GE21_pass_Ch_ieta =
112  iBooker.book2D("GE21_nPassingProbe_Ch_ieta", "GE21_nPassingProbe_Ch_ieta", 16, 1, 17, 18, 1, 19);
113  MonitorElement* me_GE21_fail_Ch_ieta =
114  iBooker.book2D("GE21_nFailingProbe_Ch_ieta", "GE21_nFailingProbe_Ch_ieta", 16, 1, 17, 18, 1, 19);
115  MonitorElement* me_GE21_pass_Ch_phi = iBooker.book2D(
116  "GE21_nPassingProbe_Ch_phi", "GE21_nPassingProbe_Ch_phi", 20, -TMath::Pi(), TMath::Pi(), 18, 1, 19);
117  MonitorElement* me_GE21_fail_Ch_phi = iBooker.book2D(
118  "GE21_nFailingProbe_Ch_phi", "GE21_nFailingProbe_Ch_phi", 20, -TMath::Pi(), TMath::Pi(), 18, 1, 19);
119  MonitorElement* me_GE21_pass_allCh_1D =
120  iBooker.book1D("GE21_nPassingProbe_allCh_1D", "GE21_nPassingProbe_allCh_1D", 2, -1.5, 1.5);
121  MonitorElement* me_GE21_fail_allCh_1D =
122  iBooker.book1D("GE21_nFailingProbe_allCh_1D", "GE21_nFailingProbe_allCh_1D", 2, -1.5, 1.5);
123  MonitorElement* me_GE21_pass_chamber_1D =
124  iBooker.book1D("GE21_nPassingProbe_chamber_1D", "GE21_nPassingProbe_chamber_1D", 18, 1, 19);
125  MonitorElement* me_GE21_fail_chamber_1D =
126  iBooker.book1D("GE21_nFailingProbe_chamber_1D", "GE21_nFailingProbe_chamber_1D", 18, 1, 19);
127  MonitorElement* me_GEM_pass_chamber_p1_1D =
128  iBooker.book1D("GEM_nPassingProbe_chamber_p1_1D", "GEM_nPassingProbe_chamber_p1_1D", 36, 1, 37);
129  MonitorElement* me_GEM_fail_chamber_p1_1D =
130  iBooker.book1D("GEM_nFailingProbe_chamber_p1_1D", "GEM_nFailingProbe_chamber_p1_1D", 36, 1, 37);
131  MonitorElement* me_GEM_pass_chamber_p2_1D =
132  iBooker.book1D("GEM_nPassingProbe_chamber_p2_1D", "GEM_nPassingProbe_chamber_p2_1D", 36, 1, 37);
133  MonitorElement* me_GEM_fail_chamber_p2_1D =
134  iBooker.book1D("GEM_nFailingProbe_chamber_p2_1D", "GEM_nFailingProbe_chamber_p2_1D", 36, 1, 37);
135  MonitorElement* me_GEM_pass_chamber_n1_1D =
136  iBooker.book1D("GEM_nPassingProbe_chamber_n1_1D", "GEM_nPassingProbe_chamber_n1_1D", 36, 1, 37);
137  MonitorElement* me_GEM_fail_chamber_n1_1D =
138  iBooker.book1D("GEM_nFailingProbe_chamber_n1_1D", "GEM_nFailingProbe_chamber_n1_1D", 36, 1, 37);
139  MonitorElement* me_GEM_pass_chamber_n2_1D =
140  iBooker.book1D("GEM_nPassingProbe_chamber_n2_1D", "GEM_nPassingProbe_chamber_n2_1D", 36, 1, 37);
141  MonitorElement* me_GEM_fail_chamber_n2_1D =
142  iBooker.book1D("GEM_nFailingProbe_chamber_n2_1D", "GEM_nFailingProbe_chamber_n2_1D", 36, 1, 37);
143  //
144  MonitorElement* me_GEM_pass_pt_1D = iBooker.book1D("GEM_nPassingProbe_pt_1D", "GEM_nPassingProbe_pt_1D", 20, 0, 100);
145  MonitorElement* me_GEM_fail_pt_1D = iBooker.book1D("GEM_nFailingProbe_pt_1D", "GEM_nFailingProbe_pt_1D", 20, 0, 100);
146  MonitorElement* me_GEM_pass_eta_1D =
147  iBooker.book1D("GEM_nPassingProbe_eta_1D", "GEM_nPassingProbe_eta_1D", 24, 0, 2.4);
148  MonitorElement* me_GEM_fail_eta_1D =
149  iBooker.book1D("GEM_nFailingProbe_eta_1D", "GEM_nFailingProbe_eta_1D", 24, 0, 2.4);
150  MonitorElement* me_GEM_pass_phi_1D =
151  iBooker.book1D("GEM_nPassingProbe_phi_1D", "GEM_nPassingProbe_phi_1D", 20, -TMath::Pi(), TMath::Pi());
152  MonitorElement* me_GEM_fail_phi_1D =
153  iBooker.book1D("GEM_nFailingProbe_phi_1D", "GEM_nFailingProbe_phi_1D", 20, -TMath::Pi(), TMath::Pi());
155  MonitorElement* me_GEM_pass_pt_p1_1D =
156  iBooker.book1D("GEM_nPassingProbe_pt_p1_1D", "GEM_nPassingProbe_pt_p1_1D", 20, 0, 100);
157  MonitorElement* me_GEM_fail_pt_p1_1D =
158  iBooker.book1D("GEM_nFailingProbe_pt_p1_1D", "GEM_nFailingProbe_pt_p1_1D", 20, 0, 100);
159  MonitorElement* me_GEM_pass_eta_p1_1D =
160  iBooker.book1D("GEM_nPassingProbe_eta_p1_1D", "GEM_nPassingProbe_eta_p1_1D", 24, 0, 2.4);
161  MonitorElement* me_GEM_fail_eta_p1_1D =
162  iBooker.book1D("GEM_nFailingProbe_eta_p1_1D", "GEM_nFailingProbe_eta_p1_1D", 24, 0, 2.4);
163  MonitorElement* me_GEM_pass_phi_p1_1D =
164  iBooker.book1D("GEM_nPassingProbe_phi_p1_1D", "GEM_nPassingProbe_phi_p1_1D", 20, -TMath::Pi(), TMath::Pi());
165  MonitorElement* me_GEM_fail_phi_p1_1D =
166  iBooker.book1D("GEM_nFailingProbe_phi_p1_1D", "GEM_nFailingProbe_phi_p1_1D", 20, -TMath::Pi(), TMath::Pi());
167  MonitorElement* me_GEM_pass_pt_p2_1D =
168  iBooker.book1D("GEM_nPassingProbe_pt_p2_1D", "GEM_nPassingProbe_pt_p2_1D", 20, 0, 100);
169  MonitorElement* me_GEM_fail_pt_p2_1D =
170  iBooker.book1D("GEM_nFailingProbe_pt_p2_1D", "GEM_nFailingProbe_pt_p2_1D", 20, 0, 100);
171  MonitorElement* me_GEM_pass_eta_p2_1D =
172  iBooker.book1D("GEM_nPassingProbe_eta_p2_1D", "GEM_nPassingProbe_eta_p2_1D", 24, 0, 2.4);
173  MonitorElement* me_GEM_fail_eta_p2_1D =
174  iBooker.book1D("GEM_nFailingProbe_eta_p2_1D", "GEM_nFailingProbe_eta_p2_1D", 24, 0, 2.4);
175  MonitorElement* me_GEM_pass_phi_p2_1D =
176  iBooker.book1D("GEM_nPassingProbe_phi_p2_1D", "GEM_nPassingProbe_phi_p2_1D", 20, -TMath::Pi(), TMath::Pi());
177  MonitorElement* me_GEM_fail_phi_p2_1D =
178  iBooker.book1D("GEM_nFailingProbe_phi_p2_1D", "GEM_nFailingProbe_phi_p2_1D", 20, -TMath::Pi(), TMath::Pi());
179  MonitorElement* me_GEM_pass_pt_n1_1D =
180  iBooker.book1D("GEM_nPassingProbe_pt_n1_1D", "GEM_nPassingProbe_pt_n1_1D", 20, 0, 100);
181  MonitorElement* me_GEM_fail_pt_n1_1D =
182  iBooker.book1D("GEM_nFailingProbe_pt_n1_1D", "GEM_nFailingProbe_pt_n1_1D", 20, 0, 100);
183  MonitorElement* me_GEM_pass_eta_n1_1D =
184  iBooker.book1D("GEM_nPassingProbe_eta_n1_1D", "GEM_nPassingProbe_eta_n1_1D", 24, 0, 2.4);
185  MonitorElement* me_GEM_fail_eta_n1_1D =
186  iBooker.book1D("GEM_nFailingProbe_eta_n1_1D", "GEM_nFailingProbe_eta_n1_1D", 24, 0, 2.4);
187  MonitorElement* me_GEM_pass_phi_n1_1D =
188  iBooker.book1D("GEM_nPassingProbe_phi_n1_1D", "GEM_nPassingProbe_phi_n1_1D", 20, -TMath::Pi(), TMath::Pi());
189  MonitorElement* me_GEM_fail_phi_n1_1D =
190  iBooker.book1D("GEM_nFailingProbe_phi_n1_1D", "GEM_nFailingProbe_phi_n1_1D", 20, -TMath::Pi(), TMath::Pi());
191  MonitorElement* me_GEM_pass_pt_n2_1D =
192  iBooker.book1D("GEM_nPassingProbe_pt_n2_1D", "GEM_nPassingProbe_pt_n2_1D", 20, 0, 100);
193  MonitorElement* me_GEM_fail_pt_n2_1D =
194  iBooker.book1D("GEM_nFailingProbe_pt_n2_1D", "GEM_nFailingProbe_pt_n2_1D", 20, 0, 100);
195  MonitorElement* me_GEM_pass_eta_n2_1D =
196  iBooker.book1D("GEM_nPassingProbe_eta_n2_1D", "GEM_nPassingProbe_eta_n2_1D", 24, 0, 2.4);
197  MonitorElement* me_GEM_fail_eta_n2_1D =
198  iBooker.book1D("GEM_nFailingProbe_eta_n2_1D", "GEM_nFailingProbe_eta_n2_1D", 24, 0, 2.4);
199  MonitorElement* me_GEM_pass_phi_n2_1D =
200  iBooker.book1D("GEM_nPassingProbe_phi_n2_1D", "GEM_nPassingProbe_phi_n2_1D", 20, -TMath::Pi(), TMath::Pi());
201  MonitorElement* me_GEM_fail_phi_n2_1D =
202  iBooker.book1D("GEM_nFailingProbe_phi_n2_1D", "GEM_nFailingProbe_phi_n2_1D", 20, -TMath::Pi(), TMath::Pi());
203  MonitorElement* me_GE11_pass_Ch_ieta_p1 =
204  iBooker.book2D("GE11_nPassingProbe_Ch_ieta_p1", "GE11_nPassingProbe_Ch_ieta_p1", 8, 1, 9, 36, 1, 37);
205  MonitorElement* me_GE11_fail_Ch_ieta_p1 =
206  iBooker.book2D("GE11_nFailingProbe_Ch_ieta_p1", "GE11_nFailingProbe_Ch_ieta_p1", 8, 1, 9, 36, 1, 37);
207  MonitorElement* me_GE11_pass_Ch_ieta_p2 =
208  iBooker.book2D("GE11_nPassingProbe_Ch_ieta_p2", "GE11_nPassingProbe_Ch_ieta_p2", 8, 1, 9, 36, 1, 37);
209  MonitorElement* me_GE11_fail_Ch_ieta_p2 =
210  iBooker.book2D("GE11_nFailingProbe_Ch_ieta_p2", "GE11_nFailingProbe_Ch_ieta_p2", 8, 1, 9, 36, 1, 37);
211  MonitorElement* me_GE11_pass_Ch_ieta_n1 =
212  iBooker.book2D("GE11_nPassingProbe_Ch_ieta_n1", "GE11_nPassingProbe_Ch_ieta_n1", 8, 1, 9, 36, 1, 37);
213  MonitorElement* me_GE11_fail_Ch_ieta_n1 =
214  iBooker.book2D("GE11_nFailingProbe_Ch_ieta_n1", "GE11_nFailingProbe_Ch_ieta_n1", 8, 1, 9, 36, 1, 37);
215  MonitorElement* me_GE11_pass_Ch_ieta_n2 =
216  iBooker.book2D("GE11_nPassingProbe_Ch_ieta_n2", "GE11_nPassingProbe_Ch_ieta_n2", 8, 1, 9, 36, 1, 37);
217  MonitorElement* me_GE11_fail_Ch_ieta_n2 =
218  iBooker.book2D("GE11_nFailingProbe_Ch_ieta_n2", "GE11_nFailingProbe_Ch_ieta_n2", 8, 1, 9, 36, 1, 37);
219 
221  MonitorElement* me_ME0_pass_chamber_1D =
222  iBooker.book1D("ME0_nPassingProbe_chamber_1D", "ME0_nPassingProbe_chamber_1D", 18, 1, 19);
223  MonitorElement* me_ME0_fail_chamber_1D =
224  iBooker.book1D("ME0_nFailingProbe_chamber_1D", "ME0_nFailingProbe_chamber_1D", 18, 1, 19);
225  MonitorElement* me_GEM_pass_Ch_region_layer_phase2 = iBooker.book2D(
226  "GEM_nPassingProbe_Ch_region_layer_phase2", "GEM_nPassingProbe_Ch_region_layer_phase2", 10, 0, 10, 36, 1, 37);
227  MonitorElement* me_GEM_fail_Ch_region_layer_phase2 = iBooker.book2D(
228  "GEM_nFailingProbe_Ch_region_layer_phase2", "GEM_nFailingProbe_Ch_region_layer_phase2", 10, 0, 10, 36, 1, 37);
229  // Bad VFAT Mask + Empty OH Mask
230  MonitorElement* OHmissing_me_GE11_pass_allCh_1D =
231  iBooker.book1D("GE11_nPassingProbe_OHmissing_allCh_1D", "GE11_nPassingProbe_OHmissing_allCh_1D", 2, -1.5, 1.5);
232  MonitorElement* OHmissing_me_GE11_fail_allCh_1D =
233  iBooker.book1D("GE11_nFailingProbe_OHmissing_allCh_1D", "GE11_nFailingProbe_OHmissing_allCh_1D", 2, -1.5, 1.5);
234  MonitorElement* OHmissing_me_GEM_pass_chamber_p1_1D = iBooker.book1D(
235  "GEM_nPassingProbe_OHmissing_chamber_p1_1D", "GEM_nPassingProbe_OHmissing_chamber_p1_1D", 36, 1, 37);
236  MonitorElement* OHmissing_me_GEM_fail_chamber_p1_1D = iBooker.book1D(
237  "GEM_nFailingProbe_OHmissing_chamber_p1_1D", "GEM_nFailingProbe_OHmissing_chamber_p1_1D", 36, 1, 37);
238  MonitorElement* OHmissing_me_GEM_pass_chamber_p2_1D = iBooker.book1D(
239  "GEM_nPassingProbe_OHmissing_chamber_p2_1D", "GEM_nPassingProbe_OHmissing_chamber_p2_1D", 36, 1, 37);
240  MonitorElement* OHmissing_me_GEM_fail_chamber_p2_1D = iBooker.book1D(
241  "GEM_nFailingProbe_OHmissing_chamber_p2_1D", "GEM_nFailingProbe_OHmissing_chamber_p2_1D", 36, 1, 37);
242  MonitorElement* OHmissing_me_GEM_pass_chamber_n1_1D = iBooker.book1D(
243  "GEM_nPassingProbe_OHmissing_chamber_n1_1D", "GEM_nPassingProbe_OHmissing_chamber_n1_1D", 36, 1, 37);
244  MonitorElement* OHmissing_me_GEM_fail_chamber_n1_1D = iBooker.book1D(
245  "GEM_nFailingProbe_OHmissing_chamber_n1_1D", "GEM_nFailingProbe_OHmissing_chamber_n1_1D", 36, 1, 37);
246  MonitorElement* OHmissing_me_GEM_pass_chamber_n2_1D = iBooker.book1D(
247  "GEM_nPassingProbe_OHmissing_chamber_n2_1D", "GEM_nPassingProbe_OHmissing_chamber_n2_1D", 36, 1, 37);
248  MonitorElement* OHmissing_me_GEM_fail_chamber_n2_1D = iBooker.book1D(
249  "GEM_nFailingProbe_OHmissing_chamber_n2_1D", "GEM_nFailingProbe_OHmissing_chamber_n2_1D", 36, 1, 37);
250  MonitorElement* OHmissing_me_GEM_pass_pt_1D =
251  iBooker.book1D("GEM_nPassingProbe_OHmissing_pt_1D", "GEM_nPassingProbe_OHmissing_pt_1D", 20, 0, 100);
252  MonitorElement* OHmissing_me_GEM_fail_pt_1D =
253  iBooker.book1D("GEM_nFailingProbe_OHmissing_pt_1D", "GEM_nFailingProbe_OHmissing_pt_1D", 20, 0, 100);
254  MonitorElement* OHmissing_me_GEM_pass_eta_1D =
255  iBooker.book1D("GEM_nPassingProbe_OHmissing_eta_1D", "GEM_nPassingProbe_OHmissing_eta_1D", 24, 0, 2.4);
256  MonitorElement* OHmissing_me_GEM_fail_eta_1D =
257  iBooker.book1D("GEM_nFailingProbe_OHmissing_eta_1D", "GEM_nFailingProbe_OHmissing_eta_1D", 24, 0, 2.4);
258  MonitorElement* OHmissing_me_GEM_pass_phi_1D = iBooker.book1D(
259  "GEM_nPassingProbe_OHmissing_phi_1D", "GEM_nPassingProbe_OHmissing_phi_1D", 20, -TMath::Pi(), TMath::Pi());
260  MonitorElement* OHmissing_me_GEM_fail_phi_1D = iBooker.book1D(
261  "GEM_nFailingProbe_OHmissing_phi_1D", "GEM_nFailingProbe_OHmissing_phi_1D", 20, -TMath::Pi(), TMath::Pi());
262  MonitorElement* OHmissing_me_GE11_pass_Ch_ieta_p1 = iBooker.book2D(
263  "GE11_nPassingProbe_OHmissing_Ch_ieta_p1", "GE11_nPassingProbe_OHmissing_Ch_ieta_p1", 8, 1, 9, 36, 1, 37);
264  MonitorElement* OHmissing_me_GE11_fail_Ch_ieta_p1 = iBooker.book2D(
265  "GE11_nFailingProbe_OHmissing_Ch_ieta_p1", "GE11_nFailingProbe_OHmissing_Ch_ieta_p1", 8, 1, 9, 36, 1, 37);
266  MonitorElement* OHmissing_me_GE11_pass_Ch_ieta_p2 = iBooker.book2D(
267  "GE11_nPassingProbe_OHmissing_Ch_ieta_p2", "GE11_nPassingProbe_OHmissing_Ch_ieta_p2", 8, 1, 9, 36, 1, 37);
268  MonitorElement* OHmissing_me_GE11_fail_Ch_ieta_p2 = iBooker.book2D(
269  "GE11_nFailingProbe_OHmissing_Ch_ieta_p2", "GE11_nFailingProbe_OHmissing_Ch_ieta_p2", 8, 1, 9, 36, 1, 37);
270  MonitorElement* OHmissing_me_GE11_pass_Ch_ieta_n1 = iBooker.book2D(
271  "GE11_nPassingProbe_OHmissing_Ch_ieta_n1", "GE11_nPassingProbe_OHmissing_Ch_ieta_n1", 8, 1, 9, 36, 1, 37);
272  MonitorElement* OHmissing_me_GE11_fail_Ch_ieta_n1 = iBooker.book2D(
273  "GE11_nFailingProbe_OHmissing_Ch_ieta_n1", "GE11_nFailingProbe_OHmissing_Ch_ieta_n1", 8, 1, 9, 36, 1, 37);
274  MonitorElement* OHmissing_me_GE11_pass_Ch_ieta_n2 = iBooker.book2D(
275  "GE11_nPassingProbe_OHmissing_Ch_ieta_n2", "GE11_nPassingProbe_OHmissing_Ch_ieta_n2", 8, 1, 9, 36, 1, 37);
276  MonitorElement* OHmissing_me_GE11_fail_Ch_ieta_n2 = iBooker.book2D(
277  "GE11_nFailingProbe_OHmissing_Ch_ieta_n2", "GE11_nFailingProbe_OHmissing_Ch_ieta_n2", 8, 1, 9, 36, 1, 37);
278 
279  OHmissing_me_GE11_pass_allCh_1D->setBinLabel(1, "GE-11", 1);
280  OHmissing_me_GE11_pass_allCh_1D->setBinLabel(2, "GE+11", 1);
281  OHmissing_me_GE11_pass_allCh_1D->setAxisTitle("Number of passing probes", 2);
282 
283  OHmissing_me_GE11_fail_allCh_1D->setBinLabel(1, "GE-11", 1);
284  OHmissing_me_GE11_fail_allCh_1D->setBinLabel(2, "GE+11", 1);
285  OHmissing_me_GE11_fail_allCh_1D->setAxisTitle("Number of failing probes", 2);
286 
287  OHmissing_me_GEM_pass_chamber_p1_1D->setAxisTitle("Chamber", 1);
288  OHmissing_me_GEM_pass_chamber_p1_1D->setAxisTitle("Number of passing probes", 2);
289  OHmissing_me_GEM_fail_chamber_p1_1D->setAxisTitle("Chamber", 1);
290  OHmissing_me_GEM_fail_chamber_p1_1D->setAxisTitle("Number of failing probes", 2);
291 
292  OHmissing_me_GEM_pass_chamber_p2_1D->setAxisTitle("Chamber", 1);
293  OHmissing_me_GEM_pass_chamber_p2_1D->setAxisTitle("Number of passing probes", 2);
294  OHmissing_me_GEM_fail_chamber_p2_1D->setAxisTitle("Chamber", 1);
295  OHmissing_me_GEM_fail_chamber_p2_1D->setAxisTitle("Number of failing probes", 2);
296 
297  OHmissing_me_GEM_pass_chamber_n1_1D->setAxisTitle("Chamber", 1);
298  OHmissing_me_GEM_pass_chamber_n1_1D->setAxisTitle("Number of passing probes", 2);
299  OHmissing_me_GEM_fail_chamber_n1_1D->setAxisTitle("Chamber", 1);
300  OHmissing_me_GEM_fail_chamber_n1_1D->setAxisTitle("Number of failing probes", 2);
301 
302  OHmissing_me_GEM_pass_chamber_n2_1D->setAxisTitle("Chamber", 1);
303  OHmissing_me_GEM_pass_chamber_n2_1D->setAxisTitle("Number of passing probes", 2);
304  OHmissing_me_GEM_fail_chamber_n2_1D->setAxisTitle("Chamber", 1);
305  OHmissing_me_GEM_fail_chamber_n2_1D->setAxisTitle("Number of failing probes", 2);
306 
307  OHmissing_me_GEM_pass_pt_1D->setAxisTitle("P_{T}", 1);
308  OHmissing_me_GEM_pass_pt_1D->setAxisTitle("Number of passing probes", 2);
309  OHmissing_me_GEM_fail_pt_1D->setAxisTitle("P_{T}", 1);
310  OHmissing_me_GEM_fail_pt_1D->setAxisTitle("Number of failing probes", 2);
311 
312  OHmissing_me_GEM_pass_eta_1D->setAxisTitle("#eta", 1);
313  OHmissing_me_GEM_pass_eta_1D->setAxisTitle("Number of passing probes", 2);
314  OHmissing_me_GEM_fail_eta_1D->setAxisTitle("#eta", 1);
315  OHmissing_me_GEM_fail_eta_1D->setAxisTitle("Number of failing probes", 2);
316 
317  OHmissing_me_GEM_pass_phi_1D->setAxisTitle("#phi", 1);
318  OHmissing_me_GEM_pass_phi_1D->setAxisTitle("Number of passing probes", 2);
319  OHmissing_me_GEM_fail_phi_1D->setAxisTitle("#phi", 1);
320  OHmissing_me_GEM_fail_phi_1D->setAxisTitle("Number of failing probes", 2);
322  for (int i = 1; i < 37; ++i) {
323  OHmissing_me_GE11_fail_Ch_ieta_p1->setBinLabel(i, std::to_string(i), 2);
324  }
325  for (int i = 1; i < 9; ++i) {
326  OHmissing_me_GE11_fail_Ch_ieta_p1->setBinLabel(i, std::to_string(i), 1);
327  }
328  OHmissing_me_GE11_fail_Ch_ieta_p1->setAxisTitle("#ieta", 1);
329  OHmissing_me_GE11_fail_Ch_ieta_p1->setAxisTitle("Chamber", 2);
330  OHmissing_me_GE11_fail_Ch_ieta_p1->setAxisTitle("Number of failing probes", 3);
331 
332  for (int i = 1; i < 37; ++i) {
333  OHmissing_me_GE11_pass_Ch_ieta_p1->setBinLabel(i, std::to_string(i), 2);
334  }
335  for (int i = 1; i < 9; ++i) {
336  OHmissing_me_GE11_pass_Ch_ieta_p1->setBinLabel(i, std::to_string(i), 1);
337  }
338  OHmissing_me_GE11_pass_Ch_ieta_p1->setAxisTitle("#ieta", 1);
339  OHmissing_me_GE11_pass_Ch_ieta_p1->setAxisTitle("Chamber", 2);
340  OHmissing_me_GE11_pass_Ch_ieta_p1->setAxisTitle("Number of passing probes", 3);
342  for (int i = 1; i < 37; ++i) {
343  OHmissing_me_GE11_fail_Ch_ieta_p2->setBinLabel(i, std::to_string(i), 2);
344  }
345  for (int i = 1; i < 9; ++i) {
346  OHmissing_me_GE11_fail_Ch_ieta_p2->setBinLabel(i, std::to_string(i), 1);
347  }
348  OHmissing_me_GE11_fail_Ch_ieta_p2->setAxisTitle("#ieta", 1);
349  OHmissing_me_GE11_fail_Ch_ieta_p2->setAxisTitle("Chamber", 2);
350  OHmissing_me_GE11_fail_Ch_ieta_p2->setAxisTitle("Number of failing probes", 3);
351 
352  for (int i = 1; i < 37; ++i) {
353  OHmissing_me_GE11_pass_Ch_ieta_p2->setBinLabel(i, std::to_string(i), 2);
354  }
355  for (int i = 1; i < 9; ++i) {
356  OHmissing_me_GE11_pass_Ch_ieta_p2->setBinLabel(i, std::to_string(i), 1);
357  }
358  OHmissing_me_GE11_pass_Ch_ieta_p2->setAxisTitle("#ieta", 1);
359  OHmissing_me_GE11_pass_Ch_ieta_p2->setAxisTitle("Chamber", 2);
360  OHmissing_me_GE11_pass_Ch_ieta_p2->setAxisTitle("Number of passing probes", 3);
362  for (int i = 1; i < 37; ++i) {
363  OHmissing_me_GE11_fail_Ch_ieta_n1->setBinLabel(i, std::to_string(i), 2);
364  }
365  for (int i = 1; i < 9; ++i) {
366  OHmissing_me_GE11_fail_Ch_ieta_n1->setBinLabel(i, std::to_string(i), 1);
367  }
368  OHmissing_me_GE11_fail_Ch_ieta_n1->setAxisTitle("#ieta", 1);
369  OHmissing_me_GE11_fail_Ch_ieta_n1->setAxisTitle("Chamber", 2);
370  OHmissing_me_GE11_fail_Ch_ieta_n1->setAxisTitle("Number of failing probes", 3);
371 
372  for (int i = 1; i < 37; ++i) {
373  OHmissing_me_GE11_pass_Ch_ieta_n1->setBinLabel(i, std::to_string(i), 2);
374  }
375  for (int i = 1; i < 9; ++i) {
376  OHmissing_me_GE11_pass_Ch_ieta_n1->setBinLabel(i, std::to_string(i), 1);
377  }
378  OHmissing_me_GE11_pass_Ch_ieta_n1->setAxisTitle("#ieta", 1);
379  OHmissing_me_GE11_pass_Ch_ieta_n1->setAxisTitle("Chamber", 2);
380  OHmissing_me_GE11_pass_Ch_ieta_n1->setAxisTitle("Number of passing probes", 3);
382  for (int i = 1; i < 37; ++i) {
383  OHmissing_me_GE11_fail_Ch_ieta_n2->setBinLabel(i, std::to_string(i), 2);
384  }
385  for (int i = 1; i < 9; ++i) {
386  OHmissing_me_GE11_fail_Ch_ieta_n2->setBinLabel(i, std::to_string(i), 1);
387  }
388  OHmissing_me_GE11_fail_Ch_ieta_n2->setAxisTitle("#ieta", 1);
389  OHmissing_me_GE11_fail_Ch_ieta_n2->setAxisTitle("Chamber", 2);
390  OHmissing_me_GE11_fail_Ch_ieta_n2->setAxisTitle("Number of failing probes", 3);
391 
392  for (int i = 1; i < 37; ++i) {
393  OHmissing_me_GE11_pass_Ch_ieta_n2->setBinLabel(i, std::to_string(i), 2);
394  }
395  for (int i = 1; i < 9; ++i) {
396  OHmissing_me_GE11_pass_Ch_ieta_n2->setBinLabel(i, std::to_string(i), 1);
397  }
398  OHmissing_me_GE11_pass_Ch_ieta_n2->setAxisTitle("#ieta", 1);
399  OHmissing_me_GE11_pass_Ch_ieta_n2->setAxisTitle("Chamber", 2);
400  OHmissing_me_GE11_pass_Ch_ieta_n2->setAxisTitle("Number of passing probes", 3);
401 
402  // Bad VFAT Mask + Empty OH Mask + EvtNF
403 
404  MonitorElement* OHerror_me_GE11_pass_allCh_1D =
405  iBooker.book1D("GE11_nPassingProbe_OHerror_allCh_1D", "GE11_nPassingProbe_OHerror_allCh_1D", 2, -1.5, 1.5);
406  MonitorElement* OHerror_me_GE11_fail_allCh_1D =
407  iBooker.book1D("GE11_nFailingProbe_OHerror_allCh_1D", "GE11_nFailingProbe_OHerror_allCh_1D", 2, -1.5, 1.5);
408  MonitorElement* OHerror_me_GEM_pass_chamber_p1_1D =
409  iBooker.book1D("GEM_nPassingProbe_OHerror_chamber_p1_1D", "GEM_nPassingProbe_OHerror_chamber_p1_1D", 36, 1, 37);
410  MonitorElement* OHerror_me_GEM_fail_chamber_p1_1D =
411  iBooker.book1D("GEM_nFailingProbe_OHerror_chamber_p1_1D", "GEM_nFailingProbe_OHerror_chamber_p1_1D", 36, 1, 37);
412  MonitorElement* OHerror_me_GEM_pass_chamber_p2_1D =
413  iBooker.book1D("GEM_nPassingProbe_OHerror_chamber_p2_1D", "GEM_nPassingProbe_OHerror_chamber_p2_1D", 36, 1, 37);
414  MonitorElement* OHerror_me_GEM_fail_chamber_p2_1D =
415  iBooker.book1D("GEM_nFailingProbe_OHerror_chamber_p2_1D", "GEM_nFailingProbe_OHerror_chamber_p2_1D", 36, 1, 37);
416  MonitorElement* OHerror_me_GEM_pass_chamber_n1_1D =
417  iBooker.book1D("GEM_nPassingProbe_OHerror_chamber_n1_1D", "GEM_nPassingProbe_OHerror_chamber_n1_1D", 36, 1, 37);
418  MonitorElement* OHerror_me_GEM_fail_chamber_n1_1D =
419  iBooker.book1D("GEM_nFailingProbe_OHerror_chamber_n1_1D", "GEM_nFailingProbe_OHerror_chamber_n1_1D", 36, 1, 37);
420  MonitorElement* OHerror_me_GEM_pass_chamber_n2_1D =
421  iBooker.book1D("GEM_nPassingProbe_OHerror_chamber_n2_1D", "GEM_nPassingProbe_OHerror_chamber_n2_1D", 36, 1, 37);
422  MonitorElement* OHerror_me_GEM_fail_chamber_n2_1D =
423  iBooker.book1D("GEM_nFailingProbe_OHerror_chamber_n2_1D", "GEM_nFailingProbe_OHerror_chamber_n2_1D", 36, 1, 37);
424  MonitorElement* OHerror_me_GEM_pass_pt_1D =
425  iBooker.book1D("GEM_nPassingProbe_OHerror_pt_1D", "GEM_nPassingProbe_OHerror_pt_1D", 20, 0, 100);
426  MonitorElement* OHerror_me_GEM_fail_pt_1D =
427  iBooker.book1D("GEM_nFailingProbe_OHerror_pt_1D", "GEM_nFailingProbe_OHerror_pt_1D", 20, 0, 100);
428  MonitorElement* OHerror_me_GEM_pass_eta_1D =
429  iBooker.book1D("GEM_nPassingProbe_OHerror_eta_1D", "GEM_nPassingProbe_OHerror_eta_1D", 24, 0, 2.4);
430  MonitorElement* OHerror_me_GEM_fail_eta_1D =
431  iBooker.book1D("GEM_nFailingProbe_OHerror_eta_1D", "GEM_nFailingProbe_OHerror_eta_1D", 24, 0, 2.4);
432  MonitorElement* OHerror_me_GEM_pass_phi_1D = iBooker.book1D(
433  "GEM_nPassingProbe_OHerror_phi_1D", "GEM_nPassingProbe_OHerror_phi_1D", 20, -TMath::Pi(), TMath::Pi());
434  MonitorElement* OHerror_me_GEM_fail_phi_1D = iBooker.book1D(
435  "GEM_nFailingProbe_OHerror_phi_1D", "GEM_nFailingProbe_OHerror_phi_1D", 20, -TMath::Pi(), TMath::Pi());
436  MonitorElement* OHerror_me_GE11_pass_Ch_ieta_p1 = iBooker.book2D(
437  "GE11_nPassingProbe_OHerror_Ch_ieta_p1", "GE11_nPassingProbe_OHerror_Ch_ieta_p1", 8, 1, 9, 36, 1, 37);
438  MonitorElement* OHerror_me_GE11_fail_Ch_ieta_p1 = iBooker.book2D(
439  "GE11_nFailingProbe_OHerror_Ch_ieta_p1", "GE11_nFailingProbe_OHerror_Ch_ieta_p1", 8, 1, 9, 36, 1, 37);
440  MonitorElement* OHerror_me_GE11_pass_Ch_ieta_p2 = iBooker.book2D(
441  "GE11_nPassingProbe_OHerror_Ch_ieta_p2", "GE11_nPassingProbe_OHerror_Ch_ieta_p2", 8, 1, 9, 36, 1, 37);
442  MonitorElement* OHerror_me_GE11_fail_Ch_ieta_p2 = iBooker.book2D(
443  "GE11_nFailingProbe_OHerror_Ch_ieta_p2", "GE11_nFailingProbe_OHerror_Ch_ieta_p2", 8, 1, 9, 36, 1, 37);
444  MonitorElement* OHerror_me_GE11_pass_Ch_ieta_n1 = iBooker.book2D(
445  "GE11_nPassingProbe_OHerror_Ch_ieta_n1", "GE11_nPassingProbe_OHerror_Ch_ieta_n1", 8, 1, 9, 36, 1, 37);
446  MonitorElement* OHerror_me_GE11_fail_Ch_ieta_n1 = iBooker.book2D(
447  "GE11_nFailingProbe_OHerror_Ch_ieta_n1", "GE11_nFailingProbe_OHerror_Ch_ieta_n1", 8, 1, 9, 36, 1, 37);
448  MonitorElement* OHerror_me_GE11_pass_Ch_ieta_n2 = iBooker.book2D(
449  "GE11_nPassingProbe_OHerror_Ch_ieta_n2", "GE11_nPassingProbe_OHerror_Ch_ieta_n2", 8, 1, 9, 36, 1, 37);
450  MonitorElement* OHerror_me_GE11_fail_Ch_ieta_n2 = iBooker.book2D(
451  "GE11_nFailingProbe_OHerror_Ch_ieta_n2", "GE11_nFailingProbe_OHerror_Ch_ieta_n2", 8, 1, 9, 36, 1, 37);
452 
453  OHerror_me_GE11_pass_allCh_1D->setBinLabel(1, "GE-11", 1);
454  OHerror_me_GE11_pass_allCh_1D->setBinLabel(2, "GE+11", 1);
455  OHerror_me_GE11_pass_allCh_1D->setAxisTitle("Number of passing probes", 2);
456 
457  OHerror_me_GE11_fail_allCh_1D->setBinLabel(1, "GE-11", 1);
458  OHerror_me_GE11_fail_allCh_1D->setBinLabel(2, "GE+11", 1);
459  OHerror_me_GE11_fail_allCh_1D->setAxisTitle("Number of failing probes", 2);
460 
461  OHerror_me_GEM_pass_chamber_p1_1D->setAxisTitle("Chamber", 1);
462  OHerror_me_GEM_pass_chamber_p1_1D->setAxisTitle("Number of passing probes", 2);
463  OHerror_me_GEM_fail_chamber_p1_1D->setAxisTitle("Chamber", 1);
464  OHerror_me_GEM_fail_chamber_p1_1D->setAxisTitle("Number of failing probes", 2);
465 
466  OHerror_me_GEM_pass_chamber_p2_1D->setAxisTitle("Chamber", 1);
467  OHerror_me_GEM_pass_chamber_p2_1D->setAxisTitle("Number of passing probes", 2);
468  OHerror_me_GEM_fail_chamber_p2_1D->setAxisTitle("Chamber", 1);
469  OHerror_me_GEM_fail_chamber_p2_1D->setAxisTitle("Number of failing probes", 2);
470 
471  OHerror_me_GEM_pass_chamber_n1_1D->setAxisTitle("Chamber", 1);
472  OHerror_me_GEM_pass_chamber_n1_1D->setAxisTitle("Number of passing probes", 2);
473  OHerror_me_GEM_fail_chamber_n1_1D->setAxisTitle("Chamber", 1);
474  OHerror_me_GEM_fail_chamber_n1_1D->setAxisTitle("Number of failing probes", 2);
475 
476  OHerror_me_GEM_pass_chamber_n2_1D->setAxisTitle("Chamber", 1);
477  OHerror_me_GEM_pass_chamber_n2_1D->setAxisTitle("Number of passing probes", 2);
478  OHerror_me_GEM_fail_chamber_n2_1D->setAxisTitle("Chamber", 1);
479  OHerror_me_GEM_fail_chamber_n2_1D->setAxisTitle("Number of failing probes", 2);
480 
481  OHerror_me_GEM_pass_pt_1D->setAxisTitle("P_{T}", 1);
482  OHerror_me_GEM_pass_pt_1D->setAxisTitle("Number of passing probes", 2);
483  OHerror_me_GEM_fail_pt_1D->setAxisTitle("P_{T}", 1);
484  OHerror_me_GEM_fail_pt_1D->setAxisTitle("Number of failing probes", 2);
485 
486  OHerror_me_GEM_pass_eta_1D->setAxisTitle("#eta", 1);
487  OHerror_me_GEM_pass_eta_1D->setAxisTitle("Number of passing probes", 2);
488  OHerror_me_GEM_fail_eta_1D->setAxisTitle("#eta", 1);
489  OHerror_me_GEM_fail_eta_1D->setAxisTitle("Number of failing probes", 2);
490 
491  OHerror_me_GEM_pass_phi_1D->setAxisTitle("#phi", 1);
492  OHerror_me_GEM_pass_phi_1D->setAxisTitle("Number of passing probes", 2);
493  OHerror_me_GEM_fail_phi_1D->setAxisTitle("#phi", 1);
494  OHerror_me_GEM_fail_phi_1D->setAxisTitle("Number of failing probes", 2);
495  for (int i = 1; i < 37; ++i) {
496  OHerror_me_GE11_fail_Ch_ieta_p1->setBinLabel(i, std::to_string(i), 2);
497  }
498  for (int i = 1; i < 9; ++i) {
499  OHerror_me_GE11_fail_Ch_ieta_p1->setBinLabel(i, std::to_string(i), 1);
500  }
501  OHerror_me_GE11_fail_Ch_ieta_p1->setAxisTitle("#ieta", 1);
502  OHerror_me_GE11_fail_Ch_ieta_p1->setAxisTitle("Chamber", 2);
503  OHerror_me_GE11_fail_Ch_ieta_p1->setAxisTitle("Number of failing probes", 3);
504 
505  for (int i = 1; i < 37; ++i) {
506  OHerror_me_GE11_pass_Ch_ieta_p1->setBinLabel(i, std::to_string(i), 2);
507  }
508  for (int i = 1; i < 9; ++i) {
509  OHerror_me_GE11_pass_Ch_ieta_p1->setBinLabel(i, std::to_string(i), 1);
510  }
511  OHerror_me_GE11_pass_Ch_ieta_p1->setAxisTitle("#ieta", 1);
512  OHerror_me_GE11_pass_Ch_ieta_p1->setAxisTitle("Chamber", 2);
513  OHerror_me_GE11_pass_Ch_ieta_p1->setAxisTitle("Number of passing probes", 3);
515  for (int i = 1; i < 37; ++i) {
516  OHerror_me_GE11_fail_Ch_ieta_p2->setBinLabel(i, std::to_string(i), 2);
517  }
518  for (int i = 1; i < 9; ++i) {
519  OHerror_me_GE11_fail_Ch_ieta_p2->setBinLabel(i, std::to_string(i), 1);
520  }
521  OHerror_me_GE11_fail_Ch_ieta_p2->setAxisTitle("#ieta", 1);
522  OHerror_me_GE11_fail_Ch_ieta_p2->setAxisTitle("Chamber", 2);
523  OHerror_me_GE11_fail_Ch_ieta_p2->setAxisTitle("Number of failing probes", 3);
524 
525  for (int i = 1; i < 37; ++i) {
526  OHerror_me_GE11_pass_Ch_ieta_p2->setBinLabel(i, std::to_string(i), 2);
527  }
528  for (int i = 1; i < 9; ++i) {
529  OHerror_me_GE11_pass_Ch_ieta_p2->setBinLabel(i, std::to_string(i), 1);
530  }
531  OHerror_me_GE11_pass_Ch_ieta_p2->setAxisTitle("#ieta", 1);
532  OHerror_me_GE11_pass_Ch_ieta_p2->setAxisTitle("Chamber", 2);
533  OHerror_me_GE11_pass_Ch_ieta_p2->setAxisTitle("Number of passing probes", 3);
535  for (int i = 1; i < 37; ++i) {
536  OHerror_me_GE11_fail_Ch_ieta_n1->setBinLabel(i, std::to_string(i), 2);
537  }
538  for (int i = 1; i < 9; ++i) {
539  OHerror_me_GE11_fail_Ch_ieta_n1->setBinLabel(i, std::to_string(i), 1);
540  }
541  OHerror_me_GE11_fail_Ch_ieta_n1->setAxisTitle("#ieta", 1);
542  OHerror_me_GE11_fail_Ch_ieta_n1->setAxisTitle("Chamber", 2);
543  OHerror_me_GE11_fail_Ch_ieta_n1->setAxisTitle("Number of failing probes", 3);
544 
545  for (int i = 1; i < 37; ++i) {
546  OHerror_me_GE11_pass_Ch_ieta_n1->setBinLabel(i, std::to_string(i), 2);
547  }
548  for (int i = 1; i < 9; ++i) {
549  OHerror_me_GE11_pass_Ch_ieta_n1->setBinLabel(i, std::to_string(i), 1);
550  }
551  OHerror_me_GE11_pass_Ch_ieta_n1->setAxisTitle("#ieta", 1);
552  OHerror_me_GE11_pass_Ch_ieta_n1->setAxisTitle("Chamber", 2);
553  OHerror_me_GE11_pass_Ch_ieta_n1->setAxisTitle("Number of passing probes", 3);
555  for (int i = 1; i < 37; ++i) {
556  OHerror_me_GE11_fail_Ch_ieta_n2->setBinLabel(i, std::to_string(i), 2);
557  }
558  for (int i = 1; i < 9; ++i) {
559  OHerror_me_GE11_fail_Ch_ieta_n2->setBinLabel(i, std::to_string(i), 1);
560  }
561  OHerror_me_GE11_fail_Ch_ieta_n2->setAxisTitle("#ieta", 1);
562  OHerror_me_GE11_fail_Ch_ieta_n2->setAxisTitle("Chamber", 2);
563  OHerror_me_GE11_fail_Ch_ieta_n2->setAxisTitle("Number of failing probes", 3);
564 
565  for (int i = 1; i < 37; ++i) {
566  OHerror_me_GE11_pass_Ch_ieta_n2->setBinLabel(i, std::to_string(i), 2);
567  }
568  for (int i = 1; i < 9; ++i) {
569  OHerror_me_GE11_pass_Ch_ieta_n2->setBinLabel(i, std::to_string(i), 1);
570  }
571  OHerror_me_GE11_pass_Ch_ieta_n2->setAxisTitle("#ieta", 1);
572  OHerror_me_GE11_pass_Ch_ieta_n2->setAxisTitle("Chamber", 2);
573  OHerror_me_GE11_pass_Ch_ieta_n2->setAxisTitle("Number of passing probes", 3);
574 
575  // Bad VFAT Mask + Empty OH Mask + OHerrorMask
576 
577  MonitorElement* VFATMask_me_GE11_pass_allCh_1D =
578  iBooker.book1D("GE11_nPassingProbe_VFATMask_allCh_1D", "GE11_nPassingProbe_VFATMask_allCh_1D", 2, -1.5, 1.5);
579  MonitorElement* VFATMask_me_GE11_fail_allCh_1D =
580  iBooker.book1D("GE11_nFailingProbe_VFATMask_allCh_1D", "GE11_nFailingProbe_VFATMask_allCh_1D", 2, -1.5, 1.5);
581  MonitorElement* VFATMask_me_GEM_pass_chamber_p1_1D =
582  iBooker.book1D("GEM_nPassingProbe_VFATMask_chamber_p1_1D", "GEM_nPassingProbe_VFATMask_chamber_p1_1D", 36, 1, 37);
583  MonitorElement* VFATMask_me_GEM_fail_chamber_p1_1D =
584  iBooker.book1D("GEM_nFailingProbe_VFATMask_chamber_p1_1D", "GEM_nFailingProbe_VFATMask_chamber_p1_1D", 36, 1, 37);
585  MonitorElement* VFATMask_me_GEM_pass_chamber_p2_1D =
586  iBooker.book1D("GEM_nPassingProbe_VFATMask_chamber_p2_1D", "GEM_nPassingProbe_VFATMask_chamber_p2_1D", 36, 1, 37);
587  MonitorElement* VFATMask_me_GEM_fail_chamber_p2_1D =
588  iBooker.book1D("GEM_nFailingProbe_VFATMask_chamber_p2_1D", "GEM_nFailingProbe_VFATMask_chamber_p2_1D", 36, 1, 37);
589  MonitorElement* VFATMask_me_GEM_pass_chamber_n1_1D =
590  iBooker.book1D("GEM_nPassingProbe_VFATMask_chamber_n1_1D", "GEM_nPassingProbe_VFATMask_chamber_n1_1D", 36, 1, 37);
591  MonitorElement* VFATMask_me_GEM_fail_chamber_n1_1D =
592  iBooker.book1D("GEM_nFailingProbe_VFATMask_chamber_n1_1D", "GEM_nFailingProbe_VFATMask_chamber_n1_1D", 36, 1, 37);
593  MonitorElement* VFATMask_me_GEM_pass_chamber_n2_1D =
594  iBooker.book1D("GEM_nPassingProbe_VFATMask_chamber_n2_1D", "GEM_nPassingProbe_VFATMask_chamber_n2_1D", 36, 1, 37);
595  MonitorElement* VFATMask_me_GEM_fail_chamber_n2_1D =
596  iBooker.book1D("GEM_nFailingProbe_VFATMask_chamber_n2_1D", "GEM_nFailingProbe_VFATMask_chamber_n2_1D", 36, 1, 37);
597  MonitorElement* VFATMask_me_GEM_pass_pt_1D =
598  iBooker.book1D("GEM_nPassingProbe_VFATMask_pt_1D", "GEM_nPassingProbe_VFATMask_pt_1D", 20, 0, 100);
599  MonitorElement* VFATMask_me_GEM_fail_pt_1D =
600  iBooker.book1D("GEM_nFailingProbe_VFATMask_pt_1D", "GEM_nFailingProbe_VFATMask_pt_1D", 20, 0, 100);
601  MonitorElement* VFATMask_me_GEM_pass_eta_1D =
602  iBooker.book1D("GEM_nPassingProbe_VFATMask_eta_1D", "GEM_nPassingProbe_VFATMask_eta_1D", 24, 0, 2.4);
603  MonitorElement* VFATMask_me_GEM_fail_eta_1D =
604  iBooker.book1D("GEM_nFailingProbe_VFATMask_eta_1D", "GEM_nFailingProbe_VFATMask_eta_1D", 24, 0, 2.4);
605  MonitorElement* VFATMask_me_GEM_pass_phi_1D = iBooker.book1D(
606  "GEM_nPassingProbe_VFATMask_phi_1D", "GEM_nPassingProbe_VFATMask_phi_1D", 20, -TMath::Pi(), TMath::Pi());
607  MonitorElement* VFATMask_me_GEM_fail_phi_1D = iBooker.book1D(
608  "GEM_nFailingProbe_VFATMask_phi_1D", "GEM_nFailingProbe_VFATMask_phi_1D", 20, -TMath::Pi(), TMath::Pi());
609  MonitorElement* VFATMask_me_GE11_pass_Ch_ieta_p1 = iBooker.book2D(
610  "GE11_nPassingProbe_VFATMask_Ch_ieta_p1", "GE11_nPassingProbe_VFATMask_Ch_ieta_p1", 8, 1, 9, 36, 1, 37);
611  MonitorElement* VFATMask_me_GE11_fail_Ch_ieta_p1 = iBooker.book2D(
612  "GE11_nFailingProbe_VFATMask_Ch_ieta_p1", "GE11_nFailingProbe_VFATMask_Ch_ieta_p1", 8, 1, 9, 36, 1, 37);
613  MonitorElement* VFATMask_me_GE11_pass_Ch_ieta_p2 = iBooker.book2D(
614  "GE11_nPassingProbe_VFATMask_Ch_ieta_p2", "GE11_nPassingProbe_VFATMask_Ch_ieta_p2", 8, 1, 9, 36, 1, 37);
615  MonitorElement* VFATMask_me_GE11_fail_Ch_ieta_p2 = iBooker.book2D(
616  "GE11_nFailingProbe_VFATMask_Ch_ieta_p2", "GE11_nFailingProbe_VFATMask_Ch_ieta_p2", 8, 1, 9, 36, 1, 37);
617  MonitorElement* VFATMask_me_GE11_pass_Ch_ieta_n1 = iBooker.book2D(
618  "GE11_nPassingProbe_VFATMask_Ch_ieta_n1", "GE11_nPassingProbe_VFATMask_Ch_ieta_n1", 8, 1, 9, 36, 1, 37);
619  MonitorElement* VFATMask_me_GE11_fail_Ch_ieta_n1 = iBooker.book2D(
620  "GE11_nFailingProbe_VFATMask_Ch_ieta_n1", "GE11_nFailingProbe_VFATMask_Ch_ieta_n1", 8, 1, 9, 36, 1, 37);
621  MonitorElement* VFATMask_me_GE11_pass_Ch_ieta_n2 = iBooker.book2D(
622  "GE11_nPassingProbe_VFATMask_Ch_ieta_n2", "GE11_nPassingProbe_VFATMask_Ch_ieta_n2", 8, 1, 9, 36, 1, 37);
623  MonitorElement* VFATMask_me_GE11_fail_Ch_ieta_n2 = iBooker.book2D(
624  "GE11_nFailingProbe_VFATMask_Ch_ieta_n2", "GE11_nFailingProbe_VFATMask_Ch_ieta_n2", 8, 1, 9, 36, 1, 37);
625 
626  VFATMask_me_GE11_pass_allCh_1D->setBinLabel(1, "GE-11", 1);
627  VFATMask_me_GE11_pass_allCh_1D->setBinLabel(2, "GE+11", 1);
628  VFATMask_me_GE11_pass_allCh_1D->setAxisTitle("Number of passing probes", 2);
629 
630  VFATMask_me_GE11_fail_allCh_1D->setBinLabel(1, "GE-11", 1);
631  VFATMask_me_GE11_fail_allCh_1D->setBinLabel(2, "GE+11", 1);
632  VFATMask_me_GE11_fail_allCh_1D->setAxisTitle("Number of failing probes", 2);
633 
634  VFATMask_me_GEM_pass_chamber_p1_1D->setAxisTitle("Chamber", 1);
635  VFATMask_me_GEM_pass_chamber_p1_1D->setAxisTitle("Number of passing probes", 2);
636  VFATMask_me_GEM_fail_chamber_p1_1D->setAxisTitle("Chamber", 1);
637  VFATMask_me_GEM_fail_chamber_p1_1D->setAxisTitle("Number of failing probes", 2);
638 
639  VFATMask_me_GEM_pass_chamber_p2_1D->setAxisTitle("Chamber", 1);
640  VFATMask_me_GEM_pass_chamber_p2_1D->setAxisTitle("Number of passing probes", 2);
641  VFATMask_me_GEM_fail_chamber_p2_1D->setAxisTitle("Chamber", 1);
642  VFATMask_me_GEM_fail_chamber_p2_1D->setAxisTitle("Number of failing probes", 2);
643 
644  VFATMask_me_GEM_pass_chamber_n1_1D->setAxisTitle("Chamber", 1);
645  VFATMask_me_GEM_pass_chamber_n1_1D->setAxisTitle("Number of passing probes", 2);
646  VFATMask_me_GEM_fail_chamber_n1_1D->setAxisTitle("Chamber", 1);
647  VFATMask_me_GEM_fail_chamber_n1_1D->setAxisTitle("Number of failing probes", 2);
648 
649  VFATMask_me_GEM_pass_chamber_n2_1D->setAxisTitle("Chamber", 1);
650  VFATMask_me_GEM_pass_chamber_n2_1D->setAxisTitle("Number of passing probes", 2);
651  VFATMask_me_GEM_fail_chamber_n2_1D->setAxisTitle("Chamber", 1);
652  VFATMask_me_GEM_fail_chamber_n2_1D->setAxisTitle("Number of failing probes", 2);
653 
654  VFATMask_me_GEM_pass_pt_1D->setAxisTitle("P_{T}", 1);
655  VFATMask_me_GEM_pass_pt_1D->setAxisTitle("Number of passing probes", 2);
656  VFATMask_me_GEM_fail_pt_1D->setAxisTitle("P_{T}", 1);
657  VFATMask_me_GEM_fail_pt_1D->setAxisTitle("Number of failing probes", 2);
658 
659  VFATMask_me_GEM_pass_eta_1D->setAxisTitle("#eta", 1);
660  VFATMask_me_GEM_pass_eta_1D->setAxisTitle("Number of passing probes", 2);
661  VFATMask_me_GEM_fail_eta_1D->setAxisTitle("#eta", 1);
662  VFATMask_me_GEM_fail_eta_1D->setAxisTitle("Number of failing probes", 2);
663 
664  VFATMask_me_GEM_pass_phi_1D->setAxisTitle("#phi", 1);
665  VFATMask_me_GEM_pass_phi_1D->setAxisTitle("Number of passing probes", 2);
666  VFATMask_me_GEM_fail_phi_1D->setAxisTitle("#phi", 1);
667  VFATMask_me_GEM_fail_phi_1D->setAxisTitle("Number of failing probes", 2);
668 
669  for (int i = 1; i < 37; ++i) {
670  VFATMask_me_GE11_fail_Ch_ieta_p1->setBinLabel(i, std::to_string(i), 2);
671  }
672  for (int i = 1; i < 9; ++i) {
673  VFATMask_me_GE11_fail_Ch_ieta_p1->setBinLabel(i, std::to_string(i), 1);
674  }
675  VFATMask_me_GE11_fail_Ch_ieta_p1->setAxisTitle("#ieta", 1);
676  VFATMask_me_GE11_fail_Ch_ieta_p1->setAxisTitle("Chamber", 2);
677  VFATMask_me_GE11_fail_Ch_ieta_p1->setAxisTitle("Number of failing probes", 3);
678 
679  for (int i = 1; i < 37; ++i) {
680  VFATMask_me_GE11_pass_Ch_ieta_p1->setBinLabel(i, std::to_string(i), 2);
681  }
682  for (int i = 1; i < 9; ++i) {
683  VFATMask_me_GE11_pass_Ch_ieta_p1->setBinLabel(i, std::to_string(i), 1);
684  }
685  VFATMask_me_GE11_pass_Ch_ieta_p1->setAxisTitle("#ieta", 1);
686  VFATMask_me_GE11_pass_Ch_ieta_p1->setAxisTitle("Chamber", 2);
687  VFATMask_me_GE11_pass_Ch_ieta_p1->setAxisTitle("Number of passing probes", 3);
689  for (int i = 1; i < 37; ++i) {
690  VFATMask_me_GE11_fail_Ch_ieta_p2->setBinLabel(i, std::to_string(i), 2);
691  }
692  for (int i = 1; i < 9; ++i) {
693  VFATMask_me_GE11_fail_Ch_ieta_p2->setBinLabel(i, std::to_string(i), 1);
694  }
695  VFATMask_me_GE11_fail_Ch_ieta_p2->setAxisTitle("#ieta", 1);
696  VFATMask_me_GE11_fail_Ch_ieta_p2->setAxisTitle("Chamber", 2);
697  VFATMask_me_GE11_fail_Ch_ieta_p2->setAxisTitle("Number of failing probes", 3);
698 
699  for (int i = 1; i < 37; ++i) {
700  VFATMask_me_GE11_pass_Ch_ieta_p2->setBinLabel(i, std::to_string(i), 2);
701  }
702  for (int i = 1; i < 9; ++i) {
703  VFATMask_me_GE11_pass_Ch_ieta_p2->setBinLabel(i, std::to_string(i), 1);
704  }
705  VFATMask_me_GE11_pass_Ch_ieta_p2->setAxisTitle("#ieta", 1);
706  VFATMask_me_GE11_pass_Ch_ieta_p2->setAxisTitle("Chamber", 2);
707  VFATMask_me_GE11_pass_Ch_ieta_p2->setAxisTitle("Number of passing probes", 3);
709  for (int i = 1; i < 37; ++i) {
710  VFATMask_me_GE11_fail_Ch_ieta_n1->setBinLabel(i, std::to_string(i), 2);
711  }
712  for (int i = 1; i < 9; ++i) {
713  VFATMask_me_GE11_fail_Ch_ieta_n1->setBinLabel(i, std::to_string(i), 1);
714  }
715  VFATMask_me_GE11_fail_Ch_ieta_n1->setAxisTitle("#ieta", 1);
716  VFATMask_me_GE11_fail_Ch_ieta_n1->setAxisTitle("Chamber", 2);
717  VFATMask_me_GE11_fail_Ch_ieta_n1->setAxisTitle("Number of failing probes", 3);
718 
719  for (int i = 1; i < 37; ++i) {
720  VFATMask_me_GE11_pass_Ch_ieta_n1->setBinLabel(i, std::to_string(i), 2);
721  }
722  for (int i = 1; i < 9; ++i) {
723  VFATMask_me_GE11_pass_Ch_ieta_n1->setBinLabel(i, std::to_string(i), 1);
724  }
725  VFATMask_me_GE11_pass_Ch_ieta_n1->setAxisTitle("#ieta", 1);
726  VFATMask_me_GE11_pass_Ch_ieta_n1->setAxisTitle("Chamber", 2);
727  VFATMask_me_GE11_pass_Ch_ieta_n1->setAxisTitle("Number of passing probes", 3);
729  for (int i = 1; i < 37; ++i) {
730  VFATMask_me_GE11_fail_Ch_ieta_n2->setBinLabel(i, std::to_string(i), 2);
731  }
732  for (int i = 1; i < 9; ++i) {
733  VFATMask_me_GE11_fail_Ch_ieta_n2->setBinLabel(i, std::to_string(i), 1);
734  }
735  VFATMask_me_GE11_fail_Ch_ieta_n2->setAxisTitle("#ieta", 1);
736  VFATMask_me_GE11_fail_Ch_ieta_n2->setAxisTitle("Chamber", 2);
737  VFATMask_me_GE11_fail_Ch_ieta_n2->setAxisTitle("Number of failing probes", 3);
738 
739  for (int i = 1; i < 37; ++i) {
740  VFATMask_me_GE11_pass_Ch_ieta_n2->setBinLabel(i, std::to_string(i), 2);
741  }
742  for (int i = 1; i < 9; ++i) {
743  VFATMask_me_GE11_pass_Ch_ieta_n2->setBinLabel(i, std::to_string(i), 1);
744  }
745  VFATMask_me_GE11_pass_Ch_ieta_n2->setAxisTitle("#ieta", 1);
746  VFATMask_me_GE11_pass_Ch_ieta_n2->setAxisTitle("Chamber", 2);
747  VFATMask_me_GE11_pass_Ch_ieta_n2->setAxisTitle("Number of passing probes", 3);
748 
749  me_GE11_pass_allCh_1D->setBinLabel(1, "GE-11", 1);
750  me_GE11_pass_allCh_1D->setBinLabel(2, "GE+11", 1);
751  me_GE11_pass_allCh_1D->setAxisTitle("Number of passing probes", 2);
752 
753  me_GE11_fail_allCh_1D->setBinLabel(1, "GE-11", 1);
754  me_GE11_fail_allCh_1D->setBinLabel(2, "GE+11", 1);
755  me_GE11_fail_allCh_1D->setAxisTitle("Number of failing probes", 2);
756 
757  me_GE11_pass_chamber_1D->setAxisTitle("Chamber", 1);
758  me_GE11_pass_chamber_1D->setAxisTitle("Number of passing probes", 2);
759  me_GE11_fail_chamber_1D->setAxisTitle("Chamber", 1);
760  me_GE11_fail_chamber_1D->setAxisTitle("Number of failing probes", 2);
761 
762  me_GE21_pass_allCh_1D->setBinLabel(1, "GE-21", 1);
763  me_GE21_pass_allCh_1D->setBinLabel(2, "GE+21", 1);
764  me_GE21_pass_allCh_1D->setAxisTitle("Number of passing probes", 2);
765 
766  me_GE21_fail_allCh_1D->setBinLabel(1, "GE-21", 1);
767  me_GE21_fail_allCh_1D->setBinLabel(2, "GE+21", 1);
768  me_GE21_fail_allCh_1D->setAxisTitle("Number of failing probes", 2);
769 
770  me_GE21_pass_chamber_1D->setAxisTitle("Chamber", 1);
771  me_GE21_pass_chamber_1D->setAxisTitle("Number of passing probes", 2);
772  me_GE21_fail_chamber_1D->setAxisTitle("Chamber", 1);
773  me_GE21_fail_chamber_1D->setAxisTitle("Number of failing probes", 2);
774 
775  me_GEM_pass_chamber_p1_1D->setAxisTitle("Chamber", 1);
776  me_GEM_pass_chamber_p1_1D->setAxisTitle("Number of passing probes", 2);
777  me_GEM_fail_chamber_p1_1D->setAxisTitle("Chamber", 1);
778  me_GEM_fail_chamber_p1_1D->setAxisTitle("Number of failing probes", 2);
779 
780  me_GEM_pass_chamber_p2_1D->setAxisTitle("Chamber", 1);
781  me_GEM_pass_chamber_p2_1D->setAxisTitle("Number of passing probes", 2);
782  me_GEM_fail_chamber_p2_1D->setAxisTitle("Chamber", 1);
783  me_GEM_fail_chamber_p2_1D->setAxisTitle("Number of failing probes", 2);
784 
785  me_GEM_pass_chamber_n1_1D->setAxisTitle("Chamber", 1);
786  me_GEM_pass_chamber_n1_1D->setAxisTitle("Number of passing probes", 2);
787  me_GEM_fail_chamber_n1_1D->setAxisTitle("Chamber", 1);
788  me_GEM_fail_chamber_n1_1D->setAxisTitle("Number of failing probes", 2);
789 
790  me_GEM_pass_chamber_n2_1D->setAxisTitle("Chamber", 1);
791  me_GEM_pass_chamber_n2_1D->setAxisTitle("Number of passing probes", 2);
792  me_GEM_fail_chamber_n2_1D->setAxisTitle("Chamber", 1);
793  me_GEM_fail_chamber_n2_1D->setAxisTitle("Number of failing probes", 2);
794 
795  me_GEM_pass_pt_1D->setAxisTitle("P_{T}", 1);
796  me_GEM_pass_pt_1D->setAxisTitle("Number of passing probes", 2);
797  me_GEM_fail_pt_1D->setAxisTitle("P_{T}", 1);
798  me_GEM_fail_pt_1D->setAxisTitle("Number of failing probes", 2);
799 
800  me_GEM_pass_eta_1D->setAxisTitle("#eta", 1);
801  me_GEM_pass_eta_1D->setAxisTitle("Number of passing probes", 2);
802  me_GEM_fail_eta_1D->setAxisTitle("#eta", 1);
803  me_GEM_fail_eta_1D->setAxisTitle("Number of failing probes", 2);
804 
805  me_GEM_pass_phi_1D->setAxisTitle("#phi", 1);
806  me_GEM_pass_phi_1D->setAxisTitle("Number of passing probes", 2);
807  me_GEM_fail_phi_1D->setAxisTitle("#phi", 1);
808  me_GEM_fail_phi_1D->setAxisTitle("Number of failing probes", 2);
809 
810  me_GEM_pass_pt_p1_1D->setAxisTitle("P_{T}", 1);
811  me_GEM_pass_pt_p1_1D->setAxisTitle("Number of passing probes", 2);
812  me_GEM_fail_pt_p1_1D->setAxisTitle("P_{T}", 1);
813  me_GEM_fail_pt_p1_1D->setAxisTitle("Number of failing probes", 2);
814 
815  me_GEM_pass_eta_p1_1D->setAxisTitle("#eta", 1);
816  me_GEM_pass_eta_p1_1D->setAxisTitle("Number of passing probes", 2);
817  me_GEM_fail_eta_p1_1D->setAxisTitle("#eta", 1);
818  me_GEM_fail_eta_p1_1D->setAxisTitle("Number of failing probes", 2);
819 
820  me_GEM_pass_phi_p1_1D->setAxisTitle("#phi", 1);
821  me_GEM_pass_phi_p1_1D->setAxisTitle("Number of passing probes", 2);
822  me_GEM_fail_phi_p1_1D->setAxisTitle("#phi", 1);
823  me_GEM_fail_phi_p1_1D->setAxisTitle("Number of failing probes", 2);
824 
825  me_GEM_pass_pt_p2_1D->setAxisTitle("P_{T}", 1);
826  me_GEM_pass_pt_p2_1D->setAxisTitle("Number of passing probes", 2);
827  me_GEM_fail_pt_p2_1D->setAxisTitle("P_{T}", 1);
828  me_GEM_fail_pt_p2_1D->setAxisTitle("Number of failing probes", 2);
829 
830  me_GEM_pass_eta_p2_1D->setAxisTitle("#eta", 1);
831  me_GEM_pass_eta_p2_1D->setAxisTitle("Number of passing probes", 2);
832  me_GEM_fail_eta_p2_1D->setAxisTitle("#eta", 1);
833  me_GEM_fail_eta_p2_1D->setAxisTitle("Number of failing probes", 2);
834 
835  me_GEM_pass_phi_p2_1D->setAxisTitle("#phi", 1);
836  me_GEM_pass_phi_p2_1D->setAxisTitle("Number of passing probes", 2);
837  me_GEM_fail_phi_p2_1D->setAxisTitle("#phi", 1);
838  me_GEM_fail_phi_p2_1D->setAxisTitle("Number of failing probes", 2);
839 
840  me_GEM_pass_pt_n1_1D->setAxisTitle("P_{T}", 1);
841  me_GEM_pass_pt_n1_1D->setAxisTitle("Number of passing probes", 2);
842  me_GEM_fail_pt_n1_1D->setAxisTitle("P_{T}", 1);
843  me_GEM_fail_pt_n1_1D->setAxisTitle("Number of failing probes", 2);
844 
845  me_GEM_pass_eta_n1_1D->setAxisTitle("#eta", 1);
846  me_GEM_pass_eta_n1_1D->setAxisTitle("Number of passing probes", 2);
847  me_GEM_fail_eta_n1_1D->setAxisTitle("#eta", 1);
848  me_GEM_fail_eta_n1_1D->setAxisTitle("Number of failing probes", 2);
849 
850  me_GEM_pass_phi_n1_1D->setAxisTitle("#phi", 1);
851  me_GEM_pass_phi_n1_1D->setAxisTitle("Number of passing probes", 2);
852  me_GEM_fail_phi_n1_1D->setAxisTitle("#phi", 1);
853  me_GEM_fail_phi_n1_1D->setAxisTitle("Number of failing probes", 2);
854 
855  me_GEM_pass_pt_n2_1D->setAxisTitle("P_{T}", 1);
856  me_GEM_pass_pt_n2_1D->setAxisTitle("Number of passing probes", 2);
857  me_GEM_fail_pt_n2_1D->setAxisTitle("P_{T}", 1);
858  me_GEM_fail_pt_n2_1D->setAxisTitle("Number of failing probes", 2);
859 
860  me_GEM_pass_eta_n2_1D->setAxisTitle("#eta", 1);
861  me_GEM_pass_eta_n2_1D->setAxisTitle("Number of passing probes", 2);
862  me_GEM_fail_eta_n2_1D->setAxisTitle("#eta", 1);
863  me_GEM_fail_eta_n2_1D->setAxisTitle("Number of failing probes", 2);
864 
865  me_GEM_pass_phi_n2_1D->setAxisTitle("#phi", 1);
866  me_GEM_pass_phi_n2_1D->setAxisTitle("Number of passing probes", 2);
867  me_GEM_fail_phi_n2_1D->setAxisTitle("#phi", 1);
868  me_GEM_fail_phi_n2_1D->setAxisTitle("Number of failing probes", 2);
869 
870  me_GE11_fail_Ch_region->setBinLabel(1, "GE-11", 1);
871  me_GE11_fail_Ch_region->setBinLabel(2, "GE+11", 1);
872  for (int i = 1; i < 37; ++i) {
873  me_GE11_fail_Ch_region->setBinLabel(i, std::to_string(i), 2);
874  }
875  me_GE11_fail_Ch_region->setAxisTitle("Chamber", 2);
876  me_GE11_fail_Ch_region->setAxisTitle("Number of failing probes", 3);
877 
878  me_GE11_pass_Ch_region->setBinLabel(1, "GE-11", 1);
879  me_GE11_pass_Ch_region->setBinLabel(2, "GE+11", 1);
880  for (int i = 1; i < 37; ++i) {
881  me_GE11_pass_Ch_region->setBinLabel(i, std::to_string(i), 2);
882  }
883  me_GE11_pass_Ch_region->setAxisTitle("Chamber", 2);
884  me_GE11_pass_Ch_region->setAxisTitle("Number of passing probes", 3);
885 
886  me_GE21_fail_Ch_region->setBinLabel(1, "GE-21", 1);
887  me_GE21_fail_Ch_region->setBinLabel(2, "GE+21", 1);
888  for (int i = 1; i < 19; ++i) {
889  me_GE21_fail_Ch_region->setBinLabel(i, std::to_string(i), 2);
890  }
891  me_GE21_fail_Ch_region->setAxisTitle("Chamber", 2);
892  me_GE21_fail_Ch_region->setAxisTitle("Number of failing probes", 3);
893 
894  me_GE21_pass_Ch_region->setBinLabel(1, "GE-21", 1);
895  me_GE21_pass_Ch_region->setBinLabel(2, "GE+21", 1);
896  for (int i = 1; i < 19; ++i) {
897  me_GE21_pass_Ch_region->setBinLabel(i, std::to_string(i), 2);
898  }
899  me_GE21_pass_Ch_region->setAxisTitle("Chamber", 2);
900  me_GE21_pass_Ch_region->setAxisTitle("Number of passing probes", 3);
901 
902  me_GEM_fail_Ch_region_GE1->setBinLabel(1, "GE-1/1_L2", 1);
903  me_GEM_fail_Ch_region_GE1->setBinLabel(2, "GE-1/1_L1", 1);
904  me_GEM_fail_Ch_region_GE1->setBinLabel(3, "GE+1/1_L1", 1);
905  me_GEM_fail_Ch_region_GE1->setBinLabel(4, "GE+1/1_L2", 1);
906  for (int i = 1; i < 37; ++i) {
907  me_GEM_fail_Ch_region_GE1->setBinLabel(i, std::to_string(i), 2);
908  }
909  me_GEM_fail_Ch_region_GE1->setAxisTitle("Chamber", 2);
910  me_GEM_fail_Ch_region_GE1->setAxisTitle("Number of passing probes", 3);
911 
912  me_GEM_pass_Ch_region_GE1->setBinLabel(1, "GE-1/1_L2", 1);
913  me_GEM_pass_Ch_region_GE1->setBinLabel(2, "GE-1/1_L1", 1);
914  me_GEM_pass_Ch_region_GE1->setBinLabel(3, "GE+1/1_L1", 1);
915  me_GEM_pass_Ch_region_GE1->setBinLabel(4, "GE+1/1_L2", 1);
916  for (int i = 1; i < 37; ++i) {
917  me_GEM_pass_Ch_region_GE1->setBinLabel(i, std::to_string(i), 2);
918  }
919  me_GEM_pass_Ch_region_GE1->setAxisTitle("Chamber", 2);
920  me_GEM_pass_Ch_region_GE1->setAxisTitle("Number of passing probes", 3);
921 
922  me_GEM_fail_Ch_region_GE1_NoL->setBinLabel(1, "GE-1", 1);
923  me_GEM_fail_Ch_region_GE1_NoL->setBinLabel(2, "GE+1", 1);
924  for (int i = 1; i < 37; ++i) {
925  me_GEM_fail_Ch_region_GE1_NoL->setBinLabel(i, std::to_string(i), 2);
926  }
927  me_GEM_fail_Ch_region_GE1_NoL->setAxisTitle("Chamber", 2);
928  me_GEM_fail_Ch_region_GE1_NoL->setAxisTitle("Number of passing probes", 3);
929 
930  me_GEM_pass_Ch_region_GE1_NoL->setBinLabel(1, "GE-1", 1);
931  me_GEM_pass_Ch_region_GE1_NoL->setBinLabel(2, "GE+1", 1);
932  for (int i = 1; i < 37; ++i) {
933  me_GEM_pass_Ch_region_GE1_NoL->setBinLabel(i, std::to_string(i), 2);
934  }
935  me_GEM_pass_Ch_region_GE1_NoL->setAxisTitle("Chamber", 2);
936  me_GEM_pass_Ch_region_GE1_NoL->setAxisTitle("Number of passing probes", 3);
938  for (int i = 1; i < 37; ++i) {
939  me_GE11_fail_Ch_ieta->setBinLabel(i, std::to_string(i), 2);
940  }
941  for (int i = 1; i < 9; ++i) {
942  me_GE11_fail_Ch_ieta->setBinLabel(i, std::to_string(i), 1);
943  }
944  me_GE11_fail_Ch_ieta->setAxisTitle("#ieta", 1);
945  me_GE11_fail_Ch_ieta->setAxisTitle("Chamber", 2);
946  me_GE11_fail_Ch_ieta->setAxisTitle("Number of failing probes", 3);
947 
948  for (int i = 1; i < 37; ++i) {
949  me_GE11_pass_Ch_ieta->setBinLabel(i, std::to_string(i), 2);
950  }
951  for (int i = 1; i < 9; ++i) {
952  me_GE11_pass_Ch_ieta->setBinLabel(i, std::to_string(i), 1);
953  }
954  me_GE11_pass_Ch_ieta->setAxisTitle("#ieta", 1);
955  me_GE11_pass_Ch_ieta->setAxisTitle("Chamber", 2);
956  me_GE11_pass_Ch_ieta->setAxisTitle("Number of passing probes", 3);
957 
958  for (int i = 1; i < 37; ++i) {
959  me_GE11_fail_Ch_phi->setBinLabel(i, std::to_string(i), 2);
960  }
961  me_GE11_fail_Ch_phi->setAxisTitle("#phi", 1);
962  me_GE11_fail_Ch_phi->setAxisTitle("Chamber", 2);
963  me_GE11_fail_Ch_phi->setAxisTitle("Number of failing probes", 3);
964 
965  for (int i = 1; i < 37; ++i) {
966  me_GE11_pass_Ch_phi->setBinLabel(i, std::to_string(i), 2);
967  }
968  me_GE11_pass_Ch_phi->setAxisTitle("#phi", 1);
969  me_GE11_pass_Ch_phi->setAxisTitle("Chamber", 2);
970  me_GE11_pass_Ch_phi->setAxisTitle("Number of passing probes", 3);
971 
972  for (int i = 1; i < 19; ++i) {
973  me_GE21_fail_Ch_ieta->setBinLabel(i, std::to_string(i), 2);
974  }
975  for (int i = 1; i < 17; ++i) {
976  me_GE21_fail_Ch_ieta->setBinLabel(i, std::to_string(i), 1);
977  }
978  me_GE21_fail_Ch_ieta->setAxisTitle("#ieta", 1);
979  me_GE21_fail_Ch_ieta->setAxisTitle("Chamber", 2);
980  me_GE21_fail_Ch_ieta->setAxisTitle("Number of failing probes", 3);
981 
982  for (int i = 1; i < 19; ++i) {
983  me_GE21_pass_Ch_ieta->setBinLabel(i, std::to_string(i), 2);
984  }
985  for (int i = 1; i < 17; ++i) {
986  me_GE21_pass_Ch_ieta->setBinLabel(i, std::to_string(i), 1);
987  }
988  me_GE21_pass_Ch_ieta->setAxisTitle("#ieta", 1);
989  me_GE21_pass_Ch_ieta->setAxisTitle("Chamber", 2);
990  me_GE21_pass_Ch_ieta->setAxisTitle("Number of passing probes", 3);
992  for (int i = 1; i < 19; ++i) {
993  me_GE21_fail_Ch_phi->setBinLabel(i, std::to_string(i), 2);
994  }
995  me_GE21_fail_Ch_phi->setAxisTitle("#phi", 1);
996  me_GE21_fail_Ch_phi->setAxisTitle("Chamber", 2);
997  me_GE21_fail_Ch_phi->setAxisTitle("Number of failing probes", 3);
998 
999  for (int i = 1; i < 19; ++i) {
1000  me_GE21_pass_Ch_phi->setBinLabel(i, std::to_string(i), 2);
1001  }
1002  me_GE21_pass_Ch_phi->setAxisTitle("#phi", 1);
1003  me_GE21_pass_Ch_phi->setAxisTitle("Chamber", 2);
1004  me_GE21_pass_Ch_phi->setAxisTitle("Number of passing probes", 3);
1005 
1006  for (int i = 1; i < 19; ++i) {
1007  me_ME0_pass_chamber_1D->setBinLabel(i, std::to_string(i), 1);
1008  }
1009  me_ME0_pass_chamber_1D->setAxisTitle("Chamber", 1);
1010  me_ME0_pass_chamber_1D->setAxisTitle("Number of passing probes", 2);
1011  for (int i = 1; i < 19; ++i) {
1012  me_ME0_fail_chamber_1D->setBinLabel(i, std::to_string(i), 1);
1013  }
1014  me_ME0_fail_chamber_1D->setAxisTitle("Chamber", 1);
1015  me_ME0_fail_chamber_1D->setAxisTitle("Number of failing probes", 2);
1016 
1017  me_GEM_fail_Ch_region_layer_phase2->setBinLabel(1, "GE-2/1_L2", 1);
1018  me_GEM_fail_Ch_region_layer_phase2->setBinLabel(2, "GE-2/1_L1", 1);
1019  me_GEM_fail_Ch_region_layer_phase2->setBinLabel(3, "GE-1/1_L2", 1);
1020  me_GEM_fail_Ch_region_layer_phase2->setBinLabel(4, "GE-1/1_L1", 1);
1021  me_GEM_fail_Ch_region_layer_phase2->setBinLabel(5, "GE0-", 1);
1022  me_GEM_fail_Ch_region_layer_phase2->setBinLabel(6, "GE0+", 1);
1023  me_GEM_fail_Ch_region_layer_phase2->setBinLabel(7, "GE+1/1_L1", 1);
1024  me_GEM_fail_Ch_region_layer_phase2->setBinLabel(8, "GE+1/1_L2", 1);
1025  me_GEM_fail_Ch_region_layer_phase2->setBinLabel(9, "GE+2/1_L1", 1);
1026  me_GEM_fail_Ch_region_layer_phase2->setBinLabel(10, "GE+2/1_L2", 1);
1027  for (int i = 1; i < 37; ++i) {
1028  me_GEM_fail_Ch_region_layer_phase2->setBinLabel(i, std::to_string(i), 2);
1029  }
1030  me_GEM_fail_Ch_region_layer_phase2->setAxisTitle("Chamber", 2);
1031  me_GEM_fail_Ch_region_layer_phase2->setAxisTitle("Number of passing probes", 3);
1032 
1033  me_GEM_pass_Ch_region_layer_phase2->setBinLabel(1, "GE-2/1_L2", 1);
1034  me_GEM_pass_Ch_region_layer_phase2->setBinLabel(2, "GE-2/1_L1", 1);
1035  me_GEM_pass_Ch_region_layer_phase2->setBinLabel(3, "GE-1/1_L2", 1);
1036  me_GEM_pass_Ch_region_layer_phase2->setBinLabel(4, "GE-1/1_L1", 1);
1037  me_GEM_pass_Ch_region_layer_phase2->setBinLabel(5, "GE0-", 1);
1038  me_GEM_pass_Ch_region_layer_phase2->setBinLabel(6, "GE0+", 1);
1039  me_GEM_pass_Ch_region_layer_phase2->setBinLabel(7, "GE+1/1_L1", 1);
1040  me_GEM_pass_Ch_region_layer_phase2->setBinLabel(8, "GE+1/1_L2", 1);
1041  me_GEM_pass_Ch_region_layer_phase2->setBinLabel(9, "GE+2/1_L1", 1);
1042  me_GEM_pass_Ch_region_layer_phase2->setBinLabel(10, "GE+2/1_L2", 1);
1043 
1044  for (int i = 1; i < 37; ++i) {
1045  me_GEM_pass_Ch_region_layer_phase2->setBinLabel(i, std::to_string(i), 2);
1046  }
1047  me_GEM_pass_Ch_region_layer_phase2->setAxisTitle("Chamber", 2);
1048  me_GEM_pass_Ch_region_layer_phase2->setAxisTitle("Number of passing probes", 3);
1049 
1050  for (int i = 1; i < 37; ++i) {
1051  me_GE11_fail_Ch_ieta_p1->setBinLabel(i, std::to_string(i), 2);
1052  }
1053  for (int i = 1; i < 9; ++i) {
1054  me_GE11_fail_Ch_ieta_p1->setBinLabel(i, std::to_string(i), 1);
1055  }
1056  me_GE11_fail_Ch_ieta_p1->setAxisTitle("#ieta", 1);
1057  me_GE11_fail_Ch_ieta_p1->setAxisTitle("Chamber", 2);
1058  me_GE11_fail_Ch_ieta_p1->setAxisTitle("Number of failing probes", 3);
1059 
1060  for (int i = 1; i < 37; ++i) {
1061  me_GE11_pass_Ch_ieta_p1->setBinLabel(i, std::to_string(i), 2);
1062  }
1063  for (int i = 1; i < 9; ++i) {
1064  me_GE11_pass_Ch_ieta_p1->setBinLabel(i, std::to_string(i), 1);
1065  }
1066  me_GE11_pass_Ch_ieta_p1->setAxisTitle("#ieta", 1);
1067  me_GE11_pass_Ch_ieta_p1->setAxisTitle("Chamber", 2);
1068  me_GE11_pass_Ch_ieta_p1->setAxisTitle("Number of passing probes", 3);
1070  for (int i = 1; i < 37; ++i) {
1071  me_GE11_fail_Ch_ieta_p2->setBinLabel(i, std::to_string(i), 2);
1072  }
1073  for (int i = 1; i < 9; ++i) {
1074  me_GE11_fail_Ch_ieta_p2->setBinLabel(i, std::to_string(i), 1);
1075  }
1076  me_GE11_fail_Ch_ieta_p2->setAxisTitle("#ieta", 1);
1077  me_GE11_fail_Ch_ieta_p2->setAxisTitle("Chamber", 2);
1078  me_GE11_fail_Ch_ieta_p2->setAxisTitle("Number of failing probes", 3);
1079 
1080  for (int i = 1; i < 37; ++i) {
1081  me_GE11_pass_Ch_ieta_p2->setBinLabel(i, std::to_string(i), 2);
1082  }
1083  for (int i = 1; i < 9; ++i) {
1084  me_GE11_pass_Ch_ieta_p2->setBinLabel(i, std::to_string(i), 1);
1085  }
1086  me_GE11_pass_Ch_ieta_p2->setAxisTitle("#ieta", 1);
1087  me_GE11_pass_Ch_ieta_p2->setAxisTitle("Chamber", 2);
1088  me_GE11_pass_Ch_ieta_p2->setAxisTitle("Number of passing probes", 3);
1090  for (int i = 1; i < 37; ++i) {
1091  me_GE11_fail_Ch_ieta_n1->setBinLabel(i, std::to_string(i), 2);
1092  }
1093  for (int i = 1; i < 9; ++i) {
1094  me_GE11_fail_Ch_ieta_n1->setBinLabel(i, std::to_string(i), 1);
1095  }
1096  me_GE11_fail_Ch_ieta_n1->setAxisTitle("#ieta", 1);
1097  me_GE11_fail_Ch_ieta_n1->setAxisTitle("Chamber", 2);
1098  me_GE11_fail_Ch_ieta_n1->setAxisTitle("Number of failing probes", 3);
1099 
1100  for (int i = 1; i < 37; ++i) {
1101  me_GE11_pass_Ch_ieta_n1->setBinLabel(i, std::to_string(i), 2);
1102  }
1103  for (int i = 1; i < 9; ++i) {
1104  me_GE11_pass_Ch_ieta_n1->setBinLabel(i, std::to_string(i), 1);
1105  }
1106  me_GE11_pass_Ch_ieta_n1->setAxisTitle("#ieta", 1);
1107  me_GE11_pass_Ch_ieta_n1->setAxisTitle("Chamber", 2);
1108  me_GE11_pass_Ch_ieta_n1->setAxisTitle("Number of passing probes", 3);
1110  for (int i = 1; i < 37; ++i) {
1111  me_GE11_fail_Ch_ieta_n2->setBinLabel(i, std::to_string(i), 2);
1112  }
1113  for (int i = 1; i < 9; ++i) {
1114  me_GE11_fail_Ch_ieta_n2->setBinLabel(i, std::to_string(i), 1);
1115  }
1116  me_GE11_fail_Ch_ieta_n2->setAxisTitle("#ieta", 1);
1117  me_GE11_fail_Ch_ieta_n2->setAxisTitle("Chamber", 2);
1118  me_GE11_fail_Ch_ieta_n2->setAxisTitle("Number of failing probes", 3);
1119 
1120  for (int i = 1; i < 37; ++i) {
1121  me_GE11_pass_Ch_ieta_n2->setBinLabel(i, std::to_string(i), 2);
1122  }
1123  for (int i = 1; i < 9; ++i) {
1124  me_GE11_pass_Ch_ieta_n2->setBinLabel(i, std::to_string(i), 1);
1125  }
1126  me_GE11_pass_Ch_ieta_n2->setAxisTitle("#ieta", 1);
1127  me_GE11_pass_Ch_ieta_n2->setAxisTitle("Chamber", 2);
1128  me_GE11_pass_Ch_ieta_n2->setAxisTitle("Number of passing probes", 3);
1129 
1130  m_histos["GE11_nPassingProbe_Ch_region"] = me_GE11_pass_Ch_region;
1131  m_histos["GE11_nFailingProbe_Ch_region"] = me_GE11_fail_Ch_region;
1132  m_histos["GE21_nPassingProbe_Ch_region"] = me_GE21_pass_Ch_region;
1133  m_histos["GE21_nFailingProbe_Ch_region"] = me_GE21_fail_Ch_region;
1134  m_histos["GEM_nPassingProbe_Ch_region_GE1"] = me_GEM_pass_Ch_region_GE1;
1135  m_histos["GEM_nFailingProbe_Ch_region_GE1"] = me_GEM_fail_Ch_region_GE1;
1136  m_histos["GEM_nPassingProbe_Ch_region_GE1_NoL"] = me_GEM_pass_Ch_region_GE1_NoL;
1137  m_histos["GEM_nFailingProbe_Ch_region_GE1_NoL"] = me_GEM_fail_Ch_region_GE1_NoL;
1138  m_histos["GE11_nPassingProbe_Ch_ieta"] = me_GE11_pass_Ch_ieta;
1139  m_histos["GE11_nFailingProbe_Ch_ieta"] = me_GE11_fail_Ch_ieta;
1140  m_histos["GE11_nPassingProbe_Ch_phi"] = me_GE11_pass_Ch_phi;
1141  m_histos["GE11_nFailingProbe_Ch_phi"] = me_GE11_fail_Ch_phi;
1142  m_histos["GE21_nPassingProbe_Ch_ieta"] = me_GE21_pass_Ch_ieta;
1143  m_histos["GE21_nFailingProbe_Ch_ieta"] = me_GE21_fail_Ch_ieta;
1144  m_histos["GE21_nPassingProbe_Ch_phi"] = me_GE21_pass_Ch_phi;
1145  m_histos["GE21_nFailingProbe_Ch_phi"] = me_GE21_fail_Ch_phi;
1146  m_histos["GE11_nPassingProbe_allCh_1D"] = me_GE11_pass_allCh_1D;
1147  m_histos["GE11_nFailingProbe_allCh_1D"] = me_GE11_fail_allCh_1D;
1148  m_histos["GE21_nPassingProbe_allCh_1D"] = me_GE21_pass_allCh_1D;
1149  m_histos["GE21_nFailingProbe_allCh_1D"] = me_GE21_fail_allCh_1D;
1150  m_histos["GE11_nPassingProbe_chamber_1D"] = me_GE11_pass_chamber_1D;
1151  m_histos["GE11_nFailingProbe_chamber_1D"] = me_GE11_fail_chamber_1D;
1152  m_histos["GE21_nPassingProbe_chamber_1D"] = me_GE21_pass_chamber_1D;
1153  m_histos["GE21_nFailingProbe_chamber_1D"] = me_GE21_fail_chamber_1D;
1154  m_histos["GEM_nPassingProbe_chamber_p1_1D"] = me_GEM_pass_chamber_p1_1D;
1155  m_histos["GEM_nFailingProbe_chamber_p1_1D"] = me_GEM_fail_chamber_p1_1D;
1156  m_histos["GEM_nPassingProbe_chamber_p2_1D"] = me_GEM_pass_chamber_p2_1D;
1157  m_histos["GEM_nFailingProbe_chamber_p2_1D"] = me_GEM_fail_chamber_p2_1D;
1158  m_histos["GEM_nPassingProbe_chamber_n1_1D"] = me_GEM_pass_chamber_n1_1D;
1159  m_histos["GEM_nFailingProbe_chamber_n1_1D"] = me_GEM_fail_chamber_n1_1D;
1160  m_histos["GEM_nPassingProbe_chamber_n2_1D"] = me_GEM_pass_chamber_n2_1D;
1161  m_histos["GEM_nFailingProbe_chamber_n2_1D"] = me_GEM_fail_chamber_n2_1D;
1162  m_histos["GEM_nPassingProbe_pt_1D"] = me_GEM_pass_pt_1D;
1163  m_histos["GEM_nFailingProbe_pt_1D"] = me_GEM_fail_pt_1D;
1164  m_histos["GEM_nPassingProbe_eta_1D"] = me_GEM_pass_eta_1D;
1165  m_histos["GEM_nFailingProbe_eta_1D"] = me_GEM_fail_eta_1D;
1166  m_histos["GEM_nPassingProbe_phi_1D"] = me_GEM_pass_phi_1D;
1167  m_histos["GEM_nFailingProbe_phi_1D"] = me_GEM_fail_phi_1D;
1168  m_histos["GEM_nPassingProbe_pt_p1_1D"] = me_GEM_pass_pt_p1_1D;
1169  m_histos["GEM_nFailingProbe_pt_p1_1D"] = me_GEM_fail_pt_p1_1D;
1170  m_histos["GEM_nPassingProbe_eta_p1_1D"] = me_GEM_pass_eta_p1_1D;
1171  m_histos["GEM_nFailingProbe_eta_p1_1D"] = me_GEM_fail_eta_p1_1D;
1172  m_histos["GEM_nPassingProbe_phi_p1_1D"] = me_GEM_pass_phi_p1_1D;
1173  m_histos["GEM_nFailingProbe_phi_p1_1D"] = me_GEM_fail_phi_p1_1D;
1174  m_histos["GEM_nPassingProbe_pt_p2_1D"] = me_GEM_pass_pt_p2_1D;
1175  m_histos["GEM_nFailingProbe_pt_p2_1D"] = me_GEM_fail_pt_p2_1D;
1176  m_histos["GEM_nPassingProbe_eta_p2_1D"] = me_GEM_pass_eta_p2_1D;
1177  m_histos["GEM_nFailingProbe_eta_p2_1D"] = me_GEM_fail_eta_p2_1D;
1178  m_histos["GEM_nPassingProbe_phi_p2_1D"] = me_GEM_pass_phi_p2_1D;
1179  m_histos["GEM_nFailingProbe_phi_p2_1D"] = me_GEM_fail_phi_p2_1D;
1180  m_histos["GEM_nPassingProbe_pt_n1_1D"] = me_GEM_pass_pt_n1_1D;
1181  m_histos["GEM_nFailingProbe_pt_n1_1D"] = me_GEM_fail_pt_n1_1D;
1182  m_histos["GEM_nPassingProbe_eta_n1_1D"] = me_GEM_pass_eta_n1_1D;
1183  m_histos["GEM_nFailingProbe_eta_n1_1D"] = me_GEM_fail_eta_n1_1D;
1184  m_histos["GEM_nPassingProbe_phi_n1_1D"] = me_GEM_pass_phi_n1_1D;
1185  m_histos["GEM_nFailingProbe_phi_n1_1D"] = me_GEM_fail_phi_n1_1D;
1186  m_histos["GEM_nPassingProbe_pt_n2_1D"] = me_GEM_pass_pt_n2_1D;
1187  m_histos["GEM_nFailingProbe_pt_n2_1D"] = me_GEM_fail_pt_n2_1D;
1188  m_histos["GEM_nPassingProbe_eta_n2_1D"] = me_GEM_pass_eta_n2_1D;
1189  m_histos["GEM_nFailingProbe_eta_n2_1D"] = me_GEM_fail_eta_n2_1D;
1190  m_histos["GEM_nPassingProbe_phi_n2_1D"] = me_GEM_pass_phi_n2_1D;
1191  m_histos["GEM_nFailingProbe_phi_n2_1D"] = me_GEM_fail_phi_n2_1D;
1192  m_histos["ME0_nPassingProbe_chamber_1D"] = me_ME0_pass_chamber_1D;
1193  m_histos["ME0_nFailingProbe_chamber_1D"] = me_ME0_fail_chamber_1D;
1194  m_histos["GEM_nPassingProbe_Ch_region_layer_phase2"] = me_GEM_pass_Ch_region_layer_phase2;
1195  m_histos["GEM_nFailingProbe_Ch_region_layer_phase2"] = me_GEM_fail_Ch_region_layer_phase2;
1196  m_histos["GE11_nPassingProbe_Ch_ieta_p1"] = me_GE11_pass_Ch_ieta_p1;
1197  m_histos["GE11_nFailingProbe_Ch_ieta_p1"] = me_GE11_fail_Ch_ieta_p1;
1198  m_histos["GE11_nPassingProbe_Ch_ieta_p2"] = me_GE11_pass_Ch_ieta_p2;
1199  m_histos["GE11_nFailingProbe_Ch_ieta_p2"] = me_GE11_fail_Ch_ieta_p2;
1200  m_histos["GE11_nPassingProbe_Ch_ieta_n1"] = me_GE11_pass_Ch_ieta_n1;
1201  m_histos["GE11_nFailingProbe_Ch_ieta_n1"] = me_GE11_fail_Ch_ieta_n1;
1202  m_histos["GE11_nPassingProbe_Ch_ieta_n2"] = me_GE11_pass_Ch_ieta_n2;
1203  m_histos["GE11_nFailingProbe_Ch_ieta_n2"] = me_GE11_fail_Ch_ieta_n2;
1204 
1205  m_histos["GE11_nPassingProbe_OHmissing_allCh_1D"] = OHmissing_me_GE11_pass_allCh_1D;
1206  m_histos["GE11_nFailingProbe_OHmissing_allCh_1D"] = OHmissing_me_GE11_fail_allCh_1D;
1207  m_histos["GEM_nPassingProbe_OHmissing_chamber_p1_1D"] = OHmissing_me_GEM_pass_chamber_p1_1D;
1208  m_histos["GEM_nFailingProbe_OHmissing_chamber_p1_1D"] = OHmissing_me_GEM_fail_chamber_p1_1D;
1209  m_histos["GEM_nPassingProbe_OHmissing_chamber_p2_1D"] = OHmissing_me_GEM_pass_chamber_p2_1D;
1210  m_histos["GEM_nFailingProbe_OHmissing_chamber_p2_1D"] = OHmissing_me_GEM_fail_chamber_p2_1D;
1211  m_histos["GEM_nPassingProbe_OHmissing_chamber_n1_1D"] = OHmissing_me_GEM_pass_chamber_n1_1D;
1212  m_histos["GEM_nFailingProbe_OHmissing_chamber_n1_1D"] = OHmissing_me_GEM_fail_chamber_n1_1D;
1213  m_histos["GEM_nPassingProbe_OHmissing_chamber_n2_1D"] = OHmissing_me_GEM_pass_chamber_n2_1D;
1214  m_histos["GEM_nFailingProbe_OHmissing_chamber_n2_1D"] = OHmissing_me_GEM_fail_chamber_n2_1D;
1215  m_histos["GEM_nPassingProbe_OHmissing_pt_1D"] = OHmissing_me_GEM_pass_pt_1D;
1216  m_histos["GEM_nFailingProbe_OHmissing_pt_1D"] = OHmissing_me_GEM_fail_pt_1D;
1217  m_histos["GEM_nPassingProbe_OHmissing_eta_1D"] = OHmissing_me_GEM_pass_eta_1D;
1218  m_histos["GEM_nFailingProbe_OHmissing_eta_1D"] = OHmissing_me_GEM_fail_eta_1D;
1219  m_histos["GEM_nPassingProbe_OHmissing_phi_1D"] = OHmissing_me_GEM_pass_phi_1D;
1220  m_histos["GEM_nFailingProbe_OHmissing_phi_1D"] = OHmissing_me_GEM_fail_phi_1D;
1221  m_histos["GE11_nPassingProbe_OHmissing_Ch_ieta_p1"] = OHmissing_me_GE11_pass_Ch_ieta_p1;
1222  m_histos["GE11_nFailingProbe_OHmissing_Ch_ieta_p1"] = OHmissing_me_GE11_fail_Ch_ieta_p1;
1223  m_histos["GE11_nPassingProbe_OHmissing_Ch_ieta_p2"] = OHmissing_me_GE11_pass_Ch_ieta_p2;
1224  m_histos["GE11_nFailingProbe_OHmissing_Ch_ieta_p2"] = OHmissing_me_GE11_fail_Ch_ieta_p2;
1225  m_histos["GE11_nPassingProbe_OHmissing_Ch_ieta_n1"] = OHmissing_me_GE11_pass_Ch_ieta_n1;
1226  m_histos["GE11_nFailingProbe_OHmissing_Ch_ieta_n1"] = OHmissing_me_GE11_fail_Ch_ieta_n1;
1227  m_histos["GE11_nPassingProbe_OHmissing_Ch_ieta_n2"] = OHmissing_me_GE11_pass_Ch_ieta_n2;
1228  m_histos["GE11_nFailingProbe_OHmissing_Ch_ieta_n2"] = OHmissing_me_GE11_fail_Ch_ieta_n2;
1229 
1230  m_histos["GE11_nPassingProbe_OHerror_allCh_1D"] = OHerror_me_GE11_pass_allCh_1D;
1231  m_histos["GE11_nFailingProbe_OHerror_allCh_1D"] = OHerror_me_GE11_fail_allCh_1D;
1232  m_histos["GEM_nPassingProbe_OHerror_chamber_p1_1D"] = OHerror_me_GEM_pass_chamber_p1_1D;
1233  m_histos["GEM_nFailingProbe_OHerror_chamber_p1_1D"] = OHerror_me_GEM_fail_chamber_p1_1D;
1234  m_histos["GEM_nPassingProbe_OHerror_chamber_p2_1D"] = OHerror_me_GEM_pass_chamber_p2_1D;
1235  m_histos["GEM_nFailingProbe_OHerror_chamber_p2_1D"] = OHerror_me_GEM_fail_chamber_p2_1D;
1236  m_histos["GEM_nPassingProbe_OHerror_chamber_n1_1D"] = OHerror_me_GEM_pass_chamber_n1_1D;
1237  m_histos["GEM_nFailingProbe_OHerror_chamber_n1_1D"] = OHerror_me_GEM_fail_chamber_n1_1D;
1238  m_histos["GEM_nPassingProbe_OHerror_chamber_n2_1D"] = OHerror_me_GEM_pass_chamber_n2_1D;
1239  m_histos["GEM_nFailingProbe_OHerror_chamber_n2_1D"] = OHerror_me_GEM_fail_chamber_n2_1D;
1240  m_histos["GEM_nPassingProbe_OHerror_pt_1D"] = OHerror_me_GEM_pass_pt_1D;
1241  m_histos["GEM_nFailingProbe_OHerror_pt_1D"] = OHerror_me_GEM_fail_pt_1D;
1242  m_histos["GEM_nPassingProbe_OHerror_eta_1D"] = OHerror_me_GEM_pass_eta_1D;
1243  m_histos["GEM_nFailingProbe_OHerror_eta_1D"] = OHerror_me_GEM_fail_eta_1D;
1244  m_histos["GEM_nPassingProbe_OHerror_phi_1D"] = OHerror_me_GEM_pass_phi_1D;
1245  m_histos["GEM_nFailingProbe_OHerror_phi_1D"] = OHerror_me_GEM_fail_phi_1D;
1246  m_histos["GE11_nPassingProbe_OHerror_Ch_ieta_p1"] = OHerror_me_GE11_pass_Ch_ieta_p1;
1247  m_histos["GE11_nFailingProbe_OHerror_Ch_ieta_p1"] = OHerror_me_GE11_fail_Ch_ieta_p1;
1248  m_histos["GE11_nPassingProbe_OHerror_Ch_ieta_p2"] = OHerror_me_GE11_pass_Ch_ieta_p2;
1249  m_histos["GE11_nFailingProbe_OHerror_Ch_ieta_p2"] = OHerror_me_GE11_fail_Ch_ieta_p2;
1250  m_histos["GE11_nPassingProbe_OHerror_Ch_ieta_n1"] = OHerror_me_GE11_pass_Ch_ieta_n1;
1251  m_histos["GE11_nFailingProbe_OHerror_Ch_ieta_n1"] = OHerror_me_GE11_fail_Ch_ieta_n1;
1252  m_histos["GE11_nPassingProbe_OHerror_Ch_ieta_n2"] = OHerror_me_GE11_pass_Ch_ieta_n2;
1253  m_histos["GE11_nFailingProbe_OHerror_Ch_ieta_n2"] = OHerror_me_GE11_fail_Ch_ieta_n2;
1254 
1255  m_histos["GE11_nPassingProbe_VFATMask_allCh_1D"] = VFATMask_me_GE11_pass_allCh_1D;
1256  m_histos["GE11_nFailingProbe_VFATMask_allCh_1D"] = VFATMask_me_GE11_fail_allCh_1D;
1257  m_histos["GEM_nPassingProbe_VFATMask_chamber_p1_1D"] = VFATMask_me_GEM_pass_chamber_p1_1D;
1258  m_histos["GEM_nFailingProbe_VFATMask_chamber_p1_1D"] = VFATMask_me_GEM_fail_chamber_p1_1D;
1259  m_histos["GEM_nPassingProbe_VFATMask_chamber_p2_1D"] = VFATMask_me_GEM_pass_chamber_p2_1D;
1260  m_histos["GEM_nFailingProbe_VFATMask_chamber_p2_1D"] = VFATMask_me_GEM_fail_chamber_p2_1D;
1261  m_histos["GEM_nPassingProbe_VFATMask_chamber_n1_1D"] = VFATMask_me_GEM_pass_chamber_n1_1D;
1262  m_histos["GEM_nFailingProbe_VFATMask_chamber_n1_1D"] = VFATMask_me_GEM_fail_chamber_n1_1D;
1263  m_histos["GEM_nPassingProbe_VFATMask_chamber_n2_1D"] = VFATMask_me_GEM_pass_chamber_n2_1D;
1264  m_histos["GEM_nFailingProbe_VFATMask_chamber_n2_1D"] = VFATMask_me_GEM_fail_chamber_n2_1D;
1265  m_histos["GEM_nPassingProbe_VFATMask_pt_1D"] = VFATMask_me_GEM_pass_pt_1D;
1266  m_histos["GEM_nFailingProbe_VFATMask_pt_1D"] = VFATMask_me_GEM_fail_pt_1D;
1267  m_histos["GEM_nPassingProbe_VFATMask_eta_1D"] = VFATMask_me_GEM_pass_eta_1D;
1268  m_histos["GEM_nFailingProbe_VFATMask_eta_1D"] = VFATMask_me_GEM_fail_eta_1D;
1269  m_histos["GEM_nPassingProbe_VFATMask_phi_1D"] = VFATMask_me_GEM_pass_phi_1D;
1270  m_histos["GEM_nFailingProbe_VFATMask_phi_1D"] = VFATMask_me_GEM_fail_phi_1D;
1271  m_histos["GE11_nPassingProbe_VFATMask_Ch_ieta_p1"] = VFATMask_me_GE11_pass_Ch_ieta_p1;
1272  m_histos["GE11_nFailingProbe_VFATMask_Ch_ieta_p1"] = VFATMask_me_GE11_fail_Ch_ieta_p1;
1273  m_histos["GE11_nPassingProbe_VFATMask_Ch_ieta_p2"] = VFATMask_me_GE11_pass_Ch_ieta_p2;
1274  m_histos["GE11_nFailingProbe_VFATMask_Ch_ieta_p2"] = VFATMask_me_GE11_fail_Ch_ieta_p2;
1275  m_histos["GE11_nPassingProbe_VFATMask_Ch_ieta_n1"] = VFATMask_me_GE11_pass_Ch_ieta_n1;
1276  m_histos["GE11_nFailingProbe_VFATMask_Ch_ieta_n1"] = VFATMask_me_GE11_fail_Ch_ieta_n1;
1277  m_histos["GE11_nPassingProbe_VFATMask_Ch_ieta_n2"] = VFATMask_me_GE11_pass_Ch_ieta_n2;
1278  m_histos["GE11_nFailingProbe_VFATMask_Ch_ieta_n2"] = VFATMask_me_GE11_fail_Ch_ieta_n2;
1279 
1280  std::string baseDir_ = topFolder() + "/detailed/";
1281  iBooker.setCurrentFolder(baseDir_);
1282  m_histos["GEMseg_dx_ME0"] = iBooker.book1D("GEMseg_dx_ME0", "GEMseg_dx;probe dx [cm];Events", 100, 0., 20.);
1283  m_histos["GEMhit_dx_GE1"] = iBooker.book1D("GEMhit_dx_GE1", "GEMhit_dx;probe dx [cm];Events", 100, 0., 10.);
1284  m_histos["GEMhit_dx_GE2"] = iBooker.book1D("GEMhit_dx_GE2", "GEMhit_dx;probe dx [cm];Events", 100, 0., 10.);
1285 
1286  m_histos["GEMseg_x_ME0"] = iBooker.book1D("GEMhit_x_ME0", "GEMhit_x;probe x [cm];Events", 100, -10., 10.);
1287  m_histos["GEMhit_x_GE1"] = iBooker.book1D("GEMhit_x_GE1", "GEMhit_x;probe x [cm];Events", 100, -10., 10.);
1288  m_histos["GEMhit_x_GE2"] = iBooker.book1D("GEMhit_x_GE2", "GEMhit_x;probe x [cm];Events", 100, -10., 10.);
1289  m_histos["Cham_x_ME0"] = iBooker.book1D("Cham_x_ME0", "Cham_x;probe x [cm];Events", 100, -10., 10.);
1290  m_histos["Cham_x_GE1"] = iBooker.book1D("Cham_x_GE1", "Cham_x;probe x [cm];Events", 100, -10., 10.);
1291  m_histos["Cham_x_GE2"] = iBooker.book1D("Cham_x_GE2", "Cham_x;probe x [cm];Events", 100, -10., 10.);
1292  m_histos["xyErr_GE1"] = iBooker.book2D("xyErr_GE1", "xyErr_GE1", 50, 0., 5., 50, 0., 5.);
1293 }
1294 
1296  const GEMOHStatusCollection* oh_status_collection,
1297  const GEMVFATStatusCollection* vfat_status_collection) {
1298  uint16_t oh_warning = 0;
1299  bool oh_exists = false;
1300  for (auto iter = oh_status_collection->begin(); iter != oh_status_collection->end(); iter++) {
1301  const auto [oh_id, range] = (*iter);
1302  if (chamber_id.chamberId() != oh_id) {
1303  continue;
1304  }
1305  for (auto oh_status = range.first; oh_status != range.second; oh_status++) {
1306  oh_exists = true;
1307  if (oh_status->isBad()) {
1308  oh_warning = oh_warning | (1 << 1);
1309  }
1310  //oh_warning = oh_warning | (oh_status->warnings()); // If doing oh warning masking
1311  uint32_t vfatmask = oh_status->vfatMask();
1312  if (vfatmask != 16777215) {
1313  int ieta = chamber_id.ieta();
1314  if (!((vfatmask >> (8 - ieta) & 1) && (vfatmask >> (16 - ieta) & 1) &&
1315  (vfatmask >> (24 - ieta) & 1))) { // will not work for GE21
1316  oh_warning = oh_warning | (1 << 2);
1317  }
1318  }
1319  } // range
1320  } // collection
1321  if (!oh_exists) {
1322  oh_warning = oh_warning | 1;
1323  }
1324  return oh_warning;
1325 }
1326 
1328  const GlobalPoint& global_position,
1329  const float bordercut) {
1330  const TrapezoidalPlaneBounds* bounds = dynamic_cast<const TrapezoidalPlaneBounds*>(&geomDet->surface().bounds());
1331  LocalPoint localPoint = geomDet->surface().toLocal(global_position);
1332  float wideWidth = bounds->width();
1333  float narrowWidth = 2.f * bounds->widthAtHalfLength() - wideWidth;
1334  float length = bounds->length();
1335  float tangent = (wideWidth - narrowWidth) / (2.f * length);
1336  float halfWidthAtY = tangent * localPoint.y() + 0.25f * (narrowWidth + wideWidth);
1337  float distanceY = std::abs(localPoint.y()) - 0.5f * length;
1338  float distanceX = std::abs(localPoint.x()) - halfWidthAtY;
1339  if (distanceX < bordercut && distanceY < bordercut) {
1340  return true;
1341  }
1342  return false;
1343 }
1344 
1347  GEMOHStatusCollection oh_status;
1348  GEMVFATStatusCollection vfat_status;
1349  edm::Handle<GEMOHStatusCollection> oh_status_collection;
1350  edm::Handle<GEMVFATStatusCollection> vfat_status_collection;
1351  muon_service_->update(context);
1353  event.getByToken(m_GEMOHStatusCollectionToken_, oh_status_collection);
1354  //if (oh_status_collem_tion.isValid()) {
1355  oh_status = *oh_status_collection;
1356  } else {
1357  LogTrace("DQMOffline|MuonDPG|BaseTnPEfficiencyTask") << "failed to get GEMOHStatusCollection" << std::endl;
1358  return;
1359  }
1360 
1361  // event.getByToken(kGEMVFATStatusCollectionToken_, vfat_status_collection);
1362  // if (vfat_status_collection.isValid()) {
1363  // vfat_status = *vfat_status_collection;
1364  // } else {
1365  // LogTrace("DQMOffline|MuonDPG|BaseTnPEfficiencyTask") << "failed to get GEMVFATStatusCollection" << std::endl;
1366  // return;
1367  // }
1368  // }
1370  event.getByToken(m_muToken, muons);
1371 
1372  //GE11 variables
1373  std::vector<std::vector<int>> probe_coll_GE11_region;
1374  std::vector<std::vector<int>> probe_coll_GE11_lay;
1375  std::vector<std::vector<int>> probe_coll_GE11_chamber;
1376  std::vector<std::vector<float>> probe_coll_GE11_pt;
1377  std::vector<std::vector<float>> probe_coll_GE11_eta;
1378  std::vector<std::vector<float>> probe_coll_GE11_ieta;
1379  std::vector<std::vector<float>> probe_coll_GE11_phi;
1380  std::vector<std::vector<int>> probe_coll_GE11_sta;
1381  std::vector<std::vector<float>> probe_coll_GE11_dx;
1382  std::vector<std::vector<uint16_t>> probe_coll_GE11_warnings;
1383 
1384  //GE21 variables
1385  std::vector<std::vector<int>> probe_coll_GE21_region;
1386  std::vector<std::vector<int>> probe_coll_GE21_lay;
1387  std::vector<std::vector<int>> probe_coll_GE21_chamber;
1388  std::vector<std::vector<float>> probe_coll_GE21_pt;
1389  std::vector<std::vector<float>> probe_coll_GE21_eta;
1390  std::vector<std::vector<float>> probe_coll_GE21_ieta;
1391  std::vector<std::vector<float>> probe_coll_GE21_phi;
1392  std::vector<std::vector<int>> probe_coll_GE21_sta;
1393  std::vector<std::vector<float>> probe_coll_GE21_dx;
1394  std::vector<std::vector<uint16_t>> probe_coll_GE21_warnings;
1395 
1396  std::vector<uint8_t> probe_coll_GEM_staMatch; // ME0 to 0b0001, GE11 to 0b0010, GE21 to 0b0100
1397 
1398  //ME0 variables
1399  std::vector<std::vector<int>> probe_coll_ME0_region;
1400  std::vector<std::vector<int>> probe_coll_ME0_roll;
1401  std::vector<std::vector<int>> probe_coll_ME0_lay;
1402  std::vector<std::vector<int>> probe_coll_ME0_chamber;
1403  std::vector<std::vector<float>> probe_coll_ME0_pt;
1404  std::vector<std::vector<float>> probe_coll_ME0_eta;
1405  std::vector<std::vector<float>> probe_coll_ME0_ieta;
1406  std::vector<std::vector<float>> probe_coll_ME0_phi;
1407  std::vector<std::vector<int>> probe_coll_ME0_sta;
1408  std::vector<std::vector<float>> probe_coll_ME0_dx;
1409  std::vector<std::vector<uint16_t>> probe_coll_ME0_warnings;
1410 
1411  std::vector<unsigned> probe_indices;
1412  if (!m_probeIndices.empty())
1413  probe_indices = m_probeIndices.back();
1414 
1415  //Fill probe dx + subdetector coordinates
1416  for (const auto i : probe_indices) {
1417  //GE11 variables
1418  std::vector<int> probe_GE11_region;
1419  std::vector<int> probe_GE11_sta;
1420  std::vector<int> probe_GE11_lay;
1421  std::vector<int> probe_GE11_chamber;
1422  std::vector<float> probe_GE11_pt;
1423  std::vector<float> probe_GE11_eta;
1424  std::vector<float> probe_GE11_ieta;
1425  std::vector<float> probe_GE11_phi;
1426  std::vector<float> probe_GE11_dx;
1427  std::vector<uint16_t> probe_GE11_warnings;
1428  //GE21 variables
1429  std::vector<int> probe_GE21_region;
1430  std::vector<int> probe_GE21_sta;
1431  std::vector<int> probe_GE21_lay;
1432  std::vector<int> probe_GE21_chamber;
1433  std::vector<float> probe_GE21_pt;
1434  std::vector<float> probe_GE21_eta;
1435  std::vector<float> probe_GE21_ieta;
1436  std::vector<float> probe_GE21_phi;
1437  std::vector<float> probe_GE21_dx;
1438  std::vector<uint16_t> probe_GE21_warnings;
1439  //std::vector<float> probe_GEM_dx_seg;
1440  uint8_t GEM_stationMatching = 0;
1441  //ME0 variables
1442  std::vector<int> probe_ME0_region;
1443  std::vector<int> probe_ME0_roll;
1444  std::vector<int> probe_ME0_sta;
1445  std::vector<int> probe_ME0_lay;
1446  std::vector<int> probe_ME0_chamber;
1447  std::vector<float> probe_ME0_pt;
1448  std::vector<float> probe_ME0_eta;
1449  std::vector<float> probe_ME0_ieta;
1450  std::vector<float> probe_ME0_phi;
1451  std::vector<float> probe_ME0_dx;
1452  std::vector<uint16_t> probe_ME0_warnings;
1453 
1454  bool gem_matched = false; // fill detailed plots only for probes matching GEM
1455 
1456  for (const auto& chambMatch : (*muons).at(i).matches()) {
1457  // look in GEMs
1458  bool hit_matched = false; // true if chambermatch has at least one hit (GE11, GE21) or segment (ME0)
1459  if (chambMatch.detector() == MuonSubdetId::GEM) {
1460  if (chambMatch.edgeX < m_borderCut && chambMatch.edgeY < m_borderCut) {
1461  gem_matched = true; //fill detailed plots if at least one GEM probe match
1462 
1463  GEMDetId chId(chambMatch.id.rawId());
1464  const uint16_t warnings = maskChamberWithError(chId, &oh_status, &vfat_status);
1465  const int roll = chId.roll();
1466  const int region = chId.region();
1467  const int station = chId.station();
1468  const int layer = chId.layer();
1469  const int chamber = chId.chamber();
1470  const float pt = (*muons).at(i).pt();
1471  const float eta = (*muons).at(i).eta();
1472  const float phi = (*muons).at(i).phi();
1473  int ieta = 0;
1474  GEM_stationMatching = GEM_stationMatching | (1 << station);
1475 
1476  const GeomDet* geomDet = muon_service_->trackingGeometry()->idToDet(chId);
1477  LocalPoint pos(chambMatch.x, chambMatch.y);
1478 
1479  const GlobalPoint& global_position = geomDet->toGlobal(pos);
1480 
1481  if (const GEMChamber* gemChamber = dynamic_cast<const GEMChamber*>(geomDet)) {
1482  for (const GEMEtaPartition* eta_partition : gemChamber->etaPartitions())
1483  if (checkBounds(eta_partition, global_position, m_borderCut)) {
1484  ieta = eta_partition->id().ieta();
1485  break;
1486  }
1487  }
1488 
1489  if (station == 1 || station == 2) {
1490  reco::MuonGEMHitMatch closest_matchedHit;
1491  double smallestDx = 99999.;
1492  double matched_GEMHit_x = 99999.;
1493 
1494  for (auto& gemHit : chambMatch.gemHitMatches) {
1495  float dx = std::abs(chambMatch.x - gemHit.x);
1496  if (dx < smallestDx) {
1497  smallestDx = dx;
1498  closest_matchedHit = gemHit;
1499  matched_GEMHit_x = gemHit.x;
1500  hit_matched = true;
1501  }
1502  }
1503 
1504  if (station == 1) {
1505  probe_GE11_region.push_back(region);
1506  probe_GE11_sta.push_back(station);
1507  probe_GE11_lay.push_back(layer);
1508  probe_GE11_chamber.push_back(chamber);
1509  probe_GE11_ieta.push_back(ieta);
1510  probe_GE11_pt.push_back(pt);
1511  probe_GE11_eta.push_back(eta);
1512  probe_GE11_phi.push_back(phi);
1513  probe_GE11_dx.push_back(smallestDx);
1514  probe_GE11_warnings.push_back(warnings);
1515  }
1516 
1517  if (station == 2) {
1518  probe_GE21_region.push_back(region);
1519  probe_GE21_sta.push_back(station);
1520  probe_GE21_lay.push_back(layer);
1521  probe_GE21_chamber.push_back(chamber);
1522  probe_GE21_ieta.push_back(ieta);
1523  probe_GE21_pt.push_back(pt);
1524  probe_GE21_eta.push_back(eta);
1525  probe_GE21_phi.push_back(phi);
1526  probe_GE21_dx.push_back(smallestDx);
1527  probe_GE21_warnings.push_back(warnings);
1528  }
1529  if (m_detailedAnalysis && hit_matched) {
1530  if (station == 1) {
1531  m_histos.find("GEMhit_dx_GE1")->second->Fill(smallestDx);
1532  m_histos.find("GEMhit_x_GE1")->second->Fill(matched_GEMHit_x);
1533  m_histos.find("Cham_x_GE1")->second->Fill(chambMatch.x);
1534  m_histos.find("xyErr_GE1")->second->Fill(chambMatch.xErr, chambMatch.yErr);
1535  }
1536  if (station == 2) {
1537  m_histos.find("GEMhit_dx_GE2")->second->Fill(smallestDx);
1538  m_histos.find("GEMhit_x_GE2")->second->Fill(matched_GEMHit_x);
1539  m_histos.find("Cham_x_GE2")->second->Fill(chambMatch.x);
1540  }
1541  }
1542  }
1543 
1544  if (station == 0) {
1545  reco::MuonSegmentMatch closest_matchedSegment;
1546  double smallestDx_seg = 99999.;
1547 
1548  for (auto& seg : chambMatch.gemMatches) {
1549  float dx_seg = std::abs(chambMatch.x - seg.x);
1550  if (dx_seg < smallestDx_seg) {
1551  smallestDx_seg = dx_seg;
1552  closest_matchedSegment = seg;
1553  hit_matched = true;
1554  }
1555  }
1556 
1557  probe_ME0_region.push_back(region);
1558  probe_ME0_roll.push_back(roll);
1559  probe_ME0_sta.push_back(station);
1560  probe_ME0_lay.push_back(layer);
1561  probe_ME0_chamber.push_back(chamber);
1562  probe_ME0_ieta.push_back(ieta);
1563  probe_ME0_pt.push_back(pt);
1564  probe_ME0_eta.push_back(eta);
1565  probe_ME0_phi.push_back(phi);
1566  probe_ME0_dx.push_back(smallestDx_seg);
1567  probe_ME0_warnings.push_back(warnings);
1568 
1569  if (m_detailedAnalysis && hit_matched) {
1570  m_histos.find("GEMseg_dx_ME0")->second->Fill(smallestDx_seg);
1571  m_histos.find("GEMseg_x_ME0")->second->Fill(closest_matchedSegment.x);
1572  m_histos.find("Cham_x_ME0")->second->Fill(chambMatch.x);
1573  }
1574  }
1575  }
1576  } else
1577  continue;
1578  } //loop over chamber matches
1579 
1580  //Fill detailed plots
1581  if (m_detailedAnalysis && gem_matched) {
1582  m_histos.find("probeEta")->second->Fill((*muons).at(i).eta());
1583  m_histos.find("probePhi")->second->Fill((*muons).at(i).phi());
1584  m_histos.find("probeNumberOfMatchedStations")->second->Fill((*muons).at(i).numberOfMatchedStations());
1585  m_histos.find("probePt")->second->Fill((*muons).at(i).pt());
1586  //for(int ii=0; i<probe_GEM_dx.size(); ii++)
1587  //{
1588  // m_histos.find("GEMhit_dx")->second->Fill(probe_GEM_dx[ii]);
1589  // m_histos.find("GEMseg_dx")->second->Fill(probe_GEM_dx_seg[ii]);
1590  //}
1591  }
1592 
1593  //Fill GEM variables
1594  probe_coll_GE11_region.push_back(probe_GE11_region);
1595  probe_coll_GE11_sta.push_back(probe_GE11_sta);
1596  probe_coll_GE11_lay.push_back(probe_GE11_lay);
1597  probe_coll_GE11_chamber.push_back(probe_GE11_chamber);
1598  probe_coll_GE11_ieta.push_back(probe_GE11_ieta);
1599  probe_coll_GE11_pt.push_back(probe_GE11_pt);
1600  probe_coll_GE11_eta.push_back(probe_GE11_eta);
1601  probe_coll_GE11_phi.push_back(probe_GE11_phi);
1602  probe_coll_GE11_dx.push_back(probe_GE11_dx);
1603  probe_coll_GE11_warnings.push_back(probe_GE11_warnings);
1604 
1605  probe_coll_GEM_staMatch.push_back(GEM_stationMatching);
1606 
1607  //Fill GE21 variables
1608  probe_coll_GE21_region.push_back(probe_GE21_region);
1609  probe_coll_GE21_sta.push_back(probe_GE21_sta);
1610  probe_coll_GE21_lay.push_back(probe_GE21_lay);
1611  probe_coll_GE21_chamber.push_back(probe_GE21_chamber);
1612  probe_coll_GE21_ieta.push_back(probe_GE21_ieta);
1613  probe_coll_GE21_pt.push_back(probe_GE21_pt);
1614  probe_coll_GE21_eta.push_back(probe_GE21_eta);
1615  probe_coll_GE21_phi.push_back(probe_GE21_phi);
1616  probe_coll_GE21_dx.push_back(probe_GE21_dx);
1617  probe_coll_GE21_warnings.push_back(probe_GE21_warnings);
1618 
1619  //Fill ME0 variables
1620  probe_coll_ME0_region.push_back(probe_ME0_region);
1621  probe_coll_ME0_roll.push_back(probe_ME0_roll); // same as ieta
1622  probe_coll_ME0_sta.push_back(probe_ME0_sta);
1623  probe_coll_ME0_lay.push_back(probe_ME0_lay);
1624  probe_coll_ME0_chamber.push_back(probe_ME0_chamber);
1625  probe_coll_ME0_ieta.push_back(probe_ME0_ieta);
1626  probe_coll_ME0_pt.push_back(probe_ME0_pt);
1627  probe_coll_ME0_eta.push_back(probe_ME0_eta);
1628  probe_coll_ME0_phi.push_back(probe_ME0_phi);
1629  probe_coll_ME0_dx.push_back(probe_ME0_dx);
1630  probe_coll_ME0_warnings.push_back(probe_ME0_warnings);
1631 
1632  } //loop over probe collection
1633 
1634  //Loop over probes
1635  for (unsigned i = 0; i < probe_indices.size(); ++i) {
1636  //uint8_t GEM_matchPatt = probe_coll_GEM_staMatch.at(i); // ME0 to 0b0001, GE11 to 0b0010, GE21 to 0b0100
1637 
1638  //Loop over ME0 matches
1639  unsigned nME0_matches = probe_coll_ME0_region.at(i).size();
1640  for (unsigned j = 0; j < nME0_matches; ++j) {
1641  //ME0 variables
1642  int ME0_region = probe_coll_ME0_region.at(i).at(j);
1643  //int ME0_roll = probe_coll_ME0_roll.at(i).at(j);
1644  //int ME0_sta = probe_coll_ME0_sta.at(i).at(j);
1645  //int ME0_lay = probe_coll_ME0_lay.at(i).at(j);
1646  int ME0_chamber = probe_coll_ME0_chamber.at(i).at(j);
1647  //float ME0_pt = probe_coll_ME0_pt.at(i).at(j);
1648  float ME0_dx = probe_coll_ME0_dx.at(i).at(j);
1649  //float ME0_eta = probe_coll_ME0_eta.at(i).at(j);
1650  //float ME0_phi = probe_coll_ME0_phi.at(i).at(j);
1651 
1652  if (ME0_dx < m_dxCut) {
1653  m_histos.find("ME0_nPassingProbe_chamber_1D")->second->Fill(ME0_chamber);
1654  if (ME0_region < 0)
1655  m_histos.find("GEM_nPassingProbe_Ch_region_layer_phase2")->second->Fill(4, ME0_chamber);
1656  else if (ME0_region > 0)
1657  m_histos.find("GEM_nPassingProbe_Ch_region_layer_phase2")->second->Fill(5, ME0_chamber);
1658  } else {
1659  m_histos.find("ME0_nFailingProbe_chamber_1D")->second->Fill(ME0_chamber);
1660  if (ME0_region < 0)
1661  m_histos.find("GEM_nFailingProbe_Ch_region_layer_phase2")->second->Fill(4, ME0_chamber);
1662  else if (ME0_region > 0)
1663  m_histos.find("GEM_nFailingProbe_Ch_region_layer_phase2")->second->Fill(5, ME0_chamber);
1664  }
1665  }
1666  //
1667 
1668  //Loop over GE11 matches
1669  unsigned nGE11_matches = probe_coll_GE11_region.at(i).size();
1670  for (unsigned j = 0; j < nGE11_matches; ++j) {
1671  //GEM variables
1672  int GEM_region = probe_coll_GE11_region.at(i).at(j);
1673  int GEM_sta = probe_coll_GE11_sta.at(i).at(j);
1674  int GEM_lay = probe_coll_GE11_lay.at(i).at(j);
1675  int GEM_chamber = probe_coll_GE11_chamber.at(i).at(j);
1676  int GEM_ieta = probe_coll_GE11_ieta.at(i).at(j);
1677  float GEM_pt = probe_coll_GE11_pt.at(i).at(j);
1678  float GEM_dx = probe_coll_GE11_dx.at(i).at(j);
1679  float GEM_eta = probe_coll_GE11_eta.at(i).at(j);
1680  float GEM_phi = probe_coll_GE11_phi.at(i).at(j);
1681 
1682  uint16_t GEM_warning = probe_coll_GE11_warnings.at(i).at(j);
1683  //Fill GEM plots
1684  if (GEM_dx < m_dxCut) {
1685  m_histos.find("GE11_nPassingProbe_Ch_region")->second->Fill(GEM_region, GEM_chamber);
1686  m_histos.find("GE11_nPassingProbe_Ch_ieta")->second->Fill(GEM_ieta, GEM_chamber);
1687  m_histos.find("GE11_nPassingProbe_Ch_phi")->second->Fill(GEM_phi, GEM_chamber);
1688  m_histos.find("GE11_nPassingProbe_allCh_1D")->second->Fill(GEM_region);
1689  if (~GEM_warning & 1) {
1690  m_histos.find("GE11_nPassingProbe_OHmissing_allCh_1D")->second->Fill(GEM_region);
1691  if (~GEM_warning >> 1 & 1) {
1692  m_histos.find("GE11_nPassingProbe_OHerror_allCh_1D")->second->Fill(GEM_region);
1693  if (~GEM_warning >> 2 & 1) {
1694  m_histos.find("GE11_nPassingProbe_VFATMask_allCh_1D")->second->Fill(GEM_region);
1695  }
1696  }
1697  }
1698 
1699  m_histos.find("GE11_nPassingProbe_chamber_1D")->second->Fill(GEM_chamber);
1700  if (GEM_region < 0) {
1701  if (GEM_lay == 2)
1702  m_histos.find("GEM_nPassingProbe_Ch_region_layer_phase2")->second->Fill(2, GEM_chamber);
1703  else if (GEM_lay == 1)
1704  m_histos.find("GEM_nPassingProbe_Ch_region_layer_phase2")->second->Fill(3, GEM_chamber);
1705  }
1706  if (GEM_region > 0) {
1707  if (GEM_lay == 1)
1708  m_histos.find("GEM_nPassingProbe_Ch_region_layer_phase2")->second->Fill(6, GEM_chamber);
1709  else if (GEM_lay == 2)
1710  m_histos.find("GEM_nPassingProbe_Ch_region_layer_phase2")->second->Fill(7, GEM_chamber);
1711  }
1712  if (GEM_region == -1) {
1713  m_histos.find("GEM_nPassingProbe_Ch_region_GE1_NoL")->second->Fill(0, GEM_chamber);
1714  } else if (GEM_region == 1) {
1715  m_histos.find("GEM_nPassingProbe_Ch_region_GE1_NoL")->second->Fill(1, GEM_chamber);
1716  }
1717 
1718  if (GEM_region == 1 && GEM_lay == 1) {
1719  m_histos.find("GEM_nPassingProbe_chamber_p1_1D")->second->Fill(GEM_chamber);
1720  if (~GEM_warning & 1) {
1721  m_histos.find("GEM_nPassingProbe_OHmissing_chamber_p1_1D")->second->Fill(GEM_chamber);
1722  if (~GEM_warning >> 1 & 1) {
1723  m_histos.find("GEM_nPassingProbe_OHerror_chamber_p1_1D")->second->Fill(GEM_chamber);
1724  if (~GEM_warning >> 2 & 1) {
1725  m_histos.find("GEM_nPassingProbe_VFATMask_chamber_p1_1D")->second->Fill(GEM_chamber);
1726  }
1727  }
1728  }
1729  if (GEM_sta == 1) {
1730  m_histos.find("GE11_nPassingProbe_Ch_ieta_p1")->second->Fill(GEM_ieta, GEM_chamber);
1731  if (~GEM_warning & 1) {
1732  m_histos.find("GE11_nPassingProbe_OHmissing_Ch_ieta_p1")->second->Fill(GEM_ieta, GEM_chamber);
1733  if (~GEM_warning >> 1 & 1) {
1734  m_histos.find("GE11_nPassingProbe_OHerror_Ch_ieta_p1")->second->Fill(GEM_ieta, GEM_chamber);
1735  if (~GEM_warning >> 2 & 1) {
1736  m_histos.find("GE11_nPassingProbe_VFATMask_Ch_ieta_p1")->second->Fill(GEM_ieta, GEM_chamber);
1737  }
1738  }
1739  }
1740  }
1741  m_histos.find("GEM_nPassingProbe_Ch_region_GE1")->second->Fill(2, GEM_chamber);
1742  m_histos.find("GEM_nPassingProbe_pt_p1_1D")->second->Fill(GEM_pt);
1743  m_histos.find("GEM_nPassingProbe_eta_p1_1D")->second->Fill(abs(GEM_eta));
1744  m_histos.find("GEM_nPassingProbe_phi_p1_1D")->second->Fill(GEM_phi);
1745  } else if (GEM_region == 1 && GEM_lay == 2) {
1746  m_histos.find("GEM_nPassingProbe_chamber_p2_1D")->second->Fill(GEM_chamber);
1747  if (~GEM_warning & 1) {
1748  m_histos.find("GEM_nPassingProbe_OHmissing_chamber_p2_1D")->second->Fill(GEM_chamber);
1749  if (~GEM_warning >> 1 & 1) {
1750  m_histos.find("GEM_nPassingProbe_OHerror_chamber_p2_1D")->second->Fill(GEM_chamber);
1751  if (~GEM_warning >> 2 & 1) {
1752  m_histos.find("GEM_nPassingProbe_VFATMask_chamber_p2_1D")->second->Fill(GEM_chamber);
1753  }
1754  }
1755  }
1756  if (GEM_sta == 1) {
1757  m_histos.find("GE11_nPassingProbe_Ch_ieta_p2")->second->Fill(GEM_ieta, GEM_chamber);
1758  if (~GEM_warning & 1) {
1759  m_histos.find("GE11_nPassingProbe_OHmissing_Ch_ieta_p2")->second->Fill(GEM_ieta, GEM_chamber);
1760  if (~GEM_warning >> 1 & 1) {
1761  m_histos.find("GE11_nPassingProbe_OHerror_Ch_ieta_p2")->second->Fill(GEM_ieta, GEM_chamber);
1762  if (~GEM_warning >> 2 & 1) {
1763  m_histos.find("GE11_nPassingProbe_VFATMask_Ch_ieta_p2")->second->Fill(GEM_ieta, GEM_chamber);
1764  }
1765  }
1766  }
1767  }
1768  m_histos.find("GEM_nPassingProbe_Ch_region_GE1")->second->Fill(3, GEM_chamber);
1769  m_histos.find("GEM_nPassingProbe_pt_p2_1D")->second->Fill(GEM_pt);
1770  m_histos.find("GEM_nPassingProbe_eta_p2_1D")->second->Fill(abs(GEM_eta));
1771  m_histos.find("GEM_nPassingProbe_phi_p2_1D")->second->Fill(GEM_phi);
1772  } else if (GEM_region == -1 && GEM_lay == 1) {
1773  m_histos.find("GEM_nPassingProbe_chamber_n1_1D")->second->Fill(GEM_chamber);
1774  if (~GEM_warning & 1) {
1775  m_histos.find("GEM_nPassingProbe_OHmissing_chamber_n1_1D")->second->Fill(GEM_chamber);
1776  if (~GEM_warning >> 1 & 1) {
1777  m_histos.find("GEM_nPassingProbe_OHerror_chamber_n1_1D")->second->Fill(GEM_chamber);
1778  if (~GEM_warning >> 2 & 1) {
1779  m_histos.find("GEM_nPassingProbe_VFATMask_chamber_n1_1D")->second->Fill(GEM_chamber);
1780  }
1781  }
1782  }
1783  if (GEM_sta == 1) {
1784  m_histos.find("GE11_nPassingProbe_Ch_ieta_n1")->second->Fill(GEM_ieta, GEM_chamber);
1785  if (~GEM_warning & 1) {
1786  m_histos.find("GE11_nPassingProbe_OHmissing_Ch_ieta_n1")->second->Fill(GEM_ieta, GEM_chamber);
1787  if (~GEM_warning >> 1 & 1) {
1788  m_histos.find("GE11_nPassingProbe_OHerror_Ch_ieta_n1")->second->Fill(GEM_ieta, GEM_chamber);
1789  if (~GEM_warning >> 2 & 1) {
1790  m_histos.find("GE11_nPassingProbe_VFATMask_Ch_ieta_n1")->second->Fill(GEM_ieta, GEM_chamber);
1791  }
1792  }
1793  }
1794  }
1795  m_histos.find("GEM_nPassingProbe_Ch_region_GE1")->second->Fill(1, GEM_chamber);
1796  m_histos.find("GEM_nPassingProbe_pt_n1_1D")->second->Fill(GEM_pt);
1797  m_histos.find("GEM_nPassingProbe_eta_n1_1D")->second->Fill(abs(GEM_eta));
1798  m_histos.find("GEM_nPassingProbe_phi_n1_1D")->second->Fill(GEM_phi);
1799  } else if (GEM_region == -1 && GEM_lay == 2) {
1800  m_histos.find("GEM_nPassingProbe_chamber_n2_1D")->second->Fill(GEM_chamber);
1801  if (~GEM_warning & 1) {
1802  m_histos.find("GEM_nPassingProbe_OHmissing_chamber_n2_1D")->second->Fill(GEM_chamber);
1803  if (~GEM_warning >> 1 & 1) {
1804  m_histos.find("GEM_nPassingProbe_OHerror_chamber_n2_1D")->second->Fill(GEM_chamber);
1805  if (~GEM_warning >> 2 & 1) {
1806  m_histos.find("GEM_nPassingProbe_VFATMask_chamber_n2_1D")->second->Fill(GEM_chamber);
1807  }
1808  }
1809  }
1810  if (GEM_sta == 1) {
1811  m_histos.find("GE11_nPassingProbe_Ch_ieta_n2")->second->Fill(GEM_ieta, GEM_chamber);
1812  if (~GEM_warning & 1) {
1813  m_histos.find("GE11_nPassingProbe_OHmissing_Ch_ieta_n2")->second->Fill(GEM_ieta, GEM_chamber);
1814  if (~GEM_warning >> 1 & 1) {
1815  m_histos.find("GE11_nPassingProbe_OHerror_Ch_ieta_n2")->second->Fill(GEM_ieta, GEM_chamber);
1816  if (~GEM_warning >> 2 & 1) {
1817  m_histos.find("GE11_nPassingProbe_VFATMask_Ch_ieta_n2")->second->Fill(GEM_ieta, GEM_chamber);
1818  }
1819  }
1820  }
1821  }
1822  m_histos.find("GEM_nPassingProbe_Ch_region_GE1")->second->Fill(0, GEM_chamber);
1823  m_histos.find("GEM_nPassingProbe_pt_n2_1D")->second->Fill(GEM_pt);
1824  m_histos.find("GEM_nPassingProbe_eta_n2_1D")->second->Fill(abs(GEM_eta));
1825  m_histos.find("GEM_nPassingProbe_phi_n2_1D")->second->Fill(GEM_phi);
1826  }
1827  m_histos.find("GEM_nPassingProbe_pt_1D")->second->Fill(GEM_pt);
1828  if (~GEM_warning & 1) {
1829  m_histos.find("GEM_nPassingProbe_OHmissing_pt_1D")->second->Fill(GEM_pt);
1830  if (~GEM_warning >> 1 & 1) {
1831  m_histos.find("GEM_nPassingProbe_OHerror_pt_1D")->second->Fill(GEM_pt);
1832  if (~GEM_warning >> 2 & 1) {
1833  m_histos.find("GEM_nPassingProbe_VFATMask_pt_1D")->second->Fill(GEM_pt);
1834  }
1835  }
1836  }
1837  m_histos.find("GEM_nPassingProbe_eta_1D")->second->Fill(abs(GEM_eta));
1838  if (~GEM_warning & 1) {
1839  m_histos.find("GEM_nPassingProbe_OHmissing_eta_1D")->second->Fill(GEM_eta);
1840  if (~GEM_warning >> 1 & 1) {
1841  m_histos.find("GEM_nPassingProbe_OHerror_eta_1D")->second->Fill(GEM_eta);
1842  if (~GEM_warning >> 2 & 1) {
1843  m_histos.find("GEM_nPassingProbe_VFATMask_eta_1D")->second->Fill(GEM_eta);
1844  }
1845  }
1846  }
1847  m_histos.find("GEM_nPassingProbe_phi_1D")->second->Fill(GEM_phi);
1848  if (~GEM_warning & 1) {
1849  m_histos.find("GEM_nPassingProbe_OHmissing_phi_1D")->second->Fill(GEM_phi);
1850  if (~GEM_warning >> 1 & 1) {
1851  m_histos.find("GEM_nPassingProbe_OHerror_phi_1D")->second->Fill(GEM_phi);
1852  if (~GEM_warning >> 2 & 1) {
1853  m_histos.find("GEM_nPassingProbe_VFATMask_phi_1D")->second->Fill(GEM_phi);
1854  }
1855  }
1856  }
1857  } else {
1858  m_histos.find("GE11_nFailingProbe_Ch_region")->second->Fill(GEM_region, GEM_chamber);
1859  m_histos.find("GE11_nFailingProbe_Ch_ieta")->second->Fill(GEM_ieta, GEM_chamber);
1860  m_histos.find("GE11_nFailingProbe_Ch_phi")->second->Fill(GEM_phi, GEM_chamber);
1861  m_histos.find("GE11_nFailingProbe_allCh_1D")->second->Fill(GEM_region);
1862  if (~GEM_warning & 1) {
1863  m_histos.find("GE11_nFailingProbe_OHmissing_allCh_1D")->second->Fill(GEM_region);
1864  if (~GEM_warning >> 1 & 1) {
1865  m_histos.find("GE11_nFailingProbe_OHerror_allCh_1D")->second->Fill(GEM_region);
1866  if (~GEM_warning >> 2 & 1) {
1867  m_histos.find("GE11_nFailingProbe_VFATMask_allCh_1D")->second->Fill(GEM_region);
1868  }
1869  }
1870  }
1871  m_histos.find("GE11_nFailingProbe_chamber_1D")->second->Fill(GEM_chamber);
1872  if (GEM_region < 0) {
1873  if (GEM_sta == 2 and GEM_lay == 2)
1874  m_histos.find("GEM_nFailingProbe_Ch_region_layer_phase2")->second->Fill(0, GEM_chamber);
1875  else if (GEM_sta == 2 and GEM_lay == 1)
1876  m_histos.find("GEM_nFailingProbe_Ch_region_layer_phase2")->second->Fill(1, GEM_chamber);
1877  else if (GEM_sta == 1 and GEM_lay == 2)
1878  m_histos.find("GEM_nFailingProbe_Ch_region_layer_phase2")->second->Fill(2, GEM_chamber);
1879  else if (GEM_sta == 1 and GEM_lay == 1)
1880  m_histos.find("GEM_nFailingProbe_Ch_region_layer_phase2")->second->Fill(3, GEM_chamber);
1881  }
1882  if (GEM_region > 0) {
1883  if (GEM_sta == 1 and GEM_lay == 1)
1884  m_histos.find("GEM_nFailingProbe_Ch_region_layer_phase2")->second->Fill(6, GEM_chamber);
1885  else if (GEM_sta == 1 and GEM_lay == 2)
1886  m_histos.find("GEM_nFailingProbe_Ch_region_layer_phase2")->second->Fill(7, GEM_chamber);
1887  else if (GEM_sta == 2 and GEM_lay == 1)
1888  m_histos.find("GEM_nFailingProbe_Ch_region_layer_phase2")->second->Fill(8, GEM_chamber);
1889  else if (GEM_sta == 2 and GEM_lay == 2)
1890  m_histos.find("GEM_nFailingProbe_Ch_region_layer_phase2")->second->Fill(9, GEM_chamber);
1891  }
1892  if (GEM_region == -1) {
1893  m_histos.find("GEM_nFailingProbe_Ch_region_GE1_NoL")->second->Fill(0, GEM_chamber);
1894  } else if (GEM_region == 1) {
1895  m_histos.find("GEM_nFailingProbe_Ch_region_GE1_NoL")->second->Fill(1, GEM_chamber);
1896  }
1897  //
1898  if (GEM_region == 1 && GEM_lay == 1) {
1899  m_histos.find("GEM_nFailingProbe_chamber_p1_1D")->second->Fill(GEM_chamber);
1900  if (~GEM_warning & 1) {
1901  m_histos.find("GEM_nFailingProbe_OHmissing_chamber_p1_1D")->second->Fill(GEM_chamber);
1902  if (~GEM_warning >> 1 & 1) {
1903  m_histos.find("GEM_nFailingProbe_OHerror_chamber_p1_1D")->second->Fill(GEM_chamber);
1904  if (~GEM_warning >> 2 & 1) {
1905  m_histos.find("GEM_nFailingProbe_VFATMask_chamber_p1_1D")->second->Fill(GEM_chamber);
1906  }
1907  }
1908  }
1909  m_histos.find("GEM_nFailingProbe_Ch_region_GE1")->second->Fill(2, GEM_chamber);
1910  m_histos.find("GEM_nFailingProbe_pt_p1_1D")->second->Fill(GEM_pt);
1911  m_histos.find("GEM_nFailingProbe_eta_p1_1D")->second->Fill(abs(GEM_eta));
1912  m_histos.find("GEM_nFailingProbe_phi_p1_1D")->second->Fill(GEM_phi);
1913  if (GEM_sta == 1) {
1914  m_histos.find("GE11_nFailingProbe_Ch_ieta_p1")->second->Fill(GEM_ieta, GEM_chamber);
1915  if (~GEM_warning & 1) {
1916  m_histos.find("GE11_nFailingProbe_OHmissing_Ch_ieta_p1")->second->Fill(GEM_ieta, GEM_chamber);
1917  if (~GEM_warning >> 1 & 1) {
1918  m_histos.find("GE11_nFailingProbe_OHerror_Ch_ieta_p1")->second->Fill(GEM_ieta, GEM_chamber);
1919  if (~GEM_warning >> 2 & 1) {
1920  m_histos.find("GE11_nFailingProbe_VFATMask_Ch_ieta_p1")->second->Fill(GEM_ieta, GEM_chamber);
1921  }
1922  }
1923  }
1924  }
1925  } else if (GEM_region == 1 && GEM_lay == 2) {
1926  m_histos.find("GEM_nFailingProbe_chamber_p2_1D")->second->Fill(GEM_chamber);
1927  if (~GEM_warning & 1) {
1928  m_histos.find("GEM_nFailingProbe_OHmissing_chamber_p2_1D")->second->Fill(GEM_chamber);
1929  if (~GEM_warning >> 1 & 1) {
1930  m_histos.find("GEM_nFailingProbe_OHerror_chamber_p2_1D")->second->Fill(GEM_chamber);
1931  if (~GEM_warning >> 2 & 1) {
1932  m_histos.find("GEM_nFailingProbe_VFATMask_chamber_p2_1D")->second->Fill(GEM_chamber);
1933  }
1934  }
1935  }
1936  m_histos.find("GEM_nFailingProbe_Ch_region_GE1")->second->Fill(3, GEM_chamber);
1937  m_histos.find("GEM_nFailingProbe_pt_p2_1D")->second->Fill(GEM_pt);
1938  m_histos.find("GEM_nFailingProbe_eta_p2_1D")->second->Fill(abs(GEM_eta));
1939  m_histos.find("GEM_nFailingProbe_phi_p2_1D")->second->Fill(GEM_phi);
1940  if (GEM_sta == 1) {
1941  m_histos.find("GE11_nFailingProbe_Ch_ieta_p2")->second->Fill(GEM_ieta, GEM_chamber);
1942  if (~GEM_warning & 1) {
1943  m_histos.find("GE11_nFailingProbe_OHmissing_Ch_ieta_p2")->second->Fill(GEM_ieta, GEM_chamber);
1944  if (~GEM_warning >> 1 & 1) {
1945  m_histos.find("GE11_nFailingProbe_OHerror_Ch_ieta_p2")->second->Fill(GEM_ieta, GEM_chamber);
1946  if (~GEM_warning >> 2 & 1) {
1947  m_histos.find("GE11_nFailingProbe_VFATMask_Ch_ieta_p2")->second->Fill(GEM_ieta, GEM_chamber);
1948  }
1949  }
1950  }
1951  }
1952  } else if (GEM_region == -1 && GEM_lay == 1) {
1953  m_histos.find("GEM_nFailingProbe_chamber_n1_1D")->second->Fill(GEM_chamber);
1954  if (~GEM_warning & 1) {
1955  m_histos.find("GEM_nFailingProbe_OHmissing_chamber_n1_1D")->second->Fill(GEM_chamber);
1956  if (~GEM_warning >> 1 & 1) {
1957  m_histos.find("GEM_nFailingProbe_OHerror_chamber_n1_1D")->second->Fill(GEM_chamber);
1958  if (~GEM_warning >> 2 & 1) {
1959  m_histos.find("GEM_nFailingProbe_VFATMask_chamber_n1_1D")->second->Fill(GEM_chamber);
1960  }
1961  }
1962  }
1963  m_histos.find("GEM_nFailingProbe_Ch_region_GE1")->second->Fill(1, GEM_chamber);
1964  m_histos.find("GEM_nFailingProbe_pt_n1_1D")->second->Fill(GEM_pt);
1965  m_histos.find("GEM_nFailingProbe_eta_n1_1D")->second->Fill(abs(GEM_eta));
1966  m_histos.find("GEM_nFailingProbe_phi_n1_1D")->second->Fill(GEM_phi);
1967  if (GEM_sta == 1) {
1968  m_histos.find("GE11_nFailingProbe_Ch_ieta_n1")->second->Fill(GEM_ieta, GEM_chamber);
1969  if (~GEM_warning & 1) {
1970  m_histos.find("GE11_nFailingProbe_OHmissing_Ch_ieta_n1")->second->Fill(GEM_ieta, GEM_chamber);
1971  if (~GEM_warning >> 1 & 1) {
1972  m_histos.find("GE11_nFailingProbe_OHerror_Ch_ieta_n1")->second->Fill(GEM_ieta, GEM_chamber);
1973  if (~GEM_warning >> 2 & 1) {
1974  m_histos.find("GE11_nFailingProbe_VFATMask_Ch_ieta_n1")->second->Fill(GEM_ieta, GEM_chamber);
1975  }
1976  }
1977  }
1978  }
1979  } else if (GEM_region == -1 && GEM_lay == 2) {
1980  m_histos.find("GEM_nFailingProbe_chamber_n2_1D")->second->Fill(GEM_chamber);
1981  if (~GEM_warning & 1) {
1982  m_histos.find("GEM_nFailingProbe_OHmissing_chamber_n2_1D")->second->Fill(GEM_chamber);
1983  if (~GEM_warning >> 1 & 1) {
1984  m_histos.find("GEM_nFailingProbe_OHerror_chamber_n2_1D")->second->Fill(GEM_chamber);
1985  if (~GEM_warning >> 2 & 1) {
1986  m_histos.find("GEM_nFailingProbe_VFATMask_chamber_n2_1D")->second->Fill(GEM_chamber);
1987  }
1988  }
1989  }
1990  m_histos.find("GEM_nFailingProbe_Ch_region_GE1")->second->Fill(0, GEM_chamber);
1991  m_histos.find("GEM_nFailingProbe_pt_n2_1D")->second->Fill(GEM_pt);
1992  m_histos.find("GEM_nFailingProbe_eta_n2_1D")->second->Fill(abs(GEM_eta));
1993  m_histos.find("GEM_nFailingProbe_phi_n2_1D")->second->Fill(GEM_phi);
1994  if (GEM_sta == 1) {
1995  m_histos.find("GE11_nFailingProbe_Ch_ieta_n2")->second->Fill(GEM_ieta, GEM_chamber);
1996  if (~GEM_warning & 1) {
1997  m_histos.find("GE11_nFailingProbe_OHmissing_Ch_ieta_n2")->second->Fill(GEM_ieta, GEM_chamber);
1998  if (~GEM_warning >> 1 & 1) {
1999  m_histos.find("GE11_nFailingProbe_OHerror_Ch_ieta_n2")->second->Fill(GEM_ieta, GEM_chamber);
2000  if (~GEM_warning >> 2 & 1) {
2001  m_histos.find("GE11_nFailingProbe_VFATMask_Ch_ieta_n2")->second->Fill(GEM_ieta, GEM_chamber);
2002  }
2003  }
2004  }
2005  }
2006  }
2007  m_histos.find("GEM_nFailingProbe_pt_1D")->second->Fill(GEM_pt);
2008  if (~GEM_warning & 1) {
2009  m_histos.find("GEM_nFailingProbe_OHmissing_pt_1D")->second->Fill(GEM_pt);
2010  if (~GEM_warning >> 1 & 1) {
2011  m_histos.find("GEM_nFailingProbe_OHerror_pt_1D")->second->Fill(GEM_pt);
2012  if (~GEM_warning >> 2 & 1) {
2013  m_histos.find("GEM_nFailingProbe_VFATMask_pt_1D")->second->Fill(GEM_pt);
2014  }
2015  }
2016  }
2017  m_histos.find("GEM_nFailingProbe_eta_1D")->second->Fill(abs(GEM_eta));
2018  if (~GEM_warning & 1) {
2019  m_histos.find("GEM_nFailingProbe_OHmissing_eta_1D")->second->Fill(GEM_eta);
2020  if (~GEM_warning >> 1 & 1) {
2021  m_histos.find("GEM_nFailingProbe_OHerror_eta_1D")->second->Fill(GEM_eta);
2022  if (~GEM_warning >> 2 & 1) {
2023  m_histos.find("GEM_nFailingProbe_VFATMask_eta_1D")->second->Fill(GEM_eta);
2024  }
2025  }
2026  }
2027  m_histos.find("GEM_nFailingProbe_phi_1D")->second->Fill(GEM_phi);
2028  if (~GEM_warning & 1) {
2029  m_histos.find("GEM_nFailingProbe_OHmissing_phi_1D")->second->Fill(GEM_phi);
2030  if (~GEM_warning >> 1 & 1) {
2031  m_histos.find("GEM_nFailingProbe_OHerror_phi_1D")->second->Fill(GEM_phi);
2032  if (~GEM_warning >> 2 & 1) {
2033  m_histos.find("GEM_nFailingProbe_VFATMask_phi_1D")->second->Fill(GEM_phi);
2034  }
2035  }
2036  }
2037  }
2038  }
2039 
2040  //Loop over GE21 matches
2041  unsigned nGE21_matches = probe_coll_GE21_region.at(i).size();
2042  for (unsigned j = 0; j < nGE21_matches; ++j) {
2043  //GEM variables
2044  int GEM_region = probe_coll_GE21_region.at(i).at(j);
2045  int GEM_lay = probe_coll_GE21_lay.at(i).at(j);
2046  int GEM_chamber = probe_coll_GE21_chamber.at(i).at(j);
2047  float GEM_ieta = probe_coll_GE21_ieta.at(i).at(j);
2048  float GEM_dx = probe_coll_GE21_dx.at(i).at(j);
2049  float GEM_phi = probe_coll_GE21_phi.at(i).at(j);
2050 
2051  //Fill GEM plots
2052  if (GEM_dx < m_dxCut) {
2053  m_histos.find("GE21_nPassingProbe_Ch_region")->second->Fill(GEM_region, GEM_chamber);
2054  m_histos.find("GE21_nPassingProbe_Ch_ieta")->second->Fill(GEM_ieta, GEM_chamber);
2055  m_histos.find("GE21_nPassingProbe_Ch_phi")->second->Fill(GEM_phi, GEM_chamber);
2056  m_histos.find("GE21_nPassingProbe_allCh_1D")->second->Fill(GEM_region);
2057  m_histos.find("GE21_nPassingProbe_chamber_1D")->second->Fill(GEM_chamber);
2058  if (GEM_region < 0) {
2059  if (GEM_lay == 2)
2060  m_histos.find("GEM_nPassingProbe_Ch_region_layer_phase2")->second->Fill(0, GEM_chamber);
2061  else if (GEM_lay == 1)
2062  m_histos.find("GEM_nPassingProbe_Ch_region_layer_phase2")->second->Fill(1, GEM_chamber);
2063  }
2064  if (GEM_region > 0) {
2065  if (GEM_lay == 1)
2066  m_histos.find("GEM_nPassingProbe_Ch_region_layer_phase2")->second->Fill(8, GEM_chamber);
2067  else if (GEM_lay == 2)
2068  m_histos.find("GEM_nPassingProbe_Ch_region_layer_phase2")->second->Fill(9, GEM_chamber);
2069  }
2070  } else {
2071  m_histos.find("GE21_nFailingProbe_Ch_region")->second->Fill(GEM_region, GEM_chamber);
2072  m_histos.find("GE21_nFailingProbe_Ch_ieta")->second->Fill(GEM_ieta, GEM_chamber);
2073  m_histos.find("GE21_nFailingProbe_Ch_phi")->second->Fill(GEM_phi, GEM_chamber);
2074  m_histos.find("GE21_nFailingProbe_allCh_1D")->second->Fill(GEM_region);
2075  m_histos.find("GE21_nFailingProbe_chamber_1D")->second->Fill(GEM_chamber);
2076  if (GEM_region < 0) {
2077  if (GEM_lay == 2)
2078  m_histos.find("GEM_nFailingProbe_Ch_region_layer_phase2")->second->Fill(0, GEM_chamber);
2079  else if (GEM_lay == 1)
2080  m_histos.find("GEM_nFailingProbe_Ch_region_layer_phase2")->second->Fill(1, GEM_chamber);
2081  }
2082  if (GEM_region > 0) {
2083  if (GEM_lay == 1)
2084  m_histos.find("GEM_nFailingProbe_Ch_region_layer_phase2")->second->Fill(8, GEM_chamber);
2085  else if (GEM_lay == 2)
2086  m_histos.find("GEM_nFailingProbe_Ch_region_layer_phase2")->second->Fill(9, GEM_chamber);
2087  }
2088  }
2089  }
2090  }
2091 }
2092 
2093 std::string GEMTnPEfficiencyTask::topFolder() const { return "GEM/Segment_TnP/"; };
2094 
const double Pi
static constexpr int GEM
Definition: MuonSubdetId.h:14
virtual void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:36
~GEMTnPEfficiencyTask() override
Destructor.
const edm::EDGetTokenT< reco::MuonCollection > m_muToken
Definition: config.py:1
LocalPoint toLocal(const GlobalPoint &gp) const
muons
the two sets of parameters below are mutually exclusive, depending if RECO or ALCARECO is used the us...
Definition: DiMuonV_cfg.py:214
static std::string to_string(const XMLCh *ch)
#define LogTrace(id)
T x() const
Definition: PV3DBase.h:59
T y() const
Definition: PV3DBase.h:60
std::vector< std::vector< unsigned > > m_probeIndices
uint16_t maskChamberWithError(const GEMDetId &chamber_id, const GEMOHStatusCollection *, const GEMVFATStatusCollection *)
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
std::map< std::string, MonitorElement * > m_histos
double f[11][100]
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:16
void bookHistograms(DQMStore::IBooker &iBooker, edm::Run const &run, edm::EventSetup const &context) override
void analyze(const edm::Event &event, const edm::EventSetup &context) override
Analyze.
virtual void setBinLabel(int bin, const std::string &label, int axis=1)
set bin label for x, y or z axis (axis=1, 2, 3 respectively)
DigiRangeIterator begin() const
std::unique_ptr< MuonServiceProxy > muon_service_
GlobalPoint toGlobal(const Local2DPoint &lp) const
Conversion to the global R.F. from the R.F. of the GeomDet.
Definition: GeomDet.h:49
bool checkBounds(const GeomDet *geomDet, const GlobalPoint &global_position, const float bordercut)
const edm::EDGetTokenT< GEMOHStatusCollection > m_GEMOHStatusCollectionToken_
const edm::EDGetTokenT< GEMVFATStatusCollection > m_GEMVFATStatusCollectionToken_
constexpr int ieta() const
Definition: GEMDetId.h:199
void bookHistograms(DQMStore::IBooker &iBooker, edm::Run const &run, edm::EventSetup const &context) override
const Plane & surface() const
The nominal surface of the GeomDet.
Definition: GeomDet.h:37
void analyze(const edm::Event &event, const edm::EventSetup &context) override
Analyze.
MonitorElement * book2D(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, FUNC onbooking=NOOP())
Definition: DQMStore.h:221
GEMTnPEfficiencyTask(const edm::ParameterSet &config)
Constructor.
HLT enums.
const edm::EDGetTokenT< GEMAMCStatusCollection > m_GEMAMCStatusCollectionToken_
constexpr GEMDetId chamberId() const
Definition: GEMDetId.h:204
std::string topFolder() const override
Return the top folder.
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
Definition: DQMStore.h:98
DigiRangeIterator end() const
Definition: event.py:1
Definition: Run.h:45
virtual void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
const Bounds & bounds() const
Definition: Surface.h:87
A container for a generic type of digis indexed by some index, implemented with a map<IndexType...