@@ -245,8 +245,8 @@ struct LfMyV0s {
245245 registryData.add("LambdaPtMass", "LambdaPtMass", HistType::kTH2F, {ptAxis, invMassLambdaAxis});
246246 registryData.add("AntiLambdaPtMass", "AntiLambdaPtMass", HistType::kTH2F, {ptAxis, invMassLambdaAxis});
247247
248- registryData.add("hMassLambda", "hMassLambda", {HistType::kTH1F, {{200, 0.9f, 1.2f }}});
249- registryData.add("hMassAntiLambda", "hMassAntiLambda", {HistType::kTH1F, {{200, 0.9f, 1.2f }}});
248+ registryData.add("hMassLambda", "hMassLambda", {HistType::kTH1F, {{invMassLambdaAxis }}});
249+ registryData.add("hMassAntiLambda", "hMassAntiLambda", {HistType::kTH1F, {{invMassLambdaAxis }}});
250250 registryData.add("V0pTInLab", "V0pTInLab", kTH1F, {axisPT});
251251
252252 registryData.add("V0pxInLab", "V0pxInLab", kTH1F, {axisPx});
@@ -267,6 +267,11 @@ struct LfMyV0s {
267267 registryData.add("protonQA/profileprotonsinthetaInLab", "Invariant Mass vs sin(theta)", {HistType::kTProfile, {{200, 0.9, 1.2}}});
268268 registryData.add("protonQA/profileprotonsinphiInLab", "Invariant Mass vs sin(phi)", {HistType::kTProfile, {{200, 0.9, 1.2}}});
269269 registryData.add("protonQA/profileprotoncosSquarethetaInLab", "Invariant Mass vs cos^2(theta)", {HistType::kTProfile, {{200, 0.9, 1.2}}});
270+ registryData.add("JetQA/JetthetaInLab", "JetthetaInLab", kTH1F, {axisTheta});
271+ registryData.add("JetQA/JetphiInLab", "JetphiInLab", kTH1F, {axisPhi});
272+ registryData.add("JetQA/JetpxInLab", "JetpxInLab", kTH1F, {axisPx});
273+ registryData.add("JetQA/JetpyInLab", "JetpyInLab", kTH1F, {axisPy});
274+ registryData.add("JetQA/JetpzInLab", "JetpzInLab", kTH1F, {axisPz});
270275
271276 registryData.add("protonQA/V0protonpxInRest_frame", "V0protonpxInRest_frame", kTH1F, {axisPx});
272277 registryData.add("protonQA/V0protonpyInRest_frame", "V0protonpyInRest_frame", kTH1F, {axisPy});
@@ -278,6 +283,11 @@ struct LfMyV0s {
278283 registryData.add("protonQA/profileprotonsinthetaInV0frame", "Invariant Mass vs sin(theta)", {HistType::kTProfile, {{200, 0.9, 1.2}}});
279284 registryData.add("protonQA/profileprotonsinphiInV0frame", "Invariant Mass vs sin(phi)", {HistType::kTProfile, {{200, 0.9, 1.2}}});
280285 registryData.add("protonQA/profileprotoncosSquarethetaInV0frame", "Invariant Mass vs cos^2(theta)", {HistType::kTProfile, {{200, 0.9, 1.2}}});
286+ registryData.add("JetQA/JetthetaInV0", "JetthetaInV0", kTH1F, {axisTheta});
287+ registryData.add("JetQA/JetphiInV0", "JetphiInV0", kTH1F, {axisPhi});
288+ registryData.add("JetQA/JetpxInV0", "JetpxInV0", kTH1F, {axisPx});
289+ registryData.add("JetQA/JetpyInV0", "JetpyInV0", kTH1F, {axisPy});
290+ registryData.add("JetQA/JetpzInV0", "JetpzInV0", kTH1F, {axisPz});
281291
282292 registryData.add("protonQA/V0protonpxInJetframe", "V0protonpxInJetframe", kTH1F, {axisPx});
283293 registryData.add("protonQA/V0protonpyInJetframe", "V0protonpyInJetframe", kTH1F, {axisPy});
@@ -289,6 +299,11 @@ struct LfMyV0s {
289299 registryData.add("protonQA/profileprotonsinphiInJetframe", "Invariant Mass vs sin(phi)", {HistType::kTProfile, {{200, 0.9, 1.2}}});
290300 registryData.add("protonQA/profileprotoncosSquarethetaInJetframe", "Invariant Mass vs cos^2(theta)", {HistType::kTProfile, {{200, 0.9, 1.2}}});
291301 registryData.add("protonQA/V0protonMassInJetframe", "V0protonMassInJetframe", kTH1F, {axisMass});
302+ registryData.add("JetQA/JetthetaInJetframe", "JetthetaInJetframe", kTH1F, {axisTheta});
303+ registryData.add("JetQA/JetphiInJetframe", "JetphiInJetframe", kTH1F, {axisPhi});
304+ registryData.add("JetQA/JetpxInJetframe", "JetpxInJetframe", kTH1F, {axisPx});
305+ registryData.add("JetQA/JetpyInJetframe", "JetpyInJetframe", kTH1F, {axisPy});
306+ registryData.add("JetQA/JetpzInJetframe", "JetpzInJetframe", kTH1F, {axisPz});
292307
293308 registryData.add("protonQA/V0protonpxInJetV0frame", "V0protonpxInJetV0frame", kTH1F, {axisPx});
294309 registryData.add("protonQA/V0protonpyInJetV0frame", "V0protonpyInJetV0frame", kTH1F, {axisPy});
@@ -300,6 +315,11 @@ struct LfMyV0s {
300315 registryData.add("protonQA/profileprotonsinthetaInJetV0frame", "Invariant Mass vs sin(theta)", {HistType::kTProfile, {{200, 0.9, 1.2}}});
301316 registryData.add("protonQA/profileprotonsinphiInJetV0frame", "Invariant Mass vs sin(phi)", {HistType::kTProfile, {{200, 0.9, 1.2}}});
302317 registryData.add("protonQA/profileprotoncosSquarethetaInJetV0frame", "Invariant Mass vs cos^2(theta)", {HistType::kTProfile, {{200, 0.9, 1.2}}});
318+ registryData.add("JetQA/JetthetaInJetV0frame", "JetthetaInJetV0frame", kTH1F, {axisTheta});
319+ registryData.add("JetQA/JetphiInJetV0frame", "JetphiInJetV0frame", kTH1F, {axisPhi});
320+ registryData.add("JetQA/JetpxInJetV0frame", "JetpxInJetV0frame", kTH1F, {axisPx});
321+ registryData.add("JetQA/JetpyInJetV0frame", "JetpyInJetV0frame", kTH1F, {axisPy});
322+ registryData.add("JetQA/JetpzInJetV0frame", "JetpzInJetV0frame", kTH1F, {axisPz});
303323
304324 registryData.add("V0LambdapxInJetV0frame", "V0LambdapxInJetV0frame", kTH1F, {axisPx});
305325 registryData.add("V0LambdapyInJetV0frame", "V0LambdapyInJetV0frame", kTH1F, {axisPy});
@@ -376,7 +396,7 @@ struct LfMyV0s {
376396
377397 registryV0Data.add("hprotoncosthetainLab", "hprotoncosthetainLab", kTH1F, {{200, -1.f, 1.f}});
378398 registryV0Data.add("hprotonsinthetainLab", "hprotonsinthetainLab", kTH1F, {{200, -1.f, 1.f}});
379- registryV0Data.add("hprotonthetainLab", "hprotonthetainLab", kTH1F, {{200, 0.f, TMath::Pi()} });
399+ registryV0Data.add("hprotonthetainLab", "hprotonthetainLab", kTH1F, {axisTheta });
380400
381401 registryV0Data.add("hprotoncosthetainV0", "hprotoncosthetainV0", kTH1F, {{200, -1.f, 1.f}});
382402 registryV0Data.add("hprotonsinthetainV0", "hprotonsinthetainV0", kTH1F, {{200, -1.f, 1.f}});
@@ -1516,6 +1536,7 @@ struct LfMyV0s {
15161536 float maxJetpz = 0;
15171537 float maxJeteta = 0;
15181538 float maxJetphi = 0;
1539+ float maxJetE = 0;
15191540 float maxJetpT = 0;
15201541 float maxJetPt = -999;
15211542 for (auto& jet : jets) {
@@ -1541,6 +1562,7 @@ struct LfMyV0s {
15411562 maxJetpy = jet.py();
15421563 maxJetpz = jet.pz();
15431564 maxJeteta = jet.eta();
1565+ maxJetE = jet.E();
15441566 maxJetphi = jet.phi();
15451567 maxJetpT = jet.pt();
15461568 maxJetPt = maxJetpT;
@@ -1609,6 +1631,12 @@ struct LfMyV0s {
16091631 double ELambda = sqrt(candidate.mLambda() * candidate.mLambda() + PLambda * PLambda);
16101632 double protonE = sqrt(massPr * massPr + pos.px() * pos.px() + pos.py() * pos.py() + pos.pz() * pos.pz());
16111633
1634+ TMatrixD pLabJet(4, 1);
1635+ pLabJet(0, 0) = maxJetE;
1636+ pLabJet(1, 0) = maxJetpx;
1637+ pLabJet(2, 0) = maxJetpy;
1638+ pLabJet(3, 0) = maxJetpz;
1639+
16121640 TMatrixD pLabV0(4, 1);
16131641 pLabV0(0, 0) = ELambda;
16141642 pLabV0(1, 0) = candidate.px();
@@ -1641,9 +1669,16 @@ struct LfMyV0s {
16411669 double protonPInLab = sqrt(pLabproton(1, 0) * pLabproton(1, 0) + pLabproton(2, 0) * pLabproton(2, 0) + pLabproton(3, 0) * pLabproton(3, 0));
16421670 double protonsinThetaInLab = protonPtInLab / protonPInLab;
16431671 double protonMassInLab = sqrt(pLabproton(0, 0) * pLabproton(0, 0) - pLabproton(1, 0) * pLabproton(1, 0) - pLabproton(2, 0) * pLabproton(2, 0) - pLabproton(3, 0) * pLabproton(3, 0));
1672+ double jettheta = maxJetpz / sqrt(pLabJet(1, 0) * pLabJet(1, 0) + pLabJet(2, 0) * pLabJet(2, 0) + pLabJet(3, 0) * pLabJet(3, 0));
1673+ double jetphi = maxJetpy / sqrt(pLabJet(1, 0) * pLabJet(1, 0) + pLabJet(2, 0) * pLabJet(2, 0));
1674+ registryData.fill(HIST("JetQA/JetthetaInLab"), TMath::ASin(jettheta));
1675+ registryData.fill(HIST("JetQA/JetphiInLab"), TMath::ASin(jetphi));
1676+ registryData.fill(HIST("JetQA/JetpxInLab"), pLabJet(1, 0));
1677+ registryData.fill(HIST("JetQA/JetpyInLab"), pLabJet(2, 0));
1678+ registryData.fill(HIST("JetQA/JetpzInLab"), pLabJet(3, 0));
16441679
16451680 registryData.fill(HIST("protonQA/V0protonphiInLab"), TMath::ASin(protonsinPhiInLab));
1646- registryData.fill(HIST("protonQA/V0protonThetaInLab "), TMath::ASin(protonsinThetaInLab));
1681+ registryData.fill(HIST("protonQA/V0protonthetaInLab "), TMath::ASin(protonsinThetaInLab));
16471682 registryData.fill(HIST("protonQA/V0protoncosthetaInLab"), protoncosthetaInLab);
16481683 registryData.fill(HIST("protonQA/profileprotonsinthetaInLab"), candidate.mLambda(), protonsinThetaInLab);
16491684 registryData.fill(HIST("protonQA/profileprotonsinphiInLab"), candidate.mLambda(), protonsinPhiInLab);
@@ -1657,14 +1692,24 @@ struct LfMyV0s {
16571692 double protonPtInV0 = sqrt(protonInV0(1, 0) * protonInV0(1, 0) + protonInV0(2, 0) * protonInV0(2, 0));
16581693 double protonsinThetaInV0 = protonPtInV0 / protonPInV0;
16591694
1695+ TMatrixD JetInV0(4, 1);
1696+ JetInV0 = LorentzTransInV0frame(ELambda, candidate.px(), candidate.py(), candidate.pz()) * pLabJet;
1697+ double jetthetaInV0 = JetInV0(3, 0) / sqrt(JetInV0(1, 0) * JetInV0(1, 0) + JetInV0(2, 0) * JetInV0(2, 0) + JetInV0(3, 0) * JetInV0(3, 0));
1698+ double jetphiInV0 = JetInV0(2, 0) / sqrt(JetInV0(1, 0) * JetInV0(1, 0) + JetInV0(2, 0) * JetInV0(2, 0));
1699+ registryData.fill(HIST("JetQA/JetthetaInV0"), TMath::ASin(jetthetaInV0));
1700+ registryData.fill(HIST("JetQA/JetphiInV0"), TMath::ASin(jetphiInV0));
1701+ registryData.fill(HIST("JetQA/JetpxInV0"), JetInV0(1, 0));
1702+ registryData.fill(HIST("JetQA/JetpyInV0"), JetInV0(2, 0));
1703+ registryData.fill(HIST("JetQA/JetpzInV0"), JetInV0(3, 0));
1704+
16601705 registryData.fill(HIST("protonQA/V0protonMassInRest_frame"), protonMassInV0);
16611706 registryData.fill(HIST("protonQA/V0protonpxInRest_frame"), protonInV0(1, 0));
16621707 registryData.fill(HIST("protonQA/V0protonpyInRest_frame"), protonInV0(2, 0));
16631708 registryData.fill(HIST("protonQA/V0protonpzInRest_frame"), protonInV0(3, 0));
16641709 double protonsinPhiInV0frame = protonInV0(2, 0) / sqrt(protonInV0(1, 0) * protonInV0(1, 0) + protonInV0(2, 0) * protonInV0(2, 0));
16651710 double protoncosthetaInV0frame = protonInV0(3, 0) / sqrt(protonInV0(1, 0) * protonInV0(1, 0) + protonInV0(2, 0) * protonInV0(2, 0) + protonInV0(3, 0) * protonInV0(3, 0));
16661711 registryData.fill(HIST("protonQA/V0protonphiInRest_frame"), TMath::ASin(protonsinPhiInV0frame));
1667- registryData.fill(HIST("protonQA/V0protonThetaInRest_frame "), TMath::ASin(protonsinThetaInV0));
1712+ registryData.fill(HIST("protonQA/V0protonthetaInRest_frame "), TMath::ASin(protonsinThetaInV0));
16681713 registryData.fill(HIST("protonQA/V0protoncosthetaInV0frame"), protoncosthetaInV0frame);
16691714 registryData.fill(HIST("protonQA/profileprotonsinthetaInV0frame"), candidate.mLambda(), protonsinThetaInV0);
16701715 registryData.fill(HIST("protonQA/profileprotonsinphiInV0frame"), candidate.mLambda(), protonsinPhiInV0frame);
@@ -1679,11 +1724,21 @@ struct LfMyV0s {
16791724 double protonSinThetainJet = protonPtinJet / protonPinJet;
16801725 double protonMassInJetframe = sqrt(protonInJet(0, 0) * protonInJet(0, 0) - protonInJet(1, 0) * protonInJet(1, 0) - protonInJet(2, 0) * protonInJet(2, 0) - protonInJet(3, 0) * protonInJet(3, 0));
16811726
1727+ TMatrixD pInJet(4, 1);
1728+ pInJet = MyTMatrixTranslationToJet(maxJetpx, maxJetpy, maxJetpz, candidate.px(), candidate.py(), candidate.pz()) * pLabJet;
1729+ double jetthetaInJet = pInJet(3, 0) / sqrt(pInJet(1, 0) * pInJet(1, 0) + pInJet(2, 0) * pInJet(2, 0) + pInJet(3, 0) * pInJet(3, 0));
1730+ double jetphiInJet = pInJet(2, 0) / sqrt(pInJet(1, 0) * pInJet(1, 0) + pInJet(2, 0) * pInJet(2, 0));
1731+ registryData.fill(HIST("JetQA/JetthetaInJetframe"), TMath::ASin(jetthetaInJet));
1732+ registryData.fill(HIST("JetQA/JetphiInJetframe"), TMath::ASin(jetphiInJet));
1733+ registryData.fill(HIST("JetQA/JetpxInJetframe"), pInJet(1, 0));
1734+ registryData.fill(HIST("JetQA/JetpyInJetframe"), pInJet(2, 0));
1735+ registryData.fill(HIST("JetQA/JetpzInJetframe"), pInJet(3, 0));
1736+
16821737 registryData.fill(HIST("protonQA/V0protonpxInJetframe"), protonInJet(1, 0));
16831738 registryData.fill(HIST("protonQA/V0protonpyInJetframe"), protonInJet(2, 0));
16841739 registryData.fill(HIST("protonQA/V0protonpzInJetframe"), protonInJet(3, 0));
16851740 registryData.fill(HIST("protonQA/V0protonphiInJetframe"), TMath::ASin(protonsinPhiInJet));
1686- registryData.fill(HIST("protonQA/V0protonThetaInJetframe "), TMath::ASin(protonSinThetainJet));
1741+ registryData.fill(HIST("protonQA/V0protonthetaInJetframe "), TMath::ASin(protonSinThetainJet));
16871742 registryData.fill(HIST("protonQA/V0protoncosthetaInJetframe"), protoncosthetaInJet);
16881743 registryData.fill(HIST("protonQA/profileprotonsinthetaInJetframe"), candidate.mLambda(), protonSinThetainJet);
16891744 registryData.fill(HIST("protonQA/profileprotonsinphiInJetframe"), candidate.mLambda(), protonsinPhiInJet);
@@ -1699,11 +1754,21 @@ struct LfMyV0s {
16991754 double protonSinThetainJetV0 = protonPtinJetV0 / protonPinJetV0;
17001755 double protonMassInJetV0frame = sqrt(protonInJetV0(0, 0) * protonInJetV0(0, 0) - protonInJetV0(1, 0) * protonInJetV0(1, 0) - protonInJetV0(2, 0) * protonInJetV0(2, 0) - protonInJetV0(3, 0) * protonInJetV0(3, 0));
17011756
1757+ TMatrixD JetInJetV0(4, 1);
1758+ JetInJetV0 = LorentzTransInV0frame(ELambda, lambdaInJet(1, 0), lambdaInJet(2, 0), lambdaInJet(3, 0)) * MyTMatrixTranslationToJet(maxJetpx, maxJetpy, maxJetpz, candidate.px(), candidate.py(), candidate.pz()) * pLabJet;
1759+ double jetthetaInJetV0 = JetInJetV0(3, 0) / sqrt(JetInJetV0(1, 0) * JetInJetV0(1, 0) + JetInJetV0(2, 0) * JetInJetV0(2, 0) + JetInJetV0(3, 0) * JetInJetV0(3, 0));
1760+ double jetphiInJetV0 = JetInJetV0(2, 0) / sqrt(JetInJetV0(1, 0) * JetInJetV0(1, 0) + JetInJetV0(2, 0) * JetInJetV0(2, 0));
1761+ registryData.fill(HIST("JetQA/JetthetaInJetV0frame"), TMath::ASin(jetthetaInJetV0));
1762+ registryData.fill(HIST("JetQA/JetphiInJetV0frame"), TMath::ASin(jetphiInJetV0));
1763+ registryData.fill(HIST("JetQA/JetpxInJetV0frame"), JetInJetV0(1, 0));
1764+ registryData.fill(HIST("JetQA/JetpyInJetV0frame"), JetInJetV0(2, 0));
1765+ registryData.fill(HIST("JetQA/JetpzInJetV0frame"), JetInJetV0(3, 0));
1766+
17021767 registryData.fill(HIST("protonQA/V0protonpxInJetV0frame"), protonInJetV0(1, 0));
17031768 registryData.fill(HIST("protonQA/V0protonpyInJetV0frame"), protonInJetV0(2, 0));
17041769 registryData.fill(HIST("protonQA/V0protonpzInJetV0frame"), protonInJetV0(3, 0));
17051770 registryData.fill(HIST("protonQA/V0protonphiInJetV0frame"), TMath::ASin(protonsinphiInJetV0));
1706- registryData.fill(HIST("protonQA/V0protonThetaInJetV0frame "), TMath::ASin(protonSinThetainJetV0));
1771+ registryData.fill(HIST("protonQA/V0protonthetaInJetV0frame "), TMath::ASin(protonSinThetainJetV0));
17071772 registryData.fill(HIST("protonQA/V0protoncosthetaInJetV0"), protoncosthetaInJetV0);
17081773 registryData.fill(HIST("protonQA/V0protonMassInJetV0frame"), protonMassInJetV0frame);
17091774 registryData.fill(HIST("protonQA/profileprotonsinthetaInJetV0frame"), candidate.mLambda(), protonSinThetainJetV0);
0 commit comments