@@ -383,6 +383,7 @@ struct FemtoUniversePairTaskTrackPhi {
383383
384384 registryPhiMinvBackground.add (" InvariantMassKpKp" , " ; invariant mass K+K+; Counts" , kTH1F , {{6000 , 0.9 , 4.0 }});
385385 registryPhiMinvBackground.add (" InvariantMassKmKm" , " ; invariant mass K-K-; Counts" , kTH1F , {{6000 , 0.9 , 4.0 }});
386+ registryPhiMinvBackground.add (" InvariantMassKpKm" , " ; invariant mass K+K-; Counts" , kTH1F , {{6000 , 0.9 , 4.0 }});
386387
387388 qaRegistry.add (" Hadron_pos/nSigmaTPCPr" , " ; #it{p} (GeV/#it{c}); n#sigma_{TPCPr}" , kTH2F , {{100 , 0 , 10 }, {200 , -4.975 , 5.025 }});
388389 qaRegistry.add (" Hadron_pos/nSigmaTOFPr" , " ; #it{p} (GeV/#it{c}); n#sigma_{TOFPr}" , kTH2F , {{100 , 0 , 10 }, {200 , -4.975 , 5.025 }});
@@ -405,12 +406,12 @@ struct FemtoUniversePairTaskTrackPhi {
405406 registryMCtruth.add (" MCtruthKp" , " MC truth K+;#it{p}_{T} (GeV/c); #eta" , {HistType::kTH2F , {{500 , 0 , 5 }, {400 , -1.0 , 1.0 }}});
406407 registryMCtruth.add (" MCtruthKpPt" , " MC truth kaons positive;#it{p}_{T} (GeV/c)" , {HistType::kTH1F , {{500 , 0 , 5 }}});
407408 // K-
408- registryMCtruth.add (" MCtruthKm" , " MC truth protons ;#it{p}_{T} (GeV/c); #eta" , {HistType::kTH2F , {{500 , 0 , 5 }, {400 , -1.0 , 1.0 }}});
409+ registryMCtruth.add (" MCtruthKm" , " MC truth kaons negative ;#it{p}_{T} (GeV/c); #eta" , {HistType::kTH2F , {{500 , 0 , 5 }, {400 , -1.0 , 1.0 }}});
409410 registryMCtruth.add (" MCtruthKmPt" , " MC truth kaons negative;#it{p}_{T} (GeV/c)" , {HistType::kTH1F , {{500 , 0 , 5 }}});
410411 // p
411412 registryMCtruth.add (" MCtruthPpos" , " MC truth protons;#it{p}_{T} (GeV/c); #eta" , {HistType::kTH2F , {{500 , 0 , 5 }, {400 , -1.0 , 1.0 }}});
412413 registryMCtruth.add (" MCtruthPposPt" , " MC truth protons;#it{p}_{T} (GeV/c)" , {HistType::kTH1F , {{500 , 0 , 5 }}});
413- // pbar
414+ // p-
414415 registryMCtruth.add (" MCtruthPneg" , " MC truth antiprotons;#it{p}_{T} (GeV/c); #eta" , {HistType::kTH2F , {{500 , 0 , 5 }, {400 , -1.0 , 1.0 }}});
415416 registryMCtruth.add (" MCtruthPnegPt" , " MC truth antiproton;#it{p}_{T} (GeV/c)" , {HistType::kTH1F , {{500 , 0 , 5 }}});
416417 // phi
@@ -423,7 +424,7 @@ struct FemtoUniversePairTaskTrackPhi {
423424 // p
424425 registryMCreco.add (" MCrecoPpos" , " MC reco proton;#it{p}_{T} (GeV/c); #eta" , {HistType::kTH2F , {{500 , 0 , 5 }, {400 , -1.0 , 1.0 }}});
425426 registryMCreco.add (" MCrecoPposPt" , " MC reco proton; #it{p_T} (GeV/#it{c}); Counts" , kTH1F , {{500 , 0 , 5 }});
426- // pbar
427+ // p-
427428 registryMCreco.add (" MCrecoPneg" , " MC reco antiproton;#it{p}_{T} (GeV/c); #eta" , {HistType::kTH2F , {{500 , 0 , 5 }, {400 , -1.0 , 1.0 }}});
428429 registryMCreco.add (" MCrecoPnegPt" , " MC reco antiproton; #it{p_T} (GeV/#it{c}); Counts" , kTH1F , {{500 , 0 , 5 }});
429430 // phi
@@ -549,31 +550,39 @@ struct FemtoUniversePairTaskTrackPhi {
549550 sameEventCont.setPair <isMC>(track, phicandidate, multCol, confUse3D, mWeight );
550551 }
551552
552- // // Used for better fitting of invariant mass background.
553-
554- // TLorentzVector part1Vec;
555- // TLorentzVector part2Vec;
556-
557- // float mMassOne = o2::constants::physics::MassKPlus;
558- // float mMassTwo = o2::constants::physics::MassKMinus;
559-
560- // for (auto const& [kaon1, kaon2] : combinations(CombinationsStrictlyUpperIndexPolicy(groupPartsKaons, groupPartsKaons))) {
561- // if ((kaon1.mAntiLambda() == 1) && (kaon2.mAntiLambda() == 1)) {
562- // part1Vec.SetPtEtaPhiM(kaon1.pt(), kaon1.eta(), kaon1.phi(), mMassOne);
563- // part2Vec.SetPtEtaPhiM(kaon2.pt(), kaon2.eta(), kaon2.phi(), mMassOne);
564- // TLorentzVector sumVec(part1Vec);
565- // sumVec += part2Vec;
566- // registryPhiMinvBackground.fill(HIST("InvariantMassKpKp"), sumVec.M());
567- // }
568- // if ((kaon1.mAntiLambda() == -1) && (kaon2.mAntiLambda() == -1)) {
569- // part1Vec.SetPtEtaPhiM(kaon1.pt(), kaon1.eta(), kaon1.phi(), mMassTwo);
570- // part2Vec.SetPtEtaPhiM(kaon2.pt(), kaon2.eta(), kaon2.phi(), mMassTwo);
571-
572- // TLorentzVector sumVec(part1Vec);
573- // sumVec += part2Vec;
574- // registryPhiMinvBackground.fill(HIST("InvariantMassKmKm"), sumVec.M());
575- // }
576- // }
553+ // Used for better fitting of invariant mass background.
554+
555+ TLorentzVector part1Vec;
556+ TLorentzVector part2Vec;
557+
558+ float mMassOne = o2::constants::physics::MassKPlus;
559+ float mMassTwo = o2::constants::physics::MassKMinus;
560+
561+ for (auto const & [kaon1, kaon2] : combinations (CombinationsStrictlyUpperIndexPolicy (partsKaons, partsKaons))) {
562+ if ((kaon1.mAntiLambda () == 1 ) && (kaon2.mAntiLambda () == 1 )) {
563+ part1Vec.SetPtEtaPhiM (kaon1.pt (), kaon1.eta (), kaon1.phi (), mMassOne );
564+ part2Vec.SetPtEtaPhiM (kaon2.pt (), kaon2.eta (), kaon2.phi (), mMassOne );
565+ TLorentzVector sumVec (part1Vec);
566+ sumVec += part2Vec;
567+ registryPhiMinvBackground.fill (HIST (" InvariantMassKpKp" ), sumVec.M ());
568+ }
569+ if ((kaon1.mAntiLambda () == -1 ) && (kaon2.mAntiLambda () == -1 )) {
570+ part1Vec.SetPtEtaPhiM (kaon1.pt (), kaon1.eta (), kaon1.phi (), mMassTwo );
571+ part2Vec.SetPtEtaPhiM (kaon2.pt (), kaon2.eta (), kaon2.phi (), mMassTwo );
572+
573+ TLorentzVector sumVec (part1Vec);
574+ sumVec += part2Vec;
575+ registryPhiMinvBackground.fill (HIST (" InvariantMassKmKm" ), sumVec.M ());
576+ }
577+ if ((kaon1.mAntiLambda () == 1 ) && (kaon2.mAntiLambda () == -1 )) {
578+ part1Vec.SetPtEtaPhiM (kaon1.pt (), kaon1.eta (), kaon1.phi (), mMassOne );
579+ part2Vec.SetPtEtaPhiM (kaon2.pt (), kaon2.eta (), kaon2.phi (), mMassTwo );
580+
581+ TLorentzVector sumVec (part1Vec);
582+ sumVec += part2Vec;
583+ registryPhiMinvBackground.fill (HIST (" InvariantMassKpKm" ), sumVec.M ());
584+ }
585+ }
577586 }
578587
579588 template <bool isMC, typename PartitionType, typename PartType, typename MCParticles = std::nullptr_t >
0 commit comments