@@ -182,6 +182,7 @@ struct HfCorrelatorDplusHadrons {
182182 Produces<aod::Dplus> entryDplus;
183183 Produces<aod::Hadron> entryHadron;
184184 static constexpr std::size_t NDaughters{3u };
185+ static constexpr float kEtaDaughtersMax {0 .8f }; // Eta cut on daughters of D+ meson as Run2
185186
186187 Configurable<int > selectionFlagDplus{" selectionFlagDplus" , 7 , " Selection Flag for Dplus" }; // 7 corresponds to topo+PID cuts
187188 Configurable<int > numberEventsMixed{" numberEventsMixed" , 5 , " Number of events mixed in ME process" };
@@ -577,13 +578,15 @@ struct HfCorrelatorDplusHadrons {
577578 listDaughters.clear ();
578579 RecoDecay::getDaughters (particle1, &listDaughters, arrDaughDplusPDG, 2 );
579580 int counterDaughters = 0 ;
580- if (listDaughters.size () == NDaughters) {
581+ if (listDaughters.size () != NDaughters) continue ;
582+ bool isDaughtersOk = true ;
581583 for (const auto & dauIdx : listDaughters) {
582584 auto daughI = mcParticles.rawIteratorAt (dauIdx - mcParticles.offset ());
585+ if (std::abs (daughI.eta ()) >= kEtaDaughtersMax ) { isDaughtersOk = false ; break ; }
583586 counterDaughters += 1 ;
584587 prongsId[counterDaughters - 1 ] = daughI.globalIndex ();
585588 }
586- }
589+ if (!isDaughtersOk) continue ; // Skip this D+ candidate if any daughter fails eta cut
587590 counterDplusHadron++;
588591 // Dplus Hadron correlation dedicated section
589592 // if it's a Dplus particle, search for Hadron and evaluate correlations
0 commit comments