From 0de9f2a666fb1d67e65ce915b8b5ef8cdf09c9bc Mon Sep 17 00:00:00 2001 From: ALICE Action Bot Date: Tue, 2 Jun 2026 03:52:44 +0000 Subject: [PATCH] Please consider the following formatting changes --- PWGLF/DataModel/LFLambda1405Table.h | 8 +- PWGLF/TableProducer/Common/kinkBuilder.cxx | 44 ++++---- PWGLF/Tasks/Resonances/lambda1405analysis.cxx | 102 +++++++++--------- 3 files changed, 81 insertions(+), 73 deletions(-) diff --git a/PWGLF/DataModel/LFLambda1405Table.h b/PWGLF/DataModel/LFLambda1405Table.h index cb472f5fc58..31721f634e3 100644 --- a/PWGLF/DataModel/LFLambda1405Table.h +++ b/PWGLF/DataModel/LFLambda1405Table.h @@ -49,8 +49,8 @@ DECLARE_SOA_COLUMN(NSigmaTPCPiDau, nSigmaTPCPiDau, float); //! Number of sigma DECLARE_SOA_COLUMN(NSigmaTOFPiDau, nSigmaTOFPiDau, float); //! Number of sigmas for the lambda1405 pion daughter in TOF // Flow columns -DECLARE_SOA_COLUMN(ScalarProd, scalarProd, float); //! Scalar product of the candidate -DECLARE_SOA_COLUMN(Centrality, centrality, float); //! Centrality of the candidate +DECLARE_SOA_COLUMN(ScalarProd, scalarProd, float); //! Scalar product of the candidate +DECLARE_SOA_COLUMN(Centrality, centrality, float); //! Centrality of the candidate // MC Columns DECLARE_SOA_COLUMN(PtMC, ptMC, float); //! pT of the candidate in MC @@ -73,8 +73,8 @@ DECLARE_SOA_TABLE(Lambda1405Cands, "AOD", "LAMBDA1405", lambda1405::NSigmaTPCPiDau, lambda1405::NSigmaTOFPiDau); DECLARE_SOA_TABLE(Lambda1405Flow, "AOD", "LAMBDA1405FLOW", - o2::soa::Index<>, - lambda1405::Pt, + o2::soa::Index<>, + lambda1405::Pt, lambda1405::Mass, lambda1405::SigmaMinusMass, lambda1405::SigmaPlusMass, lambda1405::AlphaAPSigma, lambda1405::QtAPSigma, lambda1405::NSigmaTPCPiKink, lambda1405::NSigmaTOFPiKink, diff --git a/PWGLF/TableProducer/Common/kinkBuilder.cxx b/PWGLF/TableProducer/Common/kinkBuilder.cxx index f091dfe4f49..496f986d158 100644 --- a/PWGLF/TableProducer/Common/kinkBuilder.cxx +++ b/PWGLF/TableProducer/Common/kinkBuilder.cxx @@ -16,9 +16,9 @@ #include "PWGLF/DataModel/LFKinkDecayTables.h" #include "PWGLF/Utils/svPoolCreator.h" -#include "Common/DataModel/Centrality.h" #include "Common/Core/RecoDecay.h" #include "Common/Core/trackUtilities.h" +#include "Common/DataModel/Centrality.h" #include #include @@ -322,7 +322,7 @@ struct kinkBuilder { hSelKinkedTrackQA->GetXaxis()->SetBinLabel(11, "MothLastLayerRadiusCheck"); hMothDaughSignsInit = qaRegistry.add("hMothDaughSignsInit", "hMothDaughSignsInit; Sign Mother; Sign Daughter", {HistType::kTH2F, {{3, -1.5, 1.5}, {3, -1.5, 1.5}}}); hMothDaughSignsFinal = qaRegistry.add("hMothDaughSignsFinal", "hMothDaughSignsFinal; Sign Mother; Sign Daughter", {HistType::kTH2F, {{3, -1.5, 1.5}, {3, -1.5, 1.5}}}); - hZDiff = qaRegistry.add("hZDiff", "hZDiff; #Delta z (#mu m);(Q_{Mother}, Q_{Daughter})", HistType::kTH2F, {zDiffBins, {4, -0.5, 3.5}}); + hZDiff = qaRegistry.add("hZDiff", "hZDiff; #Delta z (#mu m);(Q_{Mother}, Q_{Daughter})", HistType::kTH2F, {zDiffBins, {4, -0.5, 3.5}}); hZDiff->GetYaxis()->SetBinLabel(1, "(+,+)"); hZDiff->GetYaxis()->SetBinLabel(2, "(-,-)"); hZDiff->GetYaxis()->SetBinLabel(3, "(+,-)"); @@ -355,12 +355,12 @@ struct kinkBuilder { if (doprocessMc || doprocessMcWCent) { if (skipBkgCands) { - hRecCandidates = qaRegistry.add("hRecCandidates", "hRecCandidates;Counts;", {HistType::kTH2F, {{kNMatchedDecays, -0.5, static_cast(kNMatchedDecays)-0.5}, absPtAxis}}); + hRecCandidates = qaRegistry.add("hRecCandidates", "hRecCandidates;Counts;", {HistType::kTH2F, {{kNMatchedDecays, -0.5, static_cast(kNMatchedDecays) - 0.5}, absPtAxis}}); hRecCandidates->GetXaxis()->SetBinLabel(1, "#Sigma^{-} #rightarrow n#pi^{-}"); hRecCandidates->GetXaxis()->SetBinLabel(2, "#Sigma^{+} #rightarrow n#pi^{+}"); hRecCandidates->GetXaxis()->SetBinLabel(3, "#Sigma^{+} #rightarrow p#pi^{0}"); } - hGenCandidates = qaRegistry.add("hGenCandidates", "hGenCandidates;Counts;", {HistType::kTH2F, {{kNMatchedDecays, -0.5, static_cast(kNMatchedDecays)-0.5}, absPtAxis}}); + hGenCandidates = qaRegistry.add("hGenCandidates", "hGenCandidates;Counts;", {HistType::kTH2F, {{kNMatchedDecays, -0.5, static_cast(kNMatchedDecays) - 0.5}, absPtAxis}}); hGenCandidates->GetXaxis()->SetBinLabel(1, "#Sigma^{-} #rightarrow n#pi^{-}"); hGenCandidates->GetXaxis()->SetBinLabel(2, "#Sigma^{+} #rightarrow n#pi^{+}"); hGenCandidates->GetXaxis()->SetBinLabel(3, "#Sigma^{+} #rightarrow p#pi^{0}"); @@ -437,15 +437,15 @@ struct kinkBuilder { if (candidate.itsNClsInnerBarrel() != 0) return false; hSelDaugQA->Fill(4.f, isPositive); - + if (candidate.itsNCls() >= 4) return false; hSelDaugQA->Fill(5.f, isPositive); - + if (candidate.tpcNClsCrossedRows() <= 0.8 * candidate.tpcNClsFindable()) return false; hSelDaugQA->Fill(6.f, isPositive); - + if (candidate.tpcNClsFound() <= nTPCClusMinDaug) return false; hSelDaugQA->Fill(7.f, isPositive); @@ -463,7 +463,7 @@ struct kinkBuilder { auto trackDaug = tracks.rawIteratorAt(svCand.tr1Idx); // Fill Selections QA histo - int chargeCombSvCand = 2*unlikeSignBkg + (trackMoth.sign() == -1 ? 1 : 0); + int chargeCombSvCand = 2 * unlikeSignBkg + (trackMoth.sign() == -1 ? 1 : 0); hSelKinkedTrackQA->Fill(0.f, chargeCombSvCand); // all candidates bin hMothDaughSignsInit->Fill(trackMoth.sign(), trackDaug.sign()); @@ -641,8 +641,9 @@ struct kinkBuilder { LOG(info) << "Task initialized for run " << mRunNumber << " with magnetic field " << mBz << " kZG"; } - template - void buildSvPool(const TColls& collisions, const TTracks& tracks, const TAmbiTracks& ambiguousTracks, const aod::BCs& bcs) { + template + void buildSvPool(const TColls& collisions, const TTracks& tracks, const TAmbiTracks& ambiguousTracks, const aod::BCs& bcs) + { svCreator.clearPools(); svCreator.fillBC2Coll(collisions, bcs); @@ -661,8 +662,9 @@ struct kinkBuilder { } } - template - void fillOutputsData(const TColls& collisions, const TTracks& tracks, const aod::AmbiguousTracks& ambiTracks, const aod::BCs& bcs) { + template + void fillOutputsData(const TColls& collisions, const TTracks& tracks, const aod::AmbiguousTracks& ambiTracks, const aod::BCs& bcs) + { kinkCandidates.clear(); buildSvPool(collisions, tracks, ambiTracks, bcs); @@ -703,15 +705,16 @@ struct kinkBuilder { } PROCESS_SWITCH(kinkBuilder, processDataWCentSel, "Data processing with centrality selection", false); - template - int matchKinkDecay(const TMother& motherPart, const aod::McParticles& mcParticles) { + template + int matchKinkDecay(const TMother& motherPart, const aod::McParticles& mcParticles) + { int pdgMother = motherPart.pdgCode(); int8_t sign = 0; int pdgCodeNeutralDaug{-1}, pdgCodeChargedDaug{-1}; std::array finState = {-1, -1}; switch (std::abs(pdgMother)) { case PDG_t::kSigmaMinus: { - // Swap the sign of the neutral decay products in case of anti-particles + // Swap the sign of the neutral decay products in case of anti-particles pdgCodeNeutralDaug = (pdgMother > 0) ? +PDG_t::kNeutron : -PDG_t::kNeutron; pdgCodeChargedDaug = (pdgMother > 0) ? +PDG_t::kPiMinus : +PDG_t::kPiPlus; finState = {pdgCodeChargedDaug, pdgCodeNeutralDaug}; // Both decay channels have the same neutral daughter @@ -723,7 +726,7 @@ struct kinkBuilder { case PDG_t::kSigmaPlus: { // Swap the sign of the neutral decay products in case of anti-particles pdgCodeNeutralDaug = (pdgMother > 0) ? +PDG_t::kNeutron : -PDG_t::kNeutron; - pdgCodeChargedDaug = (pdgMother > 0) ? +PDG_t::kPiPlus : +PDG_t::kPiMinus; + pdgCodeChargedDaug = (pdgMother > 0) ? +PDG_t::kPiPlus : +PDG_t::kPiMinus; finState = {pdgCodeChargedDaug, pdgCodeNeutralDaug}; if (RecoDecay::isMatchedMCGen(mcParticles, motherPart, pdgMother, finState, true, &sign, DepthMcMatchMax)) { return kSigmaPlusToPiPlusNeutron; @@ -746,8 +749,9 @@ struct kinkBuilder { return -1; } - template - void fillOutputsMc(const TColls& mcRecoCollisions, const TTracks& tracksMc, const aod::AmbiguousTracks& ambiTracksMc, const aod::BCs& bcs, const aod::McParticles& mcParticles) { + template + void fillOutputsMc(const TColls& mcRecoCollisions, const TTracks& tracksMc, const aod::AmbiguousTracks& ambiTracksMc, const aod::BCs& bcs, const aod::McParticles& mcParticles) + { kinkCandidates.clear(); buildSvPool(mcRecoCollisions, tracksMc, ambiTracksMc, bcs); @@ -828,7 +832,7 @@ struct kinkBuilder { McRecoCollisions const& mcRecoCollisions, aod::McParticles const& mcParticles, TracksFullMc const& tracksMc, - aod::AmbiguousTracks const& ambiTracksMc, + aod::AmbiguousTracks const& ambiTracksMc, aod::BCs const& bcs) { fillOutputsMc(mcRecoCollisions, tracksMc, ambiTracksMc, bcs, mcParticles); @@ -839,7 +843,7 @@ struct kinkBuilder { McRecoCollisionsCentSel const& mcRecoCollisions, aod::McParticles const& mcParticles, TracksFullMc const& tracksMc, - aod::AmbiguousTracks const& ambiTracksMc, + aod::AmbiguousTracks const& ambiTracksMc, aod::BCs const& bcs) { fillOutputsMc(mcRecoCollisions, tracksMc, ambiTracksMc, bcs, mcParticles); diff --git a/PWGLF/Tasks/Resonances/lambda1405analysis.cxx b/PWGLF/Tasks/Resonances/lambda1405analysis.cxx index 17fd745b794..dd4b51076b7 100644 --- a/PWGLF/Tasks/Resonances/lambda1405analysis.cxx +++ b/PWGLF/Tasks/Resonances/lambda1405analysis.cxx @@ -76,21 +76,21 @@ struct lambda1405candidate { float sigmaAlphaAP = -1; // Alpha of the Sigma float sigmaQtAP = -1; // qT of the Sigma float kinkPt = -1; // pT of the kink daughter - float kinkPiNSigTpc = -1; // Number of sigmas for the pion candidate from Sigma kink in Tpc - float kinkPiNSigTof = -1; // Number of sigmas for the pion candidate from Sigma kink in Tof - float kinkPrNSigTpc = -1; // Number of sigmas for the proton candidate from Sigma kink in Tpc - float kinkPrNSigTof = -1; // Number of sigmas for the proton candidate from Sigma kink in Tof + float kinkPiNSigTpc = -1; // Number of sigmas for the pion candidate from Sigma kink in Tpc + float kinkPiNSigTof = -1; // Number of sigmas for the pion candidate from Sigma kink in Tof + float kinkPrNSigTpc = -1; // Number of sigmas for the proton candidate from Sigma kink in Tpc + float kinkPrNSigTof = -1; // Number of sigmas for the proton candidate from Sigma kink in Tof float kinkDcaDauToPv = -1; // DCA of the kink daughter to the primary vertex float sigmaRadius = -1; // Radius of the Sigma decay vertex float piPt = -1; // pT of the pion daughter float bachPiNSigTpc = -1; // Number of sigmas for the pion candidate float bachPiNSigTof = -1; // Number of sigmas for the pion candidate using Tof - int kinkDauId = 0; // Id of the pion from Sigma decay in MC - int sigmaId = 0; // Id of the Sigma candidate in MC - int piId = 0; // Id of the pion candidate in MC + int kinkDauId = 0; // Id of the pion from Sigma decay in MC + int sigmaId = 0; // Id of the Sigma candidate in MC + int piId = 0; // Id of the pion candidate in MC - float scalarProd = -1; // Scalar product for flow analysis + float scalarProd = -1; // Scalar product for flow analysis }; struct lambda1405analysis { @@ -470,7 +470,8 @@ struct lambda1405analysis { } template - void fillHistosSigma(const lambda1405candidate& lambda1405Cand, const TCand& sigmaCand, const TTrack& kinkDauTrack) { + void fillHistosSigma(const lambda1405candidate& lambda1405Cand, const TCand& sigmaCand, const TTrack& kinkDauTrack) + { if (sigmaCand.mothSign() > 0) { rSigmaPlus.fill(HIST("hSigmaPlusMass"), sigmaCand.mSigmaPlus()); @@ -606,18 +607,18 @@ struct lambda1405analysis { auto kinkDauMom = std::array{sigmaCand.pxDaug(), sigmaCand.pyDaug(), sigmaCand.pzDaug()}; auto sigmaMom = std::array{sigmaCand.pxMoth(), sigmaCand.pyMoth(), sigmaCand.pzMoth()}; // Sigma properties - lambda1405Cand.sigmaId = sigmaCand.globalIndex(); + lambda1405Cand.sigmaId = sigmaCand.globalIndex(); lambda1405Cand.sigmaMinusMass = sigmaCand.mSigmaMinus(); - lambda1405Cand.sigmaPlusMass = sigmaCand.mSigmaPlus(); - lambda1405Cand.xiMinusMass = sigmaCand.mXiMinus(); - lambda1405Cand.sigmaSign = sigmaCand.mothSign(); - lambda1405Cand.sigmaAlphaAP = alphaAP(sigmaMom, kinkDauMom); - lambda1405Cand.sigmaQtAP = qtAP(sigmaMom, kinkDauMom); - lambda1405Cand.sigmaPt = sigmaCand.ptMoth(); - lambda1405Cand.sigmaRadius = sigmaRad; + lambda1405Cand.sigmaPlusMass = sigmaCand.mSigmaPlus(); + lambda1405Cand.xiMinusMass = sigmaCand.mXiMinus(); + lambda1405Cand.sigmaSign = sigmaCand.mothSign(); + lambda1405Cand.sigmaAlphaAP = alphaAP(sigmaMom, kinkDauMom); + lambda1405Cand.sigmaQtAP = qtAP(sigmaMom, kinkDauMom); + lambda1405Cand.sigmaPt = sigmaCand.ptMoth(); + lambda1405Cand.sigmaRadius = sigmaRad; lambda1405Cand.kinkDcaDauToPv = sigmaCand.dcaDaugPv(); - if (lambda1405Cand.sigmaQtAP < funcMinQtAlphaAP->Eval(lambda1405Cand.sigmaAlphaAP) || + if (lambda1405Cand.sigmaQtAP < funcMinQtAlphaAP->Eval(lambda1405Cand.sigmaAlphaAP) || lambda1405Cand.sigmaQtAP > funcMaxQtAlphaAP->Eval(lambda1405Cand.sigmaAlphaAP)) { return; } @@ -628,8 +629,8 @@ struct lambda1405analysis { } // Kink daughter properties - lambda1405Cand.kinkDauId = kinkDauTrack.globalIndex(); - lambda1405Cand.kinkPt = kinkDauTrack.pt(); + lambda1405Cand.kinkDauId = kinkDauTrack.globalIndex(); + lambda1405Cand.kinkPt = kinkDauTrack.pt(); lambda1405Cand.kinkPiNSigTpc = kinkDauTrack.tpcNSigmaPi(); lambda1405Cand.kinkPiNSigTof = kinkDauTrack.tofNSigmaPi(); lambda1405Cand.kinkPrNSigTpc = kinkDauTrack.tpcNSigmaPr(); @@ -652,8 +653,8 @@ struct lambda1405analysis { continue; } rSelections.fill(HIST("hSelectionsBachPi"), 5); // PID sel - rSelections.fill(HIST("hSelectionsL1405"), 2); // Bach Pi selection - + rSelections.fill(HIST("hSelectionsL1405"), 2); // Bach Pi selection + auto piMom = std::array{piTrack.px(), piTrack.py(), piTrack.pz()}; float invMass{-1.f}; if (lambda1405Cand.isSigmaMinus) { @@ -664,7 +665,7 @@ struct lambda1405analysis { if (invMass > cutUpperMass) { continue; } - rSelections.fill(HIST("hSelectionsL1405"), 3); // Upper mass selection + rSelections.fill(HIST("hSelectionsL1405"), 3); // Upper mass selection // Daughter Pi properties lambda1405Cand.piId = piTrack.globalIndex(); @@ -686,20 +687,20 @@ struct lambda1405analysis { lambda1405Cand.scalarProd = -1; // Check correlations between transverse momenta of L1405, sigma and bachelor pi - if (std::hypot(sigmaCand.pxMoth(), sigmaCand.pyMoth()) < funcMinSigmaPtVsL1405Pt->Eval(lambda1405Cand.pt()) || + if (std::hypot(sigmaCand.pxMoth(), sigmaCand.pyMoth()) < funcMinSigmaPtVsL1405Pt->Eval(lambda1405Cand.pt()) || std::hypot(sigmaCand.pxMoth(), sigmaCand.pyMoth()) > funcMaxSigmaPtVsL1405Pt->Eval(lambda1405Cand.pt())) { continue; } - rSelections.fill(HIST("hSelectionsL1405"), 4); // Accepted - - if (piTrack.pt() < funcMinBachPiPtVsL1405Pt->Eval(lambda1405Cand.pt()) || - piTrack.pt() > funcMaxBachPiPtVsL1405Pt->Eval(lambda1405Cand.pt())) { + rSelections.fill(HIST("hSelectionsL1405"), 4); // Accepted + + if (piTrack.pt() < funcMinBachPiPtVsL1405Pt->Eval(lambda1405Cand.pt()) || + piTrack.pt() > funcMaxBachPiPtVsL1405Pt->Eval(lambda1405Cand.pt())) { continue; } - rSelections.fill(HIST("hSelectionsL1405"), 5); // Accepted + rSelections.fill(HIST("hSelectionsL1405"), 5); // Accepted fillHistosLambda1405(lambda1405Cand, piTrack); - rSelections.fill(HIST("hSelectionsL1405"), 6); // Accepted + rSelections.fill(HIST("hSelectionsL1405"), 6); // Accepted selectedCandidates.push_back(lambda1405Cand); } } @@ -724,9 +725,10 @@ struct lambda1405analysis { return isKinkFromSigma; // Return true if the kink comes from the Sigma } - template - void fillOutputData(const TCollision& collision, const TCand& sigmaCands, const TTrack& kinkDauTrack) { - if constexpr (requires{collision.centFT0C();}) { + template + void fillOutputData(const TCollision& collision, const TCand& sigmaCands, const TTrack& kinkDauTrack) + { + if constexpr (requires { collision.centFT0C(); }) { if (collision.centFT0C() < centralityMin || collision.centFT0C() > centralityMax) { LOG(info) << "Skipping collision due to centrality cut"; return; @@ -771,7 +773,7 @@ struct lambda1405analysis { lambda1405Cand.kinkDcaDauToPv, lambda1405Cand.bachPiNSigTpc, lambda1405Cand.bachPiNSigTof); } - if constexpr (requires{collision.qvecFT0CRe();}) { + if constexpr (requires { collision.qvecFT0CRe(); }) { float const xQVec = collision.qvecFT0CRe(); float const yQVec = collision.qvecFT0CIm(); float const cos2Phi = std::cos(2 * lambda1405Cand.phi); @@ -813,8 +815,9 @@ struct lambda1405analysis { } PROCESS_SWITCH(lambda1405analysis, processDataWCentQVecs, "Data processing with centrality and Q vectors info", false); - template - int matchGenDecay(const TMother& motherPart, const aod::McParticles& mcParticles, std::array& daugsIdxs) { + template + int matchGenDecay(const TMother& motherPart, const aod::McParticles& mcParticles, std::array& daugsIdxs) + { int pdgMother = motherPart.pdgCode(); int8_t sign = 0; @@ -825,7 +828,7 @@ struct lambda1405analysis { int decayChannel = -1; // Match L(1405) --> n pi- pi+ final state - if (pdgMother > 0) { // Change sign of neutral decay products + if (pdgMother > 0) { // Change sign of neutral decay products finalState = {PDG_t::kNeutron, PDG_t::kPiMinus, PDG_t::kPiPlus}; } else { finalState = {-PDG_t::kNeutron, PDG_t::kPiMinus, PDG_t::kPiPlus}; @@ -843,14 +846,14 @@ struct lambda1405analysis { decayChannel = kSigmaMinusPiToPiPiNeutron; daugsIdxs[1] = arrL1405Daugs[iProng]; } - if (std::abs(daughI.pdgCode()) == PDG_t::kPiPlus) { + if (std::abs(daughI.pdgCode()) == PDG_t::kPiPlus) { daugsIdxs[0] = arrL1405Daugs[iProng]; } } } // Match L(1405) --> p pi0 pi+ final state, only possible for Sigma+ - if (pdgMother > 0) { // Change sign of neutral decay products + if (pdgMother > 0) { // Change sign of neutral decay products finalState = {PDG_t::kProton, PDG_t::kPi0, PDG_t::kPiMinus}; } else { finalState = {PDG_t::kProton, -PDG_t::kPi0, PDG_t::kPiMinus}; @@ -884,10 +887,11 @@ struct lambda1405analysis { return decayChannel; } - template - void fillOutputMc(const TCollision& collisions, const aod::KinkCands& sigmaCands, const aod::McTrackLabels& trackLabelsMC, const TTrack& tracks, const aod::McParticles& particlesMC) { + template + void fillOutputMc(const TCollision& collisions, const aod::KinkCands& sigmaCands, const aod::McTrackLabels& trackLabelsMC, const TTrack& tracks, const aod::McParticles& particlesMC) + { for (const auto& collision : collisions) { - if constexpr (requires{collision.centFT0C();}) { + if constexpr (requires { collision.centFT0C(); }) { if (collision.centFT0C() < centralityMin || collision.centFT0C() > centralityMax) { return; } @@ -903,7 +907,7 @@ struct lambda1405analysis { constructCollCandidates(sigmaCand, tracksPerCol, selectedCandidates); LOG(info) << "Selected " << selectedCandidates.size() << " Lambda(1405) candidates in this collision"; for (const auto& lambda1405Cand : selectedCandidates) { - rLambda1405.fill(HIST("hRecoL1405"), 0., lambda1405Cand.pt()); // All reconstructed + rLambda1405.fill(HIST("hRecoL1405"), 0., lambda1405Cand.pt()); // All reconstructed // Do MC association auto mcLabPiKink = trackLabelsMC.rawIteratorAt(lambda1405Cand.kinkDauId); @@ -912,7 +916,7 @@ struct lambda1405analysis { if (!mcLabSigma.has_mcParticle() || !mcLabPiKink.has_mcParticle() || !mcLabPi.has_mcParticle()) { continue; // Skip if no valid MC association } - rLambda1405.fill(HIST("hRecoL1405"), 1., lambda1405Cand.pt()); // All with associated MC particle + rLambda1405.fill(HIST("hRecoL1405"), 1., lambda1405Cand.pt()); // All with associated MC particle auto mcTrackKink = mcLabPiKink.mcParticle_as(); auto mcTrackSigma = mcLabSigma.mcParticle_as(); @@ -925,17 +929,17 @@ struct lambda1405analysis { if (!isSigmaMinusKink && !isSigmaPlusToPiKink && !isSigmaPlusToPrKink) { continue; // Skip if not a valid Sigma kink decay } - rLambda1405.fill(HIST("hRecoL1405"), 2., lambda1405Cand.pt()); // Has kink decay in MC + rLambda1405.fill(HIST("hRecoL1405"), 2., lambda1405Cand.pt()); // Has kink decay in MC if (std::abs(mcTrackPi.pdgCode()) != 211) { continue; // Skip if not a valid pion candidate } - rLambda1405.fill(HIST("hRecoL1405"), 3., lambda1405Cand.pt()); // Has bach pi + rLambda1405.fill(HIST("hRecoL1405"), 3., lambda1405Cand.pt()); // Has bach pi if (!mcTrackSigma.has_mothers() || !mcTrackPi.has_mothers()) { continue; // Skip if no mothers found } - rLambda1405.fill(HIST("hRecoL1405"), 4., lambda1405Cand.pt()); // Has mothers for Sigma and Pi + rLambda1405.fill(HIST("hRecoL1405"), 4., lambda1405Cand.pt()); // Has mothers for Sigma and Pi // check that labpi and labsigma have the same mother (a lambda1405 candidate) int lambda1405Id = -1; @@ -950,7 +954,7 @@ struct lambda1405analysis { if (lambda1405Id == -1) { continue; // Skip if the Sigma and pion do not share the same lambda1405 candidate } - rLambda1405.fill(HIST("hRecoL1405"), 4., lambda1405Cand.pt()); // Has same mother + rLambda1405.fill(HIST("hRecoL1405"), 4., lambda1405Cand.pt()); // Has same mother auto lambda1405Mother = particlesMC.rawIteratorAt(lambda1405Id); float lambda1405Mass = std::sqrt(lambda1405Mother.e() * lambda1405Mother.e() - lambda1405Mother.p() * lambda1405Mother.p()); @@ -998,7 +1002,7 @@ struct lambda1405analysis { auto sigmaKinkDaug = particlesMC.rawIteratorAt(idxsSigmaKinkBachPi[2]); // Generated Armenteros-Podolanski variables float genSigmaAlphaAP = alphaAP({sigmaDaug.px(), sigmaDaug.py(), sigmaDaug.pz()}, {sigmaKinkDaug.px(), sigmaKinkDaug.py(), sigmaKinkDaug.pz()}); - float genSigmaQtAP = qtAP({sigmaDaug.px(), sigmaDaug.py(), sigmaDaug.pz()}, {sigmaKinkDaug.px(), sigmaKinkDaug.py(), sigmaKinkDaug.pz()}); + float genSigmaQtAP = qtAP({sigmaDaug.px(), sigmaDaug.py(), sigmaDaug.pz()}, {sigmaKinkDaug.px(), sigmaKinkDaug.py(), sigmaKinkDaug.pz()}); if (decayChannel == kSigmaMinusPiToPiPiNeutron) { rLambda1405.fill(HIST("h2GenSigmaMinusArmPod"), genSigmaAlphaAP, genSigmaQtAP); rLambda1405.fill(HIST("h2GenPtVsBachPtSigmaMinusPiToPiPiNeutron"), mcPart.pt(), bachPi.pt());