Skip to content

Commit 0441084

Browse files
committed
Update
1 parent 3247daf commit 0441084

File tree

1 file changed

+41
-16
lines changed

1 file changed

+41
-16
lines changed

ALICE3/TableProducer/OTF/onTheFlyTofPid.cxx

Lines changed: 41 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -202,14 +202,14 @@ struct OnTheFlyTofPid {
202202
histos.add("iTOF/h2dTrackLengthInnerVsPt", "h2dTrackLengthInnerVsPt", kTH2F, {axisMomentumSmall, axisTrackLengthInner});
203203
histos.add("iTOF/h2dTrackLengthInnerRecoVsPt", "h2dTrackLengthInnerRecoVsPt", kTH2F, {axisMomentumSmall, axisTrackLengthInner});
204204
histos.add("iTOF/h2dDeltaTrackLengthInnerVsPt", "h2dDeltaTrackLengthInnerVsPt", kTH2F, {axisMomentumSmall, axisTrackDeltaLength});
205-
histos.add("iTOF/h2HitMap", "h2HitMap", kTH2F, {{100, -simConfig.innerTOFLength / 2, simConfig.innerTOFLength / 2}, {100, 0, simConfig.innerTOFRadius * 2 * M_PI}});
205+
histos.add("iTOF/h2HitMap", "h2HitMap", kTH2F, {{1000, -simConfig.innerTOFLength / 2, simConfig.innerTOFLength / 2}, {1000, 0, simConfig.innerTOFRadius * 2 * M_PI}});
206206

207207
histos.add("oTOF/h2dVelocityVsMomentumOuter", "h2dVelocityVsMomentumOuter", kTH2F, {axisMomentum, axisVelocity});
208208
histos.add("oTOF/h2dVelocityVsRigidityOuter", "h2dVelocityVsRigidityOuter", kTH2F, {axisRigidity, axisVelocity});
209209
histos.add("oTOF/h2dTrackLengthOuterVsPt", "h2dTrackLengthOuterVsPt", kTH2F, {axisMomentumSmall, axisTrackLengthOuter});
210210
histos.add("oTOF/h2dTrackLengthOuterRecoVsPt", "h2dTrackLengthOuterRecoVsPt", kTH2F, {axisMomentumSmall, axisTrackLengthOuter});
211211
histos.add("oTOF/h2dDeltaTrackLengthOuterVsPt", "h2dDeltaTrackLengthOuterVsPt", kTH2F, {axisMomentumSmall, axisTrackDeltaLength});
212-
histos.add("oTOF/h2HitMap", "h2HitMap", kTH2F, {{100, -simConfig.outerTOFLength / 2, simConfig.outerTOFLength / 2}, {100, 0, simConfig.outerTOFRadius * 2 * M_PI}});
212+
histos.add("oTOF/h2HitMap", "h2HitMap", kTH2F, {{1000, -simConfig.outerTOFLength / 2, simConfig.outerTOFLength / 2}, {1000, 0, simConfig.outerTOFRadius * 2 * M_PI}});
213213

214214
const AxisSpec axisPt{static_cast<int>(plotsConfig.nBinsP), 0.0f, +4.0f, "#it{p}_{T} (GeV/#it{c})"};
215215
const AxisSpec axisEta{static_cast<int>(plotsConfig.nBinsEta), -2.0f, +2.0f, "#eta"};
@@ -261,14 +261,31 @@ struct OnTheFlyTofPid {
261261
const float fractionInactive;
262262
const float magField;
263263

264-
// TH2F* hHitMapInPixel = nullptr;
265-
// TH2F* hHitMap = nullptr;
266264
TAxis* axisZ = nullptr;
267265
TAxis* axisRPhi = nullptr;
268266
TAxis* axisInPixelZ = nullptr;
269267
TAxis* axisInPixelRPhi = nullptr;
270268

269+
TH2F* hHitMapInPixel = nullptr;
270+
TH2F* hHitMapInPixelBefore = nullptr;
271+
TH2F* hHitMap = nullptr;
272+
271273
public:
274+
~TOFLayerEfficiency()
275+
{
276+
hHitMap->SaveAs(Form("/tmp/%s.png", hHitMap->GetName()));
277+
hHitMapInPixel->SaveAs(Form("/tmp/%s.png", hHitMapInPixel->GetName()));
278+
hHitMapInPixelBefore->SaveAs(Form("/tmp/%s.png", hHitMapInPixelBefore->GetName()));
279+
280+
delete axisZ;
281+
delete axisRPhi;
282+
delete axisInPixelZ;
283+
delete axisInPixelRPhi;
284+
delete hHitMap;
285+
delete hHitMapInPixel;
286+
delete hHitMapInPixelBefore;
287+
}
288+
272289
TOFLayerEfficiency(float r, float l, std::array<float, 2> pDimensions, float fIA, float m)
273290
: layerRadius(r), layerLength(l), pixelDimensionZ(pDimensions[0]), pixelDimensionRPhi(pDimensions[1]), fractionInactive(fIA), magField(m)
274291
{
@@ -277,15 +294,22 @@ struct OnTheFlyTofPid {
277294
axisZ = new TAxis(static_cast<int>(layerLength / pixelDimensionZ), -layerLength / 2, layerLength);
278295
axisRPhi = new TAxis(static_cast<int>(circumference / pixelDimensionRPhi), 0.f, circumference);
279296

280-
const float inactiveBorderRPhi = pixelDimensionRPhi * std::sqrt(fractionInactive);
281-
const float inactiveBorderZ = pixelDimensionZ * std::sqrt(fractionInactive);
282-
const double arrayRPhi[4] = {0.f, inactiveBorderRPhi, pixelDimensionRPhi - inactiveBorderRPhi, pixelDimensionRPhi};
297+
const float inactiveBorderRPhi = pixelDimensionRPhi * std::sqrt(fractionInactive) / 2;
298+
const float inactiveBorderZ = pixelDimensionZ * std::sqrt(fractionInactive) / 2;
299+
const double arrayRPhi[4] = {-pixelDimensionRPhi / 2, -pixelDimensionRPhi / 2 + inactiveBorderRPhi, pixelDimensionRPhi / 2 - inactiveBorderRPhi, pixelDimensionRPhi / 2};
300+
for (int i = 0; i < 4; i++) {
301+
LOG(info) << "arrayRPhi[" << i << "] = " << arrayRPhi[i];
302+
}
283303
axisInPixelRPhi = new TAxis(3, arrayRPhi);
284-
const double arrayZ[4] = {0.f, inactiveBorderZ, pixelDimensionZ - inactiveBorderZ, pixelDimensionZ};
304+
const double arrayZ[4] = {-pixelDimensionZ / 2, -pixelDimensionZ / 2 + inactiveBorderZ, pixelDimensionZ / 2 - inactiveBorderZ, pixelDimensionZ / 2};
305+
for (int i = 0; i < 4; i++) {
306+
LOG(info) << "arrayZ[" << i << "] = " << arrayZ[i];
307+
}
285308
axisInPixelZ = new TAxis(3, arrayZ);
286309

287-
// hHitMap = new TH2F(Form("hHitMap_R%.0f", layerRadius), "HitMap;z (cm); r#phi (cm)", 1000, -1000, 1000, 1000, -1000, 1000);
288-
// hHitMapInPixel = new TH2F(Form("hHitMapInPixel_R%.0f", layerRadius), "HitMapInPixel;z (cm); r#phi (cm)", 1000, -10, 10, 1000, -10, 10);
310+
hHitMap = new TH2F(Form("hHitMap_R%.0f", layerRadius), "HitMap;z (cm); r#phi (cm)", 1000, -1000, 1000, 1000, -1000, 1000);
311+
hHitMapInPixel = new TH2F(Form("hHitMapInPixel_R%.0f", layerRadius), "HitMapInPixel;z (cm); r#phi (cm)", 1000, -10, 10, 1000, -10, 10);
312+
hHitMapInPixelBefore = new TH2F(Form("hHitMapInPixelBefore_R%.0f", layerRadius), "HitMapInPixel;z (cm); r#phi (cm)", 1000, -10, 10, 1000, -10, 10);
289313
}
290314

291315
bool isInTOFActiveArea(std::array<float, 3> hitPosition)
@@ -333,22 +357,23 @@ struct OnTheFlyTofPid {
333357
if (std::abs(localZ - axisZ->GetBinCenter(pixelIndexZ)) > axisZ->GetBinWidth(pixelIndexZ)) {
334358
// LOG(warning) << "Local hit difference in z is bigger than the pixel size";
335359
}
360+
hHitMapInPixelBefore->Fill(localZ, localRPhi);
336361
switch (axisInPixelRPhi->FindBin(localRPhi)) {
362+
case 0:
337363
case 1:
338364
case 3:
365+
case 4:
339366
return false;
340367
}
341368
switch (axisInPixelZ->FindBin(localZ)) {
369+
case 0:
342370
case 1:
343371
case 3:
372+
case 4:
344373
return false;
345374
}
346-
// hHitMap->Fill(z, rphi);
347-
// hHitMapInPixel->Fill(localZ, localRPhi);
348-
// if (static_cast<int>(hHitMapInPixel->GetEntries()) % 100000 == 0) {
349-
// hHitMap->SaveAs(Form("/tmp/%s.png", hHitMap->GetName()));
350-
// hHitMapInPixel->SaveAs(Form("/tmp/%s.png", hHitMapInPixel->GetName()));
351-
// }
375+
hHitMapInPixel->Fill(localZ, localRPhi);
376+
hHitMap->Fill(z, rphi);
352377
return true;
353378
}
354379

0 commit comments

Comments
 (0)