Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 30 additions & 23 deletions PWGJE/Tasks/jetSpectraEseTask.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,6 @@ struct JetSpectraEseTask {
Preslice<ChargedMCDJets> mcdjetsPerJCollision = o2::aod::jet::collisionId;
Preslice<aod::JetTracks> tracksPerJCollision = o2::aod::jtrack::collisionId;
Preslice<aod::JetTracksMCD> mcdTracksPerJCollision = o2::aod::jtrack::collisionId;
Preslice<aod::JetParticles> particlesPerJMcCollision = o2::aod::jmcparticle::mcCollisionId;

SliceCache cache;
using BinningType = ColumnBinningPolicy<aod::jcollision::PosZ, aod::jcollision::CentFT0C>;
Expand Down Expand Up @@ -345,6 +344,8 @@ struct JetSpectraEseTask {
registry.get<TH1>(HIST("mcp/hEventCounter"))->GetXaxis()->SetBinLabel(2, "Collision size < 1");
registry.get<TH1>(HIST("mcp/hEventCounter"))->GetXaxis()->SetBinLabel(3, "MCD size != 1");
registry.get<TH1>(HIST("mcp/hEventCounter"))->GetXaxis()->SetBinLabel(4, "Occupancy cut");
registry.get<TH1>(HIST("mcp/hEventCounter"))->GetXaxis()->SetBinLabel(5, "Vtx z cut");
registry.get<TH1>(HIST("mcp/hEventCounter"))->GetXaxis()->SetBinLabel(6, "Event selection");
}
if (doprocessMCDetectorLevel) {
LOGF(info, "JetSpectraEseTask::init() - MC Detector level");
Expand All @@ -357,8 +358,9 @@ struct JetSpectraEseTask {
// registry.add("mcd/hJetPhi", "particle level jet #phi;#phi_{jet part};entries", {HistType::kTH1F, {{phiAxis}}});

registry.get<TH1>(HIST("mcd/hEventCounter"))->GetXaxis()->SetBinLabel(1, "Input event");
registry.get<TH1>(HIST("mcd/hEventCounter"))->GetXaxis()->SetBinLabel(2, "Collision size < 1");
registry.get<TH1>(HIST("mcd/hEventCounter"))->GetXaxis()->SetBinLabel(3, "Occupancy cut");
registry.get<TH1>(HIST("mcd/hEventCounter"))->GetXaxis()->SetBinLabel(1, "Event selection");
registry.get<TH1>(HIST("mcd/hEventCounter"))->GetXaxis()->SetBinLabel(2, "Occupancy cut");
registry.get<TH1>(HIST("mcd/hEventCounter"))->GetXaxis()->SetBinLabel(3, "Vtx z cut");
}
if (doprocessMCChargedMatched) {
LOGF(info, "JetSpectraEseTask::init() - MC Charged Matched");
Expand Down Expand Up @@ -402,19 +404,20 @@ struct JetSpectraEseTask {
}
if (doprocessMCGenTrack) {
LOGF(info, "JetSpectraEseTask::init() - MCGen track");
registry.add("hTrackPtGen", "", {HistType::kTH1F, {{assocTrackPt}}});
registry.add("hTrackEtaGen", "", {HistType::kTH1F, {{etaAxis}}});
registry.add("hTrackPhiGen", "", {HistType::kTH1F, {{phiAxis}}});
registry.add("mcgen/hTrackPtGen", "", {HistType::kTH1F, {{assocTrackPt}}});
registry.add("mcgen/hTrackEtaGen", "", {HistType::kTH1F, {{etaAxis}}});
registry.add("mcgen/hTrackPhiGen", "", {HistType::kTH1F, {{phiAxis}}});
}
if (doprocessMCRecoTrack) {
LOGF(info, "JetSpectraEseTask::init() - MCRec track");
registry.add("hTrackPtReco", "", {HistType::kTH1F, {{assocTrackPt}}});
registry.add("hTrackEtaReco", "", {HistType::kTH1F, {{etaAxis}}});
registry.add("hTrackPhiReco", "", {HistType::kTH1F, {{phiAxis}}});
registry.add("mcrec/hTrackPtReco", "", {HistType::kTH1F, {{assocTrackPt}}});
registry.add("mcrec/hTrackEtaReco", "", {HistType::kTH1F, {{etaAxis}}});
registry.add("mcrec/hTrackPhiReco", "", {HistType::kTH1F, {{phiAxis}}});
}
}

void loadEfficiency(aod::BCsWithTimestamps::iterator const& bc)
template <typename TBC>
void loadEfficiency(TBC const& bc)
{
uint64_t timestamp = bc.timestamp();
if (cfg.isLoaded) {
Expand Down Expand Up @@ -549,7 +552,7 @@ struct JetSpectraEseTask {
Pair<TCollisions, TJets, TTracks, BinningType> pairData{corrBinning, numberEventsMixed, -1, collisions, tracksTuple, &cache};

for (const auto& [c1, jets1, c2, tracks2] : pairData) {
auto bc = c2.template bc_as<aod::BCsWithTimestamps>();
auto bc = c2.template bc_as<aod::JBCs>();
loadEfficiency(bc);
auto c1Tracks = tracks.sliceBy(tracksPerJCollision, c1.globalIndex());
registry.fill(HIST("eventQA/before/hVtxZMixed"), c1.posZ());
Expand Down Expand Up @@ -640,7 +643,7 @@ struct JetSpectraEseTask {

void processESEDataCharged(soa::Join<aod::JetCollisions, aod::BkgChargedRhos, aod::Qvectors, aod::QPercentileFT0Cs>::iterator const& collision,
soa::Filtered<soa::Join<aod::ChargedJets, aod::ChargedJetConstituents>> const& jets,
aod::JetTracks const& tracks, aod::BCsWithTimestamps const&)
aod::JetTracks const& tracks, aod::JBCs const&)
{
registry.fill(HIST("eventQA/hEventCounter"), kFilteredInputEv);
registry.fill(HIST("eventQA/before/hVtxZ"), collision.posZ());
Expand All @@ -652,15 +655,15 @@ struct JetSpectraEseTask {
return;
registry.fill(HIST("eventQA/hEventCounter"), kOccupancyCut);

auto bc = collision.bc_as<aod::BCsWithTimestamps>();
auto bc = collision.bc_as<aod::JBCs>();
loadEfficiency(bc);
jetSpectra(collision, jets, tracks);
}
PROCESS_SWITCH(JetSpectraEseTask, processESEDataCharged, "process ese collisions", true);

void processESEDataChargedMixed(soa::Join<aod::JetCollisions, aod::BkgChargedRhos, aod::Qvectors, aod::QPercentileFT0Cs> const& collisions,
soa::Filtered<soa::Join<aod::ChargedJets, aod::ChargedJetConstituents>> const& jets,
aod::JetTracks const& tracks, aod::BCsWithTimestamps const&)
aod::JetTracks const& tracks, aod::JBCs const&)
{
jetMixed(collisions, jets, tracks);
}
Expand Down Expand Up @@ -747,12 +750,13 @@ struct JetSpectraEseTask {
}
if (cfgEvSelOccupancy && !fOccupancy)
return;
registry.fill(HIST("mcp/hEventCounter"), counter++);
if (!(std::abs(mcCollision.posZ()) < vertexZCut)) {
return;
}
registry.fill(HIST("mcp/hEventCounter"), counter++);
if (!eventSel)
return;

registry.fill(HIST("mcp/hEventCounter"), counter++);

registry.fill(HIST("mcp/hCentralitySel"), centrality);
Expand All @@ -777,6 +781,7 @@ struct JetSpectraEseTask {
if (!(std::abs(collision.posZ()) < vertexZCut)) {
return;
}
registry.fill(HIST("mcd/hEventCounter"), counter++);

auto centrality = cfgisPbPb ? collision.centFT0M() : -1;

Expand Down Expand Up @@ -875,8 +880,10 @@ struct JetSpectraEseTask {
return;
}

auto particlesInCollision = particles.sliceBy(particlesPerJMcCollision, mcCollision.globalIndex());
for (const auto& particle : particlesInCollision) {
for (const auto& particle : particles) {
if (particle.mcCollisionId() != mcCollision.globalIndex()) {
continue;
}
if (!isChargedParticle(particle.pdgCode())) {
continue;
}
Expand All @@ -890,9 +897,9 @@ struct JetSpectraEseTask {
continue;
}

registry.fill(HIST("hTrackPtGen"), particle.pt());
registry.fill(HIST("hTrackEtaGen"), particle.eta());
registry.fill(HIST("hTrackPhiGen"), particle.phi());
registry.fill(HIST("mcgen/hTrackPtGen"), particle.pt());
registry.fill(HIST("mcgen/hTrackEtaGen"), particle.eta());
registry.fill(HIST("mcgen/hTrackPhiGen"), particle.phi());
}
}
PROCESS_SWITCH(JetSpectraEseTask, processMCGenTrack, "jet MC process: Generated track", false);
Expand Down Expand Up @@ -955,9 +962,9 @@ struct JetSpectraEseTask {
}
seenMcParticles.push_back(particle.globalIndex());

registry.fill(HIST("hTrackPtReco"), track.pt());
registry.fill(HIST("hTrackEtaReco"), track.eta());
registry.fill(HIST("hTrackPhiReco"), track.phi());
registry.fill(HIST("mcrec/hTrackPtReco"), track.pt());
registry.fill(HIST("mcrec/hTrackEtaReco"), track.eta());
registry.fill(HIST("mcrec/hTrackPhiReco"), track.phi());
}
}
}
Expand Down
Loading