Skip to content

Commit 1dad2d0

Browse files
committed
Add MC Reco to helicity angle analysis
1 parent c6fec91 commit 1dad2d0

File tree

1 file changed

+25
-0
lines changed

1 file changed

+25
-0
lines changed

PWGCF/FemtoUniverse/Tasks/femtoUniversePairTaskTrackV0Helicity.cxx

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -294,6 +294,14 @@ struct FemtoUniversePairTaskTrackV0Helicity {
294294
registryMCreco.add("minus/MCrecoPiPt", "MC reco pions;#it{p}_{T} (GeV/c)", {HistType::kTH1F, {{500, 0, 5}}});
295295
registryMCreco.add("minus/MCrecoPrPt", "MC reco protons;#it{p}_{T} (GeV/c)", {HistType::kTH1F, {{500, 0, 5}}});
296296

297+
registryMCreco.add("ThetaMCReco/hTheta", " ; p (GeV/#it{c}); cos(#theta)", kTH2F, {{100, 0, 10}, {110, -1.1, 1.1}});
298+
registryMCreco.add("ThetaMCReco/PositiveChild/hThetaPt", " ; p_{T} (GeV/#it{c}); cos(#theta)", kTH2F, {{100, 0, 10}, {110, -1.1, 1.1}});
299+
registryMCreco.add("ThetaMCReco/PositiveChild/hThetaEta", " ; #eta; cos(#theta)", kTH2F, {{100, -1, 1}, {110, -1.1, 1.1}});
300+
registryMCreco.add("ThetaMCReco/PositiveChild/hThetaPhi", " ; #phi; cos(#theta)", kTH2F, {{100, -1, 7}, {110, -1.1, 1.1}});
301+
registryMCreco.add("ThetaMCReco/NegativeChild/hThetaPt", " ; p_{T} (GeV/#it{c}); cos(#theta)", kTH2F, {{100, 0, 10}, {110, -1.1, 1.1}});
302+
registryMCreco.add("ThetaMCReco/NegativeChild/hThetaEta", " ; #eta; cos(#theta)", kTH2F, {{100, -1, 1}, {110, -1.1, 1.1}});
303+
registryMCreco.add("ThetaMCReco/NegativeChild/hThetaPhi", " ; #phi; cos(#theta)", kTH2F, {{100, -1, 7}, {110, -1.1, 1.1}});
304+
297305
sameEventCont.init(&resultRegistry, confkstarBins, confMultBins, confkTBins, confmTBins, confMultBins3D, confmTBins3D, confEtaBins, confPhiBins, confIsMC, confUse3D);
298306
sameEventCont.setPDGCodes(confTrkPDGCodePartOne, confV0PDGCodePartTwo);
299307
mixedEventCont.init(&resultRegistry, confkstarBins, confMultBins, confkTBins, confmTBins, confMultBins3D, confmTBins3D, confEtaBins, confPhiBins, confIsMC, confUse3D);
@@ -961,6 +969,23 @@ struct FemtoUniversePairTaskTrackV0Helicity {
961969
}
962970
}
963971
} // partType
972+
973+
// Helicity angle
974+
const auto& posChild = parts.iteratorAt(part.index() - 2);
975+
const auto& negChild = parts.iteratorAt(part.index() - 1);
976+
977+
auto posChildMass = pdg->Mass(confPDGCodePosChild);
978+
auto negChildMass = pdg->Mass(confPDGCodeNegChild);
979+
auto posChildBoosted = FemtoUniverseMath::boostPRF<decltype(posChild)>(posChild, posChildMass, negChild, negChildMass);
980+
auto cosineTheta = (posChildBoosted.Px() * part.px() + posChildBoosted.Py() * part.py() + posChildBoosted.Pz() * part.pz()) / (posChildBoosted.P() * part.p());
981+
982+
registryMCreco.fill(HIST("ThetaMCReco/hTheta"), part.p(), cosineTheta);
983+
registryMCreco.fill(HIST("ThetaMCReco/PositiveChild/hThetaPt"), posChild.pt(), cosineTheta);
984+
registryMCreco.fill(HIST("ThetaMCReco/PositiveChild/hThetaEta"), posChild.eta(), cosineTheta);
985+
registryMCreco.fill(HIST("ThetaMCReco/PositiveChild/hThetaPhi"), posChild.phi(), cosineTheta);
986+
registryMCreco.fill(HIST("ThetaMCReco/NegativeChild/hThetaPt"), negChild.pt(), cosineTheta);
987+
registryMCreco.fill(HIST("ThetaMCReco/NegativeChild/hThetaEta"), negChild.eta(), cosineTheta);
988+
registryMCreco.fill(HIST("ThetaMCReco/NegativeChild/hThetaPhi"), negChild.phi(), cosineTheta);
964989
}
965990
}
966991

0 commit comments

Comments
 (0)