From be1213cf0842c01079d59fd4d5d0c0aa61600a7c Mon Sep 17 00:00:00 2001 From: Maria Barlou Date: Mon, 2 Nov 2026 15:59:51 +0100 Subject: [PATCH 1/2] [PWGCF] Add all-gap multiplicity QA to stronglyIntensiveCorr --- .../Tasks/stronglyIntensiveCorr.cxx | 60 +++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/PWGCF/EbyEFluctuations/Tasks/stronglyIntensiveCorr.cxx b/PWGCF/EbyEFluctuations/Tasks/stronglyIntensiveCorr.cxx index 6fa2543523b..6ba5b96ea0e 100644 --- a/PWGCF/EbyEFluctuations/Tasks/stronglyIntensiveCorr.cxx +++ b/PWGCF/EbyEFluctuations/Tasks/stronglyIntensiveCorr.cxx @@ -140,6 +140,18 @@ struct StronglyIntensiveCorr { std::vector centClassEdges(centEdges.begin(), centEdges.end()); AxisSpec centClassAxis = {centClassEdges, "centrality class (%)"}; AxisSpec etaGapAxis = {NEtaGaps, -0.05, 1.55, "#Delta#eta"}; + + // Seven physical, non-overlapping FB gaps: + // DeltaEta = 0.0, 0.2, ..., 1.2. + std::vector physicalGapEdges = { + -0.1, 0.1, 0.3, 0.5, + 0.7, 0.9, 1.1, 1.3 + }; + + AxisSpec physicalGapAxis = { + physicalGapEdges, + "#Delta#eta" + }; AxisSpec nAxis = {500, 0.0, 500.0, "N"}; AxisSpec counterAxis = {20, 0.5, 20.5, "counter"}; AxisSpec ptAxis = {{0.2, 0.5, 0.8, 1.0, 1.5, 2.0, 5.0}, "#it{p}_{T} (GeV/#it{c})"}; @@ -175,6 +187,20 @@ struct StronglyIntensiveCorr { histos.add("QA/fb/nFminusNB", "nF-nB;nF-nB;Counts", kTH1D, {{500, -250.0, 250.0}}); histos.add("QA/fb/nFplusNB", "nF+nB;nF+nB;Counts", kTH1D, {{500, 0.0, 500.0}}); + // Event-level multiplicity QA for every physical gap. + // Axes: centrality x DeltaEta x multiplicity. + histos.add( + "QA/fbAllGaps/nFvsCentGap", + "Forward multiplicity;centrality (%);#Delta#eta;n_{F}", + kTH3D, + {centAxis, physicalGapAxis, nAxis}); + + histos.add( + "QA/fbAllGaps/nBvsCentGap", + "Backward multiplicity;centrality (%);#Delta#eta;n_{B}", + kTH3D, + {centAxis, physicalGapAxis, nAxis}); + histos.add("QA/mcReco/nRecoAll", "MC reco all selected;n;Counts", kTH1D, {nAxis}); histos.add("QA/mcReco/nRecoPrimary", "MC reco primary selected;n;Counts", kTH1D, {nAxis}); histos.add("QA/mcReco/nRecoSecondary", "MC reco secondary selected;n;Counts", kTH1D, {nAxis}); @@ -626,6 +652,39 @@ struct StronglyIntensiveCorr { histos.fill(HIST("QA/fb/nFplusNB"), nf + nb); } + void fillAllGapMultiplicityQA( + float cent, + std::array const& nF, + std::array const& nB) + { + for (int i = 0; i < NEtaGaps; ++i) { + const double gap = + 2.0 * ( + etaCenter[i] - + cfgEtaWidth.value / 2.0 + ); + + // etaCenter = 0 corresponds to overlapping windows and + // gives DeltaEta = -0.2. Keep only the seven physical, + // non-overlapping values from 0.0 to 1.2. + if (gap < -1.e-6 || gap > 1.200001) { + continue; + } + + histos.fill( + HIST("QA/fbAllGaps/nFvsCentGap"), + cent, + gap, + nF[i]); + + histos.fill( + HIST("QA/fbAllGaps/nBvsCentGap"), + cent, + gap, + nB[i]); + } + } + void fillInclusiveEtaGapMoments(std::array const& nF, std::array const& nB) { @@ -944,6 +1003,7 @@ struct StronglyIntensiveCorr { histos.fill(HIST("QA/hCentrality"), cent); fillFBQA(cent, nF, nB); + fillAllGapMultiplicityQA(cent, nF, nB); fillInclusiveEtaGapMoments(nF, nB); fillCentClassEtaGapMoments(centClass, nF, nB); fillCentWindowEtaGapMoments(centWindowClass, nF, nB); From 0582bde67e813b40e70420d3cfe734c2fe23a3a3 Mon Sep 17 00:00:00 2001 From: ALICE Action Bot Date: Mon, 2 Nov 2026 15:42:07 +0000 Subject: [PATCH 2/2] Please consider the following formatting changes --- .../EbyEFluctuations/Tasks/stronglyIntensiveCorr.cxx | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/PWGCF/EbyEFluctuations/Tasks/stronglyIntensiveCorr.cxx b/PWGCF/EbyEFluctuations/Tasks/stronglyIntensiveCorr.cxx index 6ba5b96ea0e..8c073da41e8 100644 --- a/PWGCF/EbyEFluctuations/Tasks/stronglyIntensiveCorr.cxx +++ b/PWGCF/EbyEFluctuations/Tasks/stronglyIntensiveCorr.cxx @@ -145,13 +145,11 @@ struct StronglyIntensiveCorr { // DeltaEta = 0.0, 0.2, ..., 1.2. std::vector physicalGapEdges = { -0.1, 0.1, 0.3, 0.5, - 0.7, 0.9, 1.1, 1.3 - }; + 0.7, 0.9, 1.1, 1.3}; AxisSpec physicalGapAxis = { physicalGapEdges, - "#Delta#eta" - }; + "#Delta#eta"}; AxisSpec nAxis = {500, 0.0, 500.0, "N"}; AxisSpec counterAxis = {20, 0.5, 20.5, "counter"}; AxisSpec ptAxis = {{0.2, 0.5, 0.8, 1.0, 1.5, 2.0, 5.0}, "#it{p}_{T} (GeV/#it{c})"}; @@ -659,10 +657,8 @@ struct StronglyIntensiveCorr { { for (int i = 0; i < NEtaGaps; ++i) { const double gap = - 2.0 * ( - etaCenter[i] - - cfgEtaWidth.value / 2.0 - ); + 2.0 * (etaCenter[i] - + cfgEtaWidth.value / 2.0); // etaCenter = 0 corresponds to overlapping windows and // gives DeltaEta = -0.2. Keep only the seven physical,