@@ -262,6 +262,7 @@ struct PhiStrangenessCorrelation {
262262 // Defining the type of the collisions for data and MC
263263 using SelCollisions = soa::Filtered<soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Ms, aod::PVMults, aod::PhimesonSelectionData>>;
264264 using SimCollisions = soa::Join<SelCollisions, aod::McCollisionLabels>;
265+ // using SimCollisions = soa::Filtered<soa::Join<aod::Collisions, aod::EvSels, aod::CentFT0Ms, aod::PVMults, aod::PhimesonSelectionMcReco, aod::McCollisionLabels>>;
265266 using MCCollisions = soa::Filtered<soa::Join<aod::McCollisions, aod::McCentFT0Ms, aod::PhimesonSelectionMcGen>>;
266267
267268 // Defining the type of the V0s and corresponding daughter tracks for data and MC
@@ -280,10 +281,11 @@ struct PhiStrangenessCorrelation {
280281
281282 // Preslice for manual slicing
282283 struct : PresliceGroup {
283- Preslice<SimCollisions> collPerMCCollision = aod::mccollisionlabel::mcCollisionId;
284+ // Preslice<SimCollisions> collPerMCCollision = aod::mccollisionlabel::mcCollisionId;
284285 Preslice<FullMCV0s> v0PerCollision = aod::v0::collisionId;
285286 Preslice<FullMCTracks> trackPerCollision = aod::track::collisionId;
286287 // Preslice<aod::PhimesonCandidatesData> phiCandDataPerCollision = aod::lf_selection_phi_candidate::collisionId;
288+ // PresliceUnsorted<SimCollisions> collPerMCCollision = aod::mccollisionlabel::mcCollisionId;
287289 PresliceUnsorted<aod::PhimesonCandidatesMcReco> phiCandPerCollision = aod::lf_selection_phi_candidate::collisionId;
288290
289291 // Preslice<aod::McParticles> mcPartPerMCCollision = aod::mcparticle::mcCollisionId;
@@ -412,8 +414,13 @@ struct PhiStrangenessCorrelation {
412414 template <bool isMC, typename T1, typename T2>
413415 bool selectionV0 (const T1& v0, const T2& collision)
414416 {
415- const auto & posDaughterTrack = v0.template posTrack_as <V0DauTracks>();
416- const auto & negDaughterTrack = v0.template negTrack_as <V0DauTracks>();
417+ using V0DauTrackType = std::conditional_t <isMC, V0DauMCTracks, V0DauTracks>;
418+
419+ const auto & posDaughterTrack = v0.template posTrack_as <V0DauTrackType>();
420+ const auto & negDaughterTrack = v0.template negTrack_as <V0DauTrackType>();
421+
422+ // const auto& posDaughterTrack = v0.template posTrack_as<V0DauTracks>();
423+ // const auto& negDaughterTrack = v0.template negTrack_as<V0DauTracks>();
417424
418425 if (!selectionTrackStrangeness (posDaughterTrack) || !selectionTrackStrangeness (negDaughterTrack))
419426 return false ;
@@ -638,14 +645,14 @@ struct PhiStrangenessCorrelation {
638645 PROCESS_SWITCH(PhiStrangenessCorrelation, processPhiK0SPionDataME, "Process function for Phi-K0S and Phi-Pion Deltay and Deltaphi 2D Correlations in Data ME", true);
639646 */
640647
641- void processParticleEfficiency (MCCollisions::iterator const & mcCollision, SimCollisions const & collisions, FullMCTracks const & fullMCTracks, FullMCV0s const & V0s, V0DauMCTracks const &, aod::McParticles const & mcParticles, aod::PhimesonCandidatesMcReco const & phiCandidatesMcReco)
648+ void processParticleEfficiency (MCCollisions::iterator const & mcCollision, soa::SmallGroups< SimCollisions> const & collisions, FullMCTracks const & fullMCTracks, FullMCV0s const & V0s, V0DauMCTracks const &, aod::McParticles const & mcParticles, aod::PhimesonCandidatesMcReco const & phiCandidatesMcReco)
642649 {
643650 uint16_t numberAssocColls{0 };
644651 std::vector<float > zVtxs;
645652
646- const auto collsThisMCColl = collisions.sliceBy (preslices.collPerMCCollision , mcCollision.globalIndex ());
653+ // const auto collsThisMCColl = collisions.sliceBy(preslices.collPerMCCollision, mcCollision.globalIndex());
647654
648- for (const auto & collision : collsThisMCColl ) {
655+ for (const auto & collision : collisions ) {
649656 histos.fill (HIST (" event/hRecoMCMultiplicityPercent" ), mcCollision.centFT0M ());
650657 histos.fill (HIST (" event/h2RecoMCVertexZvsMult" ), collision.posZ (), mcCollision.centFT0M ());
651658
@@ -737,7 +744,7 @@ struct PhiStrangenessCorrelation {
737744
738745 switch (std::abs (mcParticle.pdgCode ())) {
739746 case o2::constants::physics::Pdg::kPhi :
740- if (selectionType == 0 && mcParticle.isPhysicalPrimary () && mcParticle. pt () >= phiConfigs.minPhiPt )
747+ if (selectionType == 0 && mcParticle.pt () >= phiConfigs.minPhiPt )
741748 fillGenHistos (HIST (" phi/h3PhiMCGen" ), HIST (" phi/h4PhiMCGenAssocReco" ), mcParticle);
742749 break ;
743750 case PDG_t::kK0Short :
0 commit comments