Skip to content

Commit ffb3a99

Browse files
fcolamarfcolamaralibuild
authored andcommitted
[ALICE3] Adding unweighted mass plots to ALICE 3 decay finder (AliceO2Group#12166)
Co-authored-by: fcolamar <fabio.colamaria@cern.ch> Co-authored-by: ALICE Action Bot <alibuild@cern.ch>
1 parent ce19ab6 commit ffb3a99

File tree

1 file changed

+27
-11
lines changed

1 file changed

+27
-11
lines changed

ALICE3/TableProducer/alice3-correlatorDDbar.cxx

Lines changed: 27 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -14,23 +14,20 @@
1414
///
1515
/// \author Fabio Colamaria <fabio.colamaria@ba.infn.it>, INFN Bari
1616

17-
#include <vector>
17+
#include "PWGHF/Core/HfHelper.h"
18+
#include "PWGHF/Core/SelectorCuts.h"
19+
#include "PWGHF/HFC/DataModel/CorrelationTables.h"
20+
21+
#include "ALICE3/DataModel/A3DecayFinderTables.h"
22+
#include "Common/Core/TrackSelection.h"
23+
#include "Common/DataModel/TrackSelectionTables.h"
1824

1925
#include "CommonConstants/PhysicsConstants.h"
2026
#include "Framework/AnalysisTask.h"
2127
#include "Framework/HistogramRegistry.h"
2228
#include "Framework/runDataProcessing.h"
2329

24-
#include "Common/Core/TrackSelection.h"
25-
#include "Common/DataModel/TrackSelectionTables.h"
26-
27-
#include "ALICE3/DataModel/A3DecayFinderTables.h"
28-
29-
#include "PWGHF/Core/HfHelper.h"
30-
#include "PWGHF/Core/SelectorCuts.h"
31-
#include "PWGHF/HFC/DataModel/CorrelationTables.h"
32-
// #include "PWGHF/DataModel/CandidateReconstructionTables.h"
33-
// #include "PWGHF/DataModel/CandidateSelectionTables.h"
30+
#include <vector>
3431

3532
using namespace o2;
3633
using namespace o2::analysis;
@@ -121,6 +118,15 @@ struct alice3correlatorddbar {
121118
registry.add("hMassD0barMCRecSig", "D0bar signal candidates - MC reco;inv. mass D0bar only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{massAxisBins, massAxisMin, massAxisMax}, {vbins, "#it{p}_{T} (GeV/#it{c})"}}});
122119
registry.add("hMassD0barMCRecRefl", "D0bar reflection candidates - MC reco;inv. mass D0bar only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{massAxisBins, massAxisMin, massAxisMax}, {vbins, "#it{p}_{T} (GeV/#it{c})"}}});
123120
registry.add("hMassD0barMCRecBkg", "D0bar background candidates - MC reco;inv. mass D0bar only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{massAxisBins, massAxisMin, massAxisMax}, {vbins, "#it{p}_{T} (GeV/#it{c})"}}});
121+
registry.add("hMass_NoEff", "D0,D0bar candidates (wo efficiency);inv. mass (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{massAxisBins, massAxisMin, massAxisMax}, {vbins, "#it{p}_{T} (GeV/#it{c})"}}});
122+
registry.add("hMassD0_NoEff", "D0,D0bar candidates (wo efficiency);inv. mass D0 only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{massAxisBins, massAxisMin, massAxisMax}, {vbins, "#it{p}_{T} (GeV/#it{c})"}}});
123+
registry.add("hMassD0bar_NoEff", "D0,D0bar candidates (wo efficiency);inv. mass D0bar only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{massAxisBins, massAxisMin, massAxisMax}, {vbins, "#it{p}_{T} (GeV/#it{c})"}}});
124+
registry.add("hMassD0MCRecSig_NoEff", "D0 signal candidates - MC reco (wo efficiency);inv. mass (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{massAxisBins, massAxisMin, massAxisMax}, {vbins, "#it{p}_{T} (GeV/#it{c})"}}});
125+
registry.add("hMassD0MCRecRefl_NoEff", "D0 reflection candidates - MC reco (wo efficiency);inv. mass (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{massAxisBins, massAxisMin, massAxisMax}, {vbins, "#it{p}_{T} (GeV/#it{c})"}}});
126+
registry.add("hMassD0MCRecBkg_NoEff", "D0 background candidates - MC reco (wo efficiency);inv. mass (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{massAxisBins, massAxisMin, massAxisMax}, {vbins, "#it{p}_{T} (GeV/#it{c})"}}});
127+
registry.add("hMassD0barMCRecSig_NoEff", "D0bar signal candidates - MC reco (wo efficiency);inv. mass D0bar only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{massAxisBins, massAxisMin, massAxisMax}, {vbins, "#it{p}_{T} (GeV/#it{c})"}}});
128+
registry.add("hMassD0barMCRecRefl_NoEff", "D0bar reflection candidates - MC reco (wo efficiency);inv. mass D0bar only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{massAxisBins, massAxisMin, massAxisMax}, {vbins, "#it{p}_{T} (GeV/#it{c})"}}});
129+
registry.add("hMassD0barMCRecBkg_NoEff", "D0bar background candidates - MC reco (wo efficiency);inv. mass D0bar only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{massAxisBins, massAxisMin, massAxisMax}, {vbins, "#it{p}_{T} (GeV/#it{c})"}}});
124130
}
125131

126132
/// D0-D0bar correlation pair builder - for real data and data-like analysis (i.e. reco-level w/o matching request via MC truth)
@@ -139,10 +145,14 @@ struct alice3correlatorddbar {
139145
if (candidate1.isSelD0() >= selectionFlagD0) {
140146
registry.fill(HIST("hMass"), candidate1.m(), candidate1.pt(), efficiencyWeight);
141147
registry.fill(HIST("hMassD0"), candidate1.m(), candidate1.pt(), efficiencyWeight);
148+
registry.fill(HIST("hMass_NoEff"), candidate1.m(), candidate1.pt());
149+
registry.fill(HIST("hMassD0_NoEff"), candidate1.m(), candidate1.pt());
142150
}
143151
if (candidate1.isSelD0bar() >= selectionFlagD0bar) {
144152
registry.fill(HIST("hMass"), candidate1.m(), candidate1.pt(), efficiencyWeight);
145153
registry.fill(HIST("hMassD0bar"), candidate1.m(), candidate1.pt(), efficiencyWeight);
154+
registry.fill(HIST("hMass_NoEff"), candidate1.m(), candidate1.pt());
155+
registry.fill(HIST("hMassD0bar_NoEff"), candidate1.m(), candidate1.pt());
146156
}
147157
registry.fill(HIST("hPtCand"), candidate1.pt());
148158
registry.fill(HIST("hPtProng0"), candidate1.ptProng0());
@@ -229,19 +239,25 @@ struct alice3correlatorddbar {
229239
if (candidate1.isSelD0() >= selectionFlagD0) { // only reco as D0
230240
if (candidate1.mcTruthInfo() == 1) { // also matched as D0
231241
registry.fill(HIST("hMassD0MCRecSig"), candidate1.m(), candidate1.pt(), efficiencyWeight); // here m is univoque, since a given candidate passes the selection with only a single mass option
242+
registry.fill(HIST("hMassD0MCRecSig_NoEff"), candidate1.m(), candidate1.pt());
232243
} else if (candidate1.mcTruthInfo() == 2) {
233244
registry.fill(HIST("hMassD0MCRecRefl"), candidate1.m(), candidate1.pt(), efficiencyWeight);
245+
registry.fill(HIST("hMassD0MCRecRefl_NoEff"), candidate1.m(), candidate1.pt());
234246
} else {
235247
registry.fill(HIST("hMassD0MCRecBkg"), candidate1.m(), candidate1.pt(), efficiencyWeight);
248+
registry.fill(HIST("hMassD0MCRecBkg_NoEff"), candidate1.m(), candidate1.pt());
236249
}
237250
}
238251
if (candidate1.isSelD0bar() >= selectionFlagD0bar) { // only reco as D0bar
239252
if (candidate1.mcTruthInfo() == 2) { // also matched as D0bar
240253
registry.fill(HIST("hMassD0barMCRecSig"), candidate1.m(), candidate1.pt(), efficiencyWeight); // here m is univoque, since a given candidate passes the selection with only a single mass option
254+
registry.fill(HIST("hMassD0barMCRecSig_NoEff"), candidate1.m(), candidate1.pt());
241255
} else if (candidate1.mcTruthInfo() == 1) {
242256
registry.fill(HIST("hMassD0barMCRecRefl"), candidate1.m(), candidate1.pt(), efficiencyWeight);
257+
registry.fill(HIST("hMassD0barMCRecRefl_NoEff"), candidate1.m(), candidate1.pt());
243258
} else {
244259
registry.fill(HIST("hMassD0barMCRecBkg"), candidate1.m(), candidate1.pt(), efficiencyWeight);
260+
registry.fill(HIST("hMassD0barMCRecBkg_NoEff"), candidate1.m(), candidate1.pt());
245261
}
246262
}
247263

0 commit comments

Comments
 (0)