@@ -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