Skip to content

Commit f4a6d27

Browse files
basiachBarbara Chytla
andauthored
[PWGCF] FemtoUniverse - Improving centrality mixing for cascades (AliceO2Group#11984)
Co-authored-by: Barbara Chytla <barbara.chytla@cern.ch>
1 parent 2ae23b8 commit f4a6d27

1 file changed

Lines changed: 18 additions & 3 deletions

File tree

PWGCF/FemtoUniverse/Tasks/femtoUniversePairTaskTrackCascadeExtended.cxx

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,7 @@ struct femtoUniversePairTaskTrackCascadeExtended {
9999
ConfigurableAxis confVtxBins{"confVtxBins", {VARIABLE_WIDTH, -10.0f, -8.f, -6.f, -4.f, -2.f, 0.f, 2.f, 4.f, 6.f, 8.f, 10.f}, "Mixing bins - z-vertex"};
100100
ConfigurableAxis confTrkTempFitVarpTBins{"confTrkTempFitVarpTBins", {20, 0.5, 4.05}, "pT binning of the pT vs. TempFitVar plot"};
101101
ConfigurableAxis confTrkTempFitVarBins{"confTrkTempFitVarBins", {300, -0.15, 0.15}, "binning of the TempFitVar in the pT vs. TempFitVar plot"};
102+
Configurable<int> confNEventsMix{"confNEventsMix", 5, "Number of events for mixing"};
102103

103104
Filter collisionFilter = (nabs(aod::collision::posZ) < confZVertexCut);
104105
using FilteredFDCollisions = soa::Filtered<o2::aod::FdCollisions>;
@@ -248,6 +249,7 @@ struct femtoUniversePairTaskTrackCascadeExtended {
248249
qaRegistry.add("Tracks_pos/nSigmaTOF", "; #it{p} (GeV/#it{c}); n#sigma_{TOF}", kTH2F, {{100, 0, 10}, {200, -4.975, 5.025}});
249250
qaRegistry.add("Tracks_neg/nSigmaTPC", "; #it{p} (GeV/#it{c}); n#sigma_{TPC}", kTH2F, {{100, 0, 10}, {200, -4.975, 5.025}});
250251
qaRegistry.add("Tracks_neg/nSigmaTOF", "; #it{p} (GeV/#it{c}); n#sigma_{TOF}", kTH2F, {{100, 0, 10}, {200, -4.975, 5.025}});
252+
qaRegistry.add("MixingQA/hMECollisionBins", ";bin;Entries", kTH1F, {{120, -0.5, 119.5}});
251253

252254
// MC gen
253255
registryMCgen.add("plus/MCgenCasc", "MC gen cascades;#it{p}_{T} (GeV/c); #eta", {HistType::kTH2F, {{500, 0, 5}, {400, -1.0, 1.0}}});
@@ -534,9 +536,10 @@ struct femtoUniversePairTaskTrackCascadeExtended {
534536
/// track - cascade correlations
535537
void processMixedEvent(const FilteredFDCollisions& cols, const FemtoFullParticles& parts)
536538
{
537-
ColumnBinningPolicy<aod::collision::PosZ, aod::femtouniversecollision::MultNtr> colBinning{{confVtxBins, confMultBins}, true};
539+
ColumnBinningPolicy<aod::collision::PosZ, aod::femtouniversecollision::MultNtr> colBinningMult{{confVtxBins, confMultBins}, true};
540+
ColumnBinningPolicy<aod::collision::PosZ, aod::femtouniversecollision::MultV0M> colBinningCent{{confVtxBins, confMultBins}, true};
538541

539-
for (const auto& [collision1, collision2] : soa::selfCombinations(colBinning, 5, -1, cols, cols)) {
542+
auto mixedCollProcessFunc = [&](auto& collision1, auto& collision2) -> void {
540543
const int multCol = confUseCent ? collision1.multV0M() : collision1.multNtr();
541544

542545
auto groupPartsOne = partsOne->sliceByCached(aod::femtouniverseparticle::fdCollisionId, collision1.globalIndex(), cache);
@@ -546,7 +549,7 @@ struct femtoUniversePairTaskTrackCascadeExtended {
546549
const auto& magFieldTesla2 = collision2.magField();
547550

548551
if (magFieldTesla1 != magFieldTesla2) {
549-
continue;
552+
return;
550553
}
551554
for (const auto& [p1, p2] : combinations(CombinationsFullIndexPolicy(groupPartsOne, groupPartsTwo))) {
552555
// Cascade inv mass cut (mLambda stores Xi mass, mAntiLambda stores Omega mass)
@@ -572,6 +575,18 @@ struct femtoUniversePairTaskTrackCascadeExtended {
572575

573576
mixedEventCont.setPair<false>(p1, p2, multCol, confUse3D, 1.0f);
574577
}
578+
};
579+
580+
if (confUseCent) {
581+
for (const auto& [collision1, collision2] : soa::selfCombinations(colBinningCent, confNEventsMix, -1, cols, cols)) {
582+
mixedCollProcessFunc(collision1, collision2);
583+
qaRegistry.fill(HIST("MixingQA/hMECollisionBins"), colBinningCent.getBin({collision1.posZ(), collision1.multV0M()}));
584+
}
585+
} else {
586+
for (const auto& [collision1, collision2] : soa::selfCombinations(colBinningMult, confNEventsMix, -1, cols, cols)) {
587+
mixedCollProcessFunc(collision1, collision2);
588+
qaRegistry.fill(HIST("MixingQA/hMECollisionBins"), colBinningMult.getBin({collision1.posZ(), collision1.multNtr()}));
589+
}
575590
}
576591
}
577592
PROCESS_SWITCH(femtoUniversePairTaskTrackCascadeExtended, processMixedEvent, "Enable processing mixed event for track - cascade", false);

0 commit comments

Comments
 (0)