Skip to content

Commit 8c61c16

Browse files
[PWGJE] fixes to charm hadronisation task (#15534)
Co-authored-by: ALICE Action Bot <alibuild@cern.ch>
1 parent dd5112e commit 8c61c16

File tree

1 file changed

+18
-18
lines changed

1 file changed

+18
-18
lines changed

PWGJE/Tasks/hfFragmentationFunction.cxx

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -278,7 +278,7 @@ struct HfFragmentationFunction {
278278

279279
// filling table
280280
distJetTable(axisDistance,
281-
jet.pt(), jet.eta(), jet.phi(), jet.template tracks_as<aod::JetTracks>().size(),
281+
jet.pt(), jet.eta(), jet.phi(), jet.template tracks_as<aod::JetTracks>().size() + jet.template candidates_as<TCandidates>().size(),
282282
candidate.pt(), candidate.eta(), candidate.phi(), candidate.m(), candidate.y(), candidate.mlScores()[0], candidate.mlScores()[1], candidate.mlScores()[2]);
283283

284284
break; // get out of candidates' loop after first HF particle is found in jet
@@ -319,7 +319,7 @@ struct HfFragmentationFunction {
319319

320320
registry.fill(HIST("h_collision_counter"), 0.0);
321321
// skip collisions outside of |z| < vertexZCut
322-
if (std::abs(mccollision.posZ()) > vertexZCut) {
322+
if (!jetderiveddatautilities::selectCollision(mccollision, eventSelectionBits) || !(std::abs(mccollision.posZ()) < vertexZCut)) {
323323
continue;
324324
}
325325
registry.fill(HIST("h_collision_counter"), 1.0);
@@ -366,7 +366,7 @@ struct HfFragmentationFunction {
366366

367367
// store data in MC detector level table
368368
mcddistJetTable(jetutilities::deltaR(mcdjet, mcdd0cand),
369-
mcdjet.pt(), mcdjet.eta(), mcdjet.phi(), mcdjet.tracks_as<aod::JetTracks>().size(), // detector level jet
369+
mcdjet.pt(), mcdjet.eta(), mcdjet.phi(), mcdjet.tracks_as<aod::JetTracks>().size() + mcdjet.candidates_as<aod::CandidatesD0MCD>().size(), // detector level jet
370370
mcdd0cand.pt(), mcdd0cand.eta(), mcdd0cand.phi(), mcdd0cand.m(), mcdd0cand.y(), (mcdd0cand.originMcRec() == RecoDecay::OriginType::Prompt), // detector level D0 candidate
371371
mcdjet.has_matchedJetCand(), mcdd0cand.mlScores()[0], mcdd0cand.mlScores()[1], mcdd0cand.mlScores()[2], // // Machine Learning PID scores: background, prompt, non-prompt
372372
matchedFrom, selectedAs); // D0 = +1, D0bar = -1, neither = 0
@@ -388,8 +388,8 @@ struct HfFragmentationFunction {
388388

389389
// store data in MC detector level table (calculate angular distance in eta-phi plane on the fly)
390390
mcpdistJetTable(jetutilities::deltaR(mcpjet, mcpd0cand),
391-
mcpjet.pt(), mcpjet.eta(), mcpjet.phi(), mcpjet.tracks_as<aod::JetParticles>().size(), // particle level jet
392-
mcpd0cand.pt(), mcpd0cand.eta(), mcpd0cand.phi(), mcpd0cand.y(), (mcpd0cand.originMcGen() == RecoDecay::OriginType::Prompt), // particle level D0
391+
mcpjet.pt(), mcpjet.eta(), mcpjet.phi(), mcpjet.tracks_as<aod::JetParticles>().size() + mcpjet.candidates_as<aod::CandidatesD0MCP>().size(), // particle level jet
392+
mcpd0cand.pt(), mcpd0cand.eta(), mcpd0cand.phi(), mcpd0cand.y(), (mcpd0cand.originMcGen() == RecoDecay::OriginType::Prompt), // particle level D0
393393
mcpjet.has_matchedJetCand());
394394
}
395395
}
@@ -410,7 +410,7 @@ struct HfFragmentationFunction {
410410
for (const auto& mccollision : mccollisions) {
411411
registry.fill(HIST("h_collision_counter"), 0.0);
412412
// skip collisions outside of |z| < vertexZCut
413-
if (std::abs(mccollision.posZ()) > vertexZCut) {
413+
if (!jetderiveddatautilities::selectCollision(mccollision, eventSelectionBits) || !(std::abs(mccollision.posZ()) < vertexZCut)) {
414414
continue;
415415
}
416416
registry.fill(HIST("h_collision_counter"), 1.0);
@@ -465,21 +465,21 @@ struct HfFragmentationFunction {
465465
}
466466

467467
// store matched particle and detector level data in one single table (calculate angular distance in eta-phi plane on the fly)
468-
matchJetTable(jetutilities::deltaR(mcpjet, mcpcand), mcpjet.pt(), mcpjet.eta(), mcpjet.phi(), mcpjet.template tracks_as<aod::JetParticles>().size(), // particle level jet
469-
mcpcand.pt(), mcpcand.eta(), mcpcand.phi(), mcpcand.y(), (mcpcand.originMcGen() == RecoDecay::OriginType::Prompt), // particle level HF
470-
jetutilities::deltaR(mcdjet, mcdcand), mcdjet.pt(), mcdjet.eta(), mcdjet.phi(), mcdjet.template tracks_as<aod::JetTracks>().size(), // detector level jet
471-
mcdcand.pt(), mcdcand.eta(), mcdcand.phi(), mcdcand.m(), mcdcand.y(), (mcdcand.originMcRec() == RecoDecay::OriginType::Prompt), // detector level HF
472-
mcdcand.mlScores()[0], mcdcand.mlScores()[1], mcdcand.mlScores()[2], // Machine Learning PID scores: background, prompt, non-prompt
473-
matchedFrom, selectedAs); // HF = +1, HFbar = -1, neither = 0
468+
matchJetTable(jetutilities::deltaR(mcpjet, mcpcand), mcpjet.pt(), mcpjet.eta(), mcpjet.phi(), mcpjet.template tracks_as<aod::JetParticles>().size() + mcpjet.template candidates_as<TCandidatesMCP>().size(), // particle level jet
469+
mcpcand.pt(), mcpcand.eta(), mcpcand.phi(), mcpcand.y(), (mcpcand.originMcGen() == RecoDecay::OriginType::Prompt), // particle level HF
470+
jetutilities::deltaR(mcdjet, mcdcand), mcdjet.pt(), mcdjet.eta(), mcdjet.phi(), mcdjet.template tracks_as<aod::JetTracks>().size() + +mcdjet.template candidates_as<TCandidatesMCD>().size(), // detector level jet
471+
mcdcand.pt(), mcdcand.eta(), mcdcand.phi(), mcdcand.m(), mcdcand.y(), (mcdcand.originMcRec() == RecoDecay::OriginType::Prompt), // detector level HF
472+
mcdcand.mlScores()[0], mcdcand.mlScores()[1], mcdcand.mlScores()[2], // Machine Learning PID scores: background, prompt, non-prompt
473+
matchedFrom, selectedAs); // HF = +1, HFbar = -1, neither = 0
474474
}
475475
} else {
476476
// store matched particle and detector level data in one single table (calculate angular distance in eta-phi plane on the fly)
477-
matchJetTable(jetutilities::deltaR(mcpjet, mcpcand), mcpjet.pt(), mcpjet.eta(), mcpjet.phi(), mcpjet.template tracks_as<aod::JetParticles>().size(), // particle level jet
478-
mcpcand.pt(), mcpcand.eta(), mcpcand.phi(), mcpcand.y(), (mcpcand.originMcGen() == RecoDecay::OriginType::Prompt), // particle level HF
479-
-2, -2, -2, -2, -2, // detector level jet
480-
-2, -2, -2, -2, -2, -2, // detector level HF
481-
-2, -2, -2, // Machine Learning PID scores: background, prompt, non-prompt
482-
-2, -2); // HF = +1, HFbar = -1, neither = 0
477+
matchJetTable(jetutilities::deltaR(mcpjet, mcpcand), mcpjet.pt(), mcpjet.eta(), mcpjet.phi(), mcpjet.template tracks_as<aod::JetParticles>().size() + +mcpjet.template candidates_as<TCandidatesMCP>().size(), // particle level jet
478+
mcpcand.pt(), mcpcand.eta(), mcpcand.phi(), mcpcand.y(), (mcpcand.originMcGen() == RecoDecay::OriginType::Prompt), // particle level HF
479+
-2, -2, -2, -2, -2, // detector level jet
480+
-2, -2, -2, -2, -2, -2, // detector level HF
481+
-2, -2, -2, // Machine Learning PID scores: background, prompt, non-prompt
482+
-2, -2); // HF = +1, HFbar = -1, neither = 0
483483
}
484484
} // end of mcpjets loop
485485
} // end of mccollisions loop

0 commit comments

Comments
 (0)