@@ -87,7 +87,7 @@ struct HfDerivedDataCreatorLcToPKPi {
8787
8888 HfHelper hfHelper;
8989 SliceCache cache;
90- static constexpr double mass {o2::constants::physics::MassLambdaCPlus};
90+ static constexpr double Mass {o2::constants::physics::MassLambdaCPlus};
9191
9292 using CollisionsWCentMult = soa::Join<aod::Collisions, aod::CentFV0As, aod::CentFT0Ms, aod::CentFT0As, aod::CentFT0Cs, aod::PVMultZeqs>;
9393 using CollisionsWMcCentMult = soa::Join<aod::Collisions, aod::McCollisionLabels, aod::CentFV0As, aod::CentFT0Ms, aod::CentFT0As, aod::CentFT0Cs, aod::PVMultZeqs>;
@@ -280,6 +280,13 @@ struct HfDerivedDataCreatorLcToPKPi {
280280 continue ;
281281 }
282282 }
283+ } else {
284+ if (downSampleBkgFactor < 1 .) {
285+ float pseudoRndm = candidate.ptProng0 () * 1000 . - static_cast <int64_t >(candidate.ptProng0 () * 1000 );
286+ if (candidate.pt () < ptMaxForDownSample && pseudoRndm >= downSampleBkgFactor) {
287+ continue ;
288+ }
289+ }
283290 }
284291 double ct = hfHelper.ctLc (candidate);
285292 double y = hfHelper.yLc (candidate);
@@ -318,7 +325,7 @@ struct HfDerivedDataCreatorLcToPKPi {
318325 {
319326 rowsCommon.preProcessMcCollisions (mcCollisions, mcParticlesPerMcCollision, mcParticles);
320327 processCandidates<false , true , false , true >(collisions, candidatesMcSig, tracks, bcs);
321- rowsCommon.processMcParticles (mcCollisions, mcParticlesPerMcCollision, mcParticles, mass );
328+ rowsCommon.processMcParticles (mcCollisions, mcParticlesPerMcCollision, mcParticles, Mass );
322329 }
323330 PROCESS_SWITCH (HfDerivedDataCreatorLcToPKPi, processMcSig, " Process MC only for signals" , false );
324331
@@ -331,7 +338,7 @@ struct HfDerivedDataCreatorLcToPKPi {
331338 {
332339 rowsCommon.preProcessMcCollisions (mcCollisions, mcParticlesPerMcCollision, mcParticles);
333340 processCandidates<false , true , true , false >(collisions, candidatesMcBkg, tracks, bcs);
334- rowsCommon.processMcParticles (mcCollisions, mcParticlesPerMcCollision, mcParticles, mass );
341+ rowsCommon.processMcParticles (mcCollisions, mcParticlesPerMcCollision, mcParticles, Mass );
335342 }
336343 PROCESS_SWITCH (HfDerivedDataCreatorLcToPKPi, processMcBkg, " Process MC only for background" , false );
337344
@@ -344,7 +351,7 @@ struct HfDerivedDataCreatorLcToPKPi {
344351 {
345352 rowsCommon.preProcessMcCollisions (mcCollisions, mcParticlesPerMcCollision, mcParticles);
346353 processCandidates<false , true , false , false >(collisions, candidatesMcAll, tracks, bcs);
347- rowsCommon.processMcParticles (mcCollisions, mcParticlesPerMcCollision, mcParticles, mass );
354+ rowsCommon.processMcParticles (mcCollisions, mcParticlesPerMcCollision, mcParticles, Mass );
348355 }
349356 PROCESS_SWITCH (HfDerivedDataCreatorLcToPKPi, processMcAll, " Process MC" , false );
350357
@@ -368,7 +375,7 @@ struct HfDerivedDataCreatorLcToPKPi {
368375 {
369376 rowsCommon.preProcessMcCollisions (mcCollisions, mcParticlesPerMcCollision, mcParticles);
370377 processCandidates<true , true , false , true >(collisions, candidatesMcMlSig, tracks, bcs);
371- rowsCommon.processMcParticles (mcCollisions, mcParticlesPerMcCollision, mcParticles, mass );
378+ rowsCommon.processMcParticles (mcCollisions, mcParticlesPerMcCollision, mcParticles, Mass );
372379 }
373380 PROCESS_SWITCH (HfDerivedDataCreatorLcToPKPi, processMcMlSig, " Process MC with ML only for signals" , false );
374381
@@ -381,7 +388,7 @@ struct HfDerivedDataCreatorLcToPKPi {
381388 {
382389 rowsCommon.preProcessMcCollisions (mcCollisions, mcParticlesPerMcCollision, mcParticles);
383390 processCandidates<true , true , true , false >(collisions, candidatesMcMlBkg, tracks, bcs);
384- rowsCommon.processMcParticles (mcCollisions, mcParticlesPerMcCollision, mcParticles, mass );
391+ rowsCommon.processMcParticles (mcCollisions, mcParticlesPerMcCollision, mcParticles, Mass );
385392 }
386393 PROCESS_SWITCH (HfDerivedDataCreatorLcToPKPi, processMcMlBkg, " Process MC with ML only for background" , false );
387394
@@ -394,14 +401,14 @@ struct HfDerivedDataCreatorLcToPKPi {
394401 {
395402 rowsCommon.preProcessMcCollisions (mcCollisions, mcParticlesPerMcCollision, mcParticles);
396403 processCandidates<true , true , false , false >(collisions, candidatesMcMlAll, tracks, bcs);
397- rowsCommon.processMcParticles (mcCollisions, mcParticlesPerMcCollision, mcParticles, mass );
404+ rowsCommon.processMcParticles (mcCollisions, mcParticlesPerMcCollision, mcParticles, Mass );
398405 }
399406 PROCESS_SWITCH (HfDerivedDataCreatorLcToPKPi, processMcMlAll, " Process MC with ML" , false );
400407
401408 void processMcGenOnly (TypeMcCollisions const & mcCollisions,
402409 MatchedGenCandidatesMc const & mcParticles)
403410 {
404- rowsCommon.processMcParticles (mcCollisions, mcParticlesPerMcCollision, mcParticles, mass );
411+ rowsCommon.processMcParticles (mcCollisions, mcParticlesPerMcCollision, mcParticles, Mass );
405412 }
406413 PROCESS_SWITCH (HfDerivedDataCreatorLcToPKPi, processMcGenOnly, " Process MC gen. only" , false );
407414};
0 commit comments