Skip to content

Commit 12c221e

Browse files
author
Sushanta Tripathy
committed
Update in axis ranges for PID QA plots
1 parent b28372e commit 12c221e

1 file changed

Lines changed: 54 additions & 1 deletion

File tree

PWGCF/TwoParticleCorrelations/Tasks/nucleibalance.cxx

Lines changed: 54 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2042,7 +2042,8 @@ struct Lambdastarproxy {
20422042
{
20432043
AxisSpec massAxis{200, 1.4, 1.9, "M_{pK} (GeV/c^{2})"};
20442044
AxisSpec ptAxis{100, 0., 10., "p_{T} (GeV/c)"};
2045-
AxisSpec nsAxis{100, -10., 10., "n#sigma"};
2045+
AxisSpec nsAxis{500, -50., 50., "n#sigma"};
2046+
AxisSpec tofMatchAxis{2, -0.5, 1.5, "has TOF match"};
20462047
AxisSpec pAxis{100, 0., 10., "p (GeV/c)"};
20472048
AxisSpec etaAxis{80, -2., 2., "#eta"};
20482049
AxisSpec phiAxis{64, 0., o2::constants::math::TwoPI, "#varphi"};
@@ -2119,6 +2120,14 @@ struct Lambdastarproxy {
21192120
"TOF #beta vs p;p (GeV/c);#beta_{TOF};Counts",
21202121
HistType::kTH2F, {pAxis, betaAxis});
21212122

2123+
histos.add("hHasTOFVsP",
2124+
"TOF matching flag vs p;p (GeV/c);has TOF match;Counts",
2125+
HistType::kTH2F, {pAxis, tofMatchAxis});
2126+
2127+
histos.add("hHasTOFVsPt",
2128+
"TOF matching flag vs p_{T};p_{T} (GeV/c);has TOF match;Counts",
2129+
HistType::kTH2F, {ptAxis, tofMatchAxis});
2130+
21222131
// --- Per-species inclusive PID QA before final candidate PID cuts ---
21232132
// Species tagging here uses classifyPidSpecies() and is meant only for QA.
21242133
histos.add("hTPCdEdxVsP_Pi",
@@ -2147,6 +2156,36 @@ struct Lambdastarproxy {
21472156
"TOF #beta vs p (tagged d);p (GeV/c);#beta_{TOF};Counts",
21482157
HistType::kTH2F, {pAxis, betaAxis});
21492158

2159+
// Inclusive tagged nSigma QA before final candidate PID cuts: after track-quality cuts only.
2160+
// These are separate from the final-candidate PID QA histograms.
2161+
histos.add("hNsigmaTPCPionTaggedVsP",
2162+
"TPC n#sigma_{#pi} vs p for tagged #pi;p (GeV/c);n#sigma^{TPC}_{#pi};Counts",
2163+
HistType::kTH2F, {pAxis, nsAxis});
2164+
histos.add("hNsigmaTOFPionTaggedVsP",
2165+
"TOF n#sigma_{#pi} vs p for tagged #pi;p (GeV/c);n#sigma^{TOF}_{#pi};Counts",
2166+
HistType::kTH2F, {pAxis, nsAxis});
2167+
2168+
histos.add("hNsigmaTPCKaonTaggedVsP",
2169+
"TPC n#sigma_{K} vs p for tagged K;p (GeV/c);n#sigma^{TPC}_{K};Counts",
2170+
HistType::kTH2F, {pAxis, nsAxis});
2171+
histos.add("hNsigmaTOFKaonTaggedVsP",
2172+
"TOF n#sigma_{K} vs p for tagged K;p (GeV/c);n#sigma^{TOF}_{K};Counts",
2173+
HistType::kTH2F, {pAxis, nsAxis});
2174+
2175+
histos.add("hNsigmaTPCProtonTaggedVsP",
2176+
"TPC n#sigma_{p} vs p for tagged p;p (GeV/c);n#sigma^{TPC}_{p};Counts",
2177+
HistType::kTH2F, {pAxis, nsAxis});
2178+
histos.add("hNsigmaTOFProtonTaggedVsP",
2179+
"TOF n#sigma_{p} vs p for tagged p;p (GeV/c);n#sigma^{TOF}_{p};Counts",
2180+
HistType::kTH2F, {pAxis, nsAxis});
2181+
2182+
histos.add("hNsigmaTPCDeuteronTaggedVsP",
2183+
"TPC n#sigma_{d} vs p for tagged d;p (GeV/c);n#sigma^{TPC}_{d};Counts",
2184+
HistType::kTH2F, {pAxis, nsAxis});
2185+
histos.add("hNsigmaTOFDeuteronTaggedVsP",
2186+
"TOF n#sigma_{d} vs p for tagged d;p (GeV/c);n#sigma^{TOF}_{d};Counts",
2187+
HistType::kTH2F, {pAxis, nsAxis});
2188+
21502189
// --- MC QA (AO2D-MC mode) ---
21512190
histos.add("hMcPrimariesPtEta",
21522191
"MC charged physical primaries; p_{T} (GeV/c); #eta; Counts",
@@ -2615,10 +2654,18 @@ struct Lambdastarproxy {
26152654
fillTPCdEdxVsPIfAvailable(trk);
26162655
fillTOFBetaVsPIfAvailable(trk);
26172656

2657+
const double pForPidQA = static_cast<double>(trk.pt()) * std::cosh(static_cast<double>(trk.eta()));
2658+
const bool hasTofForPidQA = hasTOFMatch(trk);
2659+
2660+
histos.fill(HIST("hHasTOFVsP"), pForPidQA, hasTofForPidQA ? 1.0 : 0.0);
2661+
histos.fill(HIST("hHasTOFVsPt"), trk.pt(), hasTofForPidQA ? 1.0 : 0.0);
2662+
26182663
// Per-species PID-QA (tagged) histograms
26192664
const int sp = classifyPidSpecies(trk);
26202665
switch (sp) {
26212666
case 0: { // pion
2667+
histos.fill(HIST("hNsigmaTPCPionTaggedVsP"), pForPidQA, trk.tpcNSigmaPi());
2668+
histos.fill(HIST("hNsigmaTOFPionTaggedVsP"), pForPidQA, trk.tofNSigmaPi());
26222669
if constexpr (requires { trk.tpcSignal(); }) {
26232670
histos.fill(HIST("hTPCdEdxVsP_Pi"), trk.p(), trk.tpcSignal());
26242671
}
@@ -2632,6 +2679,8 @@ struct Lambdastarproxy {
26322679
break;
26332680
}
26342681
case 1: { // kaon
2682+
histos.fill(HIST("hNsigmaTPCKaonTaggedVsP"), pForPidQA, trk.tpcNSigmaKa());
2683+
histos.fill(HIST("hNsigmaTOFKaonTaggedVsP"), pForPidQA, trk.tofNSigmaKa());
26352684
if constexpr (requires { trk.tpcSignal(); }) {
26362685
histos.fill(HIST("hTPCdEdxVsP_K"), trk.p(), trk.tpcSignal());
26372686
}
@@ -2645,6 +2694,8 @@ struct Lambdastarproxy {
26452694
break;
26462695
}
26472696
case 2: { // proton
2697+
histos.fill(HIST("hNsigmaTPCProtonTaggedVsP"), pForPidQA, trk.tpcNSigmaPr());
2698+
histos.fill(HIST("hNsigmaTOFProtonTaggedVsP"), pForPidQA, trk.tofNSigmaPr());
26482699
if constexpr (requires { trk.tpcSignal(); }) {
26492700
histos.fill(HIST("hTPCdEdxVsP_P"), trk.p(), trk.tpcSignal());
26502701
}
@@ -2658,6 +2709,8 @@ struct Lambdastarproxy {
26582709
break;
26592710
}
26602711
case 3: { // deuteron
2712+
histos.fill(HIST("hNsigmaTPCDeuteronTaggedVsP"), pForPidQA, trk.tpcNSigmaDe());
2713+
histos.fill(HIST("hNsigmaTOFDeuteronTaggedVsP"), pForPidQA, trk.tofNSigmaDe());
26612714
if constexpr (requires { trk.tpcSignal(); }) {
26622715
histos.fill(HIST("hTPCdEdxVsP_D"), trk.p(), trk.tpcSignal());
26632716
}

0 commit comments

Comments
 (0)