Skip to content

Commit 3e5d591

Browse files
authored
Remove the NumberOfCluster in MFT histograms and HF-LF-chain decay separation (#5559)
1 parent 8b81f86 commit 3e5d591

File tree

1 file changed

+13
-47
lines changed

1 file changed

+13
-47
lines changed

PWGHF/HFL/Tasks/taskSingleMuonSource.cxx

Lines changed: 13 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,6 @@ using namespace o2::aod;
3333
using namespace o2::framework;
3434
using MyCollisions = soa::Join<aod::Collisions, aod::McCollisionLabels, aod::EvSels>;
3535
using McMuons = soa::Join<aod::FwdTracks, aod::McFwdTrackLabels, aod::FwdTracksDCA>;
36-
using McMFTs = soa::Join<aod::MFTTracks, aod::McMFTTrackLabels>;
3736

3837
namespace
3938
{
@@ -56,8 +55,9 @@ namespace muon_source
5655
DECLARE_SOA_COLUMN(Pt, pt, float);
5756
DECLARE_SOA_COLUMN(DcaXY, dcaXY, float);
5857
DECLARE_SOA_COLUMN(Source, source, uint8_t);
58+
DECLARE_SOA_COLUMN(DeltaPt, deltaPt, float);
5959
} // namespace muon_source
60-
DECLARE_SOA_TABLE(HfMuonSource, "AOD", "MUONSOURCE", muon_source::Pt, muon_source::DcaXY, muon_source::Source);
60+
DECLARE_SOA_TABLE(HfMuonSource, "AOD", "MUONSOURCE", muon_source::Pt, muon_source::DcaXY, muon_source::Source, muon_source::DeltaPt);
6161
} // namespace o2::aod
6262

6363
struct HfTaskSingleMuonSource {
@@ -87,8 +87,6 @@ struct HfTaskSingleMuonSource {
8787
"NonpromptCharmMu",
8888
"PromptCharmMu",
8989
"LightDecayMu",
90-
"BeautyToLightDecayMu",
91-
"CharmToLightDecayMu",
9290
"SecondaryMu",
9391
"Hadron",
9492
"Unidentified"};
@@ -98,18 +96,17 @@ struct HfTaskSingleMuonSource {
9896
AxisSpec axisChi2{500, 0., 100., "#chi^{2} of MCH-MFT matching"};
9997
AxisSpec axisPt{200, 0., 100., "#it{p}_{T,reco} (GeV/#it{c})"};
10098
AxisSpec axisDeltaPt{1000, -50., 50., "#Delta #it{p}_{T} (GeV/#it{c})"};
101-
AxisSpec axisMftNC{10, 0., 11., "Number of clusters in MFT"};
10299

103100
HistogramConfigSpec h1Pt{HistType::kTH1F, {axisPt}};
104101
HistogramConfigSpec h2PtDCA{HistType::kTH2F, {axisPt, axisDCA}};
105102
HistogramConfigSpec h2PtChi2{HistType::kTH2F, {axisPt, axisChi2}};
106-
HistogramConfigSpec h3PtDeltaPtMftNC{HistType::kTH3F, {axisPt, axisDeltaPt, axisMftNC}};
103+
HistogramConfigSpec h2PtDeltaPt{HistType::kTH2F, {axisPt, axisDeltaPt}};
107104

108105
for (const auto& src : muonSources) {
109106
registry.add(Form("h1%sPt", src.Data()), "", h1Pt);
110107
registry.add(Form("h2%sPtDCA", src.Data()), "", h2PtDCA);
111108
registry.add(Form("h2%sPtChi2", src.Data()), "", h2PtChi2);
112-
registry.add(Form("h3%sPtDeltaPtMftNC", src.Data()), "", h3PtDeltaPtMftNC);
109+
registry.add(Form("h2%sPtDeltaPt", src.Data()), "", h2PtDeltaPt);
113110
}
114111
}
115112

@@ -216,19 +213,7 @@ struct HfTaskSingleMuonSource {
216213
// this muon comes from light flavor quark decay
217214
bool isLightDecayMu(const uint8_t& mask)
218215
{
219-
return (isMuon(mask) && TESTBIT(mask, HasLightParent) && (!TESTBIT(mask, IsSecondary)) && (!TESTBIT(mask, HasQuarkoniumParent)) && (!TESTBIT(mask, HasBeautyParent)) && (!TESTBIT(mask, HasCharmParent)));
220-
}
221-
222-
// this muon comes from beauty to light flavor decay
223-
bool isBeautyToLightDecayMu(const uint8_t& mask)
224-
{
225-
return (isMuon(mask) && TESTBIT(mask, HasLightParent) && (TESTBIT(mask, HasBeautyParent)) && (!TESTBIT(mask, IsSecondary)) && (!TESTBIT(mask, HasQuarkoniumParent)));
226-
}
227-
228-
// this muon comes from charm to light flavor decay
229-
bool isCharmToLightDecayMu(const uint8_t& mask)
230-
{
231-
return (isMuon(mask) && TESTBIT(mask, HasLightParent) && (TESTBIT(mask, HasCharmParent)) && (!TESTBIT(mask, IsSecondary)) && (!TESTBIT(mask, HasQuarkoniumParent)));
216+
return (isMuon(mask) && TESTBIT(mask, HasLightParent) && (!TESTBIT(mask, IsSecondary)) && (!TESTBIT(mask, HasQuarkoniumParent)));
232217
}
233218

234219
// this muon comes from transport
@@ -263,50 +248,36 @@ struct HfTaskSingleMuonSource {
263248
const auto muonType3 = muon.matchMCHTrack_as<McMuons>();
264249
const auto deltaPt = muonType3.pt() - pt;
265250

266-
if (!muon.has_matchMFTTrack()) {
267-
return;
268-
}
269-
const auto mft = muon.matchMFTTrack_as<McMFTs>();
270-
const auto mftNC = mft.nClusters();
271-
272-
singleMuonSource(pt, dca, mask);
251+
singleMuonSource(pt, dca, mask, deltaPt);
273252

274253
if (isBeautyDecayMu(mask)) {
275254
registry.fill(HIST("h2BeautyDecayMuPtDCA"), pt, dca);
276255
registry.fill(HIST("h2BeautyDecayMuPtChi2"), pt, chi2);
277-
registry.fill(HIST("h3BeautyDecayMuPtDeltaPtMftNC"), pt, deltaPt, mftNC);
256+
registry.fill(HIST("h2BeautyDecayMuPtDeltaPt"), pt, deltaPt);
278257
} else if (isNonpromptCharmMu(mask)) {
279258
registry.fill(HIST("h2NonpromptCharmMuPtDCA"), pt, dca);
280259
registry.fill(HIST("h2NonpromptCharmMuPtChi2"), pt, chi2);
281-
registry.fill(HIST("h3NonpromptCharmMuPtDeltaPtMftNC"), pt, deltaPt, mftNC);
260+
registry.fill(HIST("h2NonpromptCharmMuPtDeltaPt"), pt, deltaPt);
282261
} else if (isPromptCharmMu(mask)) {
283262
registry.fill(HIST("h2PromptCharmMuPtDCA"), pt, dca);
284263
registry.fill(HIST("h2PromptCharmMuPtChi2"), pt, chi2);
285-
registry.fill(HIST("h3PromptCharmMuPtDeltaPtMftNC"), pt, deltaPt, mftNC);
264+
registry.fill(HIST("h2PromptCharmMuPtDeltaPt"), pt, deltaPt);
286265
} else if (isLightDecayMu(mask)) {
287266
registry.fill(HIST("h2LightDecayMuPtDCA"), pt, dca);
288267
registry.fill(HIST("h2LightDecayMuPtChi2"), pt, chi2);
289-
registry.fill(HIST("h3LightDecayMuPtDeltaPtMftNC"), pt, deltaPt, mftNC);
290-
} else if (isBeautyToLightDecayMu(mask)) {
291-
registry.fill(HIST("h2BeautyToLightDecayMuPtDCA"), pt, dca);
292-
registry.fill(HIST("h2BeautyToLightDecayMuPtChi2"), pt, chi2);
293-
registry.fill(HIST("h3BeautyToLightDecayMuPtDeltaPtMftNC"), pt, deltaPt, mftNC);
294-
} else if (isCharmToLightDecayMu(mask)) {
295-
registry.fill(HIST("h2CharmToLightDecayMuPtDCA"), pt, dca);
296-
registry.fill(HIST("h2CharmToLightDecayMuPtChi2"), pt, chi2);
297-
registry.fill(HIST("h3CharmToLightDecayMuPtDeltaPtMftNC"), pt, deltaPt, mftNC);
268+
registry.fill(HIST("h2LightDecayMuPtDeltaPt"), pt, deltaPt);
298269
} else if (isSecondaryMu(mask)) {
299270
registry.fill(HIST("h2SecondaryMuPtDCA"), pt, dca);
300271
registry.fill(HIST("h2SecondaryMuPtChi2"), pt, chi2);
301-
registry.fill(HIST("h3SecondaryMuPtDeltaPtMftNC"), pt, deltaPt, mftNC);
272+
registry.fill(HIST("h2SecondaryMuPtDeltaPt"), pt, deltaPt);
302273
} else if (isHadron(mask)) {
303274
registry.fill(HIST("h2HadronPtDCA"), pt, dca);
304275
registry.fill(HIST("h2HadronPtChi2"), pt, chi2);
305-
registry.fill(HIST("h3HadronPtDeltaPtMftNC"), pt, deltaPt, mftNC);
276+
registry.fill(HIST("h2HadronPtDeltaPt"), pt, deltaPt);
306277
} else if (isUnidentified(mask)) {
307278
registry.fill(HIST("h2UnidentifiedPtDCA"), pt, dca);
308279
registry.fill(HIST("h2UnidentifiedPtChi2"), pt, chi2);
309-
registry.fill(HIST("h3UnidentifiedPtDeltaPtMftNC"), pt, deltaPt, mftNC);
280+
registry.fill(HIST("h2UnidentifiedPtDeltaPt"), pt, deltaPt);
310281
}
311282
} else {
312283
if (isBeautyDecayMu(mask)) {
@@ -317,10 +288,6 @@ struct HfTaskSingleMuonSource {
317288
registry.fill(HIST("h1PromptCharmMuPt"), pt);
318289
} else if (isLightDecayMu(mask)) {
319290
registry.fill(HIST("h1LightDecayMuPt"), pt);
320-
} else if (isBeautyToLightDecayMu(mask)) {
321-
registry.fill(HIST("h1BeautyToLightDecayMuPt"), pt);
322-
} else if (isCharmToLightDecayMu(mask)) {
323-
registry.fill(HIST("h1CharmToLightDecayMuPt"), pt);
324291
} else if (isSecondaryMu(mask)) {
325292
registry.fill(HIST("h1SecondaryMuPt"), pt);
326293
} else if (isHadron(mask)) {
@@ -333,7 +300,6 @@ struct HfTaskSingleMuonSource {
333300

334301
void process(MyCollisions::iterator const& collision,
335302
McMuons const& muons,
336-
McMFTs const&,
337303
aod::McParticles const&)
338304
{
339305
// event selections

0 commit comments

Comments
 (0)