Skip to content

Commit 3ffce73

Browse files
author
Valerio Di Bella
committed
clean error + add histograms
1 parent 96ac357 commit 3ffce73

File tree

2 files changed

+32
-15
lines changed

2 files changed

+32
-15
lines changed

PWGHF/HFC/TableProducer/correlatorDplusDplusReduced.cxx

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -114,21 +114,21 @@ struct HfCorrelatorDplusDplusReduced {
114114
collision.posZ());
115115
}
116116

117-
template <typename Coll, bool doMc = false, bool doMl = false, typename T>
117+
template <typename Coll, bool DoMc = false, bool DoMl = false, typename T>
118118
void fillCandidateTable(const T& candidate, int localEvIdx = -1, int sign = 1)
119119
{
120120
int8_t flagMc = 0;
121121
int8_t originMc = 0;
122122
int8_t channelMc = 0;
123123

124-
if constexpr (doMc) {
124+
if constexpr (DoMc) {
125125
flagMc = candidate.flagMcMatchRec();
126126
originMc = candidate.originMcRec();
127127
channelMc = candidate.flagMcDecayChanRec();
128128
}
129129

130130
std::vector<float> outputMl = {-999., -999.};
131-
if constexpr (doMl) {
131+
if constexpr (DoMl) {
132132
for (unsigned int iclass = 0; iclass < classMlIndexes->size(); iclass++) {
133133
outputMl[iclass] = candidate.mlProbDplusToPiKPi()[classMlIndexes->at(iclass)];
134134
}
@@ -283,7 +283,10 @@ struct HfCorrelatorDplusDplusReduced {
283283
}
284284
}
285285

286-
void processData(aod::Collisions const& collisions, SelectedCandidates const& candidates, aod::Tracks const&)
286+
void processData(aod::Collisions const& collisions,
287+
SelectedCandidates const& candidates,
288+
aod::Tracks const&,
289+
aod::BCsWithTimestamps const&)
287290
{
288291
static int lastRunNumber = -1;
289292
// reserve memory
@@ -315,16 +318,17 @@ struct HfCorrelatorDplusDplusReduced {
315318
continue;
316319
fillEvent(collision);
317320
for (const auto& candidate : candidatesInThisCollision) {
318-
auto prong_candidate = candidate.prong1_as<aod::Tracks>();
319-
auto candidate_sign = prong_candidate.sign();
320-
fillCandidateTable<aod::Collisions>(candidate, rowCandidateFullEvents.lastIndex(), candidate_sign);
321+
auto prongCandidate = candidate.prong1_as<aod::Tracks>();
322+
auto candidateSign = -prongCandidate.sign();
323+
fillCandidateTable<aod::Collisions>(candidate, rowCandidateFullEvents.lastIndex(), candidateSign);
321324
}
322325
}
323326
}
324327
PROCESS_SWITCH(HfCorrelatorDplusDplusReduced, processData, "Process data per collision", false);
325328

326329
void processMcRec(aod::Collisions const& collisions,
327-
SelectedCandidatesMc const& candidates)
330+
SelectedCandidatesMc const& candidates,
331+
aod::Tracks const&)
328332
{
329333
// reserve memory
330334
rowCandidateFullEvents.reserve(collisions.size());
@@ -342,15 +346,16 @@ struct HfCorrelatorDplusDplusReduced {
342346
continue;
343347
fillEvent(collision);
344348
for (const auto& candidate : candidatesInThisCollision) {
345-
auto prong_candidate = candidate.prong1_as<aod::Tracks>();
346-
auto candidate_sign = prong_candidate.sign();
347-
fillCandidateTable<aod::Collisions, true>(candidate, rowCandidateFullEvents.lastIndex(), candidate_sign);
349+
auto prongCandidate = candidate.prong1_as<aod::Tracks>();
350+
auto candidateSign = -prongCandidate.sign();
351+
fillCandidateTable<aod::Collisions, true>(candidate, rowCandidateFullEvents.lastIndex(), candidateSign);
348352
}
349353
}
350354
}
351355
PROCESS_SWITCH(HfCorrelatorDplusDplusReduced, processMcRec, "Process data per collision", false);
352356

353-
void processMcGen(aod::McCollisions const& mccollisions, MatchedGenCandidatesMc const& mcparticles)
357+
void processMcGen(aod::McCollisions const& mccollisions,
358+
MatchedGenCandidatesMc const& mcparticles)
354359
{
355360
// reserve memory
356361
rowCandidateMcCollisions.reserve(mccollisions.size());

PWGHF/HFC/Tasks/taskCorrelationDplusDplusReduced.cxx

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,9 @@ struct HfTaskCorrelationDplusDplusReduced {
5555
void init(InitContext const&)
5656
{
5757
registry.add("hMassDplus", "D+ candidates;inv. mass (#pi#pi K) (GeV/#it{c}^{2}))", {HistType::kTH1F, {{120, 1.5848, 2.1848}}});
58+
registry.add("hMassDminus", "D- candidates;inv. mass (#pi#pi K) (GeV/#it{c}^{2}))", {HistType::kTH1F, {{120, 1.5848, 2.1848}}});
5859
registry.add("hMassDplusMatched", "D+ matched candidates;inv. mass (#pi#pi K) (GeV/#it{c}^{2}))", {HistType::kTH1F, {{120, 1.5848, 2.1848}}});
60+
registry.add("hMassDminusMatched", "D- matched candidates;inv. mass (#pi#pi K) (GeV/#it{c}^{2}))", {HistType::kTH1F, {{120, 1.5848, 2.1848}}});
5961
registry.add("hMassDplusminusPair", "D plus-minus pair candidates;inv. mass (#pi K) (GeV/#it{c}^{2});inv. mass (#pi K) (GeV/#it{c}^{2})", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {120, 1.5848, 2.1848}}});
6062
registry.add("hMassDplusPair", "D plus pair candidates;inv. mass (#pi K) (GeV/#it{c}^{2});inv. mass (#pi K) (GeV/#it{c}^{2})", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {120, 1.5848, 2.1848}}});
6163
registry.add("hMassDminusPair", "D minus pair candidates;inv. mass (#pi K) (GeV/#it{c}^{2});inv. mass (#pi K) (GeV/#it{c}^{2})", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {120, 1.5848, 2.1848}}});
@@ -72,7 +74,11 @@ struct HfTaskCorrelationDplusDplusReduced {
7274
auto sign1 = 1;
7375
if (cand1.pt() < 0) {
7476
sign1 = -1;
77+
registry.fill(HIST("hMassDminus"), mass1);
78+
} else {
79+
registry.fill(HIST("hMassDplus"), mass1);
7580
}
81+
7682
for (auto cand2 = cand1 + 1; cand2 != localCandidates.end(); ++cand2) {
7783
auto mass2 = cand2.m();
7884
auto sign2 = 1;
@@ -100,9 +106,15 @@ struct HfTaskCorrelationDplusDplusReduced {
100106

101107
for (const auto& cand1 : localCandidates) {
102108
auto mass1 = cand1.m();
103-
registry.fill(HIST("hMassDplus"), mass1);
104-
if (std::abs(cand1.flagMcMatchRec()) == hf_decay::hf_cand_3prong::DecayChannelMain::DplusToPiKPi)
105-
registry.fill(HIST("hMassDplusMatched"), mass1);
109+
if (cand1.pt() < 0) {
110+
registry.fill(HIST("hMassDminus"), mass1);
111+
if (std::abs(cand1.flagMcMatchRec()) == hf_decay::hf_cand_3prong::DecayChannelMain::DplusToPiKPi)
112+
registry.fill(HIST("hMassDminusMatched"), mass1);
113+
} else {
114+
registry.fill(HIST("hMassDplus"), mass1);
115+
if (std::abs(cand1.flagMcMatchRec()) == hf_decay::hf_cand_3prong::DecayChannelMain::DplusToPiKPi)
116+
registry.fill(HIST("hMassDplusMatched"), mass1);
117+
}
106118
}
107119
}
108120
PROCESS_SWITCH(HfTaskCorrelationDplusDplusReduced, processLocalDataMcRec, "Process local MC data", false);

0 commit comments

Comments
 (0)