From bdf24f19220c26b2ec5e54a7a258b4d247433d4a Mon Sep 17 00:00:00 2001 From: Chiara De Martin Date: Thu, 14 Aug 2025 15:40:02 +0200 Subject: [PATCH 1/2] add inv. mass cut on lambda to reduce size of stored tree --- .../TableProducer/Strangeness/cascadeflow.cxx | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/PWGLF/TableProducer/Strangeness/cascadeflow.cxx b/PWGLF/TableProducer/Strangeness/cascadeflow.cxx index c83984f3a7c..5e99f4f8c52 100644 --- a/PWGLF/TableProducer/Strangeness/cascadeflow.cxx +++ b/PWGLF/TableProducer/Strangeness/cascadeflow.cxx @@ -228,6 +228,8 @@ struct cascadeFlow { Configurable MaxPtV0{"MaxPtV0", 10, "Max pt of v0"}; Configurable MinMassLambda{"MinMassLambda", 1.105, ""}; Configurable MaxMassLambda{"MaxMassLambda", 1.125, ""}; + Configurable MinMassLambdaInTree{"MinMassLambdaInTree", 1.09, ""}; + Configurable MaxMassLambdaInTree{"MaxMassLambdaInTree", 1.14, ""}; Configurable etaV0{"etaV0", 0.8, "etaV0"}; Configurable v0cospa{"v0cospa", 0.97, "min V0 CosPA"}; Configurable dcav0dau{"dcav0dau", 1.0, "max DCA V0 Daughters (cm)"}; @@ -577,13 +579,17 @@ struct cascadeFlow { template void fillAnalysedLambdaTable(collision_t coll, bool hasEventPlane, bool hasSpectatorPlane, int chargeIndex, v0_t v0, float v2CEP, float psiT0C, double pzs2Lambda, double cos2ThetaLambda, double cosThetaLambda) { + double invMassLambda = 0; + if (chargeIndex == 0) invMassLambda = v0.mLambda(); + else if (chargeIndex == 1) invMassLambda = v0.mAntiLambda(); + else invMassLambda = v0.mLambda(); analysisLambdaSample(coll.centFT0C(), hasEventPlane, hasSpectatorPlane, chargeIndex, v0.pt(), v0.phi(), - v0.mLambda(), + invMassLambda, v0.v0radius(), v0.dcapostopv(), v0.dcanegtopv(), @@ -1592,7 +1598,7 @@ struct cascadeFlow { } if (!isSelectedV0[0] && !isSelectedV0[1]) continue; - + ROOT::Math::XYZVector lambdaQvec{std::cos(2 * v0.phi()), std::sin(2 * v0.phi()), 0}; auto v2CSP = lambdaQvec.Dot(eventplaneVecT0C); // not normalised by amplitude auto lambdaminuspsiT0C = GetPhiInRange(v0.phi() - psiT0C); @@ -1659,6 +1665,14 @@ struct cascadeFlow { histos.get(HIST("hLambdaCos2ThetaVsPsi"))->Fill(coll.centFT0C(), chargeIndex, v0.eta(), v0.pt(), v0.mLambda(), cos2ThetaLambda, 2 * lambdaminuspsiT0C); } + double invMassLambda = 0; + if (chargeIndex == 0) invMassLambda = v0.mLambda(); + else if (chargeIndex == 1) invMassLambda = v0.mAntiLambda(); + else invMassLambda = v0.mLambda(); + + //mass selection + if (invMassLambda < V0Configs.MinMassLambdaInTree || invMassLambda > V0Configs.MaxMassLambdaInTree) continue; + if (fillingConfigs.isFillTree) fillAnalysedLambdaTable(coll, hasEventPlane, hasSpectatorPlane, chargeIndex, v0, v2CEP, psiT0C, pzs2Lambda, cos2ThetaLambda, cosThetaLambda); } From dce1063811792e0f8a46f5f57a0011d5e068ea9b Mon Sep 17 00:00:00 2001 From: ALICE Action Bot Date: Thu, 14 Aug 2025 13:40:57 +0000 Subject: [PATCH 2/2] Please consider the following formatting changes --- .../TableProducer/Strangeness/cascadeflow.cxx | 27 ++++++++++++------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/PWGLF/TableProducer/Strangeness/cascadeflow.cxx b/PWGLF/TableProducer/Strangeness/cascadeflow.cxx index 5e99f4f8c52..72faae0ec23 100644 --- a/PWGLF/TableProducer/Strangeness/cascadeflow.cxx +++ b/PWGLF/TableProducer/Strangeness/cascadeflow.cxx @@ -580,9 +580,12 @@ struct cascadeFlow { void fillAnalysedLambdaTable(collision_t coll, bool hasEventPlane, bool hasSpectatorPlane, int chargeIndex, v0_t v0, float v2CEP, float psiT0C, double pzs2Lambda, double cos2ThetaLambda, double cosThetaLambda) { double invMassLambda = 0; - if (chargeIndex == 0) invMassLambda = v0.mLambda(); - else if (chargeIndex == 1) invMassLambda = v0.mAntiLambda(); - else invMassLambda = v0.mLambda(); + if (chargeIndex == 0) + invMassLambda = v0.mLambda(); + else if (chargeIndex == 1) + invMassLambda = v0.mAntiLambda(); + else + invMassLambda = v0.mLambda(); analysisLambdaSample(coll.centFT0C(), hasEventPlane, hasSpectatorPlane, @@ -1598,7 +1601,7 @@ struct cascadeFlow { } if (!isSelectedV0[0] && !isSelectedV0[1]) continue; - + ROOT::Math::XYZVector lambdaQvec{std::cos(2 * v0.phi()), std::sin(2 * v0.phi()), 0}; auto v2CSP = lambdaQvec.Dot(eventplaneVecT0C); // not normalised by amplitude auto lambdaminuspsiT0C = GetPhiInRange(v0.phi() - psiT0C); @@ -1666,13 +1669,17 @@ struct cascadeFlow { } double invMassLambda = 0; - if (chargeIndex == 0) invMassLambda = v0.mLambda(); - else if (chargeIndex == 1) invMassLambda = v0.mAntiLambda(); - else invMassLambda = v0.mLambda(); + if (chargeIndex == 0) + invMassLambda = v0.mLambda(); + else if (chargeIndex == 1) + invMassLambda = v0.mAntiLambda(); + else + invMassLambda = v0.mLambda(); + + // mass selection + if (invMassLambda < V0Configs.MinMassLambdaInTree || invMassLambda > V0Configs.MaxMassLambdaInTree) + continue; - //mass selection - if (invMassLambda < V0Configs.MinMassLambdaInTree || invMassLambda > V0Configs.MaxMassLambdaInTree) continue; - if (fillingConfigs.isFillTree) fillAnalysedLambdaTable(coll, hasEventPlane, hasSpectatorPlane, chargeIndex, v0, v2CEP, psiT0C, pzs2Lambda, cos2ThetaLambda, cosThetaLambda); }