From b7081074e2fc0b9d1278b8e30fba854c1aa9e8ec Mon Sep 17 00:00:00 2001 From: scattaru Date: Wed, 8 Jan 2025 09:58:15 +0100 Subject: [PATCH 1/2] Adding ME derived in task --- PWGHF/HFC/Tasks/taskCorrelationDsHadrons.cxx | 40 ++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/PWGHF/HFC/Tasks/taskCorrelationDsHadrons.cxx b/PWGHF/HFC/Tasks/taskCorrelationDsHadrons.cxx index 1611f3560a0..189d64a9953 100644 --- a/PWGHF/HFC/Tasks/taskCorrelationDsHadrons.cxx +++ b/PWGHF/HFC/Tasks/taskCorrelationDsHadrons.cxx @@ -94,6 +94,7 @@ struct HfTaskCorrelationDsHadrons { HfHelper hfHelper; SliceCache cache; + using DsHadronPair = soa::Join; using DsHadronPairFull = soa::Join; using DsHadronPairWithMl = soa::Join; using DsHadronPairFullWithMl = soa::Join; @@ -471,6 +472,45 @@ struct HfTaskCorrelationDsHadrons { } PROCESS_SWITCH(HfTaskCorrelationDsHadrons, processDataME, "Process data ME", false); + void processDerivedDataME(DsHadronPair const& pairEntries) + { + for (const auto& pairEntry : pairEntries) { + // define variables for widely used quantities + float deltaPhi = pairEntry.deltaPhi(); + float deltaEta = pairEntry.deltaEta(); + float ptD = pairEntry.ptD(); + float ptHadron = pairEntry.ptHadron(); + float massD = pairEntry.mD(); + int poolBin = pairEntry.poolBin(); + int ptBinD = o2::analysis::findBin(binsPtD, ptD); + + double efficiencyWeight = 1.; + if (applyEfficiency) { + efficiencyWeight = 1. / (efficiencyD->at(o2::analysis::findBin(binsPtEfficiencyD, ptD)) * efficiencyHad->at(o2::analysis::findBin(binsPtEfficiencyHad, ptHadron))); + } + + // in signal region + if (massD > signalRegionInner->at(ptBinD) && massD < signalRegionOuter->at(ptBinD)) { + registry.fill(HIST("hCorrel2DVsPtSignalRegion"), deltaPhi, deltaEta, ptD, ptHadron, poolBin, efficiencyWeight); + registry.fill(HIST("hDeltaEtaPtIntSignalRegion"), deltaEta, efficiencyWeight); + registry.fill(HIST("hDeltaPhiPtIntSignalRegion"), deltaPhi, efficiencyWeight); + } + // in sideband left region + if (massD > sidebandLeftOuter->at(ptBinD) && massD < sidebandLeftInner->at(ptBinD)) { + registry.fill(HIST("hCorrel2DVsPtSidebandLeft"), deltaPhi, deltaEta, ptD, ptHadron, poolBin, efficiencyWeight); + registry.fill(HIST("hDeltaEtaPtIntSidebandLeft"), deltaEta, efficiencyWeight); + registry.fill(HIST("hDeltaPhiPtIntSidebandLeft"), deltaPhi, efficiencyWeight); + } + // in sideband right region + if (massD > sidebandRightInner->at(ptBinD) && massD < sidebandRightOuter->at(ptBinD)) { + registry.fill(HIST("hCorrel2DVsPtSidebandRight"), deltaPhi, deltaEta, ptD, ptHadron, poolBin, efficiencyWeight); + registry.fill(HIST("hDeltaEtaPtIntSidebandRight"), deltaEta, efficiencyWeight); + registry.fill(HIST("hDeltaPhiPtIntSidebandRight"), deltaPhi, efficiencyWeight); + } + } + } + PROCESS_SWITCH(HfTaskCorrelationDsHadrons, processDerivedDataME, "Process derived data ME", false); + /// D-Hadron correlation pair filling task, from pair tables - for MC reco-level analysis (candidates matched to true signal only, but also bkg sources are studied) void processMcRecME(DsHadronPairFullWithMl const& pairEntries) { From 31fc873c46c0a44bac197c683a4f87ee0d1bad25 Mon Sep 17 00:00:00 2001 From: ALICE Action Bot Date: Wed, 8 Jan 2025 09:00:42 +0000 Subject: [PATCH 2/2] Please consider the following formatting changes --- PWGHF/HFC/Tasks/taskCorrelationDsHadrons.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PWGHF/HFC/Tasks/taskCorrelationDsHadrons.cxx b/PWGHF/HFC/Tasks/taskCorrelationDsHadrons.cxx index 189d64a9953..35617444261 100644 --- a/PWGHF/HFC/Tasks/taskCorrelationDsHadrons.cxx +++ b/PWGHF/HFC/Tasks/taskCorrelationDsHadrons.cxx @@ -510,7 +510,7 @@ struct HfTaskCorrelationDsHadrons { } } PROCESS_SWITCH(HfTaskCorrelationDsHadrons, processDerivedDataME, "Process derived data ME", false); - + /// D-Hadron correlation pair filling task, from pair tables - for MC reco-level analysis (candidates matched to true signal only, but also bkg sources are studied) void processMcRecME(DsHadronPairFullWithMl const& pairEntries) {