From 62cc32bc771948546a50b807ddfc2450aacee7d8 Mon Sep 17 00:00:00 2001 From: Mario Ciacco Date: Tue, 16 Apr 2024 22:40:29 +0200 Subject: [PATCH] custom tpc pid + separate eta selection for V0 daughters + avoid LUT in propagation for now (#5644) --- PWGLF/Tasks/Nuspex/antidLambdaEbye.cxx | 25 +++++++------------------ 1 file changed, 7 insertions(+), 18 deletions(-) diff --git a/PWGLF/Tasks/Nuspex/antidLambdaEbye.cxx b/PWGLF/Tasks/Nuspex/antidLambdaEbye.cxx index 8398308d2c1..8d0e62276c8 100644 --- a/PWGLF/Tasks/Nuspex/antidLambdaEbye.cxx +++ b/PWGLF/Tasks/Nuspex/antidLambdaEbye.cxx @@ -44,7 +44,7 @@ using namespace o2; using namespace o2::framework; using namespace o2::framework::expressions; -using TracksFull = soa::Join; +using TracksFull = soa::Join; using BCsWithRun2Info = soa::Join; namespace @@ -167,7 +167,7 @@ struct antidLambdaEbye { int nSubsamples; float d_bz; - o2::base::MatLayerCylSet* lut = nullptr; + // o2::base::MatLayerCylSet* lut = nullptr; Configurable cfgMaterialCorrection{"cfgMaterialCorrection", static_cast(o2::base::Propagator::MatCorrType::USEMatCorrNONE), "Type of material correction"}; Configurable> cfgBetheBlochParams{"cfgBetheBlochParams", {betheBlochDefault[0], 2, 6, particleNamesBB, betheBlochParNames}, "TPC Bethe-Bloch parameterisation for deuteron"}; @@ -205,6 +205,7 @@ struct antidLambdaEbye { Configurable zVtxMax{"zVtxMax", 10.0f, "maximum z position of the primary vertex"}; Configurable etaMax{"etaMax", 0.8f, "maximum eta"}; + Configurable etaMaxV0dau{"etaMaxV0dau", 0.8f, "maximum eta V0 daughters"}; Configurable fillOnlySignal{"fillOnlySignal", false, "fill histograms only for true signal candidates (MC)"}; @@ -276,23 +277,10 @@ struct antidLambdaEbye { Preslice perCollisionTracksFull = o2::aod::track::collisionId; Preslice perCollisionMcParts = o2::aod::mcparticle::mcCollisionId; - template - bool selectLambda(RecV0 const& v0) // TODO: apply ML - { - if (std::abs(v0.eta()) > etaMax || - v0.v0cosPA() < v0setting_cospa || - v0.v0radius() < v0setting_radius) { - return false; - } - if (std::abs(v0.mK0Short() - o2::constants::physics::MassK0Short) < vetoMassK0Short) - return false; - return true; - } - template bool selectV0Daughter(T const& track) { - if (std::abs(track.eta()) > etaMax) { + if (std::abs(track.eta()) > etaMaxV0dau) { return false; } if (track.itsNCls() < v0trackNclusItsCut || @@ -403,8 +391,9 @@ struct antidLambdaEbye { // Fetch magnetic field from ccdb for current collision d_bz = o2::base::Propagator::Instance()->getNominalBz(); LOG(info) << "Retrieved GRP for timestamp " << timestamp << " with magnetic field of " << d_bz << " kG"; + fitter.setBz(d_bz); - o2::base::Propagator::Instance()->setMatLUT(lut); + // o2::base::Propagator::Instance()->setMatLUT(lut); } void init(o2::framework::InitContext&) @@ -416,7 +405,7 @@ struct antidLambdaEbye { ccdb->setCaching(true); ccdb->setLocalObjectValidityChecking(); ccdb->setFatalWhenNull(false); - lut = o2::base::MatLayerCylSet::rectifyPtrFromFile(ccdb->get("GLO/Param/MatLUT")); + // lut = o2::base::MatLayerCylSet::rectifyPtrFromFile(ccdb->get("GLO/Param/MatLUT")); fitter.setPropagateToPCA(true); fitter.setMaxR(200.);