From 4d2f4ae853e0263ebe32e1527e1194a83c4ecbd1 Mon Sep 17 00:00:00 2001 From: jaimenorman Date: Mon, 24 Nov 2025 17:51:06 +0000 Subject: [PATCH 1/2] remove dependence on event weight task and additional checks --- PWGJE/Tasks/jetOutlierQA.cxx | 29 ++++++++++++++++++++++++----- 1 file changed, 24 insertions(+), 5 deletions(-) diff --git a/PWGJE/Tasks/jetOutlierQA.cxx b/PWGJE/Tasks/jetOutlierQA.cxx index f3ecb1274d8..ed414a2e776 100644 --- a/PWGJE/Tasks/jetOutlierQA.cxx +++ b/PWGJE/Tasks/jetOutlierQA.cxx @@ -54,8 +54,8 @@ struct JetOutlierQATask { Preslice perColTrack = aod::jtrack::collisionId; Preslice> perColParticle = aod::jmccollision::mcCollisionId; - Preslice> perColJets = aod::jet::collisionId; - Preslice> perColJetsMatched = aod::jet::collisionId; + Preslice> perColJets = aod::jet::collisionId; + Preslice> perColJetsMatched = aod::jet::collisionId; Configurable eventSelections{"eventSelections", "sel8", "choose event selection"}; Configurable vertexZCut{"vertexZCut", 10.0f, "Accepted z-vertex range"}; @@ -239,10 +239,16 @@ struct JetOutlierQATask { registry.add("h_track_pt_eta_same_collision", "track pt vs eta from same collision or different MB collision;p_{T,track} (GeV/#it{c});#eta_{track};entries", {HistType::kTH2F, {{200, 0, 200}, {100, -5, 5}}}); registry.add("h_track_pt_phi_same_collision", "track pt vs phi from same collision or different MB collision;p_{T,track} (GeV/#it{c});#varphi_{track} (rad);entries", {HistType::kTH2F, {{200, 0, 200}, {160, -1.0, 7.0}}}); registry.add("h2_collision_ID_difference_same_collision", "difference in collision ID between outlier collision and analysed collision", {HistType::kTH2F, {{600, 0, 600}, {200, -100, 100}}}); + registry.add("h_pt_hard_track_pt_same_collision", "Tracks vs pThard;#frac{p_{T}}{#hat{p}};p_{T}", {HistType::kTH2F, {pThatAxis, {200, 0, 200}}}); + registry.add("h_track_pt_same_collision_cut_particle", "track pt from same collision or different MB collision;p_{T,track} (GeV/#it{c});entries", {HistType::kTH1F, {{200, 0, 200}}}); + registry.add("h_pt_hard_track_pt_same_collision_cut_particle", "Tracks vs pThard;#frac{p_{T}}{#hat{p}};p_{T}", {HistType::kTH2F, {pThatAxis, {200, 0, 200}}}); + registry.add("h_track_pt_same_collision_rejected", "rejected track pt from same collision or different MB collision;p_{T,track} (GeV/#it{c});entries", {HistType::kTH1F, {{200, 0, 200}}}); + registry.add("h_track_pt_no_JJ_different", "track pt from same collision or different MB collision;p_{T,track} (GeV/#it{c});entries", {HistType::kTH1F, {{200, 0, 200}}}); registry.add("h_track_pt_eta_no_JJ_different", "track pt vs eta from same collision or different MB collision;p_{T,track} (GeV/#it{c});#eta_{track};entries", {HistType::kTH2F, {{200, 0, 200}, {100, -5, 5}}}); registry.add("h_track_pt_phi_no_JJ_different", "track pt vs phi from same collision or different MB collision;p_{T,track} (GeV/#it{c});#varphi_{track} (rad);entries", {HistType::kTH2F, {{200, 0, 200}, {160, -1.0, 7.0}}}); registry.add("h2_collision_ID_difference_no_JJ_different", "difference in collision ID between outlier collision and analysed collision", {HistType::kTH2F, {{600, 0, 600}, {200, -100, 100}}}); + registry.add("h_track_pt_no_JJ_different_rejected", "rejected track pt from same collision or different MB collision;p_{T,track} (GeV/#it{c});entries", {HistType::kTH1F, {{200, 0, 200}}}); } } @@ -285,7 +291,7 @@ struct JetOutlierQATask { return true; } - void fillHistogramsAmbiguous(soa::Join::iterator const& jet, + void fillHistogramsAmbiguous(soa::Join::iterator const& jet, float weight, aod::AmbiguousTracks const& tracksAmbiguous) { @@ -363,7 +369,7 @@ struct JetOutlierQATask { void processJetsAmbiguous(soa::Filtered>::iterator const& collision, aod::JetMcCollisions const&, - soa::Join const& jets, + soa::Join const& jets, aod::JetTracksMCD const&, const aod::AmbiguousTracks& tracksAmbiguous) { @@ -386,7 +392,7 @@ struct JetOutlierQATask { if (!isAcceptedJet(jet)) { continue; } - fillHistogramsAmbiguous(jet, jet.eventWeight(), tracksAmbiguous); + fillHistogramsAmbiguous(jet, collision.weight(), tracksAmbiguous); nTracksJet += jet.tracksIds().size(); if (jet.pt() > pTHatMaxMCDOutlier * pTHat) { isOutlierEvent = true; @@ -681,6 +687,16 @@ struct JetOutlierQATask { registry.fill(HIST("h_track_pt_eta_same_collision"), track.pt(), track.eta(), weight); registry.fill(HIST("h_track_pt_phi_same_collision"), track.pt(), track.phi(), weight); registry.fill(HIST("h2_collision_ID_difference_same_collision"), pTHat, float(outlierCollisionIDDifference)); + registry.fill(HIST("h_pt_hard_track_pt_same_collision"), pTHat != 0.0 ? track.pt() / pTHat : 0.0, track.pt(), weight); + + // include selection on pThat of particle + if(mcParticleOutlier.pt() < pTHatMaxMCP * pTHat) { + registry.fill(HIST("h_track_pt_same_collision_cut_particle"), track.pt(), weight); + registry.fill(HIST("h_pt_hard_track_pt_same_collision_cut_particle"), pTHat != 0.0 ? track.pt() / pTHat : 0.0, track.pt(), weight); + } + } + else { + registry.fill(HIST("h_track_pt_same_collision_rejected"), track.pt(), weight); } // fill tracks for events which have no JJ outlier tracks from different events if (nJJdifferentSelected == 0) { @@ -689,6 +705,9 @@ struct JetOutlierQATask { registry.fill(HIST("h_track_pt_phi_no_JJ_different"), track.pt(), track.phi(), weight); registry.fill(HIST("h2_collision_ID_difference_no_JJ_different"), pTHat, float(outlierCollisionIDDifference)); } + else { + registry.fill(HIST("h_track_pt_no_JJ_different_rejected"), track.pt(), weight); + } // collision checks for all tracks for (auto const& collisionOutlier : collisions) { // find collisions closeby float eventWeightOutlier = collisionOutlier.mcCollision().weight(); From 1175557851e09aafeba91a82c664695b4f4b2e8f Mon Sep 17 00:00:00 2001 From: ALICE Action Bot Date: Thu, 27 Nov 2025 11:32:08 +0000 Subject: [PATCH 2/2] Please consider the following formatting changes --- PWGJE/Tasks/jetOutlierQA.cxx | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/PWGJE/Tasks/jetOutlierQA.cxx b/PWGJE/Tasks/jetOutlierQA.cxx index ed414a2e776..526ace8e383 100644 --- a/PWGJE/Tasks/jetOutlierQA.cxx +++ b/PWGJE/Tasks/jetOutlierQA.cxx @@ -690,12 +690,11 @@ struct JetOutlierQATask { registry.fill(HIST("h_pt_hard_track_pt_same_collision"), pTHat != 0.0 ? track.pt() / pTHat : 0.0, track.pt(), weight); // include selection on pThat of particle - if(mcParticleOutlier.pt() < pTHatMaxMCP * pTHat) { + if (mcParticleOutlier.pt() < pTHatMaxMCP * pTHat) { registry.fill(HIST("h_track_pt_same_collision_cut_particle"), track.pt(), weight); registry.fill(HIST("h_pt_hard_track_pt_same_collision_cut_particle"), pTHat != 0.0 ? track.pt() / pTHat : 0.0, track.pt(), weight); } - } - else { + } else { registry.fill(HIST("h_track_pt_same_collision_rejected"), track.pt(), weight); } // fill tracks for events which have no JJ outlier tracks from different events @@ -704,8 +703,7 @@ struct JetOutlierQATask { registry.fill(HIST("h_track_pt_eta_no_JJ_different"), track.pt(), track.eta(), weight); registry.fill(HIST("h_track_pt_phi_no_JJ_different"), track.pt(), track.phi(), weight); registry.fill(HIST("h2_collision_ID_difference_no_JJ_different"), pTHat, float(outlierCollisionIDDifference)); - } - else { + } else { registry.fill(HIST("h_track_pt_no_JJ_different_rejected"), track.pt(), weight); } // collision checks for all tracks