Skip to content

Commit 023b85d

Browse files
authored
[PWGEM/Dilepton] update MC study (AliceO2Group#9865)
1 parent bc5cea5 commit 023b85d

File tree

1 file changed

+16
-13
lines changed

1 file changed

+16
-13
lines changed

PWGEM/Dilepton/Tasks/studyMCTruth.cxx

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,8 @@ struct studyMCTruth {
8080
fRegistry.add("Event/hPtY_kaon", "K^{#pm} yield;y;p_{T} (GeV/c)", kTH2D, {{20, -1, +1}, {100, 0, 10}}, false);
8181
fRegistry.add("Event/hPtY_proton", "p(#bar{p}) yield;y;p_{T} (GeV/c)", kTH2D, {{20, -1, +1}, {100, 0, 10}}, false);
8282

83-
fRegistry.add("Track/default/hPt", "p_{T,e}", kTH1D, {{1000, 0, 10}}, true);
84-
fRegistry.add("Track/default/hEtaPhi", "#eta_{e} vs. #varphi_{e};#varphi_{e} (rad.);#eta_{e};", kTH2D, {{90, 0, 2 * M_PI}, {60, -5, +1}}, true);
83+
fRegistry.add("Track/default/hPt", "p_{T,l};p_{T,l} (GeV/c)", kTH1D, {{1000, 0, 10}}, true);
84+
fRegistry.add("Track/default/hEtaPhi", "#eta_{l} vs. #varphi_{l};#varphi_{l} (rad.);#eta_{l};", kTH2D, {{90, 0, 2 * M_PI}, {60, -5, +1}}, true);
8585
fRegistry.addClone("Track/default/", "Track/mllPF0/");
8686
fRegistry.addClone("Track/default/", "Track/mllPF1/");
8787
fRegistry.addClone("Track/default/", "Track/mllPF2/");
@@ -106,7 +106,6 @@ struct studyMCTruth {
106106
fRegistry.addClone("Pair/default/", "Pair/mllPF0/");
107107
fRegistry.addClone("Pair/default/", "Pair/mllPF1/");
108108
fRegistry.addClone("Pair/default/", "Pair/mllPF2/");
109-
fRegistry.addClone("Pair/default/Pi0/uls/", "Pair/PF/all/uls/");
110109
}
111110

112111
template <typename TTrack, typename TMCParticles>
@@ -301,30 +300,38 @@ struct studyMCTruth {
301300
continue;
302301
}
303302
fillTrackInfo<0>(pos);
304-
// fRegistry.fill(HIST("Track/default/hPt"), pos.pt());
305-
// fRegistry.fill(HIST("Track/default/hEtaPhi"), pos.phi(), pos.eta());
306303
}
307304
for (const auto& neg : negLeptons_per_mccollision) {
308305
map_pfb[neg.globalIndex()] = 0;
309306
if (!isSelectedMCParticle(neg, mcParticles)) {
310307
continue;
311308
}
312309
fillTrackInfo<0>(neg);
313-
// fRegistry.fill(HIST("Track/default/hPt"), neg.pt());
314-
// fRegistry.fill(HIST("Track/default/hEtaPhi"), neg.phi(), neg.eta());
315310
}
316311

317-
for (const auto& [pos, neg] : combinations(CombinationsFullIndexPolicy(posLeptonsPF_per_mccollision, negLeptonsPF_per_mccollision))) { // ULS to set prefilter bits
312+
for (const auto& [pos, neg] : combinations(CombinationsFullIndexPolicy(posLeptons_per_mccollision, negLeptonsPF_per_mccollision))) { // ULS to set prefilter bits, default pos + loose neg
318313
if (!isSelectedMCParticle(pos, mcParticles) || !isSelectedMCParticle(neg, mcParticles)) {
319314
continue;
320315
}
321316
ROOT::Math::PtEtaPhiMVector v1(pos.pt(), pos.eta(), pos.phi(), leptonMass);
322317
ROOT::Math::PtEtaPhiMVector v2(neg.pt(), neg.eta(), neg.phi(), leptonMass);
323318
ROOT::Math::PtEtaPhiMVector v12 = v1 + v2;
324-
fRegistry.fill(HIST("Pair/PF/all/uls/hMvsPt"), v12.M(), v12.Pt());
325319
for (int i = 0; i < static_cast<int>(max_mll_vec->size()); i++) {
326320
if (v12.M() < max_mll_vec->at(i)) {
327321
map_pfb[pos.globalIndex()] |= (uint8_t(1) << i);
322+
}
323+
}
324+
} // end of ULS pair loop to set prefilter bits
325+
326+
for (const auto& [pos, neg] : combinations(CombinationsFullIndexPolicy(posLeptonsPF_per_mccollision, negLeptons_per_mccollision))) { // ULS to set prefilter bits, loose pos + default neg
327+
if (!isSelectedMCParticle(pos, mcParticles) || !isSelectedMCParticle(neg, mcParticles)) {
328+
continue;
329+
}
330+
ROOT::Math::PtEtaPhiMVector v1(pos.pt(), pos.eta(), pos.phi(), leptonMass);
331+
ROOT::Math::PtEtaPhiMVector v2(neg.pt(), neg.eta(), neg.phi(), leptonMass);
332+
ROOT::Math::PtEtaPhiMVector v12 = v1 + v2;
333+
for (int i = 0; i < static_cast<int>(max_mll_vec->size()); i++) {
334+
if (v12.M() < max_mll_vec->at(i)) {
328335
map_pfb[neg.globalIndex()] |= (uint8_t(1) << i);
329336
}
330337
}
@@ -338,8 +345,6 @@ struct studyMCTruth {
338345
constexpr int index = i.value;
339346
if ((map_pfb[pos.globalIndex()] & (uint8_t(1) << index)) == 0) {
340347
fillTrackInfo<index + 1>(pos);
341-
// fRegistry.fill(HIST("Track/") + HIST(pfNames[index + 1]) + HIST("hPt"), pos.pt());
342-
// fRegistry.fill(HIST("Track/") + HIST(pfNames[index + 1]) + HIST("hEtaPhi"), pos.phi(), pos.eta());
343348
}
344349
});
345350
}
@@ -351,8 +356,6 @@ struct studyMCTruth {
351356
constexpr int index = i.value;
352357
if ((map_pfb[neg.globalIndex()] & (uint8_t(1) << index)) == 0) {
353358
fillTrackInfo<index + 1>(neg);
354-
// fRegistry.fill(HIST("Track/") + HIST(pfNames[index + 1]) + HIST("hPt"), neg.pt());
355-
// fRegistry.fill(HIST("Track/") + HIST(pfNames[index + 1]) + HIST("hEtaPhi"), neg.phi(), neg.eta());
356359
}
357360
});
358361
}

0 commit comments

Comments
 (0)