From d41de4e369ac79da5b66a12c94586a1940b5eade Mon Sep 17 00:00:00 2001 From: miedema-11 <1260971129@qq.com> Date: Tue, 14 Jul 2026 11:30:23 +0800 Subject: [PATCH 1/2] change eventcounter order --- PWGUD/Tasks/flowCumulantsUpc.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/PWGUD/Tasks/flowCumulantsUpc.cxx b/PWGUD/Tasks/flowCumulantsUpc.cxx index e1513890707..584f8caf5fa 100644 --- a/PWGUD/Tasks/flowCumulantsUpc.cxx +++ b/PWGUD/Tasks/flowCumulantsUpc.cxx @@ -173,8 +173,8 @@ struct FlowCumulantsUpc { // Event QA registry.add("hEventCount", "Number of Event;; Count", {HistType::kTH1D, {{13, 0, 13}}}); registry.get(HIST("hEventCount"))->GetXaxis()->SetBinLabel(1, "Filtered event"); - registry.get(HIST("hEventCount"))->GetXaxis()->SetBinLabel(2, "after ZDC timing"); - registry.get(HIST("hEventCount"))->GetXaxis()->SetBinLabel(3, "after gapside"); + registry.get(HIST("hEventCount"))->GetXaxis()->SetBinLabel(2, "after gapside"); + registry.get(HIST("hEventCount"))->GetXaxis()->SetBinLabel(3, "after ZDC timing"); registry.get(HIST("hEventCount"))->GetXaxis()->SetBinLabel(4, "after Vz"); registry.get(HIST("hEventCount"))->GetXaxis()->SetBinLabel(5, "after occupancy"); registry.get(HIST("hEventCount"))->GetXaxis()->SetBinLabel(6, "after load corr"); From 11b806e4bd21947c7a5ebd5ab52b8e9a3f66ad15 Mon Sep 17 00:00:00 2001 From: miedema-11 <1260971129@qq.com> Date: Mon, 20 Jul 2026 23:57:15 +0800 Subject: [PATCH 2/2] add event switch --- PWGUD/Tasks/flowCumulantsUpc.cxx | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/PWGUD/Tasks/flowCumulantsUpc.cxx b/PWGUD/Tasks/flowCumulantsUpc.cxx index 584f8caf5fa..52df93c8f24 100644 --- a/PWGUD/Tasks/flowCumulantsUpc.cxx +++ b/PWGUD/Tasks/flowCumulantsUpc.cxx @@ -70,9 +70,11 @@ struct FlowCumulantsUpc { O2_DEFINE_CONFIGURABLE(cfgCutVertex, float, 10.0f, "Accepted z-vertex range") O2_DEFINE_CONFIGURABLE(cfgIfVertex, bool, false, "choose vertex or not") - O2_DEFINE_CONFIGURABLE(cfgCutPtPOIMin, float, 0.1f, "Minimal pT for poi tracks") + O2_DEFINE_CONFIGURABLE(cfgPtCutMin, float, 0.2f, "minimum accepted track pT") + O2_DEFINE_CONFIGURABLE(cfgPtCutMax, float, 10.0f, "maximum accepted track pT") + O2_DEFINE_CONFIGURABLE(cfgCutPtPOIMin, float, 0.2f, "Minimal pT for poi tracks") O2_DEFINE_CONFIGURABLE(cfgCutPtPOIMax, float, 10.0f, "Maximal pT for poi tracks") - O2_DEFINE_CONFIGURABLE(cfgCutPtRefMin, float, 0.1f, "Minimal pT for ref tracks") + O2_DEFINE_CONFIGURABLE(cfgCutPtRefMin, float, 0.2f, "Minimal pT for ref tracks") O2_DEFINE_CONFIGURABLE(cfgCutPtRefMax, float, 3.0f, "Maximal pT for ref tracks") O2_DEFINE_CONFIGURABLE(cfgCutEta, float, 0.8f, "max Eta range for tracks") O2_DEFINE_CONFIGURABLE(cfgCutTPCCrossedRows, float, 70.0f, "minimum number of crossed TPC Rows") @@ -101,6 +103,11 @@ struct FlowCumulantsUpc { O2_DEFINE_CONFIGURABLE(cfgZdcTime, bool, false, "choose zdc time cut") O2_DEFINE_CONFIGURABLE(cfgZdcTimeCut, float, 2.0, "zdc time cut") O2_DEFINE_CONFIGURABLE(cfgIRMaxCut, double, 50, "maximum interaction rate for UPC events") + O2_DEFINE_CONFIGURABLE(cfgMaxDebugEvents, int, -1, "Maximum number of events for debug (-1: all events)") + O2_DEFINE_CONFIGURABLE(cfgvtxITSTPC, bool, true, "require vertex from ITS+TPC") + O2_DEFINE_CONFIGURABLE(cfgsbp, bool, true, "require sbp") + O2_DEFINE_CONFIGURABLE(cfgitsROFb, bool, true, "require itsROFb") + O2_DEFINE_CONFIGURABLE(cfgtfb, bool, true, "require tfb") Configurable> cfgUserDefineGFWCorr{"cfgUserDefineGFWCorr", std::vector{"refN02 {2} refP02 {-2}", "refN12 {2} refP12 {-2}"}, "User defined GFW CorrelatorConfig"}; Configurable> cfgUserDefineGFWName{"cfgUserDefineGFWName", std::vector{"Ch02Gap22", "Ch12Gap22"}, "User defined GFW Name"}; @@ -597,6 +604,9 @@ struct FlowCumulantsUpc { bool trackSelected(TTrack track) { registry.fill(HIST("hTrackCount"), 0.5); + if (track.pt() < cfgPtCutMin || track.pt() > cfgPtCutMax) { + return false; + } // UPC selection if (!track.isPVContributor()) { return false; @@ -748,19 +758,19 @@ struct FlowCumulantsUpc { } } registry.fill(HIST("hEventCount"), 5.5); - if (!collision.vtxITSTPC()) { + if (cfgvtxITSTPC && !collision.vtxITSTPC()) { return; } registry.fill(HIST("hEventCount"), 6.5); - if (!collision.sbp()) { + if (cfgsbp && !collision.sbp()) { return; } registry.fill(HIST("hEventCount"), 7.5); - if (!collision.itsROFb()) { + if (cfgitsROFb && !collision.itsROFb()) { return; } registry.fill(HIST("hEventCount"), 8.5); - if (!collision.tfb()) { + if (cfgtfb && !collision.tfb()) { return; } registry.fill(HIST("hEventCount"), 9.5);