Skip to content

Commit ebf02dd

Browse files
zchochulZuzanna Chochulska-Gumińska
andauthored
[PWGCF] FemtoUniverse -- removing process function and addin KK inv mass to same events (#18731)
Co-authored-by: Zuzanna Chochulska-Gumińska <zchochul@cern.ch>
1 parent f98de60 commit ebf02dd

1 file changed

Lines changed: 44 additions & 11 deletions

File tree

‎PWGCF/FemtoUniverse/Tasks/femtoUniversePairTaskTrackPhi.cxx‎

Lines changed: 44 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,6 @@ struct FemtoUniversePairTaskTrackPhi {
9797
Preslice<FemtoRecoParticles> perColMC = aod::femtouniverseparticle::fdCollisionId;
9898

9999
Configurable<float> confZVertexCut{"confZVertexCut", 10.f, "Event sel: Maximum z-Vertex (cm)"};
100-
// Configurable<int> confNEventsMix{"confNEventsMix", 5, "Number of events for mixing"};
101100
Filter collisionFilter = (nabs(aod::collision::posZ) < confZVertexCut);
102101
using FilteredFDCollisions = soa::Filtered<o2::aod::FdCollisions>;
103102
using FilteredFDCollision = FilteredFDCollisions::iterator;
@@ -557,32 +556,31 @@ struct FemtoUniversePairTaskTrackPhi {
557556

558557
if (confFillMinvBackground) {
559558
// Used for better fitting of invariant mass background.
560-
561559
TLorentzVector part1Vec;
562560
TLorentzVector part2Vec;
563561

564-
float mMassOne = o2::constants::physics::MassKPlus;
565-
float mMassTwo = o2::constants::physics::MassKMinus;
562+
float mMassKp = o2::constants::physics::MassKPlus;
563+
float mMassKm = o2::constants::physics::MassKMinus;
566564

567565
for (auto const& [kaon1, kaon2] : combinations(CombinationsStrictlyUpperIndexPolicy(partsKaons, partsKaons))) {
568566
if ((confFillMinvBackgroundKpKp) && (kaon1.mAntiLambda() == 1) && (kaon2.mAntiLambda() == 1)) {
569-
part1Vec.SetPtEtaPhiM(kaon1.pt(), kaon1.eta(), kaon1.phi(), mMassOne);
570-
part2Vec.SetPtEtaPhiM(kaon2.pt(), kaon2.eta(), kaon2.phi(), mMassOne);
567+
part1Vec.SetPtEtaPhiM(kaon1.pt(), kaon1.eta(), kaon1.phi(), mMassKp);
568+
part2Vec.SetPtEtaPhiM(kaon2.pt(), kaon2.eta(), kaon2.phi(), mMassKp);
571569
TLorentzVector sumVec(part1Vec);
572570
sumVec += part2Vec;
573571
registryPhiMinvBackground.fill(HIST("InvariantMassKpKp"), sumVec.M());
574572
}
575573
if ((confFillMinvBackgroundKmKm) && (kaon1.mAntiLambda() == -1) && (kaon2.mAntiLambda() == -1)) {
576-
part1Vec.SetPtEtaPhiM(kaon1.pt(), kaon1.eta(), kaon1.phi(), mMassTwo);
577-
part2Vec.SetPtEtaPhiM(kaon2.pt(), kaon2.eta(), kaon2.phi(), mMassTwo);
574+
part1Vec.SetPtEtaPhiM(kaon1.pt(), kaon1.eta(), kaon1.phi(), mMassKm);
575+
part2Vec.SetPtEtaPhiM(kaon2.pt(), kaon2.eta(), kaon2.phi(), mMassKm);
578576

579577
TLorentzVector sumVec(part1Vec);
580578
sumVec += part2Vec;
581579
registryPhiMinvBackground.fill(HIST("InvariantMassKmKm"), sumVec.M());
582580
}
583581
if ((confFillMinvBackgroundKpKm) && (kaon1.mAntiLambda() == 1) && (kaon2.mAntiLambda() == -1)) {
584-
part1Vec.SetPtEtaPhiM(kaon1.pt(), kaon1.eta(), kaon1.phi(), mMassOne);
585-
part2Vec.SetPtEtaPhiM(kaon2.pt(), kaon2.eta(), kaon2.phi(), mMassTwo);
582+
part1Vec.SetPtEtaPhiM(kaon1.pt(), kaon1.eta(), kaon1.phi(), mMassKp);
583+
part2Vec.SetPtEtaPhiM(kaon2.pt(), kaon2.eta(), kaon2.phi(), mMassKm);
586584

587585
TLorentzVector sumVec(part1Vec);
588586
sumVec += part2Vec;
@@ -622,7 +620,42 @@ struct FemtoUniversePairTaskTrackPhi {
622620
auto thegroupPartsTrack = partsTrack->sliceByCached(aod::femtouniverseparticle::fdCollisionId, col.globalIndex(), cache);
623621
auto thegroupPartsPhi = partsPhi->sliceByCached(aod::femtouniverseparticle::fdCollisionId, col.globalIndex(), cache);
624622
eventHisto.fillQA(col);
625-
doSameEvent<false>(thegroupPartsTrack, thegroupPartsPhi, parts, col.magField(), col.multNtr());
623+
if (!confFillMinvBackground) {
624+
doSameEvent<false>(thegroupPartsTrack, thegroupPartsPhi, parts, col.magField(), col.multNtr());
625+
} else {
626+
// K+K+, K-K-, K+K- invariant mass background filling
627+
TLorentzVector part1Vec;
628+
TLorentzVector part2Vec;
629+
630+
float mMassOne = o2::constants::physics::MassKPlus;
631+
float mMassTwo = o2::constants::physics::MassKMinus;
632+
633+
for (auto const& [kaon1, kaon2] : combinations(CombinationsStrictlyUpperIndexPolicy(partsKaons, partsKaons))) {
634+
if ((confFillMinvBackgroundKpKp) && (kaon1.mAntiLambda() == 1) && (kaon2.mAntiLambda() == 1)) {
635+
part1Vec.SetPtEtaPhiM(kaon1.pt(), kaon1.eta(), kaon1.phi(), mMassOne);
636+
part2Vec.SetPtEtaPhiM(kaon2.pt(), kaon2.eta(), kaon2.phi(), mMassOne);
637+
TLorentzVector sumVec(part1Vec);
638+
sumVec += part2Vec;
639+
registryPhiMinvBackground.fill(HIST("InvariantMassKpKp"), sumVec.M());
640+
}
641+
if ((confFillMinvBackgroundKmKm) && (kaon1.mAntiLambda() == -1) && (kaon2.mAntiLambda() == -1)) {
642+
part1Vec.SetPtEtaPhiM(kaon1.pt(), kaon1.eta(), kaon1.phi(), mMassTwo);
643+
part2Vec.SetPtEtaPhiM(kaon2.pt(), kaon2.eta(), kaon2.phi(), mMassTwo);
644+
645+
TLorentzVector sumVec(part1Vec);
646+
sumVec += part2Vec;
647+
registryPhiMinvBackground.fill(HIST("InvariantMassKmKm"), sumVec.M());
648+
}
649+
if ((confFillMinvBackgroundKpKm) && (kaon1.mAntiLambda() == 1) && (kaon2.mAntiLambda() == -1)) {
650+
part1Vec.SetPtEtaPhiM(kaon1.pt(), kaon1.eta(), kaon1.phi(), mMassOne);
651+
part2Vec.SetPtEtaPhiM(kaon2.pt(), kaon2.eta(), kaon2.phi(), mMassTwo);
652+
653+
TLorentzVector sumVec(part1Vec);
654+
sumVec += part2Vec;
655+
registryPhiMinvBackground.fill(HIST("InvariantMassKpKm"), sumVec.M());
656+
}
657+
}
658+
}
626659
}
627660
PROCESS_SWITCH(FemtoUniversePairTaskTrackPhi, processSameEvent, "Enable processing same event", true);
628661

0 commit comments

Comments
 (0)