Skip to content

Commit 08bed14

Browse files
committed
Change track selection optimized for electrons V2
1 parent b7cd452 commit 08bed14

File tree

1 file changed

+60
-29
lines changed

1 file changed

+60
-29
lines changed

PWGLF/Tasks/Nuspex/piKpRAA.cxx

Lines changed: 60 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,9 @@ std::array<std::shared_ptr<TH3>, kNEtaHists> dEdxPrV0{};
7777
std::array<std::shared_ptr<TH3>, kNEtaHists> dEdxElV0{};
7878
std::array<std::shared_ptr<TH3>, kNEtaHists> dEdxPiTOF{};
7979
std::array<std::shared_ptr<TH3>, kNEtaHists> dEdx{};
80+
std::array<std::shared_ptr<TH2>, kNEtaHists> nClVsdEdxPiV0{};
81+
std::array<std::shared_ptr<TH2>, kNEtaHists> nClVsdEdxElV0{};
82+
std::array<std::shared_ptr<TH2>, kNEtaHists> nClVsdEdxPrV0{};
8083
std::array<std::shared_ptr<TH2>, kNEtaHists> pTVsP{};
8184
std::array<std::shared_ptr<TH2>, kNEtaHists> nClVsP{};
8285
std::array<std::shared_ptr<TH2>, kNEtaHists> nClVsPElV0{};
@@ -86,6 +89,9 @@ std::array<std::shared_ptr<TProfile>, kNEtaHists> nClVsPp{};
8689
std::array<std::shared_ptr<TProfile>, kNEtaHists> nClVsPpElV0{};
8790
std::array<std::shared_ptr<TProfile>, kNEtaHists> nClVsPpPiV0{};
8891
std::array<std::shared_ptr<TProfile>, kNEtaHists> nClVsPpPrV0{};
92+
std::array<std::shared_ptr<TProfile>, kNEtaHists> nClVsdEdxpPiV0{};
93+
std::array<std::shared_ptr<TProfile>, kNEtaHists> nClVsdEdxpElV0{};
94+
std::array<std::shared_ptr<TProfile>, kNEtaHists> nClVsdEdxpPrV0{};
8995

9096
struct PiKpRAA {
9197

@@ -342,24 +348,25 @@ struct PiKpRAA {
342348

343349
registry.add("NclFindable", ";;Findable Ncl TPC", kTH2F, {axisPtNcl, axisNcl});
344350
registry.add("NclFindablep", ";;Findable #LTNcl#GT TPC", kTProfile, {axisPtNcl});
345-
registry.add("NclFoundVsPhipBeforeCut", Form("Found #LTNcl#GT TPC;%s (GeV/#it{c});#varphi", titlePorPt.data()), kTProfile2D, {{{axisXPhiCut}, {350, 0.0, 0.35}}});
346-
registry.add("NclFoundVsPhipBeforeCutPID", Form("#LTNcl#GT used for PID;%s (GeV/#it{c});#varphi", titlePorPt.data()), kTProfile2D, {{{axisXPhiCut}, {350, 0.0, 0.35}}});
347-
registry.add("NclFoundVsPhipAfterCut", Form("Found #LTNcl#GT TPC;%s (GeV/#it{c});#varphi", titlePorPt.data()), kTProfile2D, {{{axisXPhiCut}, {350, 0.0, 0.35}}});
348-
registry.add("NclFoundVsPhipAfterCutPID", Form("#LTNcl#GT used for PID;%s (GeV/#it{c});#varphi", titlePorPt.data()), kTProfile2D, {{{axisXPhiCut}, {350, 0.0, 0.35}}});
351+
registry.add("NclVsPhipBeforeCut", Form("Found #LTNcl#GT TPC;%s (GeV/#it{c});#varphi", titlePorPt.data()), kTProfile2D, {{{axisXPhiCut}, {350, 0.0, 0.35}}});
352+
registry.add("NclVsPhipBeforeCutPID", Form("#LTNcl#GT used for PID;%s (GeV/#it{c});#varphi", titlePorPt.data()), kTProfile2D, {{{axisXPhiCut}, {350, 0.0, 0.35}}});
353+
registry.add("NclVsPhipAfterCut", Form("Found #LTNcl#GT TPC;%s (GeV/#it{c});#varphi", titlePorPt.data()), kTProfile2D, {{{axisXPhiCut}, {350, 0.0, 0.35}}});
354+
registry.add("NclVsPhipAfterCutPID", Form("#LTNcl#GT used for PID;%s (GeV/#it{c});#varphi", titlePorPt.data()), kTProfile2D, {{{axisXPhiCut}, {350, 0.0, 0.35}}});
349355
registry.add("NclVsEta", ";#eta;Found Ncl TPC", kTH2F, {{{axisEta}, {161, -0.5, 160.5}}});
350356
registry.add("NclVsEtaPID", ";#eta;Ncl used for PID", kTH2F, {{{axisEta}, {161, -0.5, 160.5}}});
351357
registry.add("NclVsEtap", ";#eta;Found #LTNcl#GT TPC", kTProfile, {axisEta});
352358
registry.add("NclVsEtaPIDp", ";#eta;#LTNcl#GT used for PID", kTProfile, {axisEta});
353359

354-
registry.add("NclVsEtaPiMIP", "MIP #pi^{+} + #pi^{-} (0.4 < #it{p} < 0.6 GeV/#it{c}, 40 < dE/dx < 60);#eta; Found Ncl TPC", kTH2F, {{{axisEta}, {161, -0.5, 160.5}}});
355-
registry.add("NclVsEtaPiMIPp", "MIP #pi^{+} + #pi^{-} (0.4 < #it{p} < 0.6 GeV/#it{c}, 40 < dE/dx < 60);#eta; Found #LTNcl#GT TPC", kTProfile, {axisEta});
356-
registry.add("NclVsEtaPiV0", ";#eta; Found Ncl TPC", kTH2F, {axisEta, axisNcl});
357-
registry.add("NclVsEtaPiV0p", ";#eta; Found #LTNcl#GT TPC", kTProfile, {axisEta});
358-
registry.add("NclVsEtaPrV0", ";#eta; Found Ncl TPC", kTH2F, {axisEta, axisNcl});
359-
registry.add("NclVsEtaPrV0p", ";#eta; Found #LTNcl#GT TPC", kTProfile, {axisEta});
360-
registry.add("NclVsEtaElV0", ";#eta; Found Ncl TPC", kTH2F, {axisEta, axisNcl});
361-
registry.add("NclVsEtaElV0p", ";#eta; Found #LTNcl#GT TPC", kTProfile, {axisEta});
360+
registry.add("NclVsEtaPiMIP", "MIP #pi^{+} + #pi^{-} (0.4 < #it{p} < 0.6 GeV/#it{c}, 40 < dE/dx < 60);#eta;Ncl TPC", kTH2F, {{{axisEta}, {161, -0.5, 160.5}}});
361+
registry.add("NclVsEtaPiMIPp", "MIP #pi^{+} + #pi^{-} (0.4 < #it{p} < 0.6 GeV/#it{c}, 40 < dE/dx < 60);#eta;#LTNcl#GT TPC", kTProfile, {axisEta});
362+
registry.add("NclVsEtaPiV0", ";#eta;Ncl TPC", kTH2F, {axisEta, axisNcl});
363+
registry.add("NclVsEtaPiV0p", ";#eta;#LTNcl#GT TPC", kTProfile, {axisEta});
364+
registry.add("NclVsEtaPrV0", ";#eta;Ncl TPC", kTH2F, {axisEta, axisNcl});
365+
registry.add("NclVsEtaPrV0p", ";#eta;#LTNcl#GT TPC", kTProfile, {axisEta});
366+
registry.add("NclVsEtaElV0", ";#eta;Ncl TPC", kTH2F, {axisEta, axisNcl});
367+
registry.add("NclVsEtaElV0p", ";#eta;#LTNcl#GT TPC", kTProfile, {axisEta});
362368

369+
registry.add("EtaVsPhi", ";#eta;#varphi;", kTH2F, {{axisEta}, {100, 0, 2 * PI}});
363370
registry.add("EtaVsYK0s", ";#eta;#it{y};", kTH2F, {axisEta, axisY});
364371
registry.add("EtaVsYPiL", ";#eta;#it{y};", kTH2F, {axisEta, axisY});
365372
registry.add("EtaVsYPrL", ";#eta;#it{y};", kTH2F, {axisEta, axisY});
@@ -387,14 +394,20 @@ struct PiKpRAA {
387394
dEdxPrV0[i] = registry.add<TH3>(Form("dEdxPrV0_%s", endingEta[i]), Form("p + #bar{p}, %s;Momentum (GeV/#it{c});dE/dx;", latexEta[i]), kTH3F, {axisPtV0s, axisdEdx, axisCent});
388395
dEdxElV0[i] = registry.add<TH3>(Form("dEdxElV0_%s", endingEta[i]), Form("e^{+} + e^{-}, %s;Momentum (GeV/#it{c});dE/dx;", latexEta[i]), kTH3F, {axisPtV0s, axisdEdx, axisCent});
389396
dEdxPiTOF[i] = registry.add<TH3>(Form("dEdxPiTOF_%s", endingEta[i]), Form("#pi^{+} + #pi^{-}, %s;Momentum (GeV/#it{c});dE/dx;", latexEta[i]), kTH3F, {axisPtV0s, axisdEdx, axisCent});
390-
nClVsP[i] = registry.add<TH2>(Form("NclFound_%s", endingEta[i]), Form("%s;;Found Ncl TPC", latexEta[i]), kTH2F, {axisPtNcl, axisNcl});
391-
nClVsPElV0[i] = registry.add<TH2>(Form("NclFoundElV0_%s", endingEta[i]), Form("%s;;Found Ncl TPC", latexEta[i]), kTH2F, {axisPtNcl, axisNcl});
392-
nClVsPPiV0[i] = registry.add<TH2>(Form("NclFoundPiV0_%s", endingEta[i]), Form("%s;;Found Ncl TPC", latexEta[i]), kTH2F, {axisPtNcl, axisNcl});
393-
nClVsPPrV0[i] = registry.add<TH2>(Form("NclFoundPrV0_%s", endingEta[i]), Form("%s;;Found Ncl TPC", latexEta[i]), kTH2F, {axisPtNcl, axisNcl});
394-
nClVsPp[i] = registry.add<TProfile>(Form("NclFoundp_%s", endingEta[i]), Form("%s;;Found #LT#it{N}_{cl}#GT TPC", latexEta[i]), kTProfile, {axisPtNcl});
395-
nClVsPpElV0[i] = registry.add<TProfile>(Form("NclFoundpElV0_%s", endingEta[i]), Form("%s;;Found #LT#it{N}_{cl}#GT TPC", latexEta[i]), kTProfile, {axisPtNcl});
396-
nClVsPpPiV0[i] = registry.add<TProfile>(Form("NclFoundpPiV0_%s", endingEta[i]), Form("%s;;Found #LT#it{N}_{cl}#GT TPC", latexEta[i]), kTProfile, {axisPtNcl});
397-
nClVsPpPrV0[i] = registry.add<TProfile>(Form("NclFoundpPrV0_%s", endingEta[i]), Form("%s;;Found #LT#it{N}_{cl}#GT TPC", latexEta[i]), kTProfile, {axisPtNcl});
397+
nClVsdEdxPiV0[i] = registry.add<TH2>(Form("NclVsdEdxPiV0_%s", endingEta[i]), Form("%s;#it{N}_{cl} used for PID;dE/dx;", latexEta[i]), kTH2F, {axisNcl, axisdEdx});
398+
nClVsdEdxElV0[i] = registry.add<TH2>(Form("NclVsdEdxElV0_%s", endingEta[i]), Form("%s;#it{N}_{cl} used for PID;dE/dx;", latexEta[i]), kTH2F, {axisNcl, axisdEdx});
399+
nClVsdEdxPrV0[i] = registry.add<TH2>(Form("NclVsdEdxPrV0_%s", endingEta[i]), Form("%s;#it{N}_{cl} used for PID;dE/dx;", latexEta[i]), kTH2F, {axisNcl, axisdEdx});
400+
nClVsP[i] = registry.add<TH2>(Form("NclVsPPrimaries_%s", endingEta[i]), Form("%s;;Ncl TPC", latexEta[i]), kTH2F, {axisPtNcl, axisNcl});
401+
nClVsPElV0[i] = registry.add<TH2>(Form("NclVsPElV0_%s", endingEta[i]), Form("%s;;Ncl TPC", latexEta[i]), kTH2F, {axisPtNcl, axisNcl});
402+
nClVsPPiV0[i] = registry.add<TH2>(Form("NclVsPPiV0_%s", endingEta[i]), Form("%s;;Ncl TPC", latexEta[i]), kTH2F, {axisPtNcl, axisNcl});
403+
nClVsPPrV0[i] = registry.add<TH2>(Form("NclVsPPrV0_%s", endingEta[i]), Form("%s;;Ncl TPC", latexEta[i]), kTH2F, {axisPtNcl, axisNcl});
404+
nClVsPp[i] = registry.add<TProfile>(Form("NclVsPrimariesp_%s", endingEta[i]), Form("%s;;#LT#it{N}_{cl}#GT TPC", latexEta[i]), kTProfile, {axisPtNcl});
405+
nClVsPpElV0[i] = registry.add<TProfile>(Form("NclVsPElV0p_%s", endingEta[i]), Form("%s;;#LT#it{N}_{cl}#GT TPC", latexEta[i]), kTProfile, {axisPtNcl});
406+
nClVsPpPiV0[i] = registry.add<TProfile>(Form("NclVsPPiV0p_%s", endingEta[i]), Form("%s;;#LT#it{N}_{cl}#GT TPC", latexEta[i]), kTProfile, {axisPtNcl});
407+
nClVsPpPrV0[i] = registry.add<TProfile>(Form("NclVsPPrV0p_%s", endingEta[i]), Form("%s;;#LT#it{N}_{cl}#GT TPC", latexEta[i]), kTProfile, {axisPtNcl});
408+
nClVsdEdxpElV0[i] = registry.add<TProfile>(Form("NclVsdEdxElV0p_%s", endingEta[i]), Form("%s;;#LTd#it{E}/d#it{x}#GT", latexEta[i]), kTProfile, {axisNcl});
409+
nClVsdEdxpPiV0[i] = registry.add<TProfile>(Form("NclVsdEdxPiV0p_%s", endingEta[i]), Form("%s;;#LTd#it{E}/d#it{x}#GT", latexEta[i]), kTProfile, {axisNcl});
410+
nClVsdEdxpPrV0[i] = registry.add<TProfile>(Form("NclVsdEdxPrV0p_%s", endingEta[i]), Form("%s;;#LTd#it{E}/d#it{x}#GT", latexEta[i]), kTProfile, {axisNcl});
398411
}
399412
}
400413

@@ -424,19 +437,20 @@ struct PiKpRAA {
424437

425438
if (applyNchSel.value) {
426439
LOG(info) << "\tLoading Nch-based selections!";
427-
LOG(info) << "\t pathMeanNch=" << pathMeanNch.value;
428-
LOG(info) << "\t pathSigmaNch=" << pathSigmaNch.value;
440+
LOG(info) << "\tpathMeanNch=" << pathMeanNch.value;
441+
LOG(info) << "\tpathSigmaNch=" << pathSigmaNch.value;
429442
}
430443

431444
if (v0Selections.applyPhiCut) {
432445
LOG(info) << "\tLoading Phi cut!";
433-
LOG(info) << "\t pathPhiCutLow=" << pathPhiCutLow.value;
434-
LOG(info) << "\t pathPhiCutHigh=" << pathPhiCutHigh.value;
446+
LOG(info) << "\tpathPhiCutLow=" << pathPhiCutLow.value;
447+
LOG(info) << "\tpathPhiCutHigh=" << pathPhiCutHigh.value;
435448
}
436449

437450
if (v0Selections.applyEtaCal) {
438451
LOG(info) << "\tLoading Eta Cal!";
439-
LOG(info) << "\t pathEtaCal=" << pathEtaCal.value;
452+
LOG(info) << "\tpathEtaCal=" << pathEtaCal.value;
453+
LOG(info) << "\tpathEtaCalPlateau=" << pathEtaCalPlateau.value;
440454
loadEtaCalibration();
441455
}
442456

@@ -551,8 +565,8 @@ struct PiKpRAA {
551565

552566
float phiPrime{phi};
553567
phiPrimeFunc(phiPrime, magField, charge);
554-
registry.fill(HIST("NclFoundVsPhipBeforeCut"), pOrPt, phiPrime, nclFound);
555-
registry.fill(HIST("NclFoundVsPhipBeforeCutPID"), pOrPt, phiPrime, nclPID);
568+
registry.fill(HIST("NclVsPhipBeforeCut"), pOrPt, phiPrime, nclFound);
569+
registry.fill(HIST("NclVsPhipBeforeCutPID"), pOrPt, phiPrime, nclPID);
556570

557571
if (v0Selections.applyPhiCut) {
558572
if (!passesPhiSelection(pOrPt, phiPrime))
@@ -605,14 +619,15 @@ struct PiKpRAA {
605619
nClVsP[indexEta]->Fill(pOrPt, ncl);
606620
nClVsPp[indexEta]->Fill(pOrPt, ncl);
607621
registry.fill(HIST("dcaVsPt"), pt, track.dcaXY());
622+
registry.fill(HIST("EtaVsPhi"), eta, track.phi());
608623
registry.fill(HIST("NclVsEta"), eta, nclFound);
609624
registry.fill(HIST("NclVsEtap"), eta, nclFound);
610625
registry.fill(HIST("NclVsEtaPID"), eta, nclPID);
611626
registry.fill(HIST("NclVsEtaPIDp"), eta, nclPID);
612627
registry.fill(HIST("NclFindable"), pOrPt, track.tpcNClsFindable());
613628
registry.fill(HIST("NclFindablep"), pOrPt, track.tpcNClsFindable());
614-
registry.fill(HIST("NclFoundVsPhipAfterCut"), pOrPt, phiPrime, nclFound);
615-
registry.fill(HIST("NclFoundVsPhipAfterCutPID"), pOrPt, phiPrime, nclPID);
629+
registry.fill(HIST("NclVsPhipAfterCut"), pOrPt, phiPrime, nclFound);
630+
registry.fill(HIST("NclVsPhipAfterCutPID"), pOrPt, phiPrime, nclPID);
616631

617632
if (track.hasTOF() && track.goodTOFMatch()) {
618633
const float tTOF{track.tofSignal()};
@@ -759,6 +774,10 @@ struct PiKpRAA {
759774
nClVsPPiV0[posIndexEta]->Fill(posPorPt, posNcl);
760775
nClVsPpPiV0[posIndexEta]->Fill(posPorPt, posNcl);
761776
nClVsPPiV0[negIndexEta]->Fill(negPorPt, negNcl);
777+
nClVsdEdxPiV0[negIndexEta]->Fill(negNcl, negTrkdEdx);
778+
nClVsdEdxpPiV0[negIndexEta]->Fill(negNcl, negTrkdEdx);
779+
nClVsdEdxPiV0[posIndexEta]->Fill(posNcl, posTrkdEdx);
780+
nClVsdEdxpPiV0[posIndexEta]->Fill(posNcl, posTrkdEdx);
762781
nClVsPpPiV0[negIndexEta]->Fill(negPorPt, negNcl);
763782
dEdxPiV0[posIndexEta]->Fill(posTrkP, posTrkdEdx, centrality);
764783
dEdxPiV0[negIndexEta]->Fill(negTrkP, negTrkdEdx, centrality);
@@ -792,6 +811,10 @@ struct PiKpRAA {
792811
nClVsPpPrV0[posIndexEta]->Fill(posPorPt, posNcl);
793812
nClVsPPiV0[negIndexEta]->Fill(negPorPt, negNcl);
794813
nClVsPpPiV0[negIndexEta]->Fill(negPorPt, negNcl);
814+
nClVsdEdxPiV0[negIndexEta]->Fill(negNcl, negTrkdEdx);
815+
nClVsdEdxpPiV0[negIndexEta]->Fill(negNcl, negTrkdEdx);
816+
nClVsdEdxPrV0[posIndexEta]->Fill(posNcl, posTrkdEdx);
817+
nClVsdEdxpPrV0[posIndexEta]->Fill(posNcl, posTrkdEdx);
795818
dEdxPrV0[posIndexEta]->Fill(posTrkP, posTrkdEdx, centrality);
796819
dEdxPiV0[negIndexEta]->Fill(negTrkP, negTrkdEdx, centrality);
797820
}
@@ -813,6 +836,10 @@ struct PiKpRAA {
813836
nClVsPpPrV0[negIndexEta]->Fill(negPorPt, negNcl);
814837
nClVsPPiV0[posIndexEta]->Fill(posPorPt, posNcl);
815838
nClVsPpPiV0[posIndexEta]->Fill(posPorPt, posNcl);
839+
nClVsdEdxPrV0[negIndexEta]->Fill(negNcl, negTrkdEdx);
840+
nClVsdEdxpPrV0[negIndexEta]->Fill(negNcl, negTrkdEdx);
841+
nClVsdEdxPiV0[posIndexEta]->Fill(posNcl, posTrkdEdx);
842+
nClVsdEdxpPiV0[posIndexEta]->Fill(posNcl, posTrkdEdx);
816843
dEdxPrV0[negIndexEta]->Fill(negTrkP, negTrkdEdx, centrality);
817844
dEdxPiV0[posIndexEta]->Fill(posTrkP, posTrkdEdx, centrality);
818845
}
@@ -838,6 +865,10 @@ struct PiKpRAA {
838865
nClVsPpElV0[negIndexEta]->Fill(negPorPt, negNcl);
839866
nClVsPElV0[posIndexEta]->Fill(posPorPt, posNcl);
840867
nClVsPpElV0[posIndexEta]->Fill(posPorPt, posNcl);
868+
nClVsdEdxElV0[negIndexEta]->Fill(negNcl, negTrkdEdx);
869+
nClVsdEdxpElV0[negIndexEta]->Fill(negNcl, negTrkdEdx);
870+
nClVsdEdxElV0[posIndexEta]->Fill(posNcl, posTrkdEdx);
871+
nClVsdEdxpElV0[posIndexEta]->Fill(posNcl, posTrkdEdx);
841872
if (posTrkP > kMinPMIP && posTrkP < kMaxPMIP) {
842873
registry.fill(HIST("dEdxVsEtaElMIPV0"), posTrkEta, posTrkdEdx);
843874
registry.fill(HIST("dEdxVsEtaElMIPV0p"), posTrkEta, posTrkdEdx);

0 commit comments

Comments
 (0)