Skip to content

Commit 4225f70

Browse files
RafRaf11alibuild
andauthored
[PWGLF] Update NucleiHistTask.cxx (#8634)
Co-authored-by: ALICE Action Bot <alibuild@cern.ch>
1 parent d7ff7f5 commit 4225f70

File tree

1 file changed

+101
-19
lines changed

1 file changed

+101
-19
lines changed

PWGLF/Tasks/Nuspex/NucleiHistTask.cxx

Lines changed: 101 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -55,12 +55,13 @@ struct NucleiHistTask {
5555
HistogramRegistry aHelium3_reg{"aHelium3", {}, OutputObjHandlingPolicy::AnalysisObject, true, true};
5656
HistogramRegistry Helium4_reg{"Helium4", {}, OutputObjHandlingPolicy::AnalysisObject, true, true};
5757
HistogramRegistry aHelium4_reg{"aHelium4", {}, OutputObjHandlingPolicy::AnalysisObject, true, true};
58+
OutputObj<TH1I> histTrackcuts_data{TH1I("histTrackcuts_data", "Entires;Track cut", 18, 0, 18)};
5859

5960
// MC
6061
HistogramRegistry MC_recon_reg{"MC_particles_reco", {}, OutputObjHandlingPolicy::AnalysisObject, true, true};
61-
OutputObj<TH1I> histPDG{TH1I("PDG", "PDG;PDG code", 20, 0.0, 20.0)};
62-
OutputObj<TH1I> histTrackcuts_data{TH1I("histTrackcuts_data", "Entires;Track cut", 15, 0, 15)};
63-
OutputObj<TH1I> histTrackcuts_MC{TH1I("histTrackcuts_MC", "Entires;Track cut", 15, 0, 15)};
62+
HistogramRegistry MC_DCA{"MC_DCA", {}, OutputObjHandlingPolicy::AnalysisObject, true, true};
63+
OutputObj<TH1I> histPDG{TH1I("PDG", "PDG;PDG code", 18, 0.0, 18)};
64+
OutputObj<TH1I> histTrackcuts_MC{TH1I("histTrackcuts_MC", "Entires;Track cut", 18, 0, 18)};
6465

6566
void init(o2::framework::InitContext&)
6667
{
@@ -85,6 +86,20 @@ struct NucleiHistTask {
8586
histTrackcuts_data->GetXaxis()->SetBinLabel(13, "GoldenChi2 cut passed");
8687

8788
// +++++++++++++++++++++ MC ++++++++++++++++++++++++
89+
histPDG->GetXaxis()->SetBinLabel(1, "#pi^{+}");
90+
histPDG->GetXaxis()->SetBinLabel(2, "#pi^{-}");
91+
histPDG->GetXaxis()->SetBinLabel(3, "K^{+}");
92+
histPDG->GetXaxis()->SetBinLabel(4, "K^{-}");
93+
histPDG->GetXaxis()->SetBinLabel(5, "p");
94+
histPDG->GetXaxis()->SetBinLabel(6, "#bar{p}");
95+
histPDG->GetXaxis()->SetBinLabel(7, "d");
96+
histPDG->GetXaxis()->SetBinLabel(8, "#bar{d}");
97+
histPDG->GetXaxis()->SetBinLabel(9, "t");
98+
histPDG->GetXaxis()->SetBinLabel(10, "#bar{t}");
99+
histPDG->GetXaxis()->SetBinLabel(11, "^{3}He");
100+
histPDG->GetXaxis()->SetBinLabel(12, "^{3}#bar{He}");
101+
histPDG->GetXaxis()->SetBinLabel(13, "^{4}He");
102+
histPDG->GetXaxis()->SetBinLabel(14, "^{4}#bar{He}");
88103
histTrackcuts_MC->GetXaxis()->SetBinLabel(1, "Events read");
89104
histTrackcuts_MC->GetXaxis()->SetBinLabel(2, "Prim. particle. sel. passed");
90105
histTrackcuts_MC->GetXaxis()->SetBinLabel(3, "Rap. cut passed");
@@ -414,6 +429,13 @@ struct NucleiHistTask {
414429
MC_recon_reg.add("histTofNsigmaDataaHe", "TOF nSigma (^{3}#bar{He})", HistType::kTH2F, {pAxis, {160, -20., +20., "n#sigma_{^{3}He}"}});
415430
MC_recon_reg.add("histTofNsigmaDataAl", "TOF nSigma (^{4}He)", HistType::kTH2F, {pAxis, {160, -20., +20., "n#sigma_{^{4}He}"}});
416431
MC_recon_reg.add("histTofNsigmaDataaAl", "TOF nSigma (^{4}#bar{He})", HistType::kTH2F, {pAxis, {160, -20., +20., "n#sigma_{^{4}He}"}});
432+
433+
MC_DCA.add("histDCA_prim", "DCA xy", HistType::kTH3F, {ptAxis, {250, -0.5, 0.5, "dca"}, PDGBINNING});
434+
MC_DCA.add("histDCAz_prim", "DCA z", HistType::kTH3F, {ptAxis, {1000, -2.0, 2.0, "dca"}, PDGBINNING});
435+
MC_DCA.add("histDCA_weak", "DCA xy", HistType::kTH3F, {ptAxis, {250, -0.5, 0.5, "dca"}, PDGBINNING});
436+
MC_DCA.add("histDCAz_weak", "DCA z", HistType::kTH3F, {ptAxis, {1000, -2.0, 2.0, "dca"}, PDGBINNING});
437+
MC_DCA.add("histDCA_mat", "DCA xy", HistType::kTH3F, {ptAxis, {250, -0.5, 0.5, "dca"}, PDGBINNING});
438+
MC_DCA.add("histDCAz_mat", "DCA z", HistType::kTH3F, {ptAxis, {1000, -2.0, 2.0, "dca"}, PDGBINNING});
417439
}
418440

419441
// Configurables
@@ -1391,70 +1413,130 @@ struct NucleiHistTask {
13911413
for (auto& track : tracks) {
13921414
histTrackcuts_MC->AddBinContent(1);
13931415
const auto particle = track.mcParticle();
1416+
1417+
int pdgbin = 0;
1418+
switch (particle.pdgCode()) {
1419+
case +211:
1420+
pdgbin = 0;
1421+
break;
1422+
case -211:
1423+
pdgbin = 1;
1424+
break;
1425+
case +321:
1426+
pdgbin = 2;
1427+
break;
1428+
case -321:
1429+
pdgbin = 3;
1430+
break;
1431+
case +2212:
1432+
pdgbin = 4;
1433+
break;
1434+
case -2212:
1435+
pdgbin = 5;
1436+
break;
1437+
case +1000010020:
1438+
pdgbin = 6;
1439+
break;
1440+
case -1000010020:
1441+
pdgbin = 7;
1442+
break;
1443+
case +1000010030:
1444+
pdgbin = 8;
1445+
break;
1446+
case -1000010030:
1447+
pdgbin = 9;
1448+
break;
1449+
case +1000020030:
1450+
pdgbin = 10;
1451+
break;
1452+
case -1000020030:
1453+
pdgbin = 11;
1454+
break;
1455+
case +1000020040:
1456+
pdgbin = 12;
1457+
break;
1458+
case -1000020040:
1459+
pdgbin = 13;
1460+
break;
1461+
default:
1462+
pdgbin = -1;
1463+
break;
1464+
}
1465+
1466+
if (particle.isPhysicalPrimary()) {
1467+
if ((particle.pdgCode() == 1000020030) || (particle.pdgCode() == -1000020030) || (particle.pdgCode() == 1000020040) || (particle.pdgCode() == -1000020040)) {
1468+
MC_DCA.fill(HIST("histDCA_prim"), track.pt() * 2.0, track.dcaXY(), pdgbin);
1469+
MC_DCA.fill(HIST("histDCAz_prim"), track.pt() * 2.0, track.dcaZ(), pdgbin);
1470+
} else {
1471+
MC_DCA.fill(HIST("histDCA_prim"), track.pt(), track.dcaXY(), pdgbin);
1472+
MC_DCA.fill(HIST("histDCAz_prim"), track.pt(), track.dcaZ(), pdgbin);
1473+
}
1474+
} else if (particle.has_mothers()) {
1475+
if ((particle.pdgCode() == 1000020030) || (particle.pdgCode() == -1000020030) || (particle.pdgCode() == 1000020040) || (particle.pdgCode() == -1000020040)) {
1476+
MC_DCA.fill(HIST("histDCA_weak"), track.pt() * 2.0, track.dcaXY(), pdgbin);
1477+
MC_DCA.fill(HIST("histDCAz_weak"), track.pt() * 2.0, track.dcaZ(), pdgbin);
1478+
} else {
1479+
MC_DCA.fill(HIST("histDCA_weak"), track.pt(), track.dcaXY(), pdgbin);
1480+
MC_DCA.fill(HIST("histDCAz_weak"), track.pt(), track.dcaZ(), pdgbin);
1481+
}
1482+
} else {
1483+
if ((particle.pdgCode() == 1000020030) || (particle.pdgCode() == -1000020030) || (particle.pdgCode() == 1000020040) || (particle.pdgCode() == -1000020040)) {
1484+
MC_DCA.fill(HIST("histDCA_mat"), track.pt() * 2.0, track.dcaXY(), pdgbin);
1485+
MC_DCA.fill(HIST("histDCAz_mat"), track.pt() * 2.0, track.dcaZ(), pdgbin);
1486+
} else {
1487+
MC_DCA.fill(HIST("histDCA_mat"), track.pt(), track.dcaXY(), pdgbin);
1488+
MC_DCA.fill(HIST("histDCAz_mat"), track.pt(), track.dcaZ(), pdgbin);
1489+
}
1490+
}
1491+
13941492
if (!particle.isPhysicalPrimary())
13951493
continue;
13961494
histTrackcuts_MC->AddBinContent(2);
13971495

1398-
int pdgbin = 0;
13991496
switch (particle.pdgCode()) {
14001497
case +211:
14011498
histPDG->AddBinContent(1);
1402-
pdgbin = 0;
14031499
break;
14041500
case -211:
14051501
histPDG->AddBinContent(2);
1406-
pdgbin = 1;
14071502
break;
14081503
case +321:
14091504
histPDG->AddBinContent(3);
1410-
pdgbin = 2;
14111505
break;
14121506
case -321:
14131507
histPDG->AddBinContent(4);
1414-
pdgbin = 3;
14151508
break;
14161509
case +2212:
14171510
histPDG->AddBinContent(5);
1418-
pdgbin = 4;
14191511
break;
14201512
case -2212:
14211513
histPDG->AddBinContent(6);
1422-
pdgbin = 5;
14231514
break;
14241515
case +1000010020:
14251516
histPDG->AddBinContent(7);
1426-
pdgbin = 6;
14271517
break;
14281518
case -1000010020:
14291519
histPDG->AddBinContent(8);
1430-
pdgbin = 7;
14311520
break;
14321521
case +1000010030:
14331522
histPDG->AddBinContent(9);
1434-
pdgbin = 8;
14351523
break;
14361524
case -1000010030:
14371525
histPDG->AddBinContent(10);
1438-
pdgbin = 9;
14391526
break;
14401527
case +1000020030:
14411528
histPDG->AddBinContent(11);
1442-
pdgbin = 10;
14431529
break;
14441530
case -1000020030:
14451531
histPDG->AddBinContent(12);
1446-
pdgbin = 11;
14471532
break;
14481533
case +1000020040:
14491534
histPDG->AddBinContent(13);
1450-
pdgbin = 12;
14511535
break;
14521536
case -1000020040:
14531537
histPDG->AddBinContent(14);
1454-
pdgbin = 13;
14551538
break;
14561539
default:
1457-
pdgbin = -1;
14581540
break;
14591541
}
14601542

0 commit comments

Comments
 (0)