1616// / \author Zhen Zhang <zhenz@cern.ch>
1717// / \author Ravindra Singh <ravindra.singh@cern.ch>
1818
19- #include " PWGHF/Core/CentralityEstimation.h"
2019#include " PWGHF/Core/HfHelper.h"
2120#include " PWGHF/Core/SelectorCuts.h"
2221#include " PWGHF/DataModel/CandidateReconstructionTables.h"
@@ -48,8 +47,6 @@ using namespace o2::framework;
4847using namespace o2 ::framework::expressions;
4948using namespace o2 ::analysis::hf_correlations;
5049
51- using namespace o2 ::hf_centrality;
52-
5350// /
5451// / Returns deltaPhi values in range [-pi/2., 3.*pi/2.], typically used for correlation studies
5552// /
@@ -86,12 +83,6 @@ struct HfCorrelatorLcHadronsSelection {
8683 // filter on selection of Lc and decay channel Lc->PKPi
8784 Filter lcFilter = ((o2::aod::hf_track_index::hfflag & static_cast <uint8_t >(1 << aod::hf_cand_3prong::DecayType::LcToPKPi)) != static_cast <uint8_t >(0 )) && (aod::hf_sel_candidate_lc::isSelLcToPKPi >= selectionFlagLc || aod::hf_sel_candidate_lc::isSelLcToPiKP >= selectionFlagLc);
8885
89- template <typename Coll>
90- float evaluateCentralityColl (const Coll& collision)
91- {
92- return o2::hf_centrality::getCentralityColl<Coll>(collision);
93- }
94-
9586 // / Code to select collisions with at least one Lc - for real data and data-like analysis
9687 void processLcSelectionData (SelCollisions::iterator const & collision,
9788 CandidatesLcData const & candidates)
@@ -112,7 +103,7 @@ struct HfCorrelatorLcHadronsSelection {
112103 }
113104 }
114105
115- float cent = evaluateCentralityColl ( collision);
106+ float cent = collision. centFT0M ( );
116107
117108 if (useSel8) {
118109 isSel8 = collision.sel8 ();
@@ -300,7 +291,7 @@ struct HfCorrelatorLcHadrons {
300291 registry.add (" hMultiplicity" , " multiplicity;multiplicity;entries" , {HistType::kTH1F , {{10000 , 0 ., 10000 .}}});
301292 registry.add (" hMultFT0M" , " multiplicity;multiplicity;entries" , {HistType::kTH1F , {{10000 , 0 ., 10000 .}}});
302293 registry.add (" hZvtx" , " z vertex;z vertex;entries" , {HistType::kTH1F , {{200 , -20 ., 20 .}}});
303- registry.add (" hCentFT0M" , " Centrality FT0M; Centrality;entries" , {HistType::kTH1F , {{100 , 0 ., 100 .}}});
294+ registry.add (" hCentFT0M" , " Centrality FT0M; Centrality;entries" , {HistType::kTH1D , {{100 , 0 ., 100 .}}});
304295 registry.add (" hLcBin" , " Lc selected in pool Bin;pool Bin;entries" , {HistType::kTH1F , {{9 , 0 ., 9 .}}});
305296 registry.add (" hTracksBin" , " Tracks selected in pool Bin;pool Bin;entries" , {HistType::kTH1F , {{9 , 0 ., 9 .}}});
306297 if (isMultiplicityDependent) {
@@ -353,12 +344,6 @@ struct HfCorrelatorLcHadrons {
353344 corrBinning = {{binsZVtx, binsMultiplicity}, true };
354345 }
355346
356- template <typename Coll>
357- float evaluateCentralityColl (const Coll& collision)
358- {
359- return o2::hf_centrality::getCentralityColl<Coll>(collision);
360- }
361-
362347 // / Lc-hadron correlation pair builder - for real data and data-like analysis (i.e. reco-level w/o matching request via MC truth)
363348 void processData (SelCollisionsWithLc::iterator const & collision,
364349 TracksData const & tracks,
@@ -383,7 +368,7 @@ struct HfCorrelatorLcHadrons {
383368 int gCollisionId = collision.globalIndex ();
384369 int64_t timeStamp = bc.timestamp ();
385370
386- float cent = evaluateCentralityColl ( collision);
371+ float cent = collision. centFT0M ( );
387372
388373 int poolBin = corrBinning.getBin (std::make_tuple (collision.posZ (), collision.multFT0M ()));
389374 int nTracks = 0 ;
@@ -428,7 +413,7 @@ struct HfCorrelatorLcHadrons {
428413 if (isMultiplicityDependent) {
429414 registry.fill (HIST (" hMassLcVsPtvsmult" ), hfHelper.invMassLcToPKPi (candidate), candidate.pt (), cent, efficiencyWeightLc);
430415 } else {
431- registry.fill (HIST (" hMassLcVsPt" ), hfHelper.invMassLcToPKPi (candidate), candidate.pt (), cent, efficiencyWeightLc);
416+ registry.fill (HIST (" hMassLcVsPt" ), hfHelper.invMassLcToPKPi (candidate), candidate.pt (), efficiencyWeightLc);
432417 }
433418 registry.fill (HIST (" hMassLcData" ), hfHelper.invMassLcToPKPi (candidate), efficiencyWeightLc);
434419 registry.fill (HIST (" hSelectionStatusLcToPKPi" ), candidate.isSelLcToPKPi ());
@@ -442,7 +427,7 @@ struct HfCorrelatorLcHadrons {
442427 if (isMultiplicityDependent) {
443428 registry.fill (HIST (" hMassLcVsPtvsmult" ), hfHelper.invMassLcToPKPi (candidate), candidate.pt (), cent, efficiencyWeightLc);
444429 } else {
445- registry.fill (HIST (" hMassLcVsPt" ), hfHelper.invMassLcToPKPi (candidate), candidate.pt (), cent, efficiencyWeightLc);
430+ registry.fill (HIST (" hMassLcVsPt" ), hfHelper.invMassLcToPKPi (candidate), candidate.pt (), efficiencyWeightLc);
446431 }
447432 registry.fill (HIST (" hMassLcData" ), hfHelper.invMassLcToPiKP (candidate), efficiencyWeightLc);
448433 registry.fill (HIST (" hSelectionStatusLcToPiKP" ), candidate.isSelLcToPiKP ());
@@ -690,7 +675,7 @@ struct HfCorrelatorLcHadrons {
690675 }
691676 // }
692677 }
693- double_t cent = 100.0 ; // will be updated later
678+ float cent = 100.0 ; // will be updated later
694679
695680 // Lc-Hadron correlation dedicated section
696681 // if the candidate is selected as Lc, search for Hadron ad evaluate correlations
@@ -816,6 +801,7 @@ struct HfCorrelatorLcHadrons {
816801
817802 bool isLcPrompt = false ;
818803 bool isLcNonPrompt = false ;
804+ float cent = 100.0 ; // will be updated later
819805
820806 // find leading particle
821807 if (correlateLcWithLeadingParticle) {
@@ -905,7 +891,7 @@ struct HfCorrelatorLcHadrons {
905891 particleAssoc.pt () * chargeAssoc / std::abs (chargeAssoc),
906892 poolBin,
907893 correlationStatus,
908- mcCollision. multMCFT0A () );
894+ cent );
909895 entryLcHadronPairY (particleAssoc.y () - yL);
910896 entryLcHadronRecoInfo (MassLambdaCPlus, true );
911897 entryLcHadronGenInfo (isLcPrompt, particleAssoc.isPhysicalPrimary (), trackOrigin);
@@ -938,7 +924,7 @@ struct HfCorrelatorLcHadrons {
938924 auto trackPos1 = trigLc.template prong0_as <TracksData>(); // positive daughter (negative for the antiparticles)
939925 int8_t chargeLc = trackPos1.sign (); // charge of 1st prong will be the charge of Lc candidate
940926
941- double_t cent = 100.0 ; // will be updated later
927+ float cent = 100.0 ; // will be updated later
942928
943929 std::vector<float > outputMl = {-1 ., -1 ., -1 .};
944930 // LcToPKPi and LcToPiKP division
@@ -1037,7 +1023,7 @@ struct HfCorrelatorLcHadrons {
10371023 registry.fill (HIST (" hZvtx" ), c1.posZ ());
10381024 registry.fill (HIST (" hTracksPoolBin" ), poolBin);
10391025 registry.fill (HIST (" hLcPoolBin" ), poolBinLc);
1040- double_t cent = 100.0 ; // will be updated later
1026+ float cent = 100.0 ; // will be updated later
10411027 for (const auto & [candidate, pAssoc] : o2::soa::combinations (o2::soa::CombinationsFullIndexPolicy (tracks1, tracks2))) {
10421028 if (std::abs (hfHelper.yLc (candidate)) > yCandMax || candidate.pt () < ptCandMin || candidate.pt () > ptCandMax) {
10431029 continue ;
@@ -1139,7 +1125,7 @@ struct HfCorrelatorLcHadrons {
11391125 }
11401126 int8_t chargeLc = pdg->GetParticle (candidate.pdgCode ())->Charge (); // Retrieve charge
11411127 int8_t chargeAssoc = pdg->GetParticle (particleAssoc.pdgCode ())->Charge (); // Retrieve charge
1142- double_t cent = 100.0 ; // will be updated later
1128+ float cent = 100.0 ; // will be updated later
11431129
11441130 int trackOrigin = RecoDecay::getCharmHadronOrigin (mcParticles, particleAssoc, true );
11451131 bool isLcPrompt = candidate.originMcGen () == RecoDecay::OriginType::Prompt;
0 commit comments