Skip to content

Commit 2ad62b3

Browse files
authored
[PWGLF] Avoid pair repeat in mixing (#11820)
1 parent 35de7b8 commit 2ad62b3

File tree

1 file changed

+10
-1
lines changed

1 file changed

+10
-1
lines changed

PWGLF/Tasks/Strangeness/lambdaspincorrderived.cxx

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -259,13 +259,22 @@ struct lambdaspincorrderived {
259259
Preslice<aod::LambdaPairs> tracksPerCollisionV0 = aod::lambdapair::lambdaeventId;
260260
void processME(EventCandidates const& collisions, AllTrackCandidates const& V0s)
261261
{
262+
auto collOldIndex = -999;
263+
std::vector<bool> t1Used;
262264
for (auto& [collision1, collision2] : selfCombinations(colBinning, nEvtMixing, -1, collisions, collisions)) {
263265
// LOGF(info, "Mixed event collisions: (%d, %d)", collision1.index(), collision2.index());
264266
auto centrality = collision1.cent();
265267
auto groupV01 = V0s.sliceBy(tracksPerCollisionV0, collision1.globalIndex());
266268
auto groupV02 = V0s.sliceBy(tracksPerCollisionV0, collision1.globalIndex());
267269
auto groupV03 = V0s.sliceBy(tracksPerCollisionV0, collision2.globalIndex());
268-
std::vector<bool> t1Used(groupV01.size(), false); // <-- reset here
270+
auto collNewIndex = collision1.index();
271+
// LOGF(info, "Mixed event collisions: (%d, %d)", collNewIndex, collOldIndex);
272+
if (collOldIndex != collNewIndex) {
273+
t1Used.resize(groupV01.size(), false);
274+
// std::fill(t1Used.begin(), t1Used.end(), false);
275+
// std::vector<bool> t1Used(groupV01.size(), false); // <-- reset here
276+
collOldIndex = collNewIndex;
277+
}
269278
for (auto& [t1, t3] : soa::combinations(o2::soa::CombinationsFullIndexPolicy(groupV01, groupV03))) {
270279
if (t1Used[t1.index()]) {
271280
continue;

0 commit comments

Comments
 (0)