Skip to content

Commit 1a6d7da

Browse files
committed
Standard track selection was included to improve PID
1 parent 873e4ac commit 1a6d7da

File tree

1 file changed

+39
-9
lines changed

1 file changed

+39
-9
lines changed

PWGMM/UE/Tasks/dedxAnalysis.cxx

Lines changed: 39 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -86,8 +86,6 @@ struct DedxAnalysis {
8686
// Histograms names
8787
static constexpr std::string_view kDedxvsMomentumPos[4] = {"dEdx_vs_Momentum_all_Pos", "dEdx_vs_Momentum_Pi_v0_Pos", "dEdx_vs_Momentum_Pr_v0_Pos", "dEdx_vs_Momentum_El_v0_Pos"};
8888
static constexpr std::string_view kDedxvsMomentumNeg[4] = {"dEdx_vs_Momentum_all_Neg", "dEdx_vs_Momentum_Pi_v0_Neg", "dEdx_vs_Momentum_Pr_v0_Neg", "dEdx_vs_Momentum_El_v0_Neg"};
89-
static constexpr std::string_view kDedxvsMomentumPosWoCal[4] = {"dEdx_vs_Momentum_all_Pos_WoCal", "dEdx_vs_Momentum_Pi_v0_Pos_WoCal", "dEdx_vs_Momentum_Pr_v0_Pos_WoCal", "dEdx_vs_Momentum_El_v0_Pos_WoCal"};
90-
static constexpr std::string_view kDedxvsMomentumNegWoCal[4] = {"dEdx_vs_Momentum_all_Neg_WoCal", "dEdx_vs_Momentum_Pi_v0_Neg_WoCal", "dEdx_vs_Momentum_Pr_v0_Neg_WoCal", "dEdx_vs_Momentum_El_v0_Neg_WoCal"};
9189
static constexpr double EtaCut[9] = {-0.8, -0.6, -0.4, -0.2, 0.0, 0.2, 0.4, 0.6, 0.8};
9290
Configurable<std::vector<float>> calibrationFactorNeg{"calibrationFactorNeg", {50.4011, 50.4764, 50.186, 49.2955, 48.8222, 49.4273, 49.9292, 50.0556}, "negative calibration factors"};
9391
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"};
@@ -133,6 +131,13 @@ struct DedxAnalysis {
133131
registryDeDx.add(
134132
"hdEdx_vs_eta_vs_p_Pos_El", "dE/dx", HistType::kTH3F,
135133
{{etaAxis}, {dedxAxis}, {pAxis}});
134+
//Pions from TOF
135+
registryDeDx.add(
136+
"hdEdx_vs_eta_vs_p_Neg_TOF", "dE/dx", HistType::kTH3F,
137+
{{etaAxis}, {dedxAxis}, {pAxis}});
138+
registryDeDx.add(
139+
"hdEdx_vs_eta_vs_p_Pos_TOF", "dE/dx", HistType::kTH3F,
140+
{{etaAxis}, {dedxAxis}, {pAxis}});
136141

137142
} else {
138143
// MIP for pions
@@ -152,19 +157,24 @@ struct DedxAnalysis {
152157
registryDeDx.add(
153158
"hdEdx_vs_eta_vs_p_Pos_calibrated_El", "dE/dx", HistType::kTH3F,
154159
{{etaAxis}, {dedxAxis}, {pAxis}});
160+
161+
// Pions from TOF
162+
registryDeDx.add(
163+
"hdEdx_vs_eta_vs_p_Neg_calibrated_TOF", "dE/dx", HistType::kTH3F,
164+
{{etaAxis}, {dedxAxis}, {pAxis}});
165+
166+
registryDeDx.add(
167+
"hdEdx_vs_eta_vs_p_Pos_calibrated_TOF", "dE/dx", HistType::kTH3F,
168+
{{etaAxis}, {dedxAxis}, {pAxis}});
155169

156170
// De/Dx for ch and v0 particles
157171
for (int i = 0; i < 4; ++i) {
158172
registryDeDx.add(kDedxvsMomentumPos[i].data(), "dE/dx", HistType::kTH3F,
159173
{{pAxis}, {dedxAxis}, {etaAxis}});
160174
registryDeDx.add(kDedxvsMomentumNeg[i].data(), "dE/dx", HistType::kTH3F,
161175
{{pAxis}, {dedxAxis}, {etaAxis}});
162-
163-
registryDeDx.add(kDedxvsMomentumPosWoCal[i].data(), "dE/dx", HistType::kTH3F,
164-
{{pAxis}, {dedxAxis}, {etaAxis}});
165-
registryDeDx.add(kDedxvsMomentumNegWoCal[i].data(), "dE/dx", HistType::kTH3F,
166-
{{pAxis}, {dedxAxis}, {etaAxis}});
167176
}
177+
168178
}
169179

170180
registryDeDx.add(
@@ -393,13 +403,13 @@ struct DedxAnalysis {
393403
}
394404
}
395405
}
396-
// MIP calibration for electrons
406+
// Beta from TOF
397407
if (signedP < 0) {
398408
registryDeDx.fill(HIST("hbeta_vs_p_Neg"), std::abs(signedP), trk.beta());
399409
} else {
400410
registryDeDx.fill(HIST("hbeta_vs_p_Pos"), signedP, trk.beta());
401411
}
402-
412+
// Electrons from TOF
403413
if (std::abs(trk.beta() - 1) < 0.1) { // beta cut
404414
if (calibrationMode) {
405415
if (signedP < 0) {
@@ -419,6 +429,26 @@ struct DedxAnalysis {
419429
}
420430
}
421431
}
432+
//pions from TOF
433+
if (trk.beta() > 1. && trk.beta() < 1.05) { // beta cut
434+
if (calibrationMode) {
435+
if (signedP < 0) {
436+
registryDeDx.fill(HIST("hdEdx_vs_eta_vs_p_Neg_TOF"), trk.eta(), trk.tpcSignal(), std::abs(signedP));
437+
} else {
438+
registryDeDx.fill(HIST("hdEdx_vs_eta_vs_p_Pos_TOF"), trk.eta(), trk.tpcSignal(), signedP);
439+
}
440+
} else {
441+
for (int i = 0; i < 8; ++i) {
442+
if (trk.eta() > EtaCut[i] && trk.eta() < EtaCut[i + 1]) {
443+
if (signedP < 0) {
444+
registryDeDx.fill(HIST("hdEdx_vs_eta_vs_p_Neg_calibrated_TOF"), trk.eta(), trk.tpcSignal() * 50 / calibrationFactorNeg->at(i), std::abs(signedP));
445+
} else {
446+
registryDeDx.fill(HIST("hdEdx_vs_eta_vs_p_Pos_calibrated_TOF"), trk.eta(), trk.tpcSignal() * 50 / calibrationFactorPos->at(i), signedP);
447+
}
448+
}
449+
}
450+
}
451+
}
422452

423453
registryDeDx.fill(HIST("hdEdx_vs_phi"), trk.phi(), trk.tpcSignal());
424454

0 commit comments

Comments
 (0)