48 TDirectory* oldDir = gDirectory;
52 hBunchInjHER =
new TH1F(
"hBunchInjHER",
"Last Inj Bunch HER;Counts;BunchNr/4", 1280, 0, 1280);
53 hBunchInjLER =
new TH1F(
"hBunchInjLER",
"Last Inj Bunch LER;Counts;BunchNr/4", 1280, 0, 1280);
54 hBunchTrg =
new TH1F(
"hBunchTrg",
"Triggered Bunch;Counts;BunchNr/4", 1280, 0, 1280);
57 std::vector<VxdID> sensors =
m_vxdGeometry.getListOfSensors();
58 for (
VxdID& avxdid : sensors) {
63 TString buff = (std::string)avxdid;
64 TString buffus = buff;
65 buffus.ReplaceAll(
".",
"_");
67 for (
int rgate =
m_perGate ? 0 : 96; rgate <= 96; rgate++) {
68 hGatedModeMapLER[std::make_pair(avxdid, rgate)] =
new TH2F(Form(
"PXDGatedModeMapLER_%d_", rgate) + buffus,
69 Form(
"PXDGatedModeMapLER %d ", rgate) + buff +
";U;V", 25, 0, 250, 192, 0, 768);
70 hGatedModeMapHER[std::make_pair(avxdid, rgate)] =
new TH2F(Form(
"PXDGatedModeMapHER_%d_", rgate) + buffus,
71 Form(
"PXDGatedModeMapHER %d ", rgate) + buff +
";U;V", 25, 0, 250, 192, 0, 768);
72 hGatedModeMapCutLER[std::make_pair(avxdid, rgate)] =
new TH2F(Form(
"PXDGatedModeMapCutLER_%d_", rgate) + buffus,
73 Form(
"PXDGatedModeMapCutLER %d ", rgate) + buff +
";U;V", 25, 0, 250, 192, 0, 768);
74 hGatedModeMapCutHER[std::make_pair(avxdid, rgate)] =
new TH2F(Form(
"PXDGatedModeMapCutHER_%d_", rgate) + buffus,
75 Form(
"PXDGatedModeMapCutHER %d ", rgate) + buff +
";U;V", 25, 0, 250, 192, 0, 768);
77 hGatedModeMapADCLER[std::make_pair(avxdid, rgate)] =
new TH2F(Form(
"PXDGatedModeMapADCLER_%d_", rgate) + buffus,
78 Form(
"PXDGatedModeMapADCLER %d ", rgate) + buff +
";U;V", 25, 0, 250, 192, 0, 768);
79 hGatedModeMapADCHER[std::make_pair(avxdid, rgate)] =
new TH2F(Form(
"PXDGatedModeMapADCHER_%d_", rgate) + buffus,
80 Form(
"PXDGatedModeMapADCHER %d ", rgate) + buff +
";U;V", 25, 0, 250, 192, 0, 768);
81 hGatedModeMapCutADCLER[std::make_pair(avxdid, rgate)] =
new TH2F(Form(
"PXDGatedModeMapCutADCLER_%d_", rgate) + buffus,
82 Form(
"PXDGatedModeMapCutADCLER %d ", rgate) + buff +
";U;V", 25, 0, 250, 192, 0, 768);
83 hGatedModeMapCutADCHER[std::make_pair(avxdid, rgate)] =
new TH2F(Form(
"PXDGatedModeMapCutADCHER_%d_", rgate) + buffus,
84 Form(
"PXDGatedModeMapCutADCHER %d ", rgate) + buff +
";U;V", 25, 0, 250, 192, 0, 768);
87 "PXDGatedModeProjLER " + buff +
";Gate;V", 96, 0, 96, 192, 0, 768);
89 "PXDGatedModeProjHER " + buff +
";Gate;V", 96, 0, 96, 192, 0, 768);
92 "PXDGatedModeMapSubLER " + buff +
";U;V-G", 25, 0, 250, 192, 0, 768);
94 "PXDGatedModeMapSubHER " + buff +
";U;V-G", 25, 0, 250, 192, 0, 768);
96 "PXDGatedModeMapAddLER " + buff +
";U;V+G", 25, 0, 250, 192, 0, 768);
98 "PXDGatedModeMapAddHER " + buff +
";U;V+G", 25, 0, 250, 192, 0, 768);
101 "PXDGatedModeProjADCLER " + buff +
";Gate;V", 96, 0, 96, 192, 0, 768);
103 "PXDGatedModeProjADCHER " + buff +
";Gate;V", 96, 0, 96, 192, 0, 768);
106 "PXDGatedModeMapSubADCLER " + buff +
";U;V-G", 25, 0, 250, 192, 0, 768);
108 "PXDGatedModeMapSubADCHER " + buff +
";U;V-G", 25, 0, 250, 192, 0, 768);
110 "PXDGatedModeMapAddADCLER " + buff +
";U;V+G", 25, 0, 250, 192, 0, 768);
112 "PXDGatedModeMapAddADCHER " + buff +
";U;V+G", 25, 0, 250, 192, 0, 768);
168 int bunch_inj = (bunch_trg - time_inj) % 1280;
169 if (bunch_inj < 0) bunch_inj += 1280;
170 int rgate = bunch_inj / (1280. / 96.);
178 auto charge = p.getCharge();
180 int v = int(p.getVCellID()) - rgate * 4;
182 int v2 = int(p.getVCellID()) + rgate * 4;
183 if (v2 >= 768) v2 -= 768;
187 h->Fill(p.getUCellID(), p.getVCellID());
191 h2->Fill(rgate, p.getVCellID());
195 h3->Fill(p.getUCellID(), v);
199 h4->Fill(p.getUCellID(), v2);
203 h5->Fill(p.getUCellID(), p.getVCellID(), p.getCharge());
207 h6->Fill(rgate, p.getVCellID(), p.getCharge());
211 h7->Fill(p.getUCellID(), v, p.getCharge());
215 h8->Fill(p.getUCellID(), v2, p.getCharge());
220 h->Fill(p.getUCellID(), p.getVCellID());
224 h2->Fill(rgate, p.getVCellID());
228 h3->Fill(p.getUCellID(), v);
232 h4->Fill(p.getUCellID(), v2);
236 h5->Fill(p.getUCellID(), p.getVCellID(), p.getCharge());
240 h6->Fill(rgate, p.getVCellID(), p.getCharge());
244 h7->Fill(p.getUCellID(), v, p.getCharge());
248 h8->Fill(p.getUCellID(), v2, p.getCharge());
257 h->Fill(p.getUCellID(), p.getVCellID());
261 h2->Fill(p.getUCellID(), p.getVCellID(), p.getCharge());
266 h->Fill(p.getUCellID(), p.getVCellID());
270 h2->Fill(p.getUCellID(), p.getVCellID(), p.getCharge());
281 h->Fill(p.getUCellID(), p.getVCellID());
285 h2->Fill(p.getUCellID(), p.getVCellID(), p.getCharge());
290 h->Fill(p.getUCellID(), p.getVCellID());
294 h2->Fill(p.getUCellID(), p.getVCellID(), p.getCharge());