Skip to content

Commit 49d7c3a

Browse files
authored
[PWGLF] Add rotation background for f1-p correlation + correction term in resonance flow + modified table producer entry for f1-p analysis (#8947)
1 parent d2a9ead commit 49d7c3a

File tree

3 files changed

+99
-110
lines changed

3 files changed

+99
-110
lines changed

PWGLF/TableProducer/Resonances/f1protonreducedtable.cxx

Lines changed: 32 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -513,19 +513,19 @@ struct f1protonreducedtable {
513513
std::vector<float> PionCharge = {};
514514
std::vector<float> KaonCharge = {};
515515
std::vector<float> ProtonCharge = {};
516-
std::vector<float> ProtonChargeFinal = {};
516+
// std::vector<float> ProtonChargeFinal = {};
517517

518518
// keep TPC PID of proton
519519
std::vector<float> ProtonTPCNsigma = {};
520-
std::vector<float> ProtonTPCNsigmaFinal = {};
520+
// std::vector<float> ProtonTPCNsigmaFinal = {};
521521

522522
// keep TOF PID of proton
523523
std::vector<float> ProtonTOFNsigma = {};
524-
std::vector<float> ProtonTOFNsigmaFinal = {};
524+
// std::vector<float> ProtonTOFNsigmaFinal = {};
525525

526526
// keep TOF Hit of proton
527527
std::vector<int> ProtonTOFHit = {};
528-
std::vector<int> ProtonTOFHitFinal = {};
528+
// std::vector<int> ProtonTOFHitFinal = {};
529529

530530
// keep TOF Hit of pion
531531
std::vector<int> PionTOFHit = {};
@@ -542,7 +542,8 @@ struct f1protonreducedtable {
542542
std::vector<float> f1signal = {};
543543

544544
// Prepare vectors for different species
545-
std::vector<ROOT::Math::PtEtaPhiMVector> protons, kaons, pions, kshorts, f1resonance, f1resonanced1, f1resonanced2, f1resonanced3, protonsfinal;
545+
std::vector<ROOT::Math::PtEtaPhiMVector> protons, kaons, pions, kshorts, f1resonance, f1resonanced1, f1resonanced2, f1resonanced3;
546+
// , protonsfinal;
546547
float kstar = 999.f;
547548

548549
currentRunNumber = collision.bc_as<aod::BCsWithTimestamps>().runNumber();
@@ -577,8 +578,8 @@ struct f1protonreducedtable {
577578
zorroSelected = true;
578579
}
579580
if (zorroSelected) {
581+
hProcessedEvents->Fill(1.5);
580582
for (auto& track : tracks) {
581-
hProcessedEvents->Fill(1.5);
582583
if (!isSelectedTrack(track))
583584
continue;
584585
qaRegistry.fill(HIST("hDCAxy"), track.dcaXY());
@@ -746,31 +747,34 @@ struct f1protonreducedtable {
746747
numberF1 = numberF1 + 1;
747748
for (auto iproton = protons.begin(); iproton != protons.end(); ++iproton) {
748749
auto i4 = std::distance(protons.begin(), iproton);
749-
ProtonVectorDummy = protons.at(i4);
750-
if (numberF1 == 1) {
751-
//////////// Fill final proton information after pairing//////////
752-
ROOT::Math::PtEtaPhiMVector temp(ProtonVectorDummy.Pt(), ProtonVectorDummy.Eta(), ProtonVectorDummy.Phi(), massPr);
753-
protonsfinal.push_back(temp); // 4 vector
754-
ProtonChargeFinal.push_back(ProtonCharge.at(i4)); // Charge
755-
ProtonTOFHitFinal.push_back(ProtonTOFHit.at(i4)); // TOF Hit
756-
ProtonTOFNsigmaFinal.push_back(ProtonTOFNsigma.at(i4)); // Nsigma TOF
757-
ProtonTPCNsigmaFinal.push_back(ProtonTPCNsigma.at(i4)); // Nsigma TPC
758-
F1ProtonIndex.push_back(ProtonIndex.at(i4)); // proton index for share track
759-
}
760-
761-
if ((ProtonIndex.at(i4) == PionIndex.at(i1)) || (ProtonIndex.at(i4) == KaonIndex.at(i2)) || (ProtonIndex.at(i4) == KshortPosDaughIndex.at(i3)) || (ProtonIndex.at(i4) == KshortNegDaughIndex.at(i3))) {
750+
if (ProtonIndex.at(i4) == PionIndex.at(i1))
751+
continue;
752+
if (ProtonIndex.at(i4) == KaonIndex.at(i2))
753+
continue;
754+
if (ProtonIndex.at(i4) == KshortPosDaughIndex.at(i3))
755+
continue;
756+
if (ProtonIndex.at(i4) == KshortNegDaughIndex.at(i3))
762757
continue;
763-
}
764-
765758
kstar = getkstar(F1Vector, *iproton);
766759
qaRegistry.fill(HIST("hkstarDist"), kstar);
767760
if (kstar > cMaxRelMom) {
768761
continue;
769762
}
770763
qaRegistry.fill(HIST("hInvMassf1kstar"), F1Vector.M(), F1Vector.Pt(), kstar);
771764
keepEventF1Proton = true;
765+
/*ProtonVectorDummy = protons.at(i4);
766+
if (numberF1 == 1 && keepEventF1Proton) {
767+
//////////// Fill final proton information after pairing//////////
768+
ROOT::Math::PtEtaPhiMVector temp(ProtonVectorDummy.Pt(), ProtonVectorDummy.Eta(), ProtonVectorDummy.Phi(), massPr);
769+
protonsfinal.push_back(temp); // 4 vector
770+
ProtonChargeFinal.push_back(ProtonCharge.at(i4)); // Charge
771+
ProtonTOFHitFinal.push_back(ProtonTOFHit.at(i4)); // TOF Hit
772+
ProtonTOFNsigmaFinal.push_back(ProtonTOFNsigma.at(i4)); // Nsigma TOF
773+
ProtonTPCNsigmaFinal.push_back(ProtonTPCNsigma.at(i4)); // Nsigma TPC
774+
F1ProtonIndex.push_back(ProtonIndex.at(i4)); // proton index for share track
775+
}*/
772776
}
773-
}
777+
} // pair sign
774778
}
775779
}
776780
}
@@ -782,7 +786,8 @@ struct f1protonreducedtable {
782786
qaRegistry.fill(HIST("hEventstat"), 1.5);
783787
if (keepEventF1Proton) {
784788
qaRegistry.fill(HIST("hEventstat"), 2.5);
785-
auto eventspherocity = ComputeSpherocity(tracks, trackSphMin, trackSphDef);
789+
auto eventspherocity = 0.0;
790+
// ComputeSpherocity(tracks, trackSphMin, trackSphDef);
786791
/////////// Fill collision table///////////////
787792
redf1pevents(bc.globalBC(), currentRunNumber, bc.timestamp(), collision.posZ(), collision.numContrib(), eventspherocity);
788793
auto indexEvent = redf1pevents.lastIndex();
@@ -796,10 +801,10 @@ struct f1protonreducedtable {
796801
f1track(indexEvent, f1signal.at(i5), F1VectorDummy.Px(), F1VectorDummy.Py(), F1VectorDummy.Pz(), F1d1dummy.Px(), F1d1dummy.Py(), F1d1dummy.Pz(), F1d2dummy.Px(), F1d2dummy.Py(), F1d2dummy.Pz(), F1d3dummy.Px(), F1d3dummy.Py(), F1d3dummy.Pz(), PionTOFHitFinal.at(i5), KaonTOFHitFinal.at(i5), F1VectorDummy.M(), f1kaonkshortmass.at(i5), F1PionIndex.at(i5), F1KaonIndex.at(i5), F1KshortDaughterPositiveIndex.at(i5), F1KshortDaughterNegativeIndex.at(i5));
797802
}
798803
//// Fill track table for proton//////////////////
799-
for (auto iproton = protonsfinal.begin(); iproton != protonsfinal.end(); ++iproton) {
800-
auto i6 = std::distance(protonsfinal.begin(), iproton);
801-
ProtonVectorDummy2 = protonsfinal.at(i6);
802-
protontrack(indexEvent, ProtonChargeFinal.at(i6), ProtonVectorDummy2.Px(), ProtonVectorDummy2.Py(), ProtonVectorDummy2.Pz(), ProtonTPCNsigmaFinal.at(i6), ProtonTOFHitFinal.at(i6), ProtonTOFNsigmaFinal.at(i6), F1ProtonIndex.at(i6));
804+
for (auto iproton = protons.begin(); iproton != protons.end(); ++iproton) {
805+
auto i6 = std::distance(protons.begin(), iproton);
806+
ProtonVectorDummy2 = protons.at(i6);
807+
protontrack(indexEvent, ProtonCharge.at(i6), ProtonVectorDummy2.Px(), ProtonVectorDummy2.Py(), ProtonVectorDummy2.Pz(), ProtonTPCNsigma.at(i6), ProtonTOFHit.at(i6), ProtonTOFNsigma.at(i6), ProtonIndex.at(i6));
803808
}
804809
}
805810
}

0 commit comments

Comments
 (0)