@@ -57,6 +57,12 @@ struct ExclusiveRhoTo4Pi {
5757 int numFourPionTracks = 4 ;
5858 int numPiPlus = 2 ;
5959 int numPiMinus = 2 ;
60+ // Numbers for background estimation
61+ int zero = 0 ;
62+ int one = 1 ;
63+ int three = 3 ;
64+ int four = 4 ;
65+ // PDG Codes and rho mass
6066 double mRho0 = 0.77526 ; // GeV/c^2
6167 int rhoPrime = 30113 ;
6268 // Pb-Pb at 5.36 TeV
@@ -112,7 +118,8 @@ struct ExclusiveRhoTo4Pi {
112118 {
113119 // QA plots: Event and Track Counter
114120 histosDataCounter.add (" EventsCounts_vs_runNo" , " Event Counter Run by Run; Run Number; Number of Events" , kTH2F , {{113 , 0 , 113 }, {14 , 0 , 14 }});
115- histosDataCounter.add (" TracksCounts_vs_runNo" , " Track Counter Run by Run; Run Number; Number of Tracks" , kTH2F , {{113 , 0 , 113 }, {14 , 0 , 14 }});
121+ histosDataCounter.add (" TracksCounts_vs_runNo" , " Track Counter Run by Run; Run Number; Number of Track" , kTH2F , {{113 , 0 , 113 }, {14 , 0 , 14 }});
122+ histosDataCounter.add (" LostInTrackCut_vs_runNo" , " Track Counter Run by Run; Run Number; Number of Tracks" , kTH2F , {{113 , 0 , 113 }, {14 , 0 , 14 }});
116123 // QA plots: event selection-selected events
117124 histosQA.add (" Events/selected/UPCmode" , " UPC mode; Events" , kTH1F , {{5 , 0 , 5 }});
118125 histosQA.add (" Events/selected/GapSide" , " Gap Side;Gap Side; Events" , kTH1F , {{4 , 0 , 4 }});
@@ -235,19 +242,19 @@ struct ExclusiveRhoTo4Pi {
235242 histosKin.add (" all" , " ;pT [GeV/c]; #eta;#varphi" , kTH3F , {pTAxis, etaAxis, phiAxis});
236243 histosKin.add (" selected" , " ;pT [GeV/c]; #eta;#varphi" , kTH3F , {pTAxis, etaAxis, phiAxis});
237244 histosKin.add (" pions" , " ;pT [GeV/c]; #eta;#varphi" , kTH3F , {pTAxis, etaAxis, phiAxis});
238- histosKin.add (" pions-from-4pi " , " ;pT [GeV/c]; #eta;#varphi;y " , kTHnSparseF , {pTAxis, etaAxis, phiAxis, rapidityAxis});
245+ histosKin.add (" pions-from-4pion " , " ;pT [GeV/c]; #eta;#varphi;y " , kTHnSparseF , {pTAxis, etaAxis, phiAxis, rapidityAxis});
239246 // Rho Prime Kinematics
240- histos4piKin.add (" two-pion-mass" , " ;m_{#pi^{+}#pi^{-}} [GeV/c^2];m_{#pi^{+}#pi^{-}} [GeV/c^2];m_{#pi^{+}#pi^{-}} [GeV/c^2];m_{#pi^{+}#pi^{-}} [GeV/c^2];m_{4#pi} [GeV/c^{2}]" , kTHnSparseF , {{100 , 0 , 2 }, {100 , 0 , 2 }, {100 , 0 , 2 }, {100 , 0 , 2 }, invMassAxis});
241- histos4piKin.add (" 2PiPlusPiMinusMass" , " ;m_{#pi^{+}#pi^{+}#pi^{-}} [GeV/c^2];m_{#pi^{+}#pi^{+}#pi^{-}} [GeV/c^2];m_{#pi^{+}#pi^{-}#pi^{+}}#pi^{-}} [GeV/c^2]" , kTHnSparseF , {{200 , 0 , 2.5 }, {200 , 0 , 2.5 }, invMassAxis});
242- histos4piKin.add (" 2PiMinusPiPlusMass" , " ;m_{#pi^{-}#pi^{-}#pi^{+}} [GeV/c^2];m_{#pi^{-}#pi^{-}#pi^{+}} [GeV/c^2];m_{#pi^{+}#pi^{-}#pi^{+}}#pi^{-}} [GeV/c^2]" , kTHnSparseF , {{200 , 0 , 2.5 }, {200 , 0 , 2.5 }, invMassAxis});
247+ histos4piKin.add (" two-pion" , " ;p_{T}^{4#pi} [GeV/c] ;m_{#pi^{+}#pi^{-}} [GeV/c^2];m_{#pi^{+}#pi^{-}} [GeV/c^2];m_{#pi^{+}#pi^{-}} [GeV/c^2];m_{#pi^{+}#pi^{-}} [GeV/c^2];m_{4#pi} [GeV/c^{2}]" , kTHnSparseF , {{100 , 0 , 2 }, {100 , 0 , 2 }, {100 , 0 , 2 }, {100 , 0 , 2 }, invMassAxis});
243248 histos4piKin.add (" zero-charge" , " ;pT [GeV/c]; #eta; #varphi [rad];y; m_{4#pi} [GeV/c^{2}]; Collin-Soper cos(#theta); Collin-Soper #varphi [rad];Run Number" , kTHnSparseF , {pTAxis, etaAxis, phiAxis, rapidityAxis, invMassAxis, cosThetaAxis, phiAxis, {113 , 0 , 113 }});
244249 histos4piKin.add (" non-zero-charge" , " ;pT [GeV/c]; #eta; #varphi [rad];y; m_{4#pi} [GeV/c^{2}];Run Number" , kTHnSparseF , {pTAxis, etaAxis, phiAxis, rapidityAxis, invMassAxis, {113 , 0 , 113 }});
250+ histos4piKin.add (" 3piMinus-1piPlus" , " ;pT [GeV/c]; #eta; #varphi [rad];y; m_{4#pi} [GeV/c^{2}]; Run Number" , kTHnSparseF , {pTAxis, etaAxis, phiAxis, rapidityAxis, invMassAxis, {113 , 0 , 113 }});
251+ histos4piKin.add (" 3piPlus-1piMinus" , " ;pT [GeV/c]; #eta; #varphi [rad];y; m_{4#pi} [GeV/c^{2}]; Run Number" , kTHnSparseF , {pTAxis, etaAxis, phiAxis, rapidityAxis, invMassAxis, {113 , 0 , 113 }});
252+ histos4piKin.add (" 4piPlus" , " ;pT [GeV/c]; #eta; #varphi [rad];y; m_{4#pi} [GeV/c^{2}]; Run Number" , kTHnSparseF , {pTAxis, etaAxis, phiAxis, rapidityAxis, invMassAxis, {113 , 0 , 113 }});
253+ histos4piKin.add (" 4piMinus" , " ;pT [GeV/c]; #eta; #varphi [rad];y; m_{4#pi} [GeV/c^{2}]; Run Number" , kTHnSparseF , {pTAxis, etaAxis, phiAxis, rapidityAxis, invMassAxis, {113 , 0 , 113 }});
245254 // MC truth
246- histosMCtruth.add (" pions-from-4pi " , " ;pT [GeV/c]; #eta;#varphi;y " , kTHnSparseF , {pTAxis, etaAxis, phiAxis, rapidityAxis, {113 , 0 , 113 }});
255+ histosMCtruth.add (" 4-pi-pions " , " ;pT [GeV/c]; #eta;#varphi;y " , kTHnSparseF , {pTAxis, etaAxis, phiAxis, rapidityAxis, {113 , 0 , 113 }});
247256 histosMCtruth.add (" Four-pion" , " ;pT [GeV/c]; #eta; #varphi [rad];y; m_{4#pi} [GeV/c^{2}];Run Number" , kTHnSparseF , {pTAxis, etaAxis, phiAxis, rapidityAxis, invMassAxis, {113 , 0 , 113 }});
248-
249- // ___________________________________________________________________________________________________________________________
250-
257+ // _______________________________________________________________________________________________________________________________________________
251258 setHistBinLabels ();
252259 } // End of init function
253260
@@ -460,25 +467,19 @@ struct ExclusiveRhoTo4Pi {
460467 PxPyPzMVector p4 (selectedPionMinusTracks[1 ].px (), selectedPionMinusTracks[1 ].py (), selectedPionMinusTracks[1 ].pz (), o2::constants::physics::MassPionCharged);
461468
462469 // Kinematics for pions from 4 pion events
463- histosKin.fill (HIST (" pions-from-4pi " ), p1.Pt (), p1.Eta (), p1.Phi (), p1.Rapidity ());
464- histosKin.fill (HIST (" pions-from-4pi " ), p2.Pt (), p2.Eta (), p2.Phi (), p2.Rapidity ());
465- histosKin.fill (HIST (" pions-from-4pi " ), p3.Pt (), p3.Eta (), p3.Phi (), p3.Rapidity ());
466- histosKin.fill (HIST (" pions-from-4pi " ), p4.Pt (), p4.Eta (), p4.Phi (), p4.Rapidity ());
470+ histosKin.fill (HIST (" pions-from-4pion " ), p1.Pt (), p1.Eta (), p1.Phi (), p1.Rapidity ());
471+ histosKin.fill (HIST (" pions-from-4pion " ), p2.Pt (), p2.Eta (), p2.Phi (), p2.Rapidity ());
472+ histosKin.fill (HIST (" pions-from-4pion " ), p3.Pt (), p3.Eta (), p3.Phi (), p3.Rapidity ());
473+ histosKin.fill (HIST (" pions-from-4pion " ), p4.Pt (), p4.Eta (), p4.Phi (), p4.Rapidity ());
467474
468475 PxPyPzMVector p1234 = p1 + p2 + p3 + p4;
469476 PxPyPzMVector p13 = p1 + p3;
470477 PxPyPzMVector p14 = p1 + p4;
471478 PxPyPzMVector p23 = p2 + p3;
472479 PxPyPzMVector p24 = p2 + p4;
473- PxPyPzMVector p123 = p1 + p2 + p3;
474- PxPyPzMVector p124 = p1 + p2 + p4;
475- PxPyPzMVector p134 = p1 + p3 + p4;
476- PxPyPzMVector p234 = p2 + p3 + p4;
477480
478481 // Two Pion Mass combinations
479- histos4piKin.fill (HIST (" two-pion-mass" ), p13.M (), p14.M (), p23.M (), p24.M (), p1234.M ());
480- histos4piKin.fill (HIST (" 2PiPlusPiMinusMass" ), p123.M (), p124.M (), p1234.M ());
481- histos4piKin.fill (HIST (" 2PiMinusPiPlusMass" ), p134.M (), p234.M (), p1234.M ());
482+ histos4piKin.fill (HIST (" two-pion" ), p1234.Pt (), p13.M (), p14.M (), p23.M (), p24.M (), p1234.M ());
482483
483484 double fourPiPhiPair1 = collinSoperPhi (p13, p1234);
484485 double fourPiPhiPair2 = collinSoperPhi (p14, p1234);
@@ -513,6 +514,15 @@ struct ExclusiveRhoTo4Pi {
513514 PxPyPzMVector p4 (selectedPionTracks[3 ].px (), selectedPionTracks[3 ].py (), selectedPionTracks[3 ].pz (), o2::constants::physics::MassPionCharged);
514515 PxPyPzMVector p1234 = p1 + p2 + p3 + p4;
515516 // Kinematics for 4 pion system from non 0 charge events
517+ if (numPionMinusTracks == three && numPiPlusTracks == one) {
518+ histos4piKin.fill (HIST (" 3piMinus-1piPlus" ), p1234.Pt (), p1234.Eta (), p1234.Phi (), p1234.Rapidity (), p1234.M (), runIndex);
519+ } else if (numPionMinusTracks == one && numPiPlusTracks == three) {
520+ histos4piKin.fill (HIST (" 3piPlus-1piMinus" ), p1234.Pt (), p1234.Eta (), p1234.Phi (), p1234.Rapidity (), p1234.M (), runIndex);
521+ } else if (numPionMinusTracks == four && numPiPlusTracks == zero) {
522+ histos4piKin.fill (HIST (" 4piMinus" ), p1234.Pt (), p1234.Eta (), p1234.Phi (), p1234.Rapidity (), p1234.M (), runIndex);
523+ } else if (numPionMinusTracks == zero && numPiPlusTracks == four) {
524+ histos4piKin.fill (HIST (" 4piPlus" ), p1234.Pt (), p1234.Eta (), p1234.Phi (), p1234.Rapidity (), p1234.M (), runIndex);
525+ }
516526 histos4piKin.fill (HIST (" non-zero-charge" ), p1234.Pt (), p1234.Eta (), p1234.Phi (), p1234.Rapidity (), p1234.M (), runIndex);
517527 } // End of Analysis for non 0 charge events
518528 } // End of 4 Pion Analysis Process function for Pass5 Data
@@ -586,74 +596,121 @@ struct ExclusiveRhoTo4Pi {
586596 {
587597 int runIndex = getRunNumberIndex (collision.runNumber ());
588598 // Check if the Event is reconstructed in UPC mode
589- if (collision.flags () != ifUPC) {
599+ if (( collision.flags () != ifUPC) || (!sgSelector. isCBTHadronZdcOk (collision)) ) {
590600 return ;
591601 }
602+
603+ bool ifRejectedEvent = false ;
604+
592605 for (const auto & track : tracks) {
606+
607+ if (ifRejectedEvent) {
608+ break ;
609+ }
610+
593611 histosDataCounter.fill (HIST (" TracksCounts_vs_runNo" ), runIndex, 0 );
594612 PxPyPzMVector trackVector (track.px (), track.py (), track.pz (), o2::constants::physics::MassPionCharged);
595613 // is PV contributor
596614 if (track.isPVContributor () != useOnlyPVtracks) {
615+ histosDataCounter.fill (HIST (" LostInTrackCut_vs_runNo" ), runIndex, 1 );
616+ ifRejectedEvent = true ;
597617 continue ;
598618 }
599619 histosDataCounter.fill (HIST (" TracksCounts_vs_runNo" ), runIndex, 1 );
620+
600621 // pt cut
601622 if (trackVector.Pt () < pTcut) {
623+ histosDataCounter.fill (HIST (" LostInTrackCut_vs_runNo" ), runIndex, 2 );
624+ ifRejectedEvent = true ;
602625 continue ;
603626 }
604627 histosDataCounter.fill (HIST (" TracksCounts_vs_runNo" ), runIndex, 2 );
628+
605629 // eta cut
606630 if (std::abs (trackVector.Eta ()) > etaCut) {
631+ histosDataCounter.fill (HIST (" LostInTrackCut_vs_runNo" ), runIndex, 3 );
632+ ifRejectedEvent = true ;
607633 continue ;
608634 }
609635 histosDataCounter.fill (HIST (" TracksCounts_vs_runNo" ), runIndex, 3 );
636+
610637 // DCA Z cut
611638 if (std::abs (track.dcaZ ()) > dcaZcut) {
639+ histosDataCounter.fill (HIST (" LostInTrackCut_vs_runNo" ), runIndex, 4 );
640+ ifRejectedEvent = true ;
612641 continue ;
613642 }
614643 histosDataCounter.fill (HIST (" TracksCounts_vs_runNo" ), runIndex, 4 );
644+
615645 // DCA XY cut
616646 float maxDCAxy = 0.0105 + 0.035 / std::pow (trackVector.Pt (), 1.1 );
617647 if (dcaXYcut == 0 && (std::fabs (track.dcaXY ()) > maxDCAxy)) {
648+ histosDataCounter.fill (HIST (" LostInTrackCut_vs_runNo" ), runIndex, 5 );
649+ ifRejectedEvent = true ;
618650 continue ;
619651 } else if (dcaXYcut != 0 && (std::fabs (track.dcaXY ()) > dcaXYcut)) {
652+ histosDataCounter.fill (HIST (" LostInTrackCut_vs_runNo" ), runIndex, 5 );
653+ ifRejectedEvent = true ;
620654 continue ;
621655 }
622656 histosDataCounter.fill (HIST (" TracksCounts_vs_runNo" ), runIndex, 5 );
657+
623658 // ITS Track only
624659 if (useITStracksOnly && !track.hasITS ()) {
660+ histosDataCounter.fill (HIST (" LostInTrackCut_vs_runNo" ), runIndex, 6 );
661+ ifRejectedEvent = true ;
625662 continue ;
626663 }
627664 histosDataCounter.fill (HIST (" TracksCounts_vs_runNo" ), runIndex, 6 );
665+
628666 // TPC Track only
629667 if (useTPCtracksOnly && !track.hasTPC ()) {
668+ histosDataCounter.fill (HIST (" LostInTrackCut_vs_runNo" ), runIndex, 7 );
669+ ifRejectedEvent = true ;
630670 continue ;
631671 }
632672 histosDataCounter.fill (HIST (" TracksCounts_vs_runNo" ), runIndex, 7 );
673+
633674 // ITS Chi2 N Clusters cut
634675 if (track.hasITS () && track.itsChi2NCl () > itsChi2NClsCut) {
676+ histosDataCounter.fill (HIST (" LostInTrackCut_vs_runNo" ), runIndex, 8 );
677+ ifRejectedEvent = true ;
635678 continue ;
636679 }
637680 histosDataCounter.fill (HIST (" TracksCounts_vs_runNo" ), runIndex, 8 );
681+
638682 // TPC Chi2 N Clusters cut
639683 if (track.hasTPC () && track.tpcChi2NCl () > tpcChi2NClsCut) {
684+ histosDataCounter.fill (HIST (" LostInTrackCut_vs_runNo" ), runIndex, 9 );
685+ ifRejectedEvent = true ;
640686 continue ;
641687 }
642688 histosDataCounter.fill (HIST (" TracksCounts_vs_runNo" ), runIndex, 9 );
689+
643690 // TPC N Clusters Findable cut
644691 if (track.hasTPC () && track.tpcNClsFindable () < tpcNClsFindableCut) {
692+ histosDataCounter.fill (HIST (" LostInTrackCut_vs_runNo" ), runIndex, 10 );
693+ ifRejectedEvent = true ;
645694 continue ;
646695 }
647696 histosDataCounter.fill (HIST (" TracksCounts_vs_runNo" ), runIndex, 10 );
697+
648698 // Selection PID Pion
649699 if (ifPion (track, useTOF, nSigmaTPCcut, nSigmaTOFcut)) {
650700 histosDataCounter.fill (HIST (" TracksCounts_vs_runNo" ), runIndex, 11 );
651701 if (track.sign () == 1 ) {
652702 histosDataCounter.fill (HIST (" TracksCounts_vs_runNo" ), runIndex, 12 );
703+ } else {
704+ histosDataCounter.fill (HIST (" LostInTrackCut_vs_runNo" ), runIndex, 12 );
653705 }
654706 if (track.sign () == -1 ) {
655707 histosDataCounter.fill (HIST (" TracksCounts_vs_runNo" ), runIndex, 13 );
708+ } else {
709+ histosDataCounter.fill (HIST (" LostInTrackCut_vs_runNo" ), runIndex, 13 );
656710 }
711+ } else {
712+ histosDataCounter.fill (HIST (" LostInTrackCut_vs_runNo" ), runIndex, 11 );
713+ ifRejectedEvent = true ;
657714 } // End of Selection PID Pion
658715 } // End of loop over tracks
659716 } // End of processCounter function
@@ -856,10 +913,10 @@ struct ExclusiveRhoTo4Pi {
856913 PxPyPzMVector p4 (selectedPionMinusTracks[1 ].px (), selectedPionMinusTracks[1 ].py (), selectedPionMinusTracks[1 ].pz (), o2::constants::physics::MassPionCharged);
857914
858915 // Kinematics for pions from 4 pion events
859- histosKin.fill (HIST (" pions-from-4pi " ), p1.Pt (), p1.Eta (), p1.Phi (), p1.Rapidity ());
860- histosKin.fill (HIST (" pions-from-4pi " ), p2.Pt (), p2.Eta (), p2.Phi (), p2.Rapidity ());
861- histosKin.fill (HIST (" pions-from-4pi " ), p3.Pt (), p3.Eta (), p3.Phi (), p3.Rapidity ());
862- histosKin.fill (HIST (" pions-from-4pi " ), p4.Pt (), p4.Eta (), p4.Phi (), p4.Rapidity ());
916+ histosKin.fill (HIST (" pions-from-4pion " ), p1.Pt (), p1.Eta (), p1.Phi (), p1.Rapidity ());
917+ histosKin.fill (HIST (" pions-from-4pion " ), p2.Pt (), p2.Eta (), p2.Phi (), p2.Rapidity ());
918+ histosKin.fill (HIST (" pions-from-4pion " ), p3.Pt (), p3.Eta (), p3.Phi (), p3.Rapidity ());
919+ histosKin.fill (HIST (" pions-from-4pion " ), p4.Pt (), p4.Eta (), p4.Phi (), p4.Rapidity ());
863920
864921 PxPyPzMVector p1234 = p1 + p2 + p3 + p4;
865922 PxPyPzMVector p13 = p1 + p3;
@@ -868,7 +925,7 @@ struct ExclusiveRhoTo4Pi {
868925 PxPyPzMVector p24 = p2 + p4;
869926
870927 // Two Pion Mass combinations
871- histos4piKin.fill (HIST (" two-pion-mass " ), p13.M (), p14.M (), p23.M (), p24.M (), p1234.M ());
928+ histos4piKin.fill (HIST (" two-pion" ), p13.M (), p14.M (), p23.M (), p24.M (), p1234.M ());
872929
873930 double fourPiPhiPair1 = collinSoperPhi (p13, p1234);
874931 double fourPiPhiPair2 = collinSoperPhi (p14, p1234);
@@ -884,6 +941,7 @@ struct ExclusiveRhoTo4Pi {
884941 double mDiff14 = std::abs ((p14.M () - mRho0 ));
885942 double mDiff23 = std::abs ((p23.M () - mRho0 ));
886943 double mDiff24 = std::abs ((p24.M () - mRho0 ));
944+
887945 if ((mDiff13 < mDiff14 ) && (mDiff13 < mDiff23 ) && (mDiff13 < mDiff24 )) {
888946 histos4piKin.fill (HIST (" zero-charge" ), p1234.Pt (), p1234.Eta (), p1234.Phi (), p1234.Rapidity (), p1234.M (), fourPiCosThetaPair1, fourPiPhiPair1, runIndex);
889947 } else if ((mDiff14 < mDiff13 ) && (mDiff14 < mDiff23 ) && (mDiff14 < mDiff24 )) {
@@ -903,6 +961,15 @@ struct ExclusiveRhoTo4Pi {
903961 PxPyPzMVector p4 (selectedPionTracks[3 ].px (), selectedPionTracks[3 ].py (), selectedPionTracks[3 ].pz (), o2::constants::physics::MassPionCharged);
904962 PxPyPzMVector p1234 = p1 + p2 + p3 + p4;
905963 // Kinematics for 4 pion system from non 0 charge events
964+ if (numPionMinusTracks == three && numPiPlusTracks == one) {
965+ histos4piKin.fill (HIST (" 3piMinus-1piPlus" ), p1234.Pt (), p1234.Eta (), p1234.Phi (), p1234.Rapidity (), p1234.M (), runIndex);
966+ } else if (numPionMinusTracks == one && numPiPlusTracks == three) {
967+ histos4piKin.fill (HIST (" 3piPlus-1piMinus" ), p1234.Pt (), p1234.Eta (), p1234.Phi (), p1234.Rapidity (), p1234.M (), runIndex);
968+ } else if (numPionMinusTracks == four && numPiPlusTracks == zero) {
969+ histos4piKin.fill (HIST (" 4piMinus" ), p1234.Pt (), p1234.Eta (), p1234.Phi (), p1234.Rapidity (), p1234.M (), runIndex);
970+ } else if (numPionMinusTracks == zero && numPiPlusTracks == four) {
971+ histos4piKin.fill (HIST (" 4piPlus" ), p1234.Pt (), p1234.Eta (), p1234.Phi (), p1234.Rapidity (), p1234.M (), runIndex);
972+ }
906973 histos4piKin.fill (HIST (" non-zero-charge" ), p1234.Pt (), p1234.Eta (), p1234.Phi (), p1234.Rapidity (), p1234.M (), runIndex);
907974 } // End of Analysis for non 0 charge events
908975 } // End of 4 Pion Analysis Process function for Pass5 MC
@@ -924,11 +991,11 @@ struct ExclusiveRhoTo4Pi {
924991 for (const auto & daughter : particle.daughters_as <aod::UDMcParticles>()) {
925992 PxPyPzMVector dVector (daughter.px (), daughter.py (), daughter.pz (), o2::constants::physics::MassPionCharged);
926993 if (daughter.pdgCode () == PDG_t::kPiPlus ) {
927- histosMCtruth.fill (HIST (" pions-from-4pi " ), dVector.Pt (), dVector.Eta (), dVector.Phi (), dVector.Rapidity (), runIndex);
994+ histosMCtruth.fill (HIST (" 4-pi-pions " ), dVector.Pt (), dVector.Eta (), dVector.Phi (), dVector.Rapidity (), runIndex);
928995 p1234 = p1234 + dVector;
929996 }
930997 if (daughter.pdgCode () == PDG_t::kPiMinus ) {
931- histosMCtruth.fill (HIST (" pions-from-4pi " ), dVector.Pt (), dVector.Eta (), dVector.Phi (), dVector.Rapidity (), runIndex);
998+ histosMCtruth.fill (HIST (" 4-pi-pions " ), dVector.Pt (), dVector.Eta (), dVector.Phi (), dVector.Rapidity (), runIndex);
932999 p1234 = p1234 + dVector;
9331000 }
9341001 } // End of loop over daughters
@@ -1105,6 +1172,7 @@ struct ExclusiveRhoTo4Pi {
11051172
11061173 auto h1 = histosDataCounter.get <TH2>(HIST (" EventsCounts_vs_runNo" ));
11071174 auto h2 = histosDataCounter.get <TH2>(HIST (" TracksCounts_vs_runNo" ));
1175+ auto h21 = histosDataCounter.get <TH2>(HIST (" LostInTrackCut_vs_runNo" ));
11081176
11091177 auto h3 = histos4piKin.get <THnSparse>(HIST (" zero-charge" ));
11101178 auto h4 = histos4piKin.get <THnSparse>(HIST (" non-zero-charge" ));
@@ -1115,9 +1183,13 @@ struct ExclusiveRhoTo4Pi {
11151183 }
11161184 for (int i = 0 ; i < numTrackCuts; ++i) {
11171185 h2->GetYaxis ()->SetBinLabel (i + 1 , trackLabels[i].c_str ());
1186+ h21->GetYaxis ()->SetBinLabel (i + 1 , trackLabels[i].c_str ());
11181187 }
11191188 for (int i = 0 ; i < numRunNums; ++i) {
11201189 std::string runLabel = std::to_string (runNos[i]);
1190+ h1->GetXaxis ()->SetBinLabel (i + 1 , runLabel.c_str ());
1191+ h2->GetXaxis ()->SetBinLabel (i + 1 , runLabel.c_str ());
1192+ h21->GetXaxis ()->SetBinLabel (i + 1 , runLabel.c_str ());
11211193 h3->GetAxis (7 )->SetBinLabel (i + 1 , runLabel.c_str ());
11221194 h4->GetAxis (5 )->SetBinLabel (i + 1 , runLabel.c_str ());
11231195 h5->GetAxis (5 )->SetBinLabel (i + 1 , runLabel.c_str ());
0 commit comments