@@ -101,12 +101,8 @@ DECLARE_SOA_TABLE(HfCandCd, "AOD", "HFCANDCD",
101101 full::DecayLength,
102102 full::Cpa,
103103 full::NSigmaTpcDe,
104- full::NSigmaTpcKa,
105- full::NSigmaTpcPi,
106104 full::NSigmaItsDe,
107105 full::NSigmaTofDe,
108- full::NSigmaTofKa,
109- full::NSigmaTofPi,
110106 full::NItsClusters,
111107 full::NItsNClusterSize,
112108 full::NTpcClusters,
@@ -209,12 +205,15 @@ struct HfTaskCd {
209205 registry.add (" Data/hImpParErrProng0" , " 3-prong candidates;prong 0 impact parameter error (cm);entries" , {HistType::kTH2F , {{100 , -1 ., 1 .}, {binsPt, " #it{p}_{T} (GeV/#it{c})" }}});
210206 registry.add (" Data/hImpParErrProng1" , " 3-prong candidates;prong 1 impact parameter error (cm);entries" , {HistType::kTH2F , {{100 , -1 ., 1 .}, {binsPt, " #it{p}_{T} (GeV/#it{c})" }}});
211207 registry.add (" Data/hImpParErrProng2" , " 3-prong candidates;prong 2 impact parameter error (cm);entries" , {HistType::kTH2F , {{100 , -1 ., 1 .}, {binsPt, " #it{p}_{T} (GeV/#it{c})" }}});
212- registry.add (" Data/hNsigmaTPCDeVsP" , " deuteron;n#sigma^{TPC}_{d};#it{p} (GeV/#it{c})" , {HistType::kTH2F , {{200 , -10 .f , 10 .f }, {200 , -6 .f , 6 .f }}});
213- registry.add (" Data/hNsigmaTOFDeVsP" , " deuteron;n#sigma^{TOF}_{d};#it{p} (GeV/#it{c})" , {HistType::kTH2F , {{200 , -10 .f , 10 .f }, {200 , -6 .f , 6 .f }}});
214- registry.add (" Data/hNsigmaITSDeVsP" , " deuteron;n#sigma^{ITS}_{d};#it{p} (GeV/#it{c})" , {HistType::kTH2F , {{200 , -10 .f , 10 .f }, {200 , -6 .f , 6 .f }}});
215- registry.add (" Data/hTPCSignalDeVsP" , " deuteron;n#sigma^{ITS}_{d};#it{p} (GeV/#it{c})" , {HistType::kTH2F , {{200 , -10 .f , 10 .f }, {2000 , 0 , 2000 }}});
216- registry.add (" Data/hITSSignalDeVsP" , " deuteron;n#sigma^{ITS}_{d};#it{p} (GeV/#it{c})" , {HistType::kTH2F , {{200 , -10 .f , 10 .f }, {20 , 0 , 20 }}});
217-
208+ registry.add (" Data/hNsigmaTPCDeVsP" , " deuteron;#it{p} (GeV/#it{c}); n#sigma^{TPC}_{d}" , {HistType::kTH2F , {{200 , -10 .f , 10 .f }, {200 , -6 .f , 6 .f }}});
209+ registry.add (" Data/hNsigmaTOFDeVsP" , " deuteron;#it{p} (GeV/#it{c}); n#sigma^{TOF}_{d}" , {HistType::kTH2F , {{200 , -10 .f , 10 .f }, {200 , -6 .f , 6 .f }}});
210+ registry.add (" Data/hNsigmaITSDeVsP" , " deuteron;#it{p} (GeV/#it{c}); n#sigma^{ITS}_{d}" , {HistType::kTH2F , {{200 , -10 .f , 10 .f }, {200 , -6 .f , 6 .f }}});
211+ registry.add (" Data/hTPCSignalDeVsP" , " deuteron;#it{p} (GeV/#it{c}); n#sigma^{ITS}_{d}" , {HistType::kTH2F , {{200 , -10 .f , 10 .f }, {2000 , 0 , 2000 }}});
212+ registry.add (" Data/hITSSignalDeVsP" , " deuteron;#it{p} (GeV/#it{c}); n#sigma^{ITS}_{d}" , {HistType::kTH2F , {{200 , -10 .f , 10 .f }, {20 , 0 , 20 }}});
213+ registry.add (" Data/hNsigmaTPCPiVsP" , " Pion;#it{p} (GeV/#it{c});n#sigma^{TPC}_{pi};" , {HistType::kTH2F , {{200 , -10 .f , 10 .f }, {200 , -6 .f , 6 .f }}});
214+ registry.add (" Data/hNsigmaTOFPiVsP" , " Pion;#it{p} (GeV/#it{c});n#sigma^{TOF}_{pi};" , {HistType::kTH2F , {{200 , -10 .f , 10 .f }, {200 , -6 .f , 6 .f }}});
215+ registry.add (" Data/hNsigmaTPCKaVsP" , " Kaon;#it{p} (GeV/#it{c}); n#sigma^{TPC}_{Kaon}" , {HistType::kTH2F , {{200 , -10 .f , 10 .f }, {200 , -6 .f , 6 .f }}});
216+ registry.add (" Data/hNsigmaTOFKaVsP" , " Kaon;#it{p} (GeV/#it{c}); n#sigma^{TOF}_{Kaon}" , {HistType::kTH2F , {{200 , -10 .f , 10 .f }, {200 , -6 .f , 6 .f }}});
218217 if (fillTHn) {
219218 const AxisSpec thnAxisMass{thnConfigAxisMass, " inv. mass (de K #pi) (GeV/#it{c}^{2})" };
220219 const AxisSpec thnAxisPt{thnConfigAxisPt, " #it{p}_{T}(C_{d}^{+}) (GeV/#it{c})" };
@@ -351,54 +350,59 @@ struct HfTaskCd {
351350 float tpcSignalsDe = 0 .f ;
352351 float itsSignalsDe = 0 .f ;
353352
353+ float pSignedDe = -999 .f ;
354+ float pSignedPi = -999 .f ;
355+
354356 nSigmaTpcKa = candidate.nSigTpcKa1 ();
355357 nSigmaTofKa = candidate.nSigTofKa1 ();
356358
357359 const bool selDeKPi = (candidate.isSelCdToDeKPi () >= 1 );
358360 const bool selPiKDe = (candidate.isSelCdToPiKDe () >= 1 );
359361
360- TrackType trackDe{};
361- bool hasDe = false ;
362+ auto prong0 = candidate.template prong0_as <TrackType>();
363+ auto prong1 = candidate.template prong1_as <TrackType>();
364+ auto prong2 = candidate.template prong2_as <TrackType>();
362365
363366 if (selDeKPi) {
364- auto trk0 = candidate.template prong0_as <TrackType>();
365- trackDe = trk0;
366- hasDe = true ;
367-
368367 candFlag = 1 ;
368+ pSignedDe = prong0.p () * prong0.sign ();
369+ pSignedPi = prong2.p () * prong2.sign ();
369370 nSigmaTpcDe = candidate.nSigTpcDe0 ();
370371 nSigmaTofDe = candidate.nSigTofDe0 ();
371372 nSigmaTpcPi = candidate.nSigTpcPi2 ();
372373 nSigmaTofPi = candidate.nSigTofPi2 ();
374+ nSigmaItsDe = prong0.itsNSigmaDe ();
375+ itsNClusterDe = prong0.itsNCls ();
376+ itsNClusterSizeDe = prong0.itsClusterSizes ();
377+ tpcNClusterDe = prong0.tpcNClsCrossedRows ();
378+ tpcSignalsDe = prong0.tpcSignal ();
379+ itsSignalsDe = itsSignal (prong0);
373380 } else if (selPiKDe) {
374- auto trk2 = candidate.template prong2_as <TrackType>();
375- trackDe = trk2;
376- hasDe = true ;
377-
378381 candFlag = -1 ;
382+ pSignedDe = prong2.p () * prong2.sign ();
383+ pSignedPi = prong0.p () * prong0.sign ();
379384 nSigmaTpcDe = candidate.nSigTpcDe2 ();
380385 nSigmaTofDe = candidate.nSigTofDe2 ();
381386 nSigmaTpcPi = candidate.nSigTpcPi0 ();
382387 nSigmaTofPi = candidate.nSigTofPi0 ();
388+ nSigmaItsDe = prong2.itsNSigmaDe ();
389+ itsNClusterDe = prong2.itsNCls ();
390+ itsNClusterSizeDe = prong2.itsClusterSizes ();
391+ tpcNClusterDe = prong2.tpcNClsCrossedRows ();
392+ tpcSignalsDe = prong2.tpcSignal ();
393+ itsSignalsDe = itsSignal (prong2);
383394 }
384395
385- if (hasDe) {
386- const float pSigned = trackDe.p () * trackDe.sign ();
387-
388- nSigmaItsDe = trackDe.itsNSigmaDe ();
389- itsNClusterDe = trackDe.itsNCls ();
390- itsNClusterSizeDe = trackDe.itsClusterSizes ();
391- tpcNClusterDe = trackDe.tpcNClsCrossedRows ();
392- tpcSignalsDe = trackDe.tpcSignal ();
393- itsSignalsDe = itsSignal (trackDe);
394-
395- // De PID QA
396- registry.fill (HIST (" Data/hNsigmaTPCDeVsP" ), pSigned, nSigmaTpcDe);
397- registry.fill (HIST (" Data/hNsigmaTOFDeVsP" ), pSigned, nSigmaTofDe);
398- registry.fill (HIST (" Data/hNsigmaITSDeVsP" ), pSigned, nSigmaItsDe);
399- registry.fill (HIST (" Data/hTPCSignalDeVsP" ), pSigned, tpcSignalsDe);
400- registry.fill (HIST (" Data/hITSSignalDeVsP" ), pSigned, itsSignalsDe);
401- }
396+ // PID QA
397+ registry.fill (HIST (" Data/hNsigmaTPCDeVsP" ), pSignedDe, nSigmaTpcDe);
398+ registry.fill (HIST (" Data/hNsigmaTOFDeVsP" ), pSignedDe, nSigmaTofDe);
399+ registry.fill (HIST (" Data/hNsigmaITSDeVsP" ), pSignedDe, nSigmaItsDe);
400+ registry.fill (HIST (" Data/hTPCSignalDeVsP" ), pSignedDe, tpcSignalsDe);
401+ registry.fill (HIST (" Data/hITSSignalDeVsP" ), pSignedDe, itsSignalsDe);
402+ registry.fill (HIST (" Data/hNsigmaTPCPiVsP" ), pSignedPi, nSigmaTpcPi);
403+ registry.fill (HIST (" Data/hNsigmaTOFPiVsP" ), pSignedPi, nSigmaTofPi);
404+ registry.fill (HIST (" Data/hNsigmaTPCKaVsP" ), prong1.p () * prong1.sign (), nSigmaTpcKa);
405+ registry.fill (HIST (" Data/hNsigmaTOFKaVsP" ), prong1.p () * prong1.sign (), nSigmaTofKa);
402406
403407 rowCandCd (
404408 invMassCd,
@@ -412,12 +416,8 @@ struct HfTaskCd {
412416 decayLength,
413417 cpa,
414418 nSigmaTpcDe,
415- nSigmaTpcKa,
416- nSigmaTpcPi,
417419 nSigmaItsDe,
418420 nSigmaTofDe,
419- nSigmaTofKa,
420- nSigmaTofPi,
421421 itsNClusterDe,
422422 itsNClusterSizeDe,
423423 tpcNClusterDe,
0 commit comments