@@ -90,7 +90,6 @@ static constexpr std::string_view kSpeciesAll[Npart] = {"El", "Mu", "Pi", "Ka",
9090// histogram naming
9191static constexpr std::string_view kCharge [] = {" all/" , " pos/" , " neg/" };
9292static constexpr std::string_view kPrefix = " Tracks/" ;
93- static constexpr std::string_view kQA = " QA/" ;
9493static constexpr std::string_view kPrefixCleanTof = " Tracks/CleanTof/" ;
9594static constexpr std::string_view kPrefixCleanV0 = " Tracks/CleanV0/" ;
9695static constexpr std::string_view kStatus [] = {" preSel/" , " postSel/" };
@@ -122,6 +121,7 @@ enum TrkSelNoFilt {
122121 trkSelEta,
123122 trkSelPt,
124123 trkSelDCA,
124+ trkNRowsTPC,
125125 trkSelNCls,
126126 trkSelTPCBndr,
127127 nTrkSel
@@ -226,7 +226,7 @@ struct FlattenictyPikp {
226226 } flatSelOpt;
227227
228228 struct : ConfigurableGroup {
229- ConfigurableAxis axisPt{" axisPt" , {VARIABLE_WIDTH, 0.0 , 0. 1 , 0.12 , 0.14 , 0.16 , 0.18 , 0.2 , 0.25 , 0.3 , 0.35 , 0.4 , 0.45 , 0.5 , 0.55 , 0.6 , 0.65 , 0.7 , 0.75 , 0.8 , 0.85 , 0.9 , 0.95 , 1.0 , 1.1 , 1.2 , 1.3 , 1.4 , 1.5 , 1.6 , 1.7 , 1.8 , 1.9 , 2.0 , 2.2 , 2.4 , 2.6 , 2.8 , 3.0 , 3.2 , 3.4 , 3.6 , 3.8 , 4.0 , 4.2 , 4.4 , 4.6 , 4.8 , 5 .0 }, " pT binning" };
229+ ConfigurableAxis axisPt{" axisPt" , {VARIABLE_WIDTH, 0.1 , 0.12 , 0.14 , 0.16 , 0.18 , 0.2 , 0.25 , 0.3 , 0.35 , 0.4 , 0.45 , 0.5 , 0.55 , 0.6 , 0.65 , 0.7 , 0.75 , 0.8 , 0.85 , 0.9 , 0.95 , 1.0 , 1.1 , 1.2 , 1.3 , 1.4 , 1.5 , 1.6 , 1.7 , 1.8 , 1.9 , 2.0 , 2.1 , 2.2 , 2.3 , 2. 4 , 2.5 , 2. 6 , 2.7 , 2. 8 , 2.9 , 3.0 , 3.2 , 3.4 , 3.6 , 3.8 , 4.0 , 4.5 , 5.0 , 5.5 , 6.0 , 6.5 , 7.0 , 8.0 , 9.0 , 10.0 , 11.0 , 12.0 , 13.0 , 14.0 , 15.0 , 16.0 , 18.0 , 20 .0 }, " pT binning" };
230230 ConfigurableAxis axisMultPerc{" axisMultPerc" , {100 , 0 , 100 }, " Multiplicity percentiles binning" };
231231 ConfigurableAxis axisVertexZ{" axisVertexZ" , {60 , -15 ., 15 .}, " Vertex z binning" };
232232 ConfigurableAxis axisMult{" axisMult" , {301 , -0.5 , 300.5 }, " Multiplicity binning" };
@@ -244,9 +244,12 @@ struct FlattenictyPikp {
244244 Configurable<float > cfgTrkEtaMax{" cfgTrkEtaMax" , 0 .8f , " Eta range for tracks" };
245245 Configurable<float > cfgRapMax{" cfgRapMax" , 0 .5f , " Maximum range of rapidity for tracks" };
246246 Configurable<float > cfgTrkPtMin{" cfgTrkPtMin" , 0 .15f , " Minimum pT of tracks" };
247+ Configurable<float > cfgNclTPCMin{" cfgNclTPCMin" , 100 .0f , " Minimum of number of TPC clusters" };
247248 Configurable<float > cfgPhiCutPtMin{" cfgPhiCutPtMin" , 2 .0f , " Minimum pT for phi cut" };
248249 Configurable<float > cfgTOFBetaPion{" cfgTOFBetaPion" , 1 .0f , " Minimum beta for TOF pions" };
249250 Configurable<bool > cfgUseExtraTrkCut{" cfgUseExtraTrkCut" , true , " Use extra track cut" };
251+ Configurable<std::string> cfgGeoTrkCutMin{" cfgGeoTrkCutMin" , " 0.06/x+pi/18.0-0.06" , " ROOT TF1 formula for minimum phi cut in TPC" };
252+ Configurable<std::string> cfgGeoTrkCutMax{" cfgGeoTrkCutMax" , " 0.1/x+pi/18.0+0.06" , " ROOT TF1 formula for maximum phi cut in TPC" };
250253 Configurable<float > cfgMomMIPMax{" cfgMomMIPMax" , 0 .6f , " Maximum momentum of MIP pions" };
251254 Configurable<float > cfgMomMIPMin{" cfgMomMIPMin" , 0 .4f , " Minimum momentum of MIP pions" };
252255 Configurable<float > cfgDeDxMIPMax{" cfgDeDxMIPMax" , 60 .0f , " Maximum range of MIP dedx" };
@@ -301,7 +304,7 @@ struct FlattenictyPikp {
301304 Configurable<int > minITSnClusters{" minITSnClusters" , 5 , " minimum number of found ITS clusters" };
302305 Configurable<float > maxDcaXYFactor{" maxDcaXYFactor" , 1 .f , " Multiplicative factor on the maximum value of the DCA xy" };
303306 Configurable<float > maxDcaZ{" maxDcaZ" , 2 .f , " Additional cut on the maximum value of the DCA z" };
304- Configurable<float > minTPCNClsFound{" minTPCNClsFound" , 0 . f , " Additional cut on the minimum value of the number of found clusters in the TPC" };
307+ Configurable<float > minTPCNClsFound{" minTPCNClsFound" , 70 . 0f , " Additional cut on the minimum value of the number of found clusters in the TPC" };
305308
306309 TF1* fPhiCutLow = nullptr ;
307310 TF1* fPhiCutHigh = nullptr ;
@@ -398,12 +401,13 @@ struct FlattenictyPikp {
398401 flatchrg.get <TH1>(HIST (" Tracks/hTrkSel" ))->GetXaxis ()->SetBinLabel (trkSelEta + 1 , " Eta" );
399402 flatchrg.get <TH1>(HIST (" Tracks/hTrkSel" ))->GetXaxis ()->SetBinLabel (trkSelPt + 1 , " Pt" );
400403 flatchrg.get <TH1>(HIST (" Tracks/hTrkSel" ))->GetXaxis ()->SetBinLabel (trkSelDCA + 1 , " DCA" );
401- flatchrg.get <TH1>(HIST (" Tracks/hTrkSel" ))->GetXaxis ()->SetBinLabel (trkSelNCls + 1 , " NCls" );
404+ flatchrg.get <TH1>(HIST (" Tracks/hTrkSel" ))->GetXaxis ()->SetBinLabel (trkNRowsTPC + 1 , " trkNRowsTPC" );
405+ flatchrg.get <TH1>(HIST (" Tracks/hTrkSel" ))->GetXaxis ()->SetBinLabel (trkSelNCls + 1 , " NClsTPC" );
402406 flatchrg.get <TH1>(HIST (" Tracks/hTrkSel" ))->GetXaxis ()->SetBinLabel (trkSelTPCBndr + 1 , " TPC Boundary" );
403407
404408 if (trkSelOpt.cfgUseExtraTrkCut ) {
405- fPhiCutLow = new TF1 (" fPhiCutLow" , " 0.06/x+pi/18.0-0.06 " , 0 , 100 );
406- fPhiCutHigh = new TF1 (" fPhiCutHigh" , " 0.1/x+pi/18.0+0.06 " , 0 , 100 );
409+ fPhiCutLow = new TF1 (" fPhiCutLow" , trkSelOpt. cfgGeoTrkCutMin . value . c_str () , 0 , 100 );
410+ fPhiCutHigh = new TF1 (" fPhiCutHigh" , trkSelOpt. cfgGeoTrkCutMax . value . c_str () , 0 , 100 );
407411 }
408412
409413 if (doprocessFlat) {
@@ -413,25 +417,26 @@ struct FlattenictyPikp {
413417 if (cfgFillTrackQaHist || cfgFilldEdxQaHist || cfgFillNsigmaQAHist) {
414418 if (cfgFillTrackQaHist) {
415419 flatchrg.add (" Tracks/postSel/hPtPhi" , " ; #it{p}_{T} (GeV/#it{c}); fmod(#varphi,#pi/9)" , {HistType::kTH2D , {ptAxis, phiAxisMod}});
416- flatchrg.add (" Tracks/QA /hPtVsWOcutDCA" , " hPtVsWOcutDCA" , HistType::kTH2D , {ptAxis, dcaXYAxis});
417- flatchrg.add (" Tracks/QA /hPt" , " " , HistType::kTH1D , {ptAxis});
418- flatchrg.add (" Tracks/QA /hPhi" , " " , HistType::kTH1D , {phiAxis});
419- flatchrg.add (" Tracks/QA /hEta" , " " , HistType::kTH1D , {etaAxis});
420- flatchrg.add (" Tracks/QA /hDCAXYvsPt" , " " , HistType::kTH2D , {ptAxis, dcaXYAxis});
421- flatchrg.add (" Tracks/QA /hDCAZvsPt" , " " , HistType::kTH2D , {ptAxis, dcaZAxis});
420+ flatchrg.add (" Tracks/postSel /hPtVsWOcutDCA" , " hPtVsWOcutDCA" , HistType::kTH2D , {ptAxis, dcaXYAxis});
421+ flatchrg.add (" Tracks/postSel /hPt" , " " , HistType::kTH1D , {ptAxis});
422+ flatchrg.add (" Tracks/postSel /hPhi" , " " , HistType::kTH1D , {phiAxis});
423+ flatchrg.add (" Tracks/postSel /hEta" , " " , HistType::kTH1D , {etaAxis});
424+ flatchrg.add (" Tracks/postSel /hDCAXYvsPt" , " " , HistType::kTH2D , {ptAxis, dcaXYAxis});
425+ flatchrg.add (" Tracks/postSel /hDCAZvsPt" , " " , HistType::kTH2D , {ptAxis, dcaZAxis});
422426 // tpc
423- flatchrg.add (" Tracks/QA/hShTpcClvsPt" , " " , {HistType::kTH2D , {ptAxis, shCluserAxis}});
424- flatchrg.add (" Tracks/QA/hCrossTPCvsPt" , " " , {HistType::kTH2D , {ptAxis, clTpcAxis}});
425- flatchrg.add (" Tracks/QA/hTPCCluster" , " N_{cluster}" , HistType::kTH1D , {{200 , -0.5 , 199.5 }});
426- flatchrg.add (" Tracks/QA/tpcNClsShared" , " ; # shared TPC clusters TPC" , HistType::kTH1D , {{165 , -0.5 , 164.5 }});
427- flatchrg.add (" Tracks/QA/tpcCrossedRows" , " ; # crossed TPC rows" , HistType::kTH1D , {{165 , -0.5 , 164.5 }});
428- flatchrg.add (" Tracks/QA/tpcCrossedRowsOverFindableCls" , " ; crossed rows / findable TPC clusters" , HistType::kTH1D , {{60 , 0.7 , 1.3 }});
427+ flatchrg.add (" Tracks/postSel/hPtPhiTPCCluster" , " ; #it{p}_{T} (GeV/#it{c}); fmod(#varphi,#pi/9); N_{cluster}" , {HistType::kTHnSparseD , {ptAxis, phiAxisMod, clTpcAxis}});
428+ flatchrg.add (" Tracks/postSel/hShTpcClvsPt" , " " , {HistType::kTH2D , {ptAxis, shCluserAxis}});
429+ flatchrg.add (" Tracks/postSel/hCrossTPCvsPt" , " " , {HistType::kTH2D , {ptAxis, clTpcAxis}});
430+ flatchrg.add (" Tracks/postSel/hTPCCluster" , " N_{cluster}" , HistType::kTH1D , {clTpcAxis});
431+ flatchrg.add (" Tracks/postSel/tpcNClsShared" , " ; # shared TPC clusters TPC" , HistType::kTH1D , {{165 , -0.5 , 164.5 }});
432+ flatchrg.add (" Tracks/postSel/tpcCrossedRows" , " ; # crossed TPC rows" , HistType::kTH1D , {{165 , -0.5 , 164.5 }});
433+ flatchrg.add (" Tracks/postSel/tpcCrossedRowsOverFindableCls" , " ; crossed rows / findable TPC clusters" , HistType::kTH1D , {{60 , 0.7 , 1.3 }});
429434 // its
430- flatchrg.add (" Tracks/QA /itsNCls" , " ; # ITS clusters" , HistType::kTH1D , {{8 , -0.5 , 7.5 }});
431- flatchrg.add (" Tracks/QA /hChi2ITSTrkSegment" , " chi2ITS" , HistType::kTH1D , {{100 , -0.5 , 99.5 }});
435+ flatchrg.add (" Tracks/postSel /itsNCls" , " ; # ITS clusters" , HistType::kTH1D , {{8 , -0.5 , 7.5 }});
436+ flatchrg.add (" Tracks/postSel /hChi2ITSTrkSegment" , " chi2ITS" , HistType::kTH1D , {{100 , -0.5 , 99.5 }});
432437 // tof
433- flatchrg.add (" Tracks/QA /hTOFPvsBeta" , " Beta from TOF; #it{p} (GeV/#it{c}); #beta" , {HistType::kTH2D , {pAxis, {120 , 0.0 , 1.2 }}});
434- flatchrg.add (" Tracks/QA /hTOFpi" , " Primary Pions from TOF; #eta; #it{p} (GeV/#it{c}); dEdx" , {HistType::kTHnSparseD , {etaAxis, pAxis, dEdxAxis}});
438+ flatchrg.add (" Tracks/postSel /hTOFPvsBeta" , " Beta from TOF; #it{p} (GeV/#it{c}); #beta" , {HistType::kTH2D , {pAxis, {120 , 0.0 , 1.2 }}});
439+ flatchrg.add (" Tracks/postSel /hTOFpi" , " Primary Pions from TOF; #eta; #it{p} (GeV/#it{c}); dEdx" , {HistType::kTHnSparseD , {etaAxis, pAxis, dEdxAxis}});
435440 }
436441 if (cfgFilldEdxQaHist) {
437442 flatchrg.add (" Tracks/postCalib/all/hMIP" , " ; mult; flat; #eta; #LT dE/dx #GT_{MIP, primary tracks};" , {HistType::kTHnSparseD , {multAxis, flatAxis, etaAxis, dEdxAxis}});
@@ -707,22 +712,22 @@ struct FlattenictyPikp {
707712 fillTrackQA<kAfter , true >(track);
708713 }
709714 if (cfgFilldEdxQaHist) {
710- filldEdxQA<kAll , kBefore , true >(track, collision);
715+ filldEdxQA<kAll , kBefore , true >(track, collision, dEdx );
711716 if (posP) {
712- filldEdxQA<kPos , kBefore , true >(track, collision);
717+ filldEdxQA<kPos , kBefore , true >(track, collision, dEdx );
713718 } else {
714- filldEdxQA<kNeg , kBefore , true >(track, collision);
719+ filldEdxQA<kNeg , kBefore , true >(track, collision, dEdx );
715720 }
716721 }
717722 if (applyCalibDeDx) {
718723 dEdx *= (50.0 / getCalibration (true , track.eta ()));
719724 }
720725 if (cfgFilldEdxQaHist) {
721- filldEdxQA<kAll , kAfter , true >(track, collision);
726+ filldEdxQA<kAll , kAfter , true >(track, collision, dEdx );
722727 if (posP) {
723- filldEdxQA<kPos , kAfter , true >(track, collision);
728+ filldEdxQA<kPos , kAfter , true >(track, collision, dEdx );
724729 } else {
725- filldEdxQA<kNeg , kAfter , true >(track, collision);
730+ filldEdxQA<kNeg , kAfter , true >(track, collision, dEdx );
726731 }
727732 }
728733
@@ -788,6 +793,7 @@ struct FlattenictyPikp {
788793 if (eta < 0 .) {
789794 if (isMIP) {
790795 valCalib = fDeDxVsEtaNeg ->Eval (eta);
796+ // LOGF(info, "--------> \t fDeDxVsEtaNeg->Eval(%f) = %f", eta, valCalib);
791797 } else {
792798 valCalib = fEDeDxVsEtaNeg ->Eval (eta);
793799 }
@@ -830,12 +836,18 @@ struct FlattenictyPikp {
830836
831837 if (cfgFillTrackQaHist) {
832838 flatchrg.fill (HIST (" Tracks/preSel/hPtPhi" ), track.pt (), phimodn);
839+ if (track.hasTPC () && track.hasITS ()) {
840+ flatchrg.fill (HIST (" Tracks/preSel/hPtPhiTPCCluster" ), track.pt (), phimodn, track.tpcNClsFindable () - track.tpcNClsFindableMinusFound ());
841+ }
833842 }
834843 if (phimodn < fphiCutHigh->Eval (track.pt ()) && phimodn > fphiCutLow->Eval (track.pt ())) {
835844 return false ;
836845 }
837846 if (cfgFillTrackQaHist) {
838847 flatchrg.fill (HIST (" Tracks/postSel/hPtPhi" ), track.pt (), phimodn);
848+ if (track.hasTPC () && track.hasITS ()) {
849+ flatchrg.fill (HIST (" Tracks/postSel/hPtPhiTPCCluster" ), track.pt (), phimodn, track.tpcNClsFindable () - track.tpcNClsFindableMinusFound ());
850+ }
839851 }
840852 return true ;
841853 }
@@ -858,6 +870,11 @@ struct FlattenictyPikp {
858870 if (track.tpcNClsCrossedRows () < minNCrossedRowsTPC) {
859871 return false ;
860872 }
873+ flatchrg.fill (HIST (" Tracks/hTrkSel" ), trkNRowsTPC);
874+ auto nClusterTPC = track.tpcNClsFindable () - track.tpcNClsFindableMinusFound ();
875+ if (nClusterTPC < trkSelOpt.cfgNclTPCMin ) {
876+ return false ;
877+ }
861878 flatchrg.fill (HIST (" Tracks/hTrkSel" ), trkSelNCls);
862879 if (trkSelOpt.cfgUseExtraTrkCut && !phiCut (track, magfield, fPhiCutLow , fPhiCutHigh )) {
863880 return false ;
@@ -1009,46 +1026,46 @@ struct FlattenictyPikp {
10091026 inline void fillTrackQA (T const & track)
10101027 {
10111028 if constexpr (fillHist) {
1012- flatchrg.fill (HIST (kPrefix ) + HIST (kQA ) + HIST (" hPt" ), track.pt ());
1013- flatchrg.fill (HIST (kPrefix ) + HIST (kQA ) + HIST (" hPhi" ), track.phi ());
1014- flatchrg.fill (HIST (kPrefix ) + HIST (kQA ) + HIST (" hEta" ), track.eta ());
1015- flatchrg.fill (HIST (kPrefix ) + HIST (kQA ) + HIST (" hDCAXYvsPt" ), track.pt (), track.dcaXY ());
1016- flatchrg.fill (HIST (kPrefix ) + HIST (kQA ) + HIST (" hDCAZvsPt" ), track.pt (), track.dcaZ ());
1029+ flatchrg.fill (HIST (kPrefix ) + HIST (kStatus [ft] ) + HIST (" hPt" ), track.pt ());
1030+ flatchrg.fill (HIST (kPrefix ) + HIST (kStatus [ft] ) + HIST (" hPhi" ), track.phi ());
1031+ flatchrg.fill (HIST (kPrefix ) + HIST (kStatus [ft] ) + HIST (" hEta" ), track.eta ());
1032+ flatchrg.fill (HIST (kPrefix ) + HIST (kStatus [ft] ) + HIST (" hDCAXYvsPt" ), track.pt (), track.dcaXY ());
1033+ flatchrg.fill (HIST (kPrefix ) + HIST (kStatus [ft] ) + HIST (" hDCAZvsPt" ), track.pt (), track.dcaZ ());
10171034
10181035 if (track.hasTPC () && track.hasITS ()) {
10191036 int nFindable = track.tpcNClsFindable ();
10201037 int nMinusFound = track.tpcNClsFindableMinusFound ();
10211038 int nCluster = nFindable - nMinusFound;
1022- flatchrg.fill (HIST (kPrefix ) + HIST (kQA ) + HIST (" hTPCCluster" ), nCluster);
1023- flatchrg.fill (HIST (kPrefix ) + HIST (kQA ) + HIST (" hShTpcClvsPt" ), track.pt (), track.tpcFractionSharedCls ());
1024- flatchrg.fill (HIST (kPrefix ) + HIST (kQA ) + HIST (" hCrossTPCvsPt" ), track.pt (), track.tpcNClsFound ());
1025- flatchrg.fill (HIST (kPrefix ) + HIST (kQA ) + HIST (" tpcNClsShared" ), track.tpcNClsShared ());
1026- flatchrg.fill (HIST (kPrefix ) + HIST (kQA ) + HIST (" tpcCrossedRows" ), track.tpcNClsCrossedRows ());
1027- flatchrg.fill (HIST (kPrefix ) + HIST (kQA ) + HIST (" tpcCrossedRowsOverFindableCls" ), track.tpcCrossedRowsOverFindableCls ());
1028- flatchrg.fill (HIST (kPrefix ) + HIST (kQA ) + HIST (" hChi2ITSTrkSegment" ), track.itsChi2NCl ());
1029- flatchrg.fill (HIST (kPrefix ) + HIST (kQA ) + HIST (" itsNCls" ), track.itsNCls ());
1039+ flatchrg.fill (HIST (kPrefix ) + HIST (kStatus [ft] ) + HIST (" hTPCCluster" ), nCluster);
1040+ flatchrg.fill (HIST (kPrefix ) + HIST (kStatus [ft] ) + HIST (" hShTpcClvsPt" ), track.pt (), track.tpcFractionSharedCls ());
1041+ flatchrg.fill (HIST (kPrefix ) + HIST (kStatus [ft] ) + HIST (" hCrossTPCvsPt" ), track.pt (), track.tpcNClsFound ());
1042+ flatchrg.fill (HIST (kPrefix ) + HIST (kStatus [ft] ) + HIST (" tpcNClsShared" ), track.tpcNClsShared ());
1043+ flatchrg.fill (HIST (kPrefix ) + HIST (kStatus [ft] ) + HIST (" tpcCrossedRows" ), track.tpcNClsCrossedRows ());
1044+ flatchrg.fill (HIST (kPrefix ) + HIST (kStatus [ft] ) + HIST (" tpcCrossedRowsOverFindableCls" ), track.tpcCrossedRowsOverFindableCls ());
1045+ flatchrg.fill (HIST (kPrefix ) + HIST (kStatus [ft] ) + HIST (" hChi2ITSTrkSegment" ), track.itsChi2NCl ());
1046+ flatchrg.fill (HIST (kPrefix ) + HIST (kStatus [ft] ) + HIST (" itsNCls" ), track.itsNCls ());
10301047 }
10311048
1032- flatchrg.fill (HIST (kPrefix ) + HIST (kQA ) + HIST (" hTOFPvsBeta" ), track.tpcInnerParam (), track.beta ());
1049+ flatchrg.fill (HIST (kPrefix ) + HIST (kStatus [ft] ) + HIST (" hTOFPvsBeta" ), track.tpcInnerParam (), track.beta ());
10331050 if (track.beta () > trkSelOpt.cfgTOFBetaPion && track.beta () < trkSelOpt.cfgTOFBetaPion + 0.05 ) { // TOF pions
1034- flatchrg.fill (HIST (kPrefix ) + HIST (kQA ) + HIST (" hTOFpi" ), track.eta (), track.tpcInnerParam (), track.tpcSignal ());
1051+ flatchrg.fill (HIST (kPrefix ) + HIST (kStatus [ft] ) + HIST (" hTOFpi" ), track.eta (), track.tpcInnerParam (), track.tpcSignal ());
10351052 }
10361053
10371054 if (std::abs (track.eta ()) < trkSelOpt.cfgTrkEtaMax ) {
10381055 if (isDCAxyWoCut (track)) {
1039- flatchrg.fill (HIST (kPrefix ) + HIST (kQA ) + HIST (" hPtVsWOcutDCA" ), track.pt (), track.dcaXY ());
1056+ flatchrg.fill (HIST (kPrefix ) + HIST (kStatus [ft] ) + HIST (" hPtVsWOcutDCA" ), track.pt (), track.dcaXY ());
10401057 }
10411058 }
10421059 }
10431060 flatchrg.fill (HIST (kPrefix ) + HIST (kStatus [ft]) + HIST (" hPVsPtEta" ), track.tpcInnerParam (), track.pt (), track.eta ());
10441061 }
10451062
10461063 template <ChargeType chrg, FillType ft, bool fillHist = false , typename T, typename C>
1047- inline void filldEdxQA (T const & track, C const & collision)
1064+ inline void filldEdxQA (T const & track, C const & collision, const float dEdx )
10481065 {
10491066 const float mult = getMult (collision);
10501067 const float flat = fillFlat<true >(collision);
1051- float dEdx = track.tpcSignal ();
1068+ // float dEdx = track.tpcSignal();
10521069 if constexpr (fillHist) {
10531070 if (track.tpcInnerParam () >= trkSelOpt.cfgMomMIPMin && track.tpcInnerParam () <= trkSelOpt.cfgMomMIPMax ) {
10541071 if (dEdx > trkSelOpt.cfgDeDxMIPMin && dEdx < trkSelOpt.cfgDeDxMIPMax ) { // MIP pions
0 commit comments