Skip to content

Commit 6b8608b

Browse files
authored
added PID histograms and fixed bug related to V0 mass window
1 parent c4c1d9e commit 6b8608b

File tree

1 file changed

+31
-2
lines changed

1 file changed

+31
-2
lines changed

PWGHF/HFC/TableProducer/correlatorLcScHadrons.cxx

Lines changed: 31 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -434,6 +434,7 @@ struct HfCorrelatorLcScHadrons {
434434
ConfigurableAxis binsPoolBin{"binsPoolBin", {9, 0., 9.}, "PoolBin"};
435435
ConfigurableAxis binsMultFT0M{"binsMultFT0M", {600, 0., 6000.}, "Multiplicity as FT0M signal amplitude"};
436436
ConfigurableAxis binsCandMass{"binsCandMass", {200, 1.98, 2.58}, "inv. mass (p K #pi) (GeV/#it{c}^{2})"};
437+
ConfigurableAxis binsNSigmas{"binsNSigmas", {4000, -500., 500.}, "n#sigma"};
437438

438439
BinningType corrBinning{{binsZVtx, binsMultiplicity}, true};
439440

@@ -452,6 +453,7 @@ struct HfCorrelatorLcScHadrons {
452453
AxisSpec const axisBdtScore = {binsBdtScore, "Bdt score"};
453454
AxisSpec const axisPoolBin = {binsPoolBin, "PoolBin"};
454455
AxisSpec const axisRapidity = {100, -2, 2, "Rapidity"};
456+
AxisSpec const axisNSigma = {binsNSigmas, "n#sigma"};
455457
AxisSpec axisSign = {5, -2.5, 2.5, "Sign"};
456458
AxisSpec axisPtV0 = {500, 0., 50.0, "#it{p}_{T} (GeV/#it{c})"};
457459
AxisSpec axisMassV0 = {300, 1.05f, 1.2f, "inv. mass (p #pi) (GeV/#it{c}^{2})"};
@@ -512,6 +514,10 @@ struct HfCorrelatorLcScHadrons {
512514
registry.add("hEtaMcGen", "Lc,Hadron particles - MC Gen", {HistType::kTH1F, {axisEta}});
513515
registry.add("hPhiMcGen", "Lc,Hadron particles - MC Gen", {HistType::kTH1F, {axisPhi}});
514516
registry.add("hMultFT0AMcGen", "Lc,Hadron multiplicity FT0A - MC Gen", {HistType::kTH1F, {axisMultiplicity}});
517+
registry.add("hTOFnSigmaPr", "hTOFnSigmaPr", {HistType::kTH2F, {{axisPtHadron}, {axisNSigma}}});
518+
registry.add("hTPCnSigmaPr", "hTPCnSigmaPr", {HistType::kTH2F, {{axisPtHadron}, {axisNSigma}}});
519+
registry.add("hTOFnSigmaPrPiKRej", "hTOFnSigmaPrPiKRej", {HistType::kTH2F, {{axisPtHadron}, {axisNSigma}}});
520+
registry.add("hTPCnSigmaPrPiKRej", "hTPCnSigmaPrPiKRej", {HistType::kTH2F, {{axisPtHadron}, {axisNSigma}}});
515521

516522
// Lambda V0 histograms
517523
registry.add("hEventLambdaV0", "Lambda, events", {HistType::kTH1F, {{2, 0, 2}}});
@@ -562,7 +568,7 @@ struct HfCorrelatorLcScHadrons {
562568
if (std::abs(pid) == kProton && std::abs(track.tpcNSigmaPr()) > cfgV0.cfgDaughPIDCutsTPCPr) {
563569
return false;
564570
}
565-
if (std::abs(pid) == kPiPlus && std::abs(track.tpcNSigmaPi()) > cfgV0.cfgDaughPIDCutsTPCPi && std::abs(track.tofNSigmaPi()) > cfgV0.cfgDaughPIDCutsTOFPi) {
571+
if (std::abs(pid) == kPiPlus && (std::abs(track.tpcNSigmaPi()) > cfgV0.cfgDaughPIDCutsTPCPi || std::abs(track.tofNSigmaPi()) > cfgV0.cfgDaughPIDCutsTOFPi)) {
566572
return false;
567573
}
568574
if (std::abs(track.eta()) > etaTrackMax) {
@@ -596,20 +602,43 @@ struct HfCorrelatorLcScHadrons {
596602
registry.fill(HIST("hV0Lambda"), v0.mLambda(), v0.pt(), posTrackV0.pt());
597603
registry.fill(HIST("hV0LambdaRefl"), v0.mAntiLambda(), v0.pt(), negTrackV0.pt());
598604

605+
registry.fill(HIST("hTPCnSigmaPr"), posTrackV0.pt(), posTrackV0.tpcNSigmaPr());
606+
if (posTrackV0.hasTOF()) {
607+
registry.fill(HIST("hTOFnSigmaPr"), posTrackV0.pt(), posTrackV0.tofNSigmaPr());
608+
}
609+
610+
599611
if (passPIDSelection(posTrackV0, trkPIDspecies, pidTPCMax, pidTOFMax, tofPIDThreshold, forceTOF)) {
600612
registry.fill(HIST("hV0LambdaPiKRej"), v0.mLambda(), v0.pt(), posTrackV0.pt());
601613
registry.fill(HIST("hV0LambdaReflPiKRej"), v0.mAntiLambda(), v0.pt(), negTrackV0.pt());
614+
615+
registry.fill(HIST("hTPCnSigmaPrPiKRej"),posTrackV0.pt(), posTrackV0.tpcNSigmaPr());
616+
if (posTrackV0.hasTOF()) {
617+
registry.fill(HIST("hTOFnSigmaPrPiKRej"),posTrackV0.pt(), posTrackV0.tofNSigmaPr());
618+
}
619+
620+
621+
602622
}
603623
}
604624
}
605625
if (isSelectedV0Daughter(negTrackV0, kProton) && isSelectedV0Daughter(posTrackV0, kPiPlus)) {
606-
if (std::abs(o2::constants::physics::MassLambda - v0.mAntiLambda()) > cfgV0.cfgHypMassWindow) {
626+
if (std::abs(massLambda - v0.mAntiLambda()) < cfgV0.cfgHypMassWindow) {
607627
registry.fill(HIST("hV0Lambda"), v0.mAntiLambda(), v0.pt(), negTrackV0.pt());
608628
registry.fill(HIST("hV0LambdaRefl"), v0.mLambda(), v0.pt(), posTrackV0.pt());
609629

630+
registry.fill(HIST("hTPCnSigmaPr"), negTrackV0.pt(), negTrackV0.tpcNSigmaPr());
631+
if (negTrackV0.hasTOF()) {
632+
registry.fill(HIST("hTOFnSigmaPr"), negTrackV0.pt(), negTrackV0.tofNSigmaPr());
633+
}
610634
if (passPIDSelection(negTrackV0, trkPIDspecies, pidTPCMax, pidTOFMax, tofPIDThreshold, forceTOF)) {
611635
registry.fill(HIST("hV0LambdaPiKRej"), v0.mAntiLambda(), v0.pt(), negTrackV0.pt());
612636
registry.fill(HIST("hV0LambdaReflPiKRej"), v0.mLambda(), v0.pt(), posTrackV0.pt());
637+
638+
registry.fill(HIST("hTPCnSigmaPrPiKRej"),negTrackV0.pt(), negTrackV0.tpcNSigmaPr());
639+
if (negTrackV0.hasTOF()) {
640+
registry.fill(HIST("hTOFnSigmaPrPiKRej"),negTrackV0.pt(), negTrackV0.tofNSigmaPr());
641+
}
613642
}
614643
}
615644
}

0 commit comments

Comments
 (0)