From 2607e02a0ca024e91a584814af872a4d43c24ab5 Mon Sep 17 00:00:00 2001 From: Maxim Virta Date: Thu, 6 Aug 2026 12:41:51 +0200 Subject: [PATCH 1/3] [PWGCF] Added safeguards for pt fractions --- PWGCF/GenericFramework/Tasks/flowGfwV02.cxx | 3 +++ 1 file changed, 3 insertions(+) diff --git a/PWGCF/GenericFramework/Tasks/flowGfwV02.cxx b/PWGCF/GenericFramework/Tasks/flowGfwV02.cxx index 9e1811fb9c8..1582f437e07 100644 --- a/PWGCF/GenericFramework/Tasks/flowGfwV02.cxx +++ b/PWGCF/GenericFramework/Tasks/flowGfwV02.cxx @@ -886,6 +886,9 @@ struct FlowGfwV02 { int bootstrap = fRndm->Integer(gfwMemberCache.nBootstrap); for (int pid = 0; pid < PidTotal; pid++) { int normIndex = (cfgNormalizeByCharged) ? PidCharged : pid; + if (!pidStates.hPtForward[normIndex]->Integral() > 0 || !pidStates.hPtBackward[normIndex]->Integral() > 0) { + continue; // Forward or backward pT distribution is not defined + } for (int i = 1; i <= fSecondAxis->GetNbins(); i++) { ptFractionForward = pidStates.hPtForward[pid]->GetBinContent(i) / pidStates.hPtForward[normIndex]->Integral(); ptFractionBackward = pidStates.hPtBackward[pid]->GetBinContent(i) / pidStates.hPtBackward[normIndex]->Integral(); From c142a0dcea00ca4746a691af9ece151c880bd59b Mon Sep 17 00:00:00 2001 From: Maxim Virta Date: Thu, 6 Aug 2026 12:50:58 +0200 Subject: [PATCH 2/3] Added extra parentheses --- PWGCF/GenericFramework/Tasks/flowGfwV02.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PWGCF/GenericFramework/Tasks/flowGfwV02.cxx b/PWGCF/GenericFramework/Tasks/flowGfwV02.cxx index 1582f437e07..296e7667f70 100644 --- a/PWGCF/GenericFramework/Tasks/flowGfwV02.cxx +++ b/PWGCF/GenericFramework/Tasks/flowGfwV02.cxx @@ -886,7 +886,7 @@ struct FlowGfwV02 { int bootstrap = fRndm->Integer(gfwMemberCache.nBootstrap); for (int pid = 0; pid < PidTotal; pid++) { int normIndex = (cfgNormalizeByCharged) ? PidCharged : pid; - if (!pidStates.hPtForward[normIndex]->Integral() > 0 || !pidStates.hPtBackward[normIndex]->Integral() > 0) { + if (!(pidStates.hPtForward[normIndex]->Integral() > 0) || !(pidStates.hPtBackward[normIndex]->Integral() > 0)) { continue; // Forward or backward pT distribution is not defined } for (int i = 1; i <= fSecondAxis->GetNbins(); i++) { From 695291ed486a268542f88199ad87b7fe73f4163e Mon Sep 17 00:00:00 2001 From: Maxim Virta Date: Thu, 6 Aug 2026 13:37:12 +0200 Subject: [PATCH 3/3] Linter fixes --- PWGCF/GenericFramework/Tasks/flowGfwV02.cxx | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/PWGCF/GenericFramework/Tasks/flowGfwV02.cxx b/PWGCF/GenericFramework/Tasks/flowGfwV02.cxx index 296e7667f70..755a723bbc0 100644 --- a/PWGCF/GenericFramework/Tasks/flowGfwV02.cxx +++ b/PWGCF/GenericFramework/Tasks/flowGfwV02.cxx @@ -67,7 +67,6 @@ #include #include #include -#include #include using namespace o2; @@ -1271,7 +1270,7 @@ struct FlowGfwV02 { registry.fill(HIST("eventQA/eventSel"), kSel8); registry.fill(HIST("eventQA/eventSel"), kOccupancy); // Add occupancy selection later - const XAxis xaxis{.centrality = getCentrality(collision), .multiplicity = static_cast(tracks.size())}; + const XAxis xaxis{.centrality = getCentrality(collision), .multiplicity = tracks.size()}; if (cfgFillQA) { fillEventQA(collision, xaxis); registry.fill(HIST("eventQA/before/centrality"), xaxis.centrality); @@ -1296,7 +1295,7 @@ struct FlowGfwV02 { LOGF(info, "run = %d", run); } loadCorrections(run); - const XAxis xaxis{.centrality = collision.multiplicity(), .multiplicity = static_cast(tracks.size())}; + const XAxis xaxis{.centrality = collision.multiplicity(), .multiplicity = tracks.size()}; registry.fill(HIST("eventQA/after/centrality"), xaxis.centrality); registry.fill(HIST("eventQA/after/multiplicity"), xaxis.multiplicity); @@ -1311,7 +1310,7 @@ struct FlowGfwV02 { lastRun = run; LOGF(info, "run = %d", run); } - const XAxis xaxis{.centrality = collision.multiplicity(), .multiplicity = static_cast(tracks.size())}; + const XAxis xaxis{.centrality = collision.multiplicity(), .multiplicity = tracks.size()}; registry.fill(HIST("eventQA/after/centrality"), xaxis.centrality); registry.fill(HIST("eventQA/after/multiplicity"), xaxis.multiplicity); // processCollision(collision, tracks, xaxis, run);