Skip to content

Commit dd566c3

Browse files
authored
Adding particle level background subtraction (#8704)
1 parent d1101e2 commit dd566c3

21 files changed

+403
-104
lines changed

PWGJE/Core/JetFindingUtilities.h

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -336,7 +336,7 @@ void findJets(JetFinder& jetFinder, std::vector<fastjet::PseudoJet>& inputPartic
336336
* @param pdgDatabase database of pdg codes
337337
* @param candidate optional hf candidiate
338338
*/
339-
template <typename T, typename U>
339+
template <bool checkIsDaughter, typename T, typename U>
340340
void analyseParticles(std::vector<fastjet::PseudoJet>& inputParticles, std::string particleSelection, int jetTypeParticleLevel, T const& particles, o2::framework::Service<o2::framework::O2DatabasePDG> pdgDatabase, std::optional<U> const& candidate = std::nullopt)
341341
{
342342
for (auto& particle : particles) {
@@ -366,9 +366,11 @@ void analyseParticles(std::vector<fastjet::PseudoJet>& inputParticles, std::stri
366366
if (cand.mcParticleId() == particle.globalIndex()) {
367367
continue;
368368
}
369-
auto hfParticle = cand.template mcParticle_as<T>();
370-
if (jetcandidateutilities::isDaughterParticle(hfParticle, particle.globalIndex())) {
371-
continue;
369+
if constexpr (checkIsDaughter) {
370+
auto hfParticle = cand.template mcParticle_as<T>();
371+
if (jetcandidateutilities::isDaughterParticle(hfParticle, particle.globalIndex())) {
372+
continue;
373+
}
372374
}
373375
}
374376
}

PWGJE/DataModel/Jet.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -209,24 +209,28 @@ using JetClustersMCD = o2::soa::Join<JClusters, JMcClusterLbs>;
209209
using JetMcCollisions = JMcCollisions;
210210
using JetMcCollision = JetMcCollisions::iterator;
211211
using JetParticles = JMcParticles;
212+
using JetParticlesSub = JMcParticleSubs;
212213

213214
using CollisionsD0 = o2::soa::Join<HfD0CollBases, JD0CollisionIds>;
214215
using CandidatesD0Data = o2::soa::Join<HfD0Bases, HfD0Pars, HfD0ParEs, HfD0Sels, HfD0Mls, JD0Ids>;
215216
using CandidatesD0MCD = o2::soa::Join<HfD0Bases, HfD0Pars, HfD0ParEs, HfD0Sels, HfD0Mls, HfD0Mcs, JD0Ids>;
216217
using JetTracksSubD0 = JTrackD0Subs;
218+
using JetParticlesSubD0 = JMcParticleD0Subs;
217219
using McCollisionsD0 = o2::soa::Join<HfD0McCollBases, JD0McCollisionIds>;
218220
using CandidatesD0MCP = o2::soa::Join<HfD0PBases, JD0PIds>;
219221

220222
using CollisionsLc = o2::soa::Join<Hf3PCollBases, JLcCollisionIds>;
221223
using CandidatesLcData = o2::soa::Join<Hf3PBases, Hf3PPars, Hf3PParEs, Hf3PSels, Hf3PMls, JLcIds>;
222224
using CandidatesLcMCD = o2::soa::Join<Hf3PBases, Hf3PPars, Hf3PParEs, Hf3PSels, Hf3PMls, Hf3PMcs, JLcIds>;
223225
using JetTracksSubLc = JTrackLcSubs;
226+
using JetParticlesSubLc = JMcParticleLcSubs;
224227
using McCollisionsLc = o2::soa::Join<Hf3PMcCollBases, JLcMcCollisionIds>;
225228
using CandidatesLcMCP = o2::soa::Join<Hf3PPBases, JLcPIds>;
226229

227230
using CandidatesBplusData = o2::soa::Join<HfCandBplus, HfSelBplusToD0Pi>;
228231
using CandidatesBplusMCD = o2::soa::Join<HfCandBplus, HfSelBplusToD0Pi, HfCandBplusMcRec>;
229232
using JetTracksSubBplus = JTrackBplusSubs;
233+
using JetParticlesSubBplus = JMcParticleBplusSubs;
230234
using CandidatesBplusMCP = o2::soa::Join<JMcParticles, HfCandBplusMcGen>;
231235

232236
using CandidatesV0Data = o2::soa::Join<V0Cores, JV0Ids>;
@@ -239,6 +243,7 @@ using CollisionsDielectron = o2::soa::Join<ReducedEvents, JDielectronCollisionId
239243
using CandidatesDielectronData = o2::soa::Join<Dielectrons, JDielectronIds>;
240244
using CandidatesDielectronMCD = o2::soa::Join<Dielectrons, JDielectronIds>;
241245
using JetTracksSubDielectron = JTrackDielectronSubs;
246+
using JetParticlesSubDielectron = JMcParticleDielectronSubs;
242247
using McCollisionsDielectron = o2::soa::Join<JDielectronMcCollisions, JDielectronMcCollisionIds>;
243248
using CandidatesDielectronMCP = o2::soa::Join<JDielectronMcs, JDielectronMcIds>;
244249

0 commit comments

Comments
 (0)