@@ -111,7 +111,8 @@ struct lnnCandidate {
111111 float mass2TrTOF = -10 .f;
112112 float DCAPvto3H = -10 .f;
113113 float DCAPvtoPi = -10 .f;
114- float beta = 10 .f;
114+ float beta = -10 .f;
115+ float tpcChi3H = -10 .f;
115116 std::array<float , 3 > mom3H;
116117 std::array<float , 3 > momPi;
117118 std::array<float , 3 > decVtx;
@@ -142,7 +143,8 @@ struct lnnRecoTask {
142143 Configurable<double > v0cospa{" lnncospa" , 0.95 , " V0 CosPA" };
143144 Configurable<float > masswidth{" lnnmasswidth" , 0.1 , " Mass width (GeV/c^2)" };
144145 Configurable<float > dcav0dau{" lnndcaDau" , 0.6 , " DCA V0 Daughters" };
145- Configurable<float > Chi2nClusTPC{" Chi2NClusTPC" , 4 ., " Chi2 / nClusTPC for triton track" };
146+ Configurable<float > Chi2nClusTPCMax{" Chi2NClusTPCMax" , 4 , " Chi2 / nClusTPC for triton track max" };
147+ Configurable<float > Chi2nClusTPCMin{" Chi2NClusTPC" , 0.5 , " Chi2 / nClusTPC for triton track min" };
146148 Configurable<float > Chi2nClusITS{" Chi2NClusITS" , 36 ., " Chi2 / nClusITS for triton track" };
147149 Configurable<float > ptMin{" ptMin" , 0.5 , " Minimum pT of the lnncandidate" };
148150 Configurable<float > etaMax{" eta" , 0.8 , " eta daughter" };
@@ -364,11 +366,13 @@ struct lnnRecoTask {
364366
365367 if (h3Rigidity < TPCRigidityMin3H ||
366368 h3track.tpcNClsFound () < nTPCClusMin3H ||
367- h3track.tpcChi2NCl () > Chi2nClusTPC ||
369+ h3track.tpcChi2NCl () < Chi2nClusTPCMin ||
370+ h3track.tpcChi2NCl () > Chi2nClusTPCMax ||
368371 h3track.itsChi2NCl () > Chi2nClusITS) {
369372 continue ;
370373 }
371374
375+ lnnCand.tpcChi3H = lnnCand.isMatter ? h3track.tpcChi2NCl () : negTrack.tpcChi2NCl ();
372376 lnnCand.nSigma3H = lnnCand.isMatter ? nSigmaTPCpos : nSigmaTPCneg;
373377 lnnCand.nTPCClusters3H = lnnCand.isMatter ? h3track.tpcNClsFound () : negTrack.tpcNClsFound ();
374378 lnnCand.tpcSignal3H = lnnCand.isMatter ? h3track.tpcSignal () : negTrack.tpcSignal ();
@@ -501,6 +505,7 @@ struct lnnRecoTask {
501505 if (mcLabPos.has_mcParticle () && mcLabNeg.has_mcParticle ()) {
502506 auto mcTrackPos = mcLabPos.mcParticle_as <aod::McParticles>();
503507 auto mcTrackNeg = mcLabNeg.mcParticle_as <aod::McParticles>();
508+
504509 if (mcTrackPos.has_mothers () && mcTrackNeg.has_mothers ()) {
505510 for (auto & negMother : mcTrackNeg.mothers_as <aod::McParticles>()) {
506511 for (auto & posMother : mcTrackPos.mothers_as <aod::McParticles>()) {
@@ -569,7 +574,7 @@ struct lnnRecoTask {
569574 lnnCand.dcaV0dau , lnnCand.h3DCAXY , lnnCand.piDCAXY ,
570575 lnnCand.nSigma3H , lnnCand.nTPCClusters3H , lnnCand.nTPCClustersPi ,
571576 lnnCand.mom3HTPC , lnnCand.momPiTPC , lnnCand.tpcSignal3H , lnnCand.tpcSignalPi ,
572- lnnCand.mass2TrTOF ,
577+ lnnCand.mass2TrTOF , lnnCand. tpcChi3H ,
573578 lnnCand.clusterSizeITS3H , lnnCand.clusterSizeITSPi , lnnCand.flags );
574579 }
575580 }
@@ -626,7 +631,7 @@ struct lnnRecoTask {
626631 lnnCand.dcaV0dau , lnnCand.h3DCAXY , lnnCand.piDCAXY ,
627632 lnnCand.nSigma3H , lnnCand.nTPCClusters3H , lnnCand.nTPCClustersPi ,
628633 lnnCand.mom3HTPC , lnnCand.momPiTPC , lnnCand.tpcSignal3H , lnnCand.tpcSignalPi ,
629- lnnCand.mass2TrTOF ,
634+ lnnCand.mass2TrTOF , lnnCand. tpcChi3H ,
630635 lnnCand.clusterSizeITS3H , lnnCand.clusterSizeITSPi , lnnCand.flags ,
631636 chargeFactor * lnnCand.genPt (), lnnCand.genPhi (), lnnCand.genEta (), lnnCand.genPt3H (),
632637 lnnCand.gDecVtx [0 ], lnnCand.gDecVtx [1 ], lnnCand.gDecVtx [2 ], lnnCand.isReco , lnnCand.isSignal , lnnCand.survEvSelection );
@@ -696,7 +701,7 @@ struct lnnRecoTask {
696701 -1 , -1 , -1 ,
697702 -1 , -1 , -1 ,
698703 -1 , -1 , -1 , -1 ,
699- -1 ,
704+ -1 , - 1 ,
700705 -1 , -1 , -1 ,
701706 chargeFactor * lnnCand.genPt (), lnnCand.genPhi (), lnnCand.genEta (), lnnCand.genPt3H (),
702707 lnnCand.gDecVtx [0 ], lnnCand.gDecVtx [1 ], lnnCand.gDecVtx [2 ], lnnCand.isReco , lnnCand.isSignal , lnnCand.survEvSelection );
0 commit comments