@@ -284,6 +284,33 @@ struct muonQa {
284284 registry.add (" muons/TrackPDCA" , " MCH track p #times DCA" , {HistType::kTH1F , {pdcaAxis}});
285285 registry.add (" muons/TrackPhi" , " MCH track #phi" , {HistType::kTH1F , {phiAxis}});
286286
287+ // muon origin from MCH quadrants
288+ registry.add (" muons/TrackEtaPos" , " MCH #mu^{+} track #eta" , {HistType::kTH1F , {etaAxis}});
289+ registry.add (" muons/TrackEtaNeg" , " MCH #mu^{-} track #eta" , {HistType::kTH1F , {etaAxis}});
290+ // -- pT and eta
291+ registry.add (" muons/TrackPt_TrackEtaPos" , " track pT and #eta" , {HistType::kTH2F , {transverseMomentumAxis, etaAxis}});
292+ registry.add (" muons/TrackPt_TrackEtaNeg" , " track pT and #eta" , {HistType::kTH2F , {transverseMomentumAxis, etaAxis}});
293+ // top-bottom
294+ registry.add (" muons/TrackEtaPos_T" , " MCH #mu^{+} track #eta, top MCH CH1" , {HistType::kTH1F , {etaAxis}});
295+ registry.add (" muons/TrackEtaPos_B" , " MCH #mu^{+} track #eta, bottom MCH CH1" , {HistType::kTH1F , {etaAxis}});
296+ registry.add (" muons/TrackEtaNeg_T" , " MCH #mu^{-} track #eta, top MCH CH1" , {HistType::kTH1F , {etaAxis}});
297+ registry.add (" muons/TrackEtaNeg_B" , " MCH #mu^{-} track #eta, bottom MCH CH1" , {HistType::kTH1F , {etaAxis}});
298+ // -- pT and eta
299+ registry.add (" muons/TrackPt_TrackEtaPos_T" , " track p_{T} and #eta, top MCH CH1" , {HistType::kTH2F , {transverseMomentumAxis, etaAxis}});
300+ registry.add (" muons/TrackPt_TrackEtaPos_B" , " track p_{T} and #eta, bottom MCH CH1" , {HistType::kTH2F , {transverseMomentumAxis, etaAxis}});
301+ registry.add (" muons/TrackPt_TrackEtaNeg_T" , " track p_{T} and #eta, top MCH CH1" , {HistType::kTH2F , {transverseMomentumAxis, etaAxis}});
302+ registry.add (" muons/TrackPt_TrackEtaNeg_B" , " track p_{T} and #eta, bottom MCH CH1" , {HistType::kTH2F , {transverseMomentumAxis, etaAxis}});
303+ // left-right
304+ registry.add (" muons/TrackEtaPos_L" , " MCH #mu^{+} track #eta, left MCH CH1" , {HistType::kTH1F , {etaAxis}});
305+ registry.add (" muons/TrackEtaPos_R" , " MCH #mu^{+} track #eta, right MCH CH1" , {HistType::kTH1F , {etaAxis}});
306+ registry.add (" muons/TrackEtaNeg_L" , " MCH #mu^{-} track #eta, left MCH CH1" , {HistType::kTH1F , {etaAxis}});
307+ registry.add (" muons/TrackEtaNeg_R" , " MCH #mu^{-} track #eta, right MCH CH1" , {HistType::kTH1F , {etaAxis}});
308+ // -- pT and eta
309+ registry.add (" muons/TrackPt_TrackEtaPos_L" , " track p_{T} and #eta, top MCH CH1" , {HistType::kTH2F , {transverseMomentumAxis, etaAxis}});
310+ registry.add (" muons/TrackPt_TrackEtaPos_R" , " track p_{T} and #eta, bottom MCH CH1" , {HistType::kTH2F , {transverseMomentumAxis, etaAxis}});
311+ registry.add (" muons/TrackPt_TrackEtaNeg_L" , " track p_{T} and #eta, top MCH CH1" , {HistType::kTH2F , {transverseMomentumAxis, etaAxis}});
312+ registry.add (" muons/TrackPt_TrackEtaNeg_R" , " track p_{T} and #eta, bottom MCH CH1" , {HistType::kTH2F , {transverseMomentumAxis, etaAxis}});
313+
287314 // ======================
288315 // Global muons plots
289316 // ======================
@@ -538,6 +565,7 @@ struct muonQa {
538565 AxisSpec invMassAxis = {400 , 1 , 5 , " M_{#mu^{+}#mu^{-}} (GeV/c^{2})" };
539566 AxisSpec invMassCorrelationAxis = {80 , 0 , 8 , " M_{#mu^{+}#mu^{-}} (GeV/c^{2})" };
540567 AxisSpec invMassAxisFull = {5000 , 0 , 100 , " M_{#mu^{+}#mu^{-}} (GeV/c^{2})" };
568+ AxisSpec yPairAxis = {120 , 0.0 , 6.0 , " #y_{pair}" };
541569 AxisSpec invMassAxis2D = {750 , 0 , 15 , " M_{#mu^{+}#mu^{-}} (GeV/c^{2})" };
542570 AxisSpec pTAxis2D = {120 , 0 , 30 , " p_{T} (GeV/c)" };
543571 // MCH-MID tracks with MCH acceptance cuts
@@ -667,11 +695,42 @@ struct muonQa {
667695 registryDimuon.add (" dimuon/same-event/invariantMassFull_GlobalMuonKine_GlobalMatchesCuts_subleading_leading" , " #mu^{+}#mu^{-} invariant mass" , {HistType::kTH1F , {invMassAxisFull}});
668696 registryDimuon.add (" dimuon/same-event/invariantMass_GlobalMuonKine_GlobalMatchesCuts_subleading_subleading" , " #mu^{+}#mu^{-} invariant mass" , {HistType::kTH1F , {invMassAxis}});
669697 registryDimuon.add (" dimuon/same-event/invariantMassFull_GlobalMuonKine_GlobalMatchesCuts_subleading_subleading" , " #mu^{+}#mu^{-} invariant mass" , {HistType::kTH1F , {invMassAxisFull}});
670-
671698 // invariant mass correlations
672699 registryDimuon.add (" dimuon/same-event/invariantMass_MuonKine_vs_GlobalMuonKine" , " M_{#mu^{+}#mu^{-}} - muon tracks vs. global tracks" , {HistType::kTH2F , {invMassCorrelationAxis, invMassCorrelationAxis}});
673700 registryDimuon.add (" dimuon/same-event/invariantMass_ScaledMftKine_vs_GlobalMuonKine" , " M_{#mu^{+}#mu^{-}} - rescaled MFT tracks vs. global tracks" , {HistType::kTH2F , {invMassCorrelationAxis, invMassCorrelationAxis}});
674701 registryDimuon.add (" dimuon/same-event/invariantMass_GlobalMuonKine_subleading_vs_leading" , " M_{#mu^{+}#mu^{-}} - subleading vs. leading matches" , {HistType::kTH2F , {invMassCorrelationAxis, invMassCorrelationAxis}});
702+
703+ // pseudorapidity (only for MCH acceptance cuts)
704+ // MCH-MID tracks with MCH acceptance cuts
705+ registryDimuon.add (" dimuon/same-event/rapPair_MuonKine_MuonCuts" , " #eta of dimuon pair" , {HistType::kTH1F , {yPairAxis}});
706+ // -- Mass and eta
707+ registryDimuon.add (" dimuon/same-event/invariantMass_rapPair_MuonKine_MuonCuts" , " #mu^{+}#mu^{-} invariant mass" , {HistType::kTH2F , {invMassAxis2D, yPairAxis}});
708+ // -- pT and eta
709+ registryDimuon.add (" dimuon/same-event/pT_rapPair_MuonKine_MuonCuts" , " #mu^{+}#mu^{-} p_{T} and #eta" , {HistType::kTH2F , {pTAxis2D, yPairAxis}});
710+ // MCH-MID tracks with MCH acceptance cuts and combinations from the top and bottom halfs of MCH
711+ registryDimuon.add (" dimuon/same-event/rapPair_MuonKine_MuonCuts_TT" , " #eta of dimuon pair, top-top" , {HistType::kTH1F , {yPairAxis}});
712+ registryDimuon.add (" dimuon/same-event/rapPair_MuonKine_MuonCuts_TB" , " #eta of dimuon pair, top-bottom or bottom-top" , {HistType::kTH1F , {yPairAxis}});
713+ registryDimuon.add (" dimuon/same-event/rapPair_MuonKine_MuonCuts_BB" , " #eta of dimuon pair, bottom-bottom" , {HistType::kTH1F , {yPairAxis}});
714+ // -- Mass and eta
715+ registryDimuon.add (" dimuon/same-event/invariantMass_rapPair_MuonKine_MuonCuts_TT" , " #mu^{+}#mu^{-} invariant mass, top-top" , {HistType::kTH2F , {invMassAxis2D, yPairAxis}});
716+ registryDimuon.add (" dimuon/same-event/invariantMass_rapPair_MuonKine_MuonCuts_TB" , " #mu^{+}#mu^{-} invariant mass, top-bottom or bottom-top" , {HistType::kTH2F , {invMassAxis2D, yPairAxis}});
717+ registryDimuon.add (" dimuon/same-event/invariantMass_rapPair_MuonKine_MuonCuts_BB" , " #mu^{+}#mu^{-} invariant mass, bottom-bottom" , {HistType::kTH2F , {invMassAxis2D, yPairAxis}});
718+ // -- pT and eta
719+ registryDimuon.add (" dimuon/same-event/pT_rapPair_MuonKine_MuonCuts_TT" , " #mu^{+}#mu^{-} p_{T} and #eta, top-top" , {HistType::kTH2F , {pTAxis2D, yPairAxis}});
720+ registryDimuon.add (" dimuon/same-event/pT_rapPair_MuonKine_MuonCuts_TB" , " #mu^{+}#mu^{-} p_{T} and #eta, top-bottom or bottom-top" , {HistType::kTH2F , {pTAxis2D, yPairAxis}});
721+ registryDimuon.add (" dimuon/same-event/pT_rapPair_MuonKine_MuonCuts_BB" , " #mu^{+}#mu^{-} p_{T} and #eta, bottom-bottom" , {HistType::kTH2F , {pTAxis2D, yPairAxis}});
722+ // MCH-MID tracks with MCH acceptance cuts and combinations from the left and right halfs of MCH
723+ registryDimuon.add (" dimuon/same-event/rapPair_MuonKine_MuonCuts_LL" , " #eta of dimuon pair, left-left" , {HistType::kTH1F , {yPairAxis}});
724+ registryDimuon.add (" dimuon/same-event/rapPair_MuonKine_MuonCuts_LR" , " #eta of dimuon pair, left-right or right-left" , {HistType::kTH1F , {yPairAxis}});
725+ registryDimuon.add (" dimuon/same-event/rapPair_MuonKine_MuonCuts_RR" , " #eta of dimuon pair, right-right" , {HistType::kTH1F , {yPairAxis}});
726+ // -- Mass and eta
727+ registryDimuon.add (" dimuon/same-event/invariantMass_rapPair_MuonKine_MuonCuts_LL" , " #mu^{+}#mu^{-} invariant mass, left-left" , {HistType::kTH2F , {invMassAxis2D, yPairAxis}});
728+ registryDimuon.add (" dimuon/same-event/invariantMass_rapPair_MuonKine_MuonCuts_LR" , " #mu^{+}#mu^{-} invariant mass, left-right or right-left" , {HistType::kTH2F , {invMassAxis2D, yPairAxis}});
729+ registryDimuon.add (" dimuon/same-event/invariantMass_rapPair_MuonKine_MuonCuts_RR" , " #mu^{+}#mu^{-} invariant mass, right-right" , {HistType::kTH2F , {invMassAxis2D, yPairAxis}});
730+ // -- pT and eta
731+ registryDimuon.add (" dimuon/same-event/pT_rapPair_MuonKine_MuonCuts_LL" , " #mu^{+}#mu^{-} p_{T} and #eta, left-left" , {HistType::kTH2F , {pTAxis2D, yPairAxis}});
732+ registryDimuon.add (" dimuon/same-event/pT_rapPair_MuonKine_MuonCuts_LR" , " #mu^{+}#mu^{-} p_{T} and #eta, left-right or right-left" , {HistType::kTH2F , {pTAxis2D, yPairAxis}});
733+ registryDimuon.add (" dimuon/same-event/pT_rapPair_MuonKine_MuonCuts_RR" , " #mu^{+}#mu^{-} p_{T} and #eta, right-right" , {HistType::kTH2F , {pTAxis2D, yPairAxis}});
675734 }
676735 }
677736
@@ -1021,6 +1080,26 @@ struct muonQa {
10211080 return dimuon.Pt ();
10221081 }
10231082
1083+ template <typename VarT>
1084+ double GetMuMuRap (VarT const & track1, VarT const & track2)
1085+ {
1086+ ROOT::Math::PxPyPzMVector muon1{
1087+ track1.px ,
1088+ track1.py ,
1089+ track1.pz ,
1090+ o2::constants::physics::MassMuon};
1091+
1092+ ROOT::Math::PxPyPzMVector muon2{
1093+ track2.px ,
1094+ track2.py ,
1095+ track2.pz ,
1096+ o2::constants::physics::MassMuon};
1097+
1098+ auto dimuon = muon1 + muon2;
1099+
1100+ return dimuon.Y ();
1101+ }
1102+
10241103 template <typename TMuons, typename TCandidates>
10251104 void GetMuonPairs (TMuons const & muons, TCandidates const & matchingCandidates, const std::map<uint64_t , VarColl>& collisionInfos,
10261105 std::vector<MuonPair>& muonPairs,
@@ -1502,6 +1581,56 @@ struct muonQa {
15021581 registry.get <TH1>(HIST (" muons/TrackPhi" ))->Fill (fgValuesMCH.phi * 180.0 / TMath::Pi ());
15031582 registry.get <TH1>(HIST (" muons/TrackDCA" ))->Fill (std::sqrt (fgValuesMCH.dcaX * fgValuesMCH.dcaX + fgValuesMCH.dcaY * fgValuesMCH.dcaY ));
15041583 }
1584+
1585+ // muon origin for MCH top-bottom and left-right parts
1586+ if (IsGoodMuon (fgValuesMCH, fgValuesMCHpv, configMuons.fTrackChi2MchUp , configMuons.fPMchLow , configMuons.fPtMchLow , -1 .E10 , 1 .E10 , configMuons.fRabsLow , configMuons.fRabsUp , configMuons.fSigmaPdcaUp )) {
1587+ int Quadrant = GetQuadrantPhi (fgValuesMCH.phi * 180.0 / TMath::Pi ());
1588+ int TopBottom = (Quadrant == 0 || Quadrant == 1 ) ? 0 : 1 ;
1589+ int LeftRight = (Quadrant == 0 || Quadrant == 2 ) ? 0 : 1 ;
1590+ int PosNeg = fgValuesMCH.sign > 0 ? 0 : 1 ;
1591+ float eta = fgValuesMCH.eta ;
1592+ float pT = fgValuesMCH.pT ;
1593+
1594+ // same-event case
1595+ if (PosNeg == 0 ) {
1596+ registry.get <TH1>(HIST (" muons/TrackEtaPos" ))->Fill (eta);
1597+ registry.get <TH2>(HIST (" muons/TrackPt_TrackEtaPos" ))->Fill (pT, eta);
1598+
1599+ if (TopBottom == 0 ) {
1600+ registry.get <TH1>(HIST (" muons/TrackEtaPos_T" ))->Fill (eta);
1601+ registry.get <TH2>(HIST (" muons/TrackPt_TrackEtaPos_T" ))->Fill (pT, eta);
1602+ } else if (TopBottom == 1 ) {
1603+ registry.get <TH1>(HIST (" muons/TrackEtaPos_B" ))->Fill (eta);
1604+ registry.get <TH2>(HIST (" muons/TrackPt_TrackEtaPos_B" ))->Fill (pT, eta);
1605+ }
1606+
1607+ if (LeftRight == 0 ) {
1608+ registry.get <TH1>(HIST (" muons/TrackEtaPos_L" ))->Fill (eta);
1609+ registry.get <TH2>(HIST (" muons/TrackPt_TrackEtaPos_L" ))->Fill (pT, eta);
1610+ } else if (LeftRight == 1 ) {
1611+ registry.get <TH1>(HIST (" muons/TrackEtaPos_R" ))->Fill (eta);
1612+ registry.get <TH2>(HIST (" muons/TrackPt_TrackEtaPos_R" ))->Fill (pT, eta);
1613+ }
1614+ } else if (PosNeg == 1 ) {
1615+ registry.get <TH1>(HIST (" muons/TrackEtaNeg" ))->Fill (eta);
1616+ registry.get <TH2>(HIST (" muons/TrackPt_TrackEtaNeg" ))->Fill (pT, eta);
1617+ if (TopBottom == 0 ) {
1618+ registry.get <TH1>(HIST (" muons/TrackEtaNeg_T" ))->Fill (eta);
1619+ registry.get <TH2>(HIST (" muons/TrackPt_TrackEtaNeg_T" ))->Fill (pT, eta);
1620+ } else if (TopBottom == 1 ) {
1621+ registry.get <TH1>(HIST (" muons/TrackEtaNeg_B" ))->Fill (eta);
1622+ registry.get <TH2>(HIST (" muons/TrackPt_TrackEtaNeg_B" ))->Fill (pT, eta);
1623+ }
1624+
1625+ if (LeftRight == 0 ) {
1626+ registry.get <TH1>(HIST (" muons/TrackEtaNeg_L" ))->Fill (eta);
1627+ registry.get <TH2>(HIST (" muons/TrackPt_TrackEtaNeg_L" ))->Fill (pT, eta);
1628+ } else if (LeftRight == 1 ) {
1629+ registry.get <TH1>(HIST (" muons/TrackEtaNeg_R" ))->Fill (eta);
1630+ registry.get <TH2>(HIST (" muons/TrackPt_TrackEtaNeg_R" ))->Fill (pT, eta);
1631+ }
1632+ }
1633+ }
15051634 }
15061635
15071636 if constexpr (static_cast <bool >(GlobalMuonFillMap)) {
@@ -2310,39 +2439,58 @@ struct muonQa {
23102439
23112440 double mass = GetMuMuInvariantMass (fgValuesMuonPV1, fgValuesMuonPV2);
23122441 double pT = GetMuMuPt (fgValuesMuonPV1, fgValuesMuonPV2);
2442+ double yPair = GetMuMuRap (fgValuesMuonPV1, fgValuesMuonPV2);
23132443 if (goodMuonTracks) {
23142444 if (sameEvent) {
23152445 // same-event case
23162446 registryDimuon.get <TH1>(HIST (" dimuon/same-event/invariantMass_MuonKine_MuonCuts" ))->Fill (mass);
23172447 registryDimuon.get <TH1>(HIST (" dimuon/same-event/invariantMassFull_MuonKine_MuonCuts" ))->Fill (mass);
23182448 registryDimuon.get <TH2>(HIST (" dimuon/same-event/invariantMass_pT_MuonKine_MuonCuts" ))->Fill (mass, pT);
2449+ registryDimuon.get <TH1>(HIST (" dimuon/same-event/rapPair_MuonKine_MuonCuts" ))->Fill (yPair);
2450+ registryDimuon.get <TH2>(HIST (" dimuon/same-event/invariantMass_rapPair_MuonKine_MuonCuts" ))->Fill (mass, yPair);
2451+ registryDimuon.get <TH2>(HIST (" dimuon/same-event/pT_rapPair_MuonKine_MuonCuts" ))->Fill (pT, yPair);
23192452
23202453 if (TopBottom1 == 0 && TopBottom2 == 0 ) {
23212454 registryDimuon.get <TH1>(HIST (" dimuon/same-event/invariantMass_MuonKine_MuonCuts_TT" ))->Fill (mass);
23222455 registryDimuon.get <TH1>(HIST (" dimuon/same-event/invariantMassFull_MuonKine_MuonCuts_TT" ))->Fill (mass);
23232456 registryDimuon.get <TH2>(HIST (" dimuon/same-event/invariantMass_pT_MuonKine_MuonCuts_TT" ))->Fill (mass, pT);
2457+ registryDimuon.get <TH1>(HIST (" dimuon/same-event/rapPair_MuonKine_MuonCuts_TT" ))->Fill (yPair);
2458+ registryDimuon.get <TH2>(HIST (" dimuon/same-event/invariantMass_rapPair_MuonKine_MuonCuts_TT" ))->Fill (mass, yPair);
2459+ registryDimuon.get <TH2>(HIST (" dimuon/same-event/pT_rapPair_MuonKine_MuonCuts_TT" ))->Fill (pT, yPair);
23242460 } else if ((TopBottom1 == 0 && TopBottom2 == 1 ) || (TopBottom1 == 1 && TopBottom2 == 0 )) {
23252461 registryDimuon.get <TH1>(HIST (" dimuon/same-event/invariantMass_MuonKine_MuonCuts_TB" ))->Fill (mass);
23262462 registryDimuon.get <TH1>(HIST (" dimuon/same-event/invariantMassFull_MuonKine_MuonCuts_TB" ))->Fill (mass);
23272463 registryDimuon.get <TH2>(HIST (" dimuon/same-event/invariantMass_pT_MuonKine_MuonCuts_TB" ))->Fill (mass, pT);
2464+ registryDimuon.get <TH1>(HIST (" dimuon/same-event/rapPair_MuonKine_MuonCuts_TB" ))->Fill (yPair);
2465+ registryDimuon.get <TH2>(HIST (" dimuon/same-event/invariantMass_rapPair_MuonKine_MuonCuts_TB" ))->Fill (mass, yPair);
2466+ registryDimuon.get <TH2>(HIST (" dimuon/same-event/pT_rapPair_MuonKine_MuonCuts_TB" ))->Fill (pT, yPair);
23282467 } else if (TopBottom1 == 1 && TopBottom2 == 1 ) {
23292468 registryDimuon.get <TH1>(HIST (" dimuon/same-event/invariantMass_MuonKine_MuonCuts_BB" ))->Fill (mass);
23302469 registryDimuon.get <TH1>(HIST (" dimuon/same-event/invariantMassFull_MuonKine_MuonCuts_BB" ))->Fill (mass);
23312470 registryDimuon.get <TH2>(HIST (" dimuon/same-event/invariantMass_pT_MuonKine_MuonCuts_BB" ))->Fill (mass, pT);
2471+ registryDimuon.get <TH1>(HIST (" dimuon/same-event/rapPair_MuonKine_MuonCuts_BB" ))->Fill (yPair);
2472+ registryDimuon.get <TH2>(HIST (" dimuon/same-event/invariantMass_rapPair_MuonKine_MuonCuts_BB" ))->Fill (mass, yPair);
2473+ registryDimuon.get <TH2>(HIST (" dimuon/same-event/pT_rapPair_MuonKine_MuonCuts_BB" ))->Fill (pT, yPair);
23322474 }
23332475
23342476 if (LeftRight1 == 0 && LeftRight2 == 0 ) {
23352477 registryDimuon.get <TH1>(HIST (" dimuon/same-event/invariantMass_MuonKine_MuonCuts_LL" ))->Fill (mass);
23362478 registryDimuon.get <TH1>(HIST (" dimuon/same-event/invariantMassFull_MuonKine_MuonCuts_LL" ))->Fill (mass);
23372479 registryDimuon.get <TH2>(HIST (" dimuon/same-event/invariantMass_pT_MuonKine_MuonCuts_LL" ))->Fill (mass, pT);
2480+ registryDimuon.get <TH1>(HIST (" dimuon/same-event/rapPair_MuonKine_MuonCuts_LL" ))->Fill (yPair);
2481+ registryDimuon.get <TH2>(HIST (" dimuon/same-event/invariantMass_rapPair_MuonKine_MuonCuts_LL" ))->Fill (mass, yPair);
23382482 } else if ((LeftRight1 == 0 && LeftRight2 == 1 ) || (LeftRight1 == 1 && LeftRight2 == 0 )) {
23392483 registryDimuon.get <TH1>(HIST (" dimuon/same-event/invariantMass_MuonKine_MuonCuts_LR" ))->Fill (mass);
23402484 registryDimuon.get <TH1>(HIST (" dimuon/same-event/invariantMassFull_MuonKine_MuonCuts_LR" ))->Fill (mass);
23412485 registryDimuon.get <TH2>(HIST (" dimuon/same-event/invariantMass_pT_MuonKine_MuonCuts_LR" ))->Fill (mass, pT);
2486+ registryDimuon.get <TH1>(HIST (" dimuon/same-event/rapPair_MuonKine_MuonCuts_LR" ))->Fill (yPair);
2487+ registryDimuon.get <TH2>(HIST (" dimuon/same-event/invariantMass_rapPair_MuonKine_MuonCuts_LR" ))->Fill (mass, yPair);
23422488 } else if (LeftRight1 == 1 && LeftRight2 == 1 ) {
23432489 registryDimuon.get <TH1>(HIST (" dimuon/same-event/invariantMass_MuonKine_MuonCuts_RR" ))->Fill (mass);
23442490 registryDimuon.get <TH1>(HIST (" dimuon/same-event/invariantMassFull_MuonKine_MuonCuts_RR" ))->Fill (mass);
23452491 registryDimuon.get <TH2>(HIST (" dimuon/same-event/invariantMass_pT_MuonKine_MuonCuts_RR" ))->Fill (mass, pT);
2492+ registryDimuon.get <TH1>(HIST (" dimuon/same-event/rapPair_MuonKine_MuonCuts_RR" ))->Fill (yPair);
2493+ registryDimuon.get <TH2>(HIST (" dimuon/same-event/invariantMass_rapPair_MuonKine_MuonCuts_RR" ))->Fill (mass, yPair);
23462494 }
23472495 } else {
23482496 // event-mixing case
0 commit comments