Skip to content

Commit 8bca775

Browse files
lhusovaLucia Anna Tarasovicova
andauthored
[PWGLF] change in hStrangeCorrelation.cxx (#11869)
Co-authored-by: Lucia Anna Tarasovicova <lucia.anna.husova@cern.ch>
1 parent 318d01b commit 8bca775

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

PWGLF/Tasks/Strangeness/hStrangeCorrelation.cxx

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -216,6 +216,7 @@ struct HStrangeCorrelation {
216216
TH2F* hEfficiencyOmegaMinus;
217217
TH2F* hEfficiencyOmegaPlus;
218218
TH2F* hEfficiencyHadron;
219+
TH1F* hPurityHadron;
219220

220221
using BinningType = ColumnBinningPolicy<aod::collision::PosZ, aod::cent::CentFT0M>;
221222
using BinningTypePbPb = ColumnBinningPolicy<aod::collision::PosZ, aod::cent::CentFT0C>;
@@ -295,6 +296,7 @@ struct HStrangeCorrelation {
295296
hEfficiencyOmegaPlus = static_cast<TH2F*>(listEfficiencies->FindObject("hEfficiencyOmegaPlus"));
296297
hEfficiencyHadron = static_cast<TH2F*>(listEfficiencies->FindObject("hEfficiencyHadron"));
297298
hEfficiencyPion = static_cast<TH2F*>(listEfficiencies->FindObject("hEfficiencyPion"));
299+
hPurityHadron = static_cast<TH1F*>(listEfficiencies->FindObject("hPurityHadron"));
298300
LOG(info) << "Efficiencies now loaded for " << mRunNumber;
299301
}
300302

@@ -941,20 +943,23 @@ struct HStrangeCorrelation {
941943
continue;
942944

943945
float efficiency = 1;
946+
float purity = 1.0f;
944947
if (applyEfficiencyCorrection) {
945948
if constexpr (requires { assocTrack.nSigmaTPCPi(); }) {
946949
efficiency = hEfficiencyPion->Interpolate(ptassoc, assoc.eta());
947950
} else {
948951
efficiency = hEfficiencyHadron->Interpolate(ptassoc, assoc.eta());
952+
purity = hPurityHadron->Interpolate(ptassoc);
949953
}
950954
}
951955
if (applyEfficiencyForTrigger) {
952956
efficiency = efficiency * hEfficiencyTrigger->Interpolate(pttrigger, trigg.eta());
957+
purity = purity * hPurityHadron->Interpolate(pttrigger);
953958
}
954959
if (efficiency == 0) { // check for zero efficiency, do not apply if the case
955960
efficiency = 1;
956961
}
957-
float weight = (applyEfficiencyCorrection || applyEfficiencyForTrigger) ? 1. / efficiency : 1.0f;
962+
float weight = (applyEfficiencyCorrection || applyEfficiencyForTrigger) ? purity / efficiency : 1.0f;
958963
double deltaPhiStar = calculateAverageDeltaPhiStar(triggForDeltaPhiStar, assocForDeltaPhiStar, bField);
959964
if (!mixing) {
960965
if constexpr (requires { assocTrack.nSigmaTPCPi(); }) {
@@ -998,6 +1003,7 @@ struct HStrangeCorrelation {
9981003
hEfficiencyOmegaPlus = 0x0;
9991004

10001005
hEfficiencyHadron = 0x0;
1006+
hPurityHadron = 0x0;
10011007

10021008
// set bitmap for convenience
10031009
doCorrelation = 0;
@@ -1547,13 +1553,15 @@ struct HStrangeCorrelation {
15471553
if (!isValidAssocHadron(assoc))
15481554
continue;
15491555
float efficiency = 1.0f;
1556+
float purity = 1.0f;
15501557
if (applyEfficiencyCorrection) {
15511558
efficiency = hEfficiencyHadron->Interpolate(assoc.pt(), assoc.eta());
1559+
purity = hPurityHadron->Interpolate(assoc.pt());
15521560
}
15531561
if (efficiency == 0) { // check for zero efficiency, do not apply if the case
15541562
efficiency = 1;
15551563
}
1556-
float weight = applyEfficiencyCorrection ? 1. / efficiency : 1.0f;
1564+
float weight = applyEfficiencyCorrection ? purity / efficiency : 1.0f;
15571565
histos.fill(HIST("hAssocHadronsAllSelectedEtaVsPt"), assoc.pt(), assoc.eta(), collision.centFT0M());
15581566
histos.fill(HIST("hAssocPtResolution"), assoc.pt(), assocTrack.mcOriginalPt());
15591567
if (doAssocPhysicalPrimary && !assocTrack.mcPhysicalPrimary())

0 commit comments

Comments
 (0)