1717
1818#include " Framework/AnalysisTask.h"
1919#include " Framework/HistogramRegistry.h"
20+ #include " Framework/runDataProcessing.h"
2021#include " PWGHF/DataModel/HFSecondaryVertex.h"
2122#include " PWGHF/DataModel/HFCandidateSelectionTables.h"
2223
2324using namespace o2 ;
2425using namespace o2 ::framework;
2526using namespace o2 ::framework::expressions;
26- using namespace o2 ::aod::hf_cand;
2727using namespace o2 ::aod::hf_cand_prong3;
2828
29- #include " Framework/runDataProcessing.h"
30-
3129// / Ds± analysis task
3230struct HfTaskDs {
3331 HistogramRegistry registry{
@@ -49,6 +47,7 @@ struct HfTaskDs {
4947 void init (o2::framework::InitContext&)
5048 {
5149 auto vbins = (std::vector<double >)bins;
50+ AxisSpec ybins = {100 , -5 ., 5 , " #it{y}" };
5251 registry.add (" hMass" , " 3-prong candidates;inv. mass (K K #pi) (GeV/#it{c}^{2});entries" , {HistType::kTH2F , {{350 , 1.7 , 2.05 }, {vbins, " #it{p}_{T} (GeV/#it{c})" }}});
5352 registry.add (" hEta" , " 3-prong candidates;candidate #it{#eta};entries" , {HistType::kTH2F , {{100 , -2 ., 2 .}, {vbins, " #it{p}_{T} (GeV/#it{c})" }}});
5453 registry.add (" hCt" , " 3-prong candidates;proper lifetime (D_{s}^{#pm}) * #it{c} (cm);entries" , {HistType::kTH2F , {{100 , 0 ., 100 }, {vbins, " #it{p}_{T} (GeV/#it{c})" }}});
@@ -74,21 +73,21 @@ struct HfTaskDs {
7473 registry.add (" hPtGenSig" , " MC particles (matched);#it{p}_{T}^{gen.} (GeV/#it{c});entries" , {HistType::kTH1F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }}});
7574 registry.add (" hPtGenPrompt" , " MC particles (matched, prompt);#it{p}_{T}^{gen.} (GeV/#it{c});entries" , {HistType::kTH1F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }}});
7675 registry.add (" hPtGenNonPrompt" , " MC particles (matched, non-prompt);#it{p}_{T}^{gen.} (GeV/#it{c});entries" , {HistType::kTH1F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }}});
77- registry.add (" hPtVsYRecSigRecoPID" , " 3-prong candidates (RecoPID - matched);#it{p}_{T}^{rec.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {100 , - 5 ., 5 . }}});
78- registry.add (" hPtVsYRecSigPromptRecoPID" , " 3-prong candidates (RecoPID - matched, prompt);#it{p}_{T}^{rec.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {100 , - 5 ., 5 . }}});
79- registry.add (" hPtVsYRecSigNonPromptRecoPID" , " 3-prong candidates (RecoPID - matched, non-prompt);#it{p}_{T}^{rec.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {100 , - 5 ., 5 . }}});
80- registry.add (" hPtVsYRecSigRecoTopol" , " 3-prong candidates (RecoTopol - matched);#it{p}_{T}^{rec.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {100 , - 5 ., 5 . }}});
81- registry.add (" hPtVsYRecSigPromptRecoTopol" , " 3-prong candidates (RecoTopol - matched, prompt);#it{p}_{T}^{rec.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {100 , - 5 ., 5 . }}});
82- registry.add (" hPtVsYRecSigNonPromptRecoTopol" , " 3-prong candidates (RecoTopol - matched, non-prompt);#it{p}_{T}^{rec.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {100 , - 5 ., 5 . }}});
83- registry.add (" hPtVsYRecSigRecoSkim" , " 3-prong candidates (RecoSkim - matched);#it{p}_{T}^{rec.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {100 , - 5 ., 5 . }}});
84- registry.add (" hPtVsYRecSigPromptRecoSkim" , " 3-prong candidates (RecoSkim - matched, prompt);#it{p}_{T}^{rec.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {100 , - 5 ., 5 . }}});
85- registry.add (" hPtVsYRecSigNonPromptRecoSkim" , " 3-prong candidates (RecoSkim - matched, non-prompt);#it{p}_{T}^{rec.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {100 , - 5 ., 5 . }}});
86- registry.add (" hPtVsYGen" , " MC particles (matched);#it{p}_{T}^{gen.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {100 , - 5 ., 5 . }}});
87- registry.add (" hPtVsYGenPrompt" , " MC particles (matched, prompt);#it{p}_{T}^{gen.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {100 , - 5 ., 5 . }}});
88- registry.add (" hPtVsYGenNonPrompt" , " MC particles (matched, non-prompt);#it{p}_{T}^{gen.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {100 , - 5 ., 5 . }}});
76+ registry.add (" hPtVsYRecSigRecoPID" , " 3-prong candidates (RecoPID - matched);#it{p}_{T}^{rec.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {ybins }}});
77+ registry.add (" hPtVsYRecSigPromptRecoPID" , " 3-prong candidates (RecoPID - matched, prompt);#it{p}_{T}^{rec.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {ybins }}});
78+ registry.add (" hPtVsYRecSigNonPromptRecoPID" , " 3-prong candidates (RecoPID - matched, non-prompt);#it{p}_{T}^{rec.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {ybins }}});
79+ registry.add (" hPtVsYRecSigRecoTopol" , " 3-prong candidates (RecoTopol - matched);#it{p}_{T}^{rec.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {ybins }}});
80+ registry.add (" hPtVsYRecSigPromptRecoTopol" , " 3-prong candidates (RecoTopol - matched, prompt);#it{p}_{T}^{rec.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {ybins }}});
81+ registry.add (" hPtVsYRecSigNonPromptRecoTopol" , " 3-prong candidates (RecoTopol - matched, non-prompt);#it{p}_{T}^{rec.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {ybins }}});
82+ registry.add (" hPtVsYRecSigRecoSkim" , " 3-prong candidates (RecoSkim - matched);#it{p}_{T}^{rec.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {ybins }}});
83+ registry.add (" hPtVsYRecSigPromptRecoSkim" , " 3-prong candidates (RecoSkim - matched, prompt);#it{p}_{T}^{rec.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {ybins }}});
84+ registry.add (" hPtVsYRecSigNonPromptRecoSkim" , " 3-prong candidates (RecoSkim - matched, non-prompt);#it{p}_{T}^{rec.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {ybins }}});
85+ registry.add (" hPtVsYGen" , " MC particles (matched);#it{p}_{T}^{gen.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {ybins }}});
86+ registry.add (" hPtVsYGenPrompt" , " MC particles (matched, prompt);#it{p}_{T}^{gen.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {ybins }}});
87+ registry.add (" hPtVsYGenNonPrompt" , " MC particles (matched, non-prompt);#it{p}_{T}^{gen.}; #it{y}" , {HistType::kTH2F , {{vbins, " #it{p}_{T} (GeV/#it{c})" }, {ybins }}});
8988 }
9089
91- Partition<soa::Join<aod::HfCandProng3, aod::HFSelDsToKKPiCandidate>> selectedDsCandidates = aod::hf_selcandidate_ds::isSelDsToKKPi >= selectionFlagDs || aod::hf_selcandidate_ds::isSelDsToPiKKPi >= selectionFlagDs;
90+ Partition<soa::Join<aod::HfCandProng3, aod::HFSelDsToKKPiCandidate>> selectedDsCandidates = aod::hf_selcandidate_ds::isSelDsToKKPi >= selectionFlagDs || aod::hf_selcandidate_ds::isSelDsToPiKK >= selectionFlagDs;
9291
9392 void process (soa::Join<aod::HfCandProng3, aod::HFSelDsToKKPiCandidate> const & candidates)
9493 {
@@ -126,7 +125,7 @@ struct HfTaskDs {
126125 }
127126 }
128127
129- Partition<soa::Join<aod::HfCandProng3, aod::HFSelDsToKKPiCandidate, aod::HfCandProng3MCRec>> recoFlagDsCandidates = aod::hf_selcandidate_ds::isSelDsToKKPi >= selectionFlagDs || aod::hf_selcandidate_ds::isSelDsTPiKK >= selectionFlagDs;
128+ Partition<soa::Join<aod::HfCandProng3, aod::HFSelDsToKKPiCandidate, aod::HfCandProng3MCRec>> recoFlagDsCandidates = aod::hf_selcandidate_ds::isSelDsToKKPi >= selectionFlagDs || aod::hf_selcandidate_ds::isSelDsToPiKK >= selectionFlagDs;
130129
131130 void processMC (soa::Join<aod::HfCandProng3, aod::HFSelDsToKKPiCandidate, aod::HfCandProng3MCRec> const & candidates,
132131 soa::Join<aod::McParticles, aod::HfCandProng3MCGen> const & particlesMC, aod::BigTracksMC const &)
@@ -157,7 +156,7 @@ struct HfTaskDs {
157156 registry.fill (HIST (" hPtvsYRecSigRecoPID" ), ptRec, yRec);
158157 }
159158 registry.fill (HIST (" hPtRecSig" ), ptRec); // rec. level pT
160- if (candidate.originMCRec () == OriginType::Prompt) {
159+ if (candidate.originMCRec () == RecoDecay:: OriginType::Prompt) {
161160 registry.fill (HIST (" hPtvsYRecSigPromptRecoSkim" ), ptRec, yRec);
162161 if (TESTBIT (DsToKKPi, aod::SelectionStep::RecoTopol) || TESTBIT (DsToPiKK, aod::SelectionStep::RecoTopol)) {
163162 registry.fill (HIST (" hPtvsYRecSigPromptRecoTopol" ), ptRec, yRec);
@@ -195,7 +194,7 @@ struct HfTaskDs {
195194 }
196195 registry.fill (HIST (" hPtGen" ), ptGen);
197196 registry.fill (HIST (" hPtvsYGen" ), ptGen, yGen);
198- if (particle.originMCGen () == OriginType::Prompt) {
197+ if (particle.originMCGen () == RecoDecay:: OriginType::Prompt) {
199198 registry.fill (HIST (" hPtGenPrompt" ), ptGen);
200199 registry.fill (HIST (" hPtvsYGenPrompt" ), ptGen, yGen);
201200 } else {
0 commit comments