1212// / \file rho770analysis.cxx
1313// / \brief rho(770)0 analysis in pp 13 & 13.6 TeV
1414// / \author Hyunji Lim (hyunji.lim@cern.ch)
15- // / \since 08/02 /2026
15+ // / \since 05/03 /2026
1616
1717#include " PWGLF/DataModel/LFResonanceTables.h"
1818#include " PWGLF/DataModel/mcCentrality.h"
@@ -64,9 +64,9 @@ struct rho770analysis {
6464
6565 // DCA cuts
6666 Configurable<bool > cDCAxyToPVAsPt{" cDCAxyToPVAsPt" , true , " DCAxy to PV selection as pt" };
67- Configurable<bool > cDCAzToPVAsPt{" cDCAzToPVAsPt" , false , " DCAz to PV selection as pt" };
68- Configurable<float > cfgMaxDCAxyToPVcut{" cfgMaxDCAxyToPVcut" , 0.15 , " Maximum transverse DCA" };
69- Configurable<float > cfgMaxDCAzToPVcut{" cfgMaxDCAzToPVcut" , 2.0 , " Maximum longitudinal DCA" };
67+ Configurable<bool > cDCAzToPVAsPt{" cDCAzToPVAsPt" , true , " DCAz to PV selection as pt" };
68+ Configurable<float > cfgMaxDCAxyToPVcut{" cfgMaxDCAxyToPVcut" , 0.10 , " Maximum transverse DCA" };
69+ Configurable<float > cfgMaxDCAzToPVcut{" cfgMaxDCAzToPVcut" , 0.10 , " Maximum longitudinal DCA" };
7070 Configurable<float > cDCAxytoPVByPtPiFirstP0{" cDCAxytoPVByPtPiFirstP0" , 0.0105 , " Coeff. Track DCAxy cut to PV by pt for Pion First (p0)" };
7171 Configurable<float > cDCAxyToPVByPtPiFirstExp{" cDCAxyToPVByPtPiFirstExp" , 0.035 , " Coeff. Track DCAxy cut to PV by pt for Pion First (exp)" };
7272 Configurable<float > cDCAztoPVByPtPiFirstP0{" cDCAztoPVByPtPiFirstP0" , 0.0105 , " Coeff. Track DCAz cut to PV by pt for Pion First (p0)" };
@@ -88,7 +88,7 @@ struct rho770analysis {
8888 Configurable<bool > cfgUseITSRefit{" cfgUseITSRefit" , false , " Require ITS Refit" };
8989 Configurable<bool > cfgHasTOF{" cfgHasTOF" , false , " Require TOF" };
9090 Configurable<int > cfgTPCcluster{" cfgTPCcluster" , 1 , " Number of TPC cluster" };
91- Configurable<int > cfgTPCRows{" cfgTPCRows" , 80 , " Minimum Number of TPC Crossed Rows " };
91+ Configurable<int > cfgTPCRows{" cfgTPCRows" , 70 , " Minimum Number of TPC Crossed Rows " };
9292
9393 // PID
9494 Configurable<double > cMaxTOFnSigmaPion{" cMaxTOFnSigmaPion" , 3.0 , " TOF nSigma cut for Pion" }; // TOF
@@ -102,7 +102,7 @@ struct rho770analysis {
102102 ConfigurableAxis massK0sAxis{" massK0sAxis" , {200 , 0.46 , 0.54 }, " K0s Invariant mass axis" };
103103 ConfigurableAxis massKstarAxis{" massKstarAxis" , {200 , 0.6 , 1.3 }, " Kstar Invariant mass axis" };
104104 ConfigurableAxis ptAxis{" ptAxis" , {VARIABLE_WIDTH, 0.0 , 0.1 , 0.2 , 0.3 , 0.4 , 0.5 , 0.6 , 0.8 , 1.0 , 1.5 , 2.0 , 2.5 , 3.0 , 3.5 , 4.0 , 4.5 , 5.0 , 6.0 , 7.0 , 8.0 , 10.0 , 13.0 , 20.0 }, " Transverse momentum Binning" };
105- ConfigurableAxis centAxis{" centAxis" , {VARIABLE_WIDTH, 0.0 , 1.0 , 5.0 , 10.0 , 15.0 , 20.0 , 25.0 , 30.0 , 35.0 , 40.0 , 45.0 , 50.0 , 55.0 , 60.0 , 65.0 , 70.0 , 75.0 , 80.0 , 95 .0 , 100 .0 , 105 .0 , 110 .0 }, " Centrality Binning" };
105+ ConfigurableAxis centAxis{" centAxis" , {VARIABLE_WIDTH, 0.0 , 1.0 , 5.0 , 10.0 , 15.0 , 20.0 , 25.0 , 30.0 , 35.0 , 40.0 , 45.0 , 50.0 , 55.0 , 60.0 , 65.0 , 70.0 , 75.0 , 80.0 , 85 .0 , 90 .0 , 95 .0 , 100.0 , 105 .0 }, " Centrality Binning" };
106106
107107 void init (o2::framework::InitContext&)
108108 {
@@ -197,7 +197,7 @@ struct rho770analysis {
197197 const auto mode = static_cast <TrackPIDMode>(selectTypeInt.value );
198198
199199 if (mode == TrackPIDMode::TPCOrTOF) { // TPC or TOF
200- if (std::fabs (track.tpcNSigmaPi ()) >= cMaxTPCnSigmaPion || std::fabs (track.tofNSigmaPi ()) >= cMaxTOFnSigmaPion)
200+ if (std::fabs (track.tpcNSigmaPi ()) >= cMaxTPCnSigmaPion && std::fabs (track.tofNSigmaPi ()) >= cMaxTOFnSigmaPion)
201201 return false ;
202202 }
203203 if (mode == TrackPIDMode::OnlyTPC) { // only TPC
@@ -226,7 +226,7 @@ struct rho770analysis {
226226 const auto mode = static_cast <TrackPIDMode>(selectTypeInt.value );
227227
228228 if (mode == TrackPIDMode::TPCOrTOF) {
229- if (std::fabs (track.tpcNSigmaKa ()) >= cMaxTPCnSigmaPion || std::fabs (track.tofNSigmaKa ()) >= cMaxTOFnSigmaPion)
229+ if (std::fabs (track.tpcNSigmaKa ()) >= cMaxTPCnSigmaPion && std::fabs (track.tofNSigmaKa ()) >= cMaxTOFnSigmaPion)
230230 return false ;
231231 }
232232 if (mode == TrackPIDMode::OnlyTPC) {
@@ -410,6 +410,8 @@ struct rho770analysis {
410410 for (const auto & part : resoParents) { // loop over all pre-filtered MC particles
411411 if (std::abs (part.pdgCode ()) != kRho770_0 )
412412 continue ;
413+ if (!part.isPhysicalPrimary ())
414+ continue ;
413415 if (!part.producedByGenerator ())
414416 continue ;
415417 if (part.y () < cfgMinRap || part.y () > cfgMaxRap)
0 commit comments