Skip to content

Commit 7750d84

Browse files
authored
[PWGJE] Di-hadron correlation check (#14064)
1 parent 210ef93 commit 7750d84

File tree

1 file changed

+33
-18
lines changed

1 file changed

+33
-18
lines changed

PWGJE/Tasks/recoilJets.cxx

Lines changed: 33 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -106,12 +106,12 @@ struct RecoilJets {
106106
Configurable<std::vector<float>> phiRestrTTSelection{"phiRestrTTSelection", {0., 6.3}, "Restriction on phi angle (min, max) to search for TT"};
107107

108108
// Leading track and associated track
109-
Configurable<std::vector<float>> pTLeadTrack{"pTLeadTrack", {1., 3.}, "Transverse momenturm range (min, max) for leading tracks"};
110-
Configurable<std::vector<float>> pTAssociatTrack{"pTAssociatTrack", {1., 3.}, "Transverse momenturm range (min, max) for associated tracks"};
109+
Configurable<std::vector<float>> pTLeadTrack{"pTLeadTrack", {4., 6.}, "Transverse momenturm range (min, max) for leading tracks"};
110+
Configurable<float> pTAssociatTrackMin{"pTAssociatTrackMin", 2., "Min transverse momenturm for associated tracks"};
111111

112112
// List of configurable parameters for histograms
113113
Configurable<uint16_t> histJetPt{"histJetPt", 100, "Maximum value of jet pT stored in histograms"};
114-
Configurable<uint16_t> histMultBins{"histMultBins", 1000, "Number of bins for scaled FT0M multiplicity"};
114+
Configurable<uint16_t> histMultBins{"histMultBins", 600, "Number of bins for scaled FT0M multiplicity"};
115115
Configurable<uint16_t> histZDCTimeBins{"histZDCTimeBins", 240, "Number of bins for ZDC timing histograms"};
116116

117117
// Axes specification
@@ -502,8 +502,12 @@ struct RecoilJets {
502502
}
503503

504504
if (doprocessLeadingAndAssociatedTracksTask) {
505-
spectra.add("hScaledFT0C_Correlation_LeadTrack_AssociatTracks", Form("Leading track #it{p}_{T} #in (%.2f, %.2f); Associated track #it{p}_{T} #in (%.2f, %.2f)", pTLeadTrack->at(0), pTLeadTrack->at(1), pTAssociatTrack->at(0), pTAssociatTrack->at(1)), kTH2F, {{multFT0CThresh, nameFT0Caxis}, {120, -1.28, 5.0, "#it{#varphi} (rad)"}});
506-
spectra.add("hScaledFT0M_Correlation_LeadTrack_AssociatTracks", Form("Leading track #it{p}_{T} #in (%.2f, %.2f); Associated track #it{p}_{T} #in (%.2f, %.2f)", pTLeadTrack->at(0), pTLeadTrack->at(1), pTAssociatTrack->at(0), pTAssociatTrack->at(1)), kTH2F, {{multFT0MThresh, nameFT0Maxis}, {120, -1.28, 5.0, "#it{#varphi} (rad)"}});
505+
506+
spectra.add("hScaledFT0C_NleadTracks", "Total number of selected leading tracks vs scaled FT0C", kTH2F, {{scaledFT0C}, {1, 0.0, 1.}});
507+
spectra.add("hScaledFT0M_NleadTracks", "Total number of selected leading tracks vs scaled FT0M", kTH2F, {{scaledFT0M}, {1, 0.0, 1.}});
508+
509+
spectra.add("hScaledFT0C_Correlation_LeadTrack_AssociatTracks", Form("Leading track #it{p}_{T} #in (%.2f, %.2f); Associated track #it{p}_{T} #in (%.2f, #it{p}_{T, lead. trk})", pTLeadTrack->at(0), pTLeadTrack->at(1), pTAssociatTrackMin.value), kTH2F, {{scaledFT0C}, {160, -1.28, 5.0, "#it{#varphi} (rad)"}});
510+
spectra.add("hScaledFT0M_Correlation_LeadTrack_AssociatTracks", Form("Leading track #it{p}_{T} #in (%.2f, %.2f); Associated track #it{p}_{T} #in (%.2f, #it{p}_{T, lead. trk})", pTLeadTrack->at(0), pTLeadTrack->at(1), pTAssociatTrackMin.value), kTH2F, {{scaledFT0M}, {160, -1.28, 5.0, "#it{#varphi} (rad)"}});
507511
}
508512
}
509513

@@ -1001,38 +1005,49 @@ struct RecoilJets {
10011005
void fillLeadingAndAssociatedTracksTask(JCollision const& collision, JTracks const& tracks, float weight = 1.)
10021006
{
10031007
std::vector<double> vPhiOfLeadingTracks;
1008+
std::vector<double> vPtOfLeadingTracks;
10041009
std::vector<double> vPhiOfAssociatedTracks;
10051010

10061011
float scaledFT0C = getScaledFT0(collision.multFT0C(), meanFT0C);
10071012
float scaledFT0M = getScaledFT0M(getScaledFT0(collision.multFT0A(), meanFT0A), scaledFT0C);
10081013

1014+
// Search for leading tracks
10091015
for (const auto& track : tracks) {
10101016
if (skipTrack(track))
10111017
continue;
10121018

10131019
float trackPt = track.pt();
1014-
float trackPhi = track.phi();
10151020

1016-
// Search for leading tracks
10171021
if (trackPt > pTLeadTrack->at(0) && trackPt < pTLeadTrack->at(1)) {
1018-
vPhiOfLeadingTracks.push_back(trackPhi);
1019-
}
1020-
1021-
// Search for associated tracks
1022-
if (trackPt > pTAssociatTrack->at(0) && trackPt < pTAssociatTrack->at(1)) {
1023-
vPhiOfAssociatedTracks.push_back(trackPhi);
1022+
vPhiOfLeadingTracks.push_back(track.phi());
1023+
vPtOfLeadingTracks.push_back(trackPt);
10241024
}
10251025
}
10261026

10271027
int nLeadingTracks = vPhiOfLeadingTracks.size();
10281028

10291029
if (nLeadingTracks > 0) {
1030-
double phiLeadingTrack = getPhiTT(vPhiOfLeadingTracks);
1030+
auto indexLeadTrack = rand->Integer(nLeadingTracks);
10311031

1032-
for (const auto& phiAssociatTrack : vPhiOfAssociatedTracks) {
1033-
double dphi = RecoDecay::constrainAngle(phiLeadingTrack - phiAssociatTrack, -1.3);
1034-
spectra.fill(HIST("hScaledFT0C_Correlation_LeadTrack_AssociatTracks"), scaledFT0C, dphi, weight);
1035-
spectra.fill(HIST("hScaledFT0M_Correlation_LeadTrack_AssociatTracks"), scaledFT0M, dphi, weight);
1032+
double phiLeadingTrack = vPhiOfLeadingTracks[indexLeadTrack];
1033+
double pTLeadingTrack = vPtOfLeadingTracks[indexLeadTrack];
1034+
1035+
spectra.fill(HIST("hScaledFT0C_NleadTracks"), scaledFT0C, 0.5, weight);
1036+
spectra.fill(HIST("hScaledFT0M_NleadTracks"), scaledFT0M, 0.5, weight);
1037+
1038+
for (const auto& track : tracks) {
1039+
if (skipTrack(track))
1040+
continue;
1041+
1042+
float trackPt = track.pt();
1043+
float trackPhi = track.phi();
1044+
1045+
// Search for associated tracks
1046+
if (trackPt > pTAssociatTrackMin && trackPt < pTLeadingTrack) {
1047+
double dphi = RecoDecay::constrainAngle(phiLeadingTrack - trackPhi, -1.3);
1048+
spectra.fill(HIST("hScaledFT0C_Correlation_LeadTrack_AssociatTracks"), scaledFT0C, dphi, weight);
1049+
spectra.fill(HIST("hScaledFT0M_Correlation_LeadTrack_AssociatTracks"), scaledFT0M, dphi, weight);
1050+
}
10361051
}
10371052
}
10381053
}

0 commit comments

Comments
 (0)