From 57664e228422e0927454d6ec288dde11d1db40fa Mon Sep 17 00:00:00 2001 From: Yakiv <5348341@upjs.sk> Date: Thu, 9 Oct 2025 18:03:27 +0200 Subject: [PATCH 1/5] Task to study primary multistrange production in Run 3 --- PWGLF/Tasks/Strangeness/CMakeLists.txt | 5 + PWGLF/Tasks/Strangeness/strangecasctrack.cxx | 171 +++++++++++++++++++ 2 files changed, 176 insertions(+) create mode 100644 PWGLF/Tasks/Strangeness/strangecasctrack.cxx diff --git a/PWGLF/Tasks/Strangeness/CMakeLists.txt b/PWGLF/Tasks/Strangeness/CMakeLists.txt index 3198993318b..fc8d93c36b4 100644 --- a/PWGLF/Tasks/Strangeness/CMakeLists.txt +++ b/PWGLF/Tasks/Strangeness/CMakeLists.txt @@ -170,3 +170,8 @@ o2physics_add_dpl_workflow(cascadeanalysislightions SOURCES cascadeAnalysisLightIonsDerivedData.cxx PUBLIC_LINK_LIBRARIES O2Physics::AnalysisCore COMPONENT_NAME Analysis) + +o2physics_add_dpl_workflow(strangecasctrack + SOURCES strangecasctrack.cxx + PUBLIC_LINK_LIBRARIES O2::Framework O2::DetectorsBase O2Physics::AnalysisCore O2Physics::EventFilteringUtils + COMPONENT_NAME myo2) diff --git a/PWGLF/Tasks/Strangeness/strangecasctrack.cxx b/PWGLF/Tasks/Strangeness/strangecasctrack.cxx new file mode 100644 index 00000000000..1a0872ee824 --- /dev/null +++ b/PWGLF/Tasks/Strangeness/strangecasctrack.cxx @@ -0,0 +1,171 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. +// +/// \file strangecasctrack.cxx +/// \brief Analysis of strangeness tracking efficiency via primary production of Omega and Xi in Run 3 +/// \author Yakiv Paroviak (yakiv.paroviak@cern.ch) + +#include "Framework/runDataProcessing.h" +#include "Framework/AnalysisTask.h" +#include "Common/DataModel/Centrality.h" +#include "Common/DataModel/Multiplicity.h" +#include "Common/DataModel/EventSelection.h" +#include "Common/DataModel/TrackSelection.h" +#include "Framework/ASoAHelpers.h" +#include "Framework/AnalysisDataModel.h" +#include "PWGLF/DataModel/LFStrangenessTables.h" + +using namespace o2; +using namespace o2::framework; +using namespace o2::framework::expressions; + +struct StrangeCascTrack { + + using TraCascDatas = soa::Join; + using CascDatas = soa::Join; + + HistogramRegistry histos{"Histos", {}, OutputObjHandlingPolicy::AnalysisObject}; + + Configurable doProcessPP{"doprocesspp", true, "true for pp, false for PbPb and OO"}; + Configurable doProcessPbPb{"doprocesspbpb", false, "true for PbPb, false for pp and OO"}; + Configurable doProcessOO{"doprocessoo", false, "true for OO, false for pp and PbPb"}; + + Configurable doProcessMC{"domc", false, "true for MC, false for data"}; + + Configurable doRequireFT0{"doft0", false, "true for offline trigger for Run 3"}; + Configurable doApplyPID{"dopid", false, "true for offline trigger for Run 3"}; + Configurable doApplyCuts{"docuts", true, "true for offline trigger for Run 3"}; + + ConfigurableAxis axisPt{"axisPt", {VARIABLE_WIDTH, 0.0, 0.5, 1.0, 1.5, 2.0, 3.0, 4.0, 6.0, 10.0}, "p_{T} (GeV/c)"}; + ConfigurableAxis axisMult{"axisMult", {VARIABLE_WIDTH, 0.0f, 0.01f, 1.0f, 10.0f, 20.0f, 30.0f, 40.0f, 50.0f, 70.0f, 100.0f}, "Multiplicity"}; + ConfigurableAxis axisOmegaMass{"axisOmegaMass", {2000, 1.6, 1.8}, "#Omega M_{inv} (GeV/c^{2})"}; + ConfigurableAxis axisXiMass{"axisXiMass", {2000, 1.2, 1.4}, "#Xi M_{inv} (GeV/c^{2})"}; + + Configurable CutDCAtoPVxy{"cutpvdcaxy", 0.02f, "max cascade dca to PV in xy"}; + Configurable CutDCAtoPVz{"cutpvdcaz", 0.02f, "max cascade dca to PV in z"}; + + + void init(InitContext const&) + { + histos.add("Events/EvCounter", "Event Counter", kTH1F, {{1, 0, 1}}); + histos.add("Events/PVx", "PV x position", kTH1F, {{200, -0.1, 0.1}}); + histos.add("Events/PVy", "PV y position", kTH1F, {{200, -0.1, 0.1}}); + histos.add("Events/PVz", "PV z position", kTH1F, {{100, -20, 20}}); + histos.add("Events/Mult", "Multiplicity", kTH1F, {axisMult}); + + histos.add("Tracked/Phi", "Phi", kTH1F, {{100, 0., 2*M_PI}}); + histos.add("Tracked/Eta", "Eta", kTH1F, {{102, -2.01, 2.01}}); + histos.add("Tracked/DCAxy", "DCA to xy", kTH1F, {{500, 0., 0.5}}); + histos.add("Tracked/DCAz", "DCA to z", kTH1F, {{500, 0., 0.5}}); + histos.add("Tracked/EvMult", "Multiplicity of events with >=1 cascade", kTH1F, {axisMult}); + histos.add("Tracked/MassOmega", "Invariant mass hypothesis",kTH1F, {axisOmegaMass}); + histos.add("Tracked/MassXi", "Invariant mass hypothesis", kTH1F, {axisXiMass}); + histos.add("Tracked/Omega", "",kTHnD, {axisOmegaMass, axisPt, axisMult}); + histos.add("Tracked/Xi", "", kTHnD, {axisXiMass, axisPt, axisMult}); + + histos.add("All/Phi", "Phi", kTH1F, {{100, 0., 2*M_PI}}); + histos.add("All/Eta", "Eta", kTH1F, {{102, -2.01, 2.01}}); + histos.add("All/DCAxy", "DCA to xy", kTH1F, {{1000, 0, 1.}}); + histos.add("All/DCAz", "DCA to z", kTH1F, {{1000, 0, 1.}}); + histos.add("All/EvMult", "Multiplicity of events with >=1 cascade", kTH1F, {axisMult}); + histos.add("All/MassOmega", "Invariant mass hypothesis",kTH1F, {axisOmegaMass}); + histos.add("All/MassXi", "Invariant mass hypothesis", kTH1F, {axisXiMass}); + histos.add("All/Omega", "", kTHnD, {axisOmegaMass, axisPt, axisMult}); + histos.add("All/Xi", "", kTHnD, {axisXiMass, axisPt, axisMult}); + } + + +void processTracked(soa::Join::iterator const& collision, + aod::TraCascDatas const& tracascades) +{ + double mult = doProcessPP ? collision.centFT0M() : collision.centFT0C(); + int64_t casccollid = 0; + for (auto const& cascade : tracascades) { + + double dcaxy = cascade.dcaXYCascToPV(); + double dcaz = cascade.dcaZCascToPV(); + if (doApplyCuts && ((dcaxy > CutDCAtoPVxy) || (dcaz > CutDCAtoPVz))) continue; // DCA check + + if (collision.index() != casccollid) { + histos.fill(HIST("Tracked/EvMult"), mult); // count and list mult of events with at least one cascade + casccollid = collision.index(); + } + + double pt = cascade.pt(); + double phi = cascade.phi(); + double eta = cascade.eta(); + double massXi = cascade.mXi(); + double massOmega = cascade.mOmega(); + + histos.fill(HIST("Tracked/DCAxy"), dcaxy); + histos.fill(HIST("Tracked/DCAz"), dcaz); + histos.fill(HIST("Tracked/Phi"), phi); + histos.fill(HIST("Tracked/Eta"), eta); + histos.fill(HIST("Tracked/MassXi"), massXi); + histos.fill(HIST("Tracked/MassOmega"), massOmega); + histos.fill(HIST("Tracked/Xi"), massXi, pt, mult); + histos.fill(HIST("Tracked/Omega"), massOmega, pt, mult); + + } +} + +void processAll(soa::Join::iterator const& collision, + aod::CascDatas const& cascades) +{ + histos.fill(HIST("Events/EvCounter"), 0.5); + double mult = doProcessPP ? collision.centFT0M() : collision.centFT0C(); + histos.fill(HIST("Events/Mult"), mult); + double pvx = collision.posX(); + double pvy = collision.posY(); + double pvz = collision.posZ(); + histos.fill(HIST("Events/PVx"), pvx); + histos.fill(HIST("Events/PVy"), pvy); + histos.fill(HIST("Events/PVz"), pvz); + + int64_t casccollid = 0; + for (auto const& cascade : cascades) { + + double dcaxy = cascade.dcaXYCascToPV(); + double dcaz = cascade.dcaZCascToPV(); + if (doApplyCuts && ((dcaxy > CutDCAtoPVxy) || (dcaz > CutDCAtoPVz))) continue; // DCA check + + if (collision.index() != casccollid) { + histos.fill(HIST("All/EvMult"), mult); // count and list mult of events with at least one cascade + casccollid = collision.index(); + } + + double pt = cascade.pt(); + double phi = cascade.phi(); + double eta = cascade.eta(); + double massXi = cascade.mXi(); + double massOmega = cascade.mOmega(); + + histos.fill(HIST("All/DCAxy"), dcaxy); + histos.fill(HIST("All/DCAz"), dcaz); + histos.fill(HIST("All/Phi"), phi); + histos.fill(HIST("All/Eta"), eta); + histos.fill(HIST("All/MassXi"), massXi); + histos.fill(HIST("All/MassOmega"), massOmega); + histos.fill(HIST("All/Xi"), massXi, pt, mult); + histos.fill(HIST("All/Omega"), massOmega, pt, mult); + + } +} +PROCESS_SWITCH(StrangeCascTrack, processTracked, "process tracked cascades", true); +PROCESS_SWITCH(StrangeCascTrack, processAll, "process all cascades", true); +}; + +WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) +{ + return WorkflowSpec{ + adaptAnalysisTask(cfgc), + }; +} From 027dfd5f7093878e90918636b403d2b589eb90f2 Mon Sep 17 00:00:00 2001 From: Yakiv <5348341@upjs.sk> Date: Thu, 9 Oct 2025 18:05:30 +0200 Subject: [PATCH 2/5] Task to study primary multistrange production in Run 3 --- PWGLF/Tasks/Strangeness/strangecasctrack.cxx | 1 - 1 file changed, 1 deletion(-) diff --git a/PWGLF/Tasks/Strangeness/strangecasctrack.cxx b/PWGLF/Tasks/Strangeness/strangecasctrack.cxx index 1a0872ee824..d17dc95cfda 100644 --- a/PWGLF/Tasks/Strangeness/strangecasctrack.cxx +++ b/PWGLF/Tasks/Strangeness/strangecasctrack.cxx @@ -18,7 +18,6 @@ #include "Common/DataModel/Centrality.h" #include "Common/DataModel/Multiplicity.h" #include "Common/DataModel/EventSelection.h" -#include "Common/DataModel/TrackSelection.h" #include "Framework/ASoAHelpers.h" #include "Framework/AnalysisDataModel.h" #include "PWGLF/DataModel/LFStrangenessTables.h" From ffdda2c4c4818bd26b1cbf8d87f8e2ac46863841 Mon Sep 17 00:00:00 2001 From: Yakiv Date: Thu, 9 Oct 2025 20:59:17 +0200 Subject: [PATCH 3/5] Formatting update --- PWGLF/Tasks/Strangeness/strangecasctrack.cxx | 188 +++++++++---------- 1 file changed, 94 insertions(+), 94 deletions(-) diff --git a/PWGLF/Tasks/Strangeness/strangecasctrack.cxx b/PWGLF/Tasks/Strangeness/strangecasctrack.cxx index d17dc95cfda..29234f4918d 100644 --- a/PWGLF/Tasks/Strangeness/strangecasctrack.cxx +++ b/PWGLF/Tasks/Strangeness/strangecasctrack.cxx @@ -13,14 +13,16 @@ /// \brief Analysis of strangeness tracking efficiency via primary production of Omega and Xi in Run 3 /// \author Yakiv Paroviak (yakiv.paroviak@cern.ch) -#include "Framework/runDataProcessing.h" -#include "Framework/AnalysisTask.h" +#include "PWGLF/DataModel/LFStrangenessTables.h" + #include "Common/DataModel/Centrality.h" -#include "Common/DataModel/Multiplicity.h" #include "Common/DataModel/EventSelection.h" +#include "Common/DataModel/Multiplicity.h" + #include "Framework/ASoAHelpers.h" #include "Framework/AnalysisDataModel.h" -#include "PWGLF/DataModel/LFStrangenessTables.h" +#include "Framework/AnalysisTask.h" +#include "Framework/runDataProcessing.h" using namespace o2; using namespace o2::framework; @@ -33,24 +35,23 @@ struct StrangeCascTrack { HistogramRegistry histos{"Histos", {}, OutputObjHandlingPolicy::AnalysisObject}; - Configurable doProcessPP{"doprocesspp", true, "true for pp, false for PbPb and OO"}; - Configurable doProcessPbPb{"doprocesspbpb", false, "true for PbPb, false for pp and OO"}; - Configurable doProcessOO{"doprocessoo", false, "true for OO, false for pp and PbPb"}; + Configurable doProcessPP{"doProcessPP", true, "true for pp, false for PbPb and OO"}; + Configurable doProcessPbPb{"doProcessPbPb", false, "true for PbPb, false for pp and OO"}; + Configurable doProcessOO{"doProcessOO", false, "true for OO, false for pp and PbPb"}; - Configurable doProcessMC{"domc", false, "true for MC, false for data"}; + Configurable doProcessMC{"doProcessMC", false, "true for MC, false for data"}; - Configurable doRequireFT0{"doft0", false, "true for offline trigger for Run 3"}; - Configurable doApplyPID{"dopid", false, "true for offline trigger for Run 3"}; - Configurable doApplyCuts{"docuts", true, "true for offline trigger for Run 3"}; + Configurable doRequireFT0{"doRequireFT0", false, "true for offline trigger for Run 3"}; + Configurable doApplyPID{"doApplyPID", false, "true for offline trigger for Run 3"}; + Configurable doApplyCuts{"doApplyCuts", true, "true for offline trigger for Run 3"}; ConfigurableAxis axisPt{"axisPt", {VARIABLE_WIDTH, 0.0, 0.5, 1.0, 1.5, 2.0, 3.0, 4.0, 6.0, 10.0}, "p_{T} (GeV/c)"}; ConfigurableAxis axisMult{"axisMult", {VARIABLE_WIDTH, 0.0f, 0.01f, 1.0f, 10.0f, 20.0f, 30.0f, 40.0f, 50.0f, 70.0f, 100.0f}, "Multiplicity"}; ConfigurableAxis axisOmegaMass{"axisOmegaMass", {2000, 1.6, 1.8}, "#Omega M_{inv} (GeV/c^{2})"}; ConfigurableAxis axisXiMass{"axisXiMass", {2000, 1.2, 1.4}, "#Xi M_{inv} (GeV/c^{2})"}; - Configurable CutDCAtoPVxy{"cutpvdcaxy", 0.02f, "max cascade dca to PV in xy"}; - Configurable CutDCAtoPVz{"cutpvdcaz", 0.02f, "max cascade dca to PV in z"}; - + Configurable CutDCAtoPVxy{"CutDCAtoPVxy", 0.02f, "max cascade dca to PV in xy"}; + Configurable CutDCAtoPVz{"CutDCAtoPVz", 0.02f, "max cascade dca to PV in z"}; void init(InitContext const&) { @@ -60,106 +61,105 @@ struct StrangeCascTrack { histos.add("Events/PVz", "PV z position", kTH1F, {{100, -20, 20}}); histos.add("Events/Mult", "Multiplicity", kTH1F, {axisMult}); - histos.add("Tracked/Phi", "Phi", kTH1F, {{100, 0., 2*M_PI}}); + histos.add("Tracked/Phi", "Phi", kTH1F, {{100, 0., 2 * o2::constants::math::M_PI}}); histos.add("Tracked/Eta", "Eta", kTH1F, {{102, -2.01, 2.01}}); histos.add("Tracked/DCAxy", "DCA to xy", kTH1F, {{500, 0., 0.5}}); histos.add("Tracked/DCAz", "DCA to z", kTH1F, {{500, 0., 0.5}}); histos.add("Tracked/EvMult", "Multiplicity of events with >=1 cascade", kTH1F, {axisMult}); - histos.add("Tracked/MassOmega", "Invariant mass hypothesis",kTH1F, {axisOmegaMass}); + histos.add("Tracked/MassOmega", "Invariant mass hypothesis", kTH1F, {axisOmegaMass}); histos.add("Tracked/MassXi", "Invariant mass hypothesis", kTH1F, {axisXiMass}); - histos.add("Tracked/Omega", "",kTHnD, {axisOmegaMass, axisPt, axisMult}); + histos.add("Tracked/Omega", "", kTHnD, {axisOmegaMass, axisPt, axisMult}); histos.add("Tracked/Xi", "", kTHnD, {axisXiMass, axisPt, axisMult}); - histos.add("All/Phi", "Phi", kTH1F, {{100, 0., 2*M_PI}}); + histos.add("All/Phi", "Phi", kTH1F, {{100, 0., 2 * o2::constants::math::M_PI}}); histos.add("All/Eta", "Eta", kTH1F, {{102, -2.01, 2.01}}); histos.add("All/DCAxy", "DCA to xy", kTH1F, {{1000, 0, 1.}}); histos.add("All/DCAz", "DCA to z", kTH1F, {{1000, 0, 1.}}); histos.add("All/EvMult", "Multiplicity of events with >=1 cascade", kTH1F, {axisMult}); - histos.add("All/MassOmega", "Invariant mass hypothesis",kTH1F, {axisOmegaMass}); + histos.add("All/MassOmega", "Invariant mass hypothesis", kTH1F, {axisOmegaMass}); histos.add("All/MassXi", "Invariant mass hypothesis", kTH1F, {axisXiMass}); histos.add("All/Omega", "", kTHnD, {axisOmegaMass, axisPt, axisMult}); - histos.add("All/Xi", "", kTHnD, {axisXiMass, axisPt, axisMult}); + histos.add("All/Xi", "", kTHnD, {axisXiMass, axisPt, axisMult}); } - -void processTracked(soa::Join::iterator const& collision, - aod::TraCascDatas const& tracascades) -{ - double mult = doProcessPP ? collision.centFT0M() : collision.centFT0C(); - int64_t casccollid = 0; - for (auto const& cascade : tracascades) { - - double dcaxy = cascade.dcaXYCascToPV(); - double dcaz = cascade.dcaZCascToPV(); - if (doApplyCuts && ((dcaxy > CutDCAtoPVxy) || (dcaz > CutDCAtoPVz))) continue; // DCA check - - if (collision.index() != casccollid) { - histos.fill(HIST("Tracked/EvMult"), mult); // count and list mult of events with at least one cascade - casccollid = collision.index(); + void processTracked(soa::Join::iterator const& collision, + aod::TraCascDatas const& tracascades) + { + double mult = doProcessPP ? collision.centFT0M() : collision.centFT0C(); + int64_t casccollid = 0; + for (auto const& cascade : tracascades) { + + double dcaxy = cascade.dcaXYCascToPV(); + double dcaz = cascade.dcaZCascToPV(); + if (doApplyCuts && ((dcaxy > CutDCAtoPVxy) || (dcaz > CutDCAtoPVz))) + continue; // DCA check + + if (collision.index() != casccollid) { + histos.fill(HIST("Tracked/EvMult"), mult); // count and list mult of events with at least one cascade + casccollid = collision.index(); + } + + double pt = cascade.pt(); + double phi = cascade.phi(); + double eta = cascade.eta(); + double massXi = cascade.mXi(); + double massOmega = cascade.mOmega(); + + histos.fill(HIST("Tracked/DCAxy"), dcaxy); + histos.fill(HIST("Tracked/DCAz"), dcaz); + histos.fill(HIST("Tracked/Phi"), phi); + histos.fill(HIST("Tracked/Eta"), eta); + histos.fill(HIST("Tracked/MassXi"), massXi); + histos.fill(HIST("Tracked/MassOmega"), massOmega); + histos.fill(HIST("Tracked/Xi"), massXi, pt, mult); + histos.fill(HIST("Tracked/Omega"), massOmega, pt, mult); } - - double pt = cascade.pt(); - double phi = cascade.phi(); - double eta = cascade.eta(); - double massXi = cascade.mXi(); - double massOmega = cascade.mOmega(); - - histos.fill(HIST("Tracked/DCAxy"), dcaxy); - histos.fill(HIST("Tracked/DCAz"), dcaz); - histos.fill(HIST("Tracked/Phi"), phi); - histos.fill(HIST("Tracked/Eta"), eta); - histos.fill(HIST("Tracked/MassXi"), massXi); - histos.fill(HIST("Tracked/MassOmega"), massOmega); - histos.fill(HIST("Tracked/Xi"), massXi, pt, mult); - histos.fill(HIST("Tracked/Omega"), massOmega, pt, mult); - } -} -void processAll(soa::Join::iterator const& collision, - aod::CascDatas const& cascades) -{ - histos.fill(HIST("Events/EvCounter"), 0.5); - double mult = doProcessPP ? collision.centFT0M() : collision.centFT0C(); - histos.fill(HIST("Events/Mult"), mult); - double pvx = collision.posX(); - double pvy = collision.posY(); - double pvz = collision.posZ(); - histos.fill(HIST("Events/PVx"), pvx); - histos.fill(HIST("Events/PVy"), pvy); - histos.fill(HIST("Events/PVz"), pvz); - - int64_t casccollid = 0; - for (auto const& cascade : cascades) { - - double dcaxy = cascade.dcaXYCascToPV(); - double dcaz = cascade.dcaZCascToPV(); - if (doApplyCuts && ((dcaxy > CutDCAtoPVxy) || (dcaz > CutDCAtoPVz))) continue; // DCA check - - if (collision.index() != casccollid) { - histos.fill(HIST("All/EvMult"), mult); // count and list mult of events with at least one cascade - casccollid = collision.index(); + void processAll(soa::Join::iterator const& collision, + aod::CascDatas const& cascades) + { + histos.fill(HIST("Events/EvCounter"), 0.5); + double mult = doProcessPP ? collision.centFT0M() : collision.centFT0C(); + histos.fill(HIST("Events/Mult"), mult); + double pvx = collision.posX(); + double pvy = collision.posY(); + double pvz = collision.posZ(); + histos.fill(HIST("Events/PVx"), pvx); + histos.fill(HIST("Events/PVy"), pvy); + histos.fill(HIST("Events/PVz"), pvz); + + int64_t casccollid = 0; + for (auto const& cascade : cascades) { + + double dcaxy = cascade.dcaXYCascToPV(); + double dcaz = cascade.dcaZCascToPV(); + if (doApplyCuts && ((dcaxy > CutDCAtoPVxy) || (dcaz > CutDCAtoPVz))) + continue; // DCA check + + if (collision.index() != casccollid) { + histos.fill(HIST("All/EvMult"), mult); // count and list mult of events with at least one cascade + casccollid = collision.index(); + } + + double pt = cascade.pt(); + double phi = cascade.phi(); + double eta = cascade.eta(); + double massXi = cascade.mXi(); + double massOmega = cascade.mOmega(); + + histos.fill(HIST("All/DCAxy"), dcaxy); + histos.fill(HIST("All/DCAz"), dcaz); + histos.fill(HIST("All/Phi"), phi); + histos.fill(HIST("All/Eta"), eta); + histos.fill(HIST("All/MassXi"), massXi); + histos.fill(HIST("All/MassOmega"), massOmega); + histos.fill(HIST("All/Xi"), massXi, pt, mult); + histos.fill(HIST("All/Omega"), massOmega, pt, mult); } - - double pt = cascade.pt(); - double phi = cascade.phi(); - double eta = cascade.eta(); - double massXi = cascade.mXi(); - double massOmega = cascade.mOmega(); - - histos.fill(HIST("All/DCAxy"), dcaxy); - histos.fill(HIST("All/DCAz"), dcaz); - histos.fill(HIST("All/Phi"), phi); - histos.fill(HIST("All/Eta"), eta); - histos.fill(HIST("All/MassXi"), massXi); - histos.fill(HIST("All/MassOmega"), massOmega); - histos.fill(HIST("All/Xi"), massXi, pt, mult); - histos.fill(HIST("All/Omega"), massOmega, pt, mult); - } -} -PROCESS_SWITCH(StrangeCascTrack, processTracked, "process tracked cascades", true); -PROCESS_SWITCH(StrangeCascTrack, processAll, "process all cascades", true); + PROCESS_SWITCH(StrangeCascTrack, processTracked, "process tracked cascades", true); + PROCESS_SWITCH(StrangeCascTrack, processAll, "process all cascades", true); }; WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) From 437e7eaeeef8de0fdeed4742550d6fa6a82674f9 Mon Sep 17 00:00:00 2001 From: Yakiv Date: Thu, 9 Oct 2025 21:13:27 +0200 Subject: [PATCH 4/5] Formatting update --- PWGLF/Tasks/Strangeness/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PWGLF/Tasks/Strangeness/CMakeLists.txt b/PWGLF/Tasks/Strangeness/CMakeLists.txt index fc8d93c36b4..31a0087b3fa 100644 --- a/PWGLF/Tasks/Strangeness/CMakeLists.txt +++ b/PWGLF/Tasks/Strangeness/CMakeLists.txt @@ -170,7 +170,7 @@ o2physics_add_dpl_workflow(cascadeanalysislightions SOURCES cascadeAnalysisLightIonsDerivedData.cxx PUBLIC_LINK_LIBRARIES O2Physics::AnalysisCore COMPONENT_NAME Analysis) - + o2physics_add_dpl_workflow(strangecasctrack SOURCES strangecasctrack.cxx PUBLIC_LINK_LIBRARIES O2::Framework O2::DetectorsBase O2Physics::AnalysisCore O2Physics::EventFilteringUtils From 49c07809297cabe6de86f83810e5f1c389b896b6 Mon Sep 17 00:00:00 2001 From: Yakiv Date: Thu, 9 Oct 2025 21:21:10 +0200 Subject: [PATCH 5/5] Formatting update --- PWGLF/Tasks/Strangeness/strangecasctrack.cxx | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/PWGLF/Tasks/Strangeness/strangecasctrack.cxx b/PWGLF/Tasks/Strangeness/strangecasctrack.cxx index 29234f4918d..acce86c5847 100644 --- a/PWGLF/Tasks/Strangeness/strangecasctrack.cxx +++ b/PWGLF/Tasks/Strangeness/strangecasctrack.cxx @@ -27,6 +27,7 @@ using namespace o2; using namespace o2::framework; using namespace o2::framework::expressions; +using namespace o2::constants::math; struct StrangeCascTrack { @@ -61,7 +62,7 @@ struct StrangeCascTrack { histos.add("Events/PVz", "PV z position", kTH1F, {{100, -20, 20}}); histos.add("Events/Mult", "Multiplicity", kTH1F, {axisMult}); - histos.add("Tracked/Phi", "Phi", kTH1F, {{100, 0., 2 * o2::constants::math::M_PI}}); + histos.add("Tracked/Phi", "Phi", kTH1F, {{100, 0., 2 * M_PI}}); histos.add("Tracked/Eta", "Eta", kTH1F, {{102, -2.01, 2.01}}); histos.add("Tracked/DCAxy", "DCA to xy", kTH1F, {{500, 0., 0.5}}); histos.add("Tracked/DCAz", "DCA to z", kTH1F, {{500, 0., 0.5}}); @@ -71,7 +72,7 @@ struct StrangeCascTrack { histos.add("Tracked/Omega", "", kTHnD, {axisOmegaMass, axisPt, axisMult}); histos.add("Tracked/Xi", "", kTHnD, {axisXiMass, axisPt, axisMult}); - histos.add("All/Phi", "Phi", kTH1F, {{100, 0., 2 * o2::constants::math::M_PI}}); + histos.add("All/Phi", "Phi", kTH1F, {{100, 0., 2 * M_PI}}); histos.add("All/Eta", "Eta", kTH1F, {{102, -2.01, 2.01}}); histos.add("All/DCAxy", "DCA to xy", kTH1F, {{1000, 0, 1.}}); histos.add("All/DCAz", "DCA to z", kTH1F, {{1000, 0, 1.}});