Skip to content

Commit c86fe08

Browse files
I changed the method for measuring energy loss outside the jet
1 parent f853ccf commit c86fe08

File tree

1 file changed

+45
-5
lines changed

1 file changed

+45
-5
lines changed

PWGJE/Tasks/jetShape.cxx

Lines changed: 45 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,8 @@ struct JetShapeTask {
4343
Configurable<int> nBinsNSigma{"nBinsNSigma", 101, "Number of nsigma bins"};
4444
Configurable<float> nSigmaMin{"nSigmaMin", -10.1f, "Min value of nsigma"};
4545
Configurable<float> nSigmaMax{"nSigmaMax", 10.1f, "Max value of nsigma"};
46-
Configurable<int> nBinsP{"nBinsP", 700, "Number of p bins"};
47-
Configurable<int> nBinsPt{"nBinsPt", 500, "Number of pT bins"};
46+
Configurable<int> nBinsPForDedx{"nBinsPForDedx", 700, "Number of p bins"};
47+
Configurable<int> nBinsPForBeta{"nBinsPForBeta", 500, "Number of pT bins"};
4848
Configurable<int> nBinsTpcDedx{"nBinsTpcDedx", 500, "Number of DEdx bins"};
4949
Configurable<int> nBinsTofBeta{"nBinsTofBeta", 350, "Number of Beta bins"};
5050
Configurable<float> pMax{"pMax", 7.0f, "Max value of p"};
@@ -60,11 +60,20 @@ struct JetShapeTask {
6060
{"tofPi", "tofPi", {HistType::kTH2F, {{50, 0, ptMax}, {nBinsNSigma, nSigmaMin, nSigmaMax}}}},
6161
{"tpcPr", "tpcPr", {HistType::kTH2F, {{70, 0, pMax}, {nBinsNSigma, nSigmaMin, nSigmaMax}}}},
6262
{"tofPr", "tofPr", {HistType::kTH2F, {{50, 0, ptMax}, {nBinsNSigma, nSigmaMin, nSigmaMax}}}},
63-
{"tpcDedx", "tpcDedx", {HistType::kTHnSparseD, {{nBinsP, 0, pMax}, {nBinsTpcDedx, 0, 1000}, {nBinsDistance, 0, distanceMax}}}},
64-
{"tofBeta", "tofBeta", {HistType::kTHnSparseD, {{nBinsPt, 0, ptMax}, {nBinsTofBeta, 0.4, 1.1}, {nBinsDistance, 0, distanceMax}}}},
63+
{"tpcDedx", "tpcDedx", {HistType::kTHnSparseD, {{nBinsPForDedx, 0, pMax}, {nBinsTpcDedx, 0, 1000}, {nBinsDistance, 0, distanceMax}}}},
64+
{"tpcDedxOutOfJet", "tpcDedxOutOfJet", {HistType::kTH2F, {{nBinsPForDedx, 0, pMax}, {nBinsTpcDedx, 0, 1000}}}},
65+
{"tofBeta", "tofBeta", {HistType::kTHnSparseD, {{nBinsPForBeta, 0, pMax}, {nBinsTofBeta, 0.4, 1.1}, {nBinsDistance, 0, distanceMax}}}},
6566
{"pVsPtForProton", "pVsPtForProton", {HistType::kTHnSparseD, {{70, 0, pMax}, {50, 0, ptMax}, {nBinsDistance, 0, distanceMax}}}},
6667
{"pVsPtForPion", "pVsPtPion", {HistType::kTHnSparseD, {{70, 0, pMax}, {50, 0, ptMax}, {nBinsDistance, 0, distanceMax}}}},
6768
{"tofMass", "tofMass", {HistType::kTH1F, {{300, 0, 3}}}},
69+
{"trackPhi", "trackPhi", {HistType::kTH1F, {{80, -1, 7}}}},
70+
{"trackEta", "trackEta", {HistType::kTH1F, {{100, -1, 1}}}},
71+
{"trackTpcNClsCrossedRows", "trackTpcNClsCrossedRows", {HistType::kTH1F, {{50, 0, 200}}}},
72+
{"trackDcaXY", "trackDcaXY", {HistType::kTH1F, {{40, -10, 10}}}},
73+
{"trackItsChi2NCl", "trackItsChi2NCl", {HistType::kTH1F, {{60, 0, 30}}}},
74+
{"trackTpcChi2NCl", "trackTpcChi2NCl", {HistType::kTH1F, {{100, 0, 50}}}},
75+
{"trackTpcNClsFound", "trackTpcNClsFound", {HistType::kTH1F, {{100, 0, 200}}}},
76+
{"trackItsNCls", "trackItsNCls", {HistType::kTH1F, {{10, 0, 10}}}},
6877
{"jetPt", "jet pT;#it{p}_{T,jet} (GeV/#it{c});entries", {HistType::kTH1F, {{200, 0., 200.}}}},
6978
{"jetEta", "jet #eta;#eta_{jet};entries", {HistType::kTH1F, {{100, -1.0, 1.0}}}},
7079
{"jetPhi", "jet #phi;#phi_{jet};entries", {HistType::kTH1F, {{80, -1.0, 7.}}}},
@@ -179,6 +188,7 @@ struct JetShapeTask {
179188
float ptCorr = jet.pt() - collision.rho() * jet.area();
180189

181190
for (const auto& track : tracks) {
191+
182192
float preDeltaPhi1 = track.phi() - jet.phi();
183193
float deltaPhi1 = RecoDecay::constrainAngle(preDeltaPhi1);
184194
float deltaEta = track.eta() - jet.eta();
@@ -257,6 +267,16 @@ struct JetShapeTask {
257267

258268
// tracks conditions
259269
for (const auto& track : tracks) {
270+
271+
registry.fill(HIST("trackTpcNClsCrossedRows"), track.tpcNClsCrossedRows());
272+
registry.fill(HIST("trackDcaXY"), track.dcaXY());
273+
registry.fill(HIST("trackItsChi2NCl"), track.itsChi2NCl());
274+
registry.fill(HIST("trackTpcChi2NCl"), track.tpcChi2NCl());
275+
registry.fill(HIST("trackTpcNClsFound"), track.tpcNClsFound());
276+
registry.fill(HIST("trackItsNCls"), track.itsNCls());
277+
registry.fill(HIST("trackEta"), track.eta());
278+
registry.fill(HIST("trackPhi"), track.phi());
279+
260280
if (std::abs(track.eta()) > etaTrUp)
261281
continue;
262282
if (track.tpcNClsCrossedRows() < nclcrossTpcMin)
@@ -289,9 +309,29 @@ struct JetShapeTask {
289309
// calculate distance from jet axis
290310
float distance = std::sqrt(deltaEta * deltaEta + deltaPhi1 * deltaPhi1);
291311

312+
// Define perpendicular cone axes in phi
313+
float phiBg1 = jet.phi() + (o2::constants::math::PIHalf);
314+
float phiBg2 = jet.phi() - (o2::constants::math::PIHalf);
315+
316+
// Calculate delta phi for background cones
317+
float preDeltaPhiBg1 = track.phi() - phiBg1;
318+
float preDeltaPhiBg2 = track.phi() - phiBg2;
319+
float deltaPhiBg1 = RecoDecay::constrainAngle(preDeltaPhiBg1);
320+
float deltaPhiBg2 = RecoDecay::constrainAngle(preDeltaPhiBg2);
321+
322+
// Calculate distance to background cone axes
323+
// Note: deltaEta is the same for all cones at the same eta
324+
float distanceBg1 = std::sqrt(deltaEta * deltaEta + deltaPhiBg1 * deltaPhiBg1);
325+
float distanceBg2 = std::sqrt(deltaEta * deltaEta + deltaPhiBg2 * deltaPhiBg2);
326+
327+
// Fill histogram if track is inside one of the perpendicular cones
328+
if (distanceBg1 < jetR || distanceBg2 < jetR) {
329+
registry.fill(HIST("tpcDedxOutOfJet"), track.p(), track.tpcSignal());
330+
}
331+
292332
registry.fill(HIST("distanceVsTrackpt"), distance, track.pt());
293333
registry.fill(HIST("tpcDedx"), track.p(), track.tpcSignal(), distance);
294-
registry.fill(HIST("tofBeta"), track.pt(), track.beta(), distance);
334+
registry.fill(HIST("tofBeta"), track.p(), track.beta(), distance);
295335

296336
if (std::abs(track.tofNSigmaPr()) < nSigmaTofCut) {
297337
registry.fill(HIST("pVsPtForProton"), track.p(), track.pt(), distance);

0 commit comments

Comments
 (0)