@@ -181,7 +181,6 @@ struct HfCorrelatorLcHadronsSelection {
181181// Lc-Hadron correlation pair builder - for real data and data-like analysis (i.e. reco-level w/o matching request via Mc truth)
182182struct HfCorrelatorLcHadrons {
183183 Produces<aod::LcHadronPair> entryLcHadronPair;
184- Produces<aod::LcHadronPairC> entryLcHadronPairC;
185184 Produces<aod::LcHadronPairY> entryLcHadronPairY;
186185 Produces<aod::LcHadronPairTrkPID> entryLcHadronPairTrkPID;
187186 Produces<aod::LcHadronRecoInfo> entryLcHadronRecoInfo;
@@ -387,7 +386,6 @@ struct HfCorrelatorLcHadrons {
387386
388387 float cent=evaluateCentralityColl (collision);
389388
390-
391389 int poolBin = corrBinning.getBin (std::make_tuple (collision.posZ (), collision.multFT0M ()));
392390 int nTracks = 0 ;
393391 if (collision.numContrib () > 1 ) {
@@ -473,7 +471,7 @@ struct HfCorrelatorLcHadrons {
473471 }
474472 }
475473 if (candidate.isSelLcToPKPi () >= selectionFlagLc) {
476- entryLcHadronPairC (getDeltaPhi (track.phi (), candidate.phi ()),
474+ entryLcHadronPair (getDeltaPhi (track.phi (), candidate.phi ()),
477475 track.eta () - candidate.eta (),
478476 candidate.pt () * chargeLc,
479477 track.pt () * track.sign (),
@@ -490,7 +488,7 @@ struct HfCorrelatorLcHadrons {
490488 }
491489 }
492490 if (candidate.isSelLcToPiKP () >= selectionFlagLc) {
493- entryLcHadronPairC (getDeltaPhi (track.phi (), candidate.phi ()),
491+ entryLcHadronPair (getDeltaPhi (track.phi (), candidate.phi ()),
494492 track.eta () - candidate.eta (),
495493 candidate.pt () * chargeLc,
496494 track.pt () * track.sign (),
@@ -685,6 +683,7 @@ struct HfCorrelatorLcHadrons {
685683 }
686684 // }
687685 }
686+ double_t cent =100.0 ; // will be updated later
688687
689688 // Lc-Hadron correlation dedicated section
690689 // if the candidate is selected as Lc, search for Hadron ad evaluate correlations
@@ -734,7 +733,8 @@ struct HfCorrelatorLcHadrons {
734733 candidate.pt () * chargeLc,
735734 track.pt () * track.sign (),
736735 poolBin,
737- correlationStatus);
736+ correlationStatus,
737+ cent);
738738 entryLcHadronPairY (track.y () - hfHelper.yLc (candidate));
739739 entryLcHadronRecoInfo (hfHelper.invMassLcToPKPi (candidate), isLcSignal);
740740 if (fillTrkPID) {
@@ -764,7 +764,8 @@ struct HfCorrelatorLcHadrons {
764764 candidate.pt () * chargeLc,
765765 track.pt () * track.sign (),
766766 poolBin,
767- correlationStatus);
767+ correlationStatus,
768+ cent);
768769 entryLcHadronPairY (track.y () - hfHelper.yLc (candidate));
769770 entryLcHadronRecoInfo (hfHelper.invMassLcToPiKP (candidate), isLcSignal);
770771 if (fillTrkPID) {
@@ -896,7 +897,8 @@ struct HfCorrelatorLcHadrons {
896897 particle.pt () * chargeLc / std::abs (chargeLc),
897898 particleAssoc.pt () * chargeAssoc / std::abs (chargeAssoc),
898899 poolBin,
899- correlationStatus);
900+ correlationStatus,
901+ mcCollision.multMCFT0A ());
900902 entryLcHadronPairY (particleAssoc.y () - yL);
901903 entryLcHadronRecoInfo (MassLambdaCPlus, true );
902904 entryLcHadronGenInfo (isLcPrompt, particleAssoc.isPhysicalPrimary (), trackOrigin);
@@ -928,6 +930,8 @@ struct HfCorrelatorLcHadrons {
928930
929931 auto trackPos1 = trigLc.template prong0_as <TracksData>(); // positive daughter (negative for the antiparticles)
930932 int8_t chargeLc = trackPos1.sign (); // charge of 1st prong will be the charge of Lc candidate
933+
934+ double_t cent =100.0 ; // will be updated later
931935
932936 std::vector<float > outputMl = {-1 ., -1 ., -1 .};
933937 // LcToPKPi and LcToPiKP division
@@ -937,7 +941,8 @@ struct HfCorrelatorLcHadrons {
937941 trigLc.pt () * chargeLc,
938942 assocParticle.pt () * assocParticle.sign (),
939943 poolBin,
940- correlationStatus);
944+ correlationStatus,
945+ cent);
941946 entryLcHadronPairY (assocParticle.y () - hfHelper.yLc (trigLc));
942947 entryLcHadronRecoInfo (hfHelper.invMassLcToPKPi (trigLc), false );
943948 entryLcHadronGenInfo (false , false , 0 );
@@ -956,7 +961,8 @@ struct HfCorrelatorLcHadrons {
956961 trigLc.pt () * chargeLc,
957962 assocParticle.pt () * assocParticle.sign (),
958963 poolBin,
959- correlationStatus);
964+ correlationStatus,
965+ cent);
960966 entryLcHadronPairY (assocParticle.y () - hfHelper.yLc (trigLc));
961967 entryLcHadronRecoInfo (hfHelper.invMassLcToPiKP (trigLc), false );
962968 entryLcHadronGenInfo (false , false , 0 );
@@ -1016,14 +1022,15 @@ struct HfCorrelatorLcHadrons {
10161022 }
10171023 auto tracksTuple = std::make_tuple (candidates, tracks);
10181024 Pair<SelCollisionsWithLc, CandidatesLcMcRec, TracksWithMc, BinningType> pairMcRec{corrBinning, numberEventsMixed, -1 , collisions, tracksTuple, &cache};
1019-
1025+
10201026 for (const auto & [c1, tracks1, c2, tracks2] : pairMcRec) {
10211027 int poolBin = corrBinning.getBin (std::make_tuple (c2.posZ (), c2.multFT0M ()));
10221028 int poolBinLc = corrBinning.getBin (std::make_tuple (c1.posZ (), c1.multFT0M ()));
10231029 registry.fill (HIST (" hMultFT0M" ), c1.multFT0M ());
10241030 registry.fill (HIST (" hZvtx" ), c1.posZ ());
10251031 registry.fill (HIST (" hTracksPoolBin" ), poolBin);
10261032 registry.fill (HIST (" hLcPoolBin" ), poolBinLc);
1033+ double_t cent =100.0 ; // will be updated later
10271034 for (const auto & [candidate, pAssoc] : o2::soa::combinations (o2::soa::CombinationsFullIndexPolicy (tracks1, tracks2))) {
10281035 if (std::abs (hfHelper.yLc (candidate)) > yCandMax || candidate.pt () < ptCandMin || candidate.pt () > ptCandMax) {
10291036 continue ;
@@ -1056,7 +1063,8 @@ struct HfCorrelatorLcHadrons {
10561063 candidate.pt () * chargeLc,
10571064 pAssoc.pt () * pAssoc.sign (),
10581065 poolBin,
1059- correlationStatus);
1066+ correlationStatus,
1067+ cent);
10601068 entryLcHadronPairY (pAssoc.y () - hfHelper.yLc (candidate));
10611069 entryLcHadronRecoInfo (hfHelper.invMassLcToPKPi (candidate), isLcSignal);
10621070 entryLcHadronGenInfo (isLcPrompt, isPhysicalPrimary, trackOrigin);
@@ -1075,7 +1083,8 @@ struct HfCorrelatorLcHadrons {
10751083 candidate.pt () * chargeLc,
10761084 pAssoc.pt () * pAssoc.sign (),
10771085 poolBin,
1078- correlationStatus);
1086+ correlationStatus,
1087+ cent);
10791088 entryLcHadronPairY (pAssoc.y () - hfHelper.yLc (candidate));
10801089 entryLcHadronRecoInfo (hfHelper.invMassLcToPiKP (candidate), isLcSignal);
10811090 entryLcHadronGenInfo (isLcPrompt, isPhysicalPrimary, trackOrigin);
@@ -1123,6 +1132,7 @@ struct HfCorrelatorLcHadrons {
11231132 }
11241133 int8_t chargeLc = pdg->GetParticle (candidate.pdgCode ())->Charge (); // Retrieve charge
11251134 int8_t chargeAssoc = pdg->GetParticle (particleAssoc.pdgCode ())->Charge (); // Retrieve charge
1135+ double_t cent =100.0 ; // will be updated later
11261136
11271137 int trackOrigin = RecoDecay::getCharmHadronOrigin (mcParticles, particleAssoc, true );
11281138 bool isLcPrompt = candidate.originMcGen () == RecoDecay::OriginType::Prompt;
@@ -1131,7 +1141,8 @@ struct HfCorrelatorLcHadrons {
11311141 candidate.pt () * chargeLc / std::abs (chargeLc),
11321142 particleAssoc.pt () * chargeAssoc / std::abs (chargeAssoc),
11331143 poolBin,
1134- correlationStatus);
1144+ correlationStatus,
1145+ cent);
11351146 entryLcHadronPairY (particleAssoc.y () - yL);
11361147 entryLcHadronRecoInfo (MassLambdaCPlus, true );
11371148 entryLcHadronGenInfo (isLcPrompt, particleAssoc.isPhysicalPrimary (), trackOrigin);
0 commit comments