@@ -69,6 +69,10 @@ static constexpr int NCentHists{10};
6969std::array<std::shared_ptr<TH3 >, NCentHists> hDedxVsMomentumVsCentPos{};
7070std::array<std::shared_ptr<TH3 >, NCentHists> hDedxVsMomentumVsCentNeg{};
7171std::array<std::shared_ptr<TH3 >, NCentHists + 1 > hDedxVspTMomentumVsCent{};
72+ std::array<std::shared_ptr<TH2 >, NCentHists + 1 > hMomentumVsEtaPos{};
73+ std::array<std::shared_ptr<TH2 >, NCentHists + 1 > hMomentumVsEtaNeg{};
74+ std::array<std::shared_ptr<TH2 >, NCentHists + 1 > hpTVsEtaPos{};
75+ std::array<std::shared_ptr<TH2 >, NCentHists + 1 > hpTVsEtaNeg{};
7276
7377struct DedxPidAnalysis {
7478
@@ -247,6 +251,8 @@ struct DedxPidAnalysis {
247251 static constexpr std::string_view DedxvsMomentumvsCentPos[CentralityClasses] = {" dEdx_vs_Momentum_Cent0_1_Pos" , " dEdx_vs_Momentum_Cent1_5_Pos" , " dEdx_vs_Momentum_Cent5_10_Pos" , " dEdx_vs_Momentum_Cent10_15_Pos" , " dEdx_vs_Momentum_Cent15_20_Pos" , " dEdx_vs_Momentum_Cent20_30_Pos" , " dEdx_vs_Momentum_Cent30_40_Pos" , " dEdx_vs_Momentum_Cent40_50_Pos" , " dEdx_vs_Momentum_Cent50_70_Pos" , " dEdx_vs_Momentum_Cent70_100_Pos" };
248252 static constexpr std::string_view DedxvsMomentumvsCentNeg[CentralityClasses] = {" dEdx_vs_Momentum_Cent0_1_Neg" , " dEdx_vs_Momentum_Cent1_5_Neg" , " dEdx_vs_Momentum_Cent5_10_Neg" , " dEdx_vs_Momentum_Cent10_15_Neg" , " dEdx_vs_Momentum_Cent15_20_Neg" , " dEdx_vs_Momentum_Cent20_30_Neg" , " dEdx_vs_Momentum_Cent30_40_Neg" , " dEdx_vs_Momentum_Cent40_50_Neg" , " dEdx_vs_Momentum_Cent50_70_Neg" , " dEdx_vs_Momentum_Cent70_100_Neg" };
249253 static constexpr std::string_view DedxvspTMomentumvsCent[CentralityClasses + 1 ] = {" dEdx_vs_pTMomentum_Cent0_1" , " dEdx_vs_pTMomentum_Cent1_5" , " dEdx_vs_pTMomentum_Cent5_10" , " dEdx_vs_pTMomentum_Cent10_15" , " dEdx_vs_pTMomentum_Cent15_20" , " dEdx_vs_pTMomentum_Cent20_30" , " dEdx_vs_pTMomentum_Cent30_40" , " dEdx_vs_pTMomentum_Cent40_50" , " dEdx_vs_pTMomentum_Cent50_70" , " dEdx_vs_pTMomentum_Cent70_100" , " dEdx_vs_pTMomentum_all_Pos" };
254+ // Fine binnind
255+ static constexpr std::string_view Cent[CentralityClasses + 1 ] = {" Cent0_1" , " Cent1_5" , " Cent5_10" , " Cent10_15" , " Cent15_20" , " Cent20_30" , " Cent30_40" , " Cent40_50" , " Cent50_70" , " Cent70_100" , " MB" };
250256 // Ncl TPC
251257 static constexpr std::string_view NclTPCDedxMomentumNegBefore[EtaIntervals] = {" Ncl_FoundTPC_vs_dEdx_vs_Momentum_Neg_1_Before" , " Ncl_FoundTPC_vs_dEdx_vs_Momentum_Neg_2_Before" , " Ncl_FoundTPC_vs_dEdx_vs_Momentum_Neg_3_Before" , " Ncl_FoundTPC_vs_dEdx_vs_Momentum_Neg_4_Before" , " Ncl_FoundTPC_vs_dEdx_vs_Momentum_Neg_5_Before" , " Ncl_FoundTPC_vs_dEdx_vs_Momentum_Neg_6_Before" , " Ncl_FoundTPC_vs_dEdx_vs_Momentum_Neg_7_Before" , " Ncl_FoundTPC_vs_dEdx_vs_Momentum_Neg_8_Before" };
252258 static constexpr std::string_view NclTPCDedxMomentumPosBefore[EtaIntervals] = {" Ncl_FoundTPC_vs_dEdx_vs_Momentum_Pos_1_Before" , " Ncl_FoundTPC_vs_dEdx_vs_Momentum_Pos_2_Before" , " Ncl_FoundTPC_vs_dEdx_vs_Momentum_Pos_3_Before" , " Ncl_FoundTPC_vs_dEdx_vs_Momentum_Pos_4_Before" , " Ncl_FoundTPC_vs_dEdx_vs_Momentum_Pos_5_Before" , " Ncl_FoundTPC_vs_dEdx_vs_Momentum_Pos_6_Before" , " Ncl_FoundTPC_vs_dEdx_vs_Momentum_Pos_7_Before" , " Ncl_FoundTPC_vs_dEdx_vs_Momentum_Pos_8_Before" };
@@ -263,6 +269,7 @@ struct DedxPidAnalysis {
263269 Configurable<std::vector<float >> calibrationFactorPos{" calibrationFactorPos" , {50.5157 , 50.6359 , 50.3198 , 49.3345 , 48.9197 , 49.4931 , 50.0188 , 50.1406 }, " positive calibration factors" };
264270 ConfigurableAxis binP{" binP" , {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 }, " " };
265271 ConfigurableAxis centBins{" centBins" , {100 , 0 , 100 }, " Binning for centralidad" };
272+ ConfigurableAxis pFineBins{" pFineBins" , {1995 , 0.1 , 40 }, " Binning for momentum" };
266273
267274 // phi cut fits
268275 TF1 * fphiCutHigh = nullptr ;
@@ -351,11 +358,13 @@ struct DedxPidAnalysis {
351358 LOGF (info, " Centrality clases between %.1f - %.1f" , CentClasses[0 ], CentClasses[10 ]);
352359
353360 AxisSpec dedxAxis{100 , 0.0 , 100.0 , " dE/dx (a. u.)" };
354- AxisSpec ptAxis = {binP, " pT (GeV/c)" };
361+ AxisSpec ptAxis = {binP, " #it{p}_{T} (GeV/c)" };
355362 AxisSpec etaAxis{8 , -0.8 , 0.8 , " #eta" };
356363 AxisSpec pAxis = {binP, " #it{p}/Z (GeV/c)" };
357364 AxisSpec pAxisTrack = {binP, " #it{p} (GeV/c)" };
358365 AxisSpec centAxis{centBins, " Undefined multiplicity estimator" };
366+ AxisSpec pFineAxis{pFineBins, " #it{p} (GeV/c)" };
367+ AxisSpec pTFineAxis{pFineBins, " #it{p}_{T} (GeV/c)" };
359368 switch (multiplicityEstimator) {
360369 case MultSelectionMode::NoMultiplicity: // No multiplicity
361370 LOGF (info, " No multiplicity estimator applied" );
@@ -488,6 +497,10 @@ struct DedxPidAnalysis {
488497
489498 for (int i = 0 ; i < CentralityClasses + 1 ; ++i) {
490499 hDedxVspTMomentumVsCent[i] = registryDeDx.add <TH3 >(DedxvspTMomentumvsCent[i].data (), " dE/dx" , HistType::kTH3F , {{ptAxis}, {dedxAxis}, {etaAxis}});
500+ hMomentumVsEtaPos[i] = registryDeDx.add <TH2 >((std::string (" p_vs_eta_" ) + std::string (Cent[i]) + " _Pos" ).c_str (), " p vs eta" , HistType::kTH2F , {{etaAxis}, {pFineAxis}});
501+ hMomentumVsEtaNeg[i] = registryDeDx.add <TH2 >((std::string (" p_vs_eta_" ) + std::string (Cent[i]) + " _Neg" ).c_str (), " p vs eta" , HistType::kTH2F , {{etaAxis}, {pFineAxis}});
502+ hpTVsEtaPos[i] = registryDeDx.add <TH2 >((std::string (" pT_vs_eta_" ) + std::string (Cent[i]) + " _Pos" ).c_str (), " pT vs eta" , HistType::kTH2F , {{etaAxis}, {pTFineAxis}});
503+ hpTVsEtaNeg[i] = registryDeDx.add <TH2 >((std::string (" pT_vs_eta_" ) + std::string (Cent[i]) + " _Neg" ).c_str (), " pT vs eta" , HistType::kTH2F , {{etaAxis}, {pTFineAxis}});
491504 }
492505
493506 // Invariant Mass
@@ -1704,12 +1717,20 @@ struct DedxPidAnalysis {
17041717 hDedxVsMomentumVsCentPos[centIndex]->Fill (signedP, trk.tpcSignal () * 50 / calibrationFactorPos->at (i), trk.eta ());
17051718 hDedxVspTMomentumVsCent[centIndex]->Fill (signedpT, trk.tpcSignal () * 50 / calibrationFactorPos->at (i), trk.eta ());
17061719 hDedxVspTMomentumVsCent[10 ]->Fill (signedpT, trk.tpcSignal () * 50 / calibrationFactorPos->at (i), trk.eta ());
1720+ hMomentumVsEtaPos[centIndex]->Fill (trk.eta (), signedP);
1721+ hMomentumVsEtaPos[10 ]->Fill (trk.eta (), signedP);
1722+ hpTVsEtaPos[centIndex]->Fill (trk.eta (), signedpT);
1723+ hpTVsEtaPos[10 ]->Fill (trk.eta (), signedpT);
17071724 } else {
17081725 registryDeDx.fill (HIST (DedxvsMomentumNeg[0 ]), std::abs (signedP), trk.tpcSignal () * 50 / calibrationFactorNeg->at (i), trk.eta ());
17091726 registryDeDx.fill (HIST (" heta_vs_pt_vs_p_all_Neg" ), trk.eta (), trk.pt (), trk.p ());
17101727 hDedxVsMomentumVsCentNeg[centIndex]->Fill (std::abs (signedP), trk.tpcSignal () * 50 / calibrationFactorNeg->at (i), trk.eta ());
17111728 hDedxVspTMomentumVsCent[centIndex]->Fill (std::abs (signedpT), trk.tpcSignal () * 50 / calibrationFactorNeg->at (i), trk.eta ());
17121729 hDedxVspTMomentumVsCent[10 ]->Fill (std::abs (signedpT), trk.tpcSignal () * 50 / calibrationFactorNeg->at (i), trk.eta ());
1730+ hMomentumVsEtaNeg[centIndex]->Fill (trk.eta (), std::abs (signedP));
1731+ hMomentumVsEtaNeg[10 ]->Fill (trk.eta (), std::abs (signedP));
1732+ hpTVsEtaNeg[centIndex]->Fill (trk.eta (), std::abs (signedpT));
1733+ hpTVsEtaNeg[10 ]->Fill (trk.eta (), std::abs (signedpT));
17131734 }
17141735 }
17151736 }
0 commit comments