@@ -429,6 +429,153 @@ struct LfTreeCreatorClusterStudies {
429429 return true ;
430430 }
431431
432+ uint8_t selectV0MotherHypothesis (float massK0sV0, float massLambdaV0, float massAntiLambdaV0, float alphaAP, const o2::aod::V0& v0)
433+ {
434+ uint8_t v0Bitmask (0 );
435+ if (v0.isPhotonV0 ()) {
436+ SETBIT (v0Bitmask, Photon);
437+ }
438+ if (std::abs (massK0sV0 - o2::constants::physics::MassK0Short) < v0setting_massWindowK0s) {
439+ SETBIT (v0Bitmask, K0s);
440+ }
441+ if ((std::abs (massLambdaV0 - o2::constants::physics::MassLambda0) < v0setting_massWindowLambda) && (alphaAP > 0 )) {
442+ SETBIT (v0Bitmask, Lambda);
443+ }
444+ if ((std::abs (massAntiLambdaV0 - o2::constants::physics::MassLambda0) < v0setting_massWindowLambda) && (alphaAP < 0 )) {
445+ SETBIT (v0Bitmask, AntiLambda);
446+ }
447+
448+ }
449+
450+ bool selectPidV0Daughters (Candidate & candidatePos, Candidate& candidateNeg, const o2::aod::Track& posTrack,
451+ const o2::aod::Track& negTrack, const std::array<float , 3 >& momMother, float qtAP, uint8_t v0Bitmask)
452+ {
453+ if (TESTBIT (v0Bitmask, Lambda)) {
454+ if (qtAP < lambdasetting_qtAPcut)
455+ return false ;
456+ if (std::abs (posTrack.tpcNSigmaPr ()) > v0setting_nsigmatpcPr || std::abs (negTrack.tpcNSigmaPi ()) > v0setting_nsigmatpcPi)
457+ return false ;
458+ if (std::hypot (momMother[0 ], momMother[1 ], momMother[2 ]) < lambdasetting_pmin)
459+ return false ;
460+ candidatePos.partID = PartID::pr;
461+ candidateNeg.partID = PartID::pi;
462+ candidatePos.tpcNSigma = posTrack.tpcNSigmaPr ();
463+ candidateNeg.tpcNSigma = negTrack.tpcNSigmaPi ();
464+ m_hAnalysis.fill (HIST (" v0_type" ), V0Type::Lambda);
465+
466+ } else if (TESTBIT (v0Bitmask, AntiLambda)) {
467+ if (qtAP < lambdasetting_qtAPcut)
468+ return ;
469+ if (std::abs (posTrack.tpcNSigmaPi ()) > v0setting_nsigmatpcPr || std::abs (negTrack.tpcNSigmaPr ()) > v0setting_nsigmatpcPi)
470+ return false ;
471+ if (std::hypot (momMother[0 ], momMother[1 ], momMother[2 ]) < lambdasetting_pmin)
472+ return false ;
473+ candidatePos.partID = PartID::pi;
474+ candidateNeg.partID = PartID::pr;
475+ candidatePos.tpcNSigma = posTrack.tpcNSigmaPi ();
476+ candidateNeg.tpcNSigma = negTrack.tpcNSigmaPr ();
477+ m_hAnalysis.fill (HIST (" v0_type" ), V0Type::AntiLambda);
478+
479+ } else if (TESTBIT (v0Bitmask, K0s)) {
480+ m_hAnalysis.fill (HIST (" v0_type" ), V0Type::K0s);
481+ return false ; // K0s not implemented
482+
483+ } else if (TESTBIT (v0Bitmask, Photon)) {
484+ // require photon conversion to happen in one of the Inner Tracker layers (± 0.5 cm resolution)
485+ m_hAnalysis.fill (HIST (" photon_conversion_position" ), decayVtx[0 ], decayVtx[1 ]);
486+ m_hAnalysis.fill (HIST (" photon_radiusV0" ), radiusV0);
487+ if (!(radiusV0 > 1.76 && radiusV0 < 4.71 ))
488+ return false ;
489+ if (std::abs (posTrack.tpcNSigmaEl ()) > v0setting_nsigmatpcEl || std::abs (negTrack.tpcNSigmaEl ()) > v0setting_nsigmatpcEl)
490+ return false ;
491+ m_hAnalysis.fill (HIST (" photon_conversion_position_layer" ), decayVtx[0 ], decayVtx[1 ]);
492+ candidatePos.partID = PartID::el;
493+ candidateNeg.partID = PartID::el;
494+ candidatePos.tpcNSigma = posTrack.tpcNSigmaEl ();
495+ candidateNeg.tpcNSigma = negTrack.tpcNSigmaEl ();
496+ m_hAnalysis.fill (HIST (" v0_type" ), V0Type::Photon);
497+
498+ } else {
499+ return false ;
500+ }
501+
502+ return true ;
503+ }
504+
505+ /* *
506+ * Fill the histograms for the V0 candidate and return the mass of the V0
507+ */
508+ float fillHistogramsV0 (float massLambdaV0, float massAntiLambdaV0,
509+ const std::array<float , 3 >& momMother, const std::array<float , 3 >& momPos, const std::array<float , 3 >& momNeg,
510+ const Candidate& candidatePos, const Candidate& candidateNeg, float alphaAP, float qtAP, float radiusV0, uint8_t v0Bitmask)
511+ {
512+ float massV0{0 .f };
513+ m_hAnalysis.fill (HIST (" v0_selections" ), V0Selections::kV0DaughterDCAtoPV );
514+ if (TESTBIT (v0Bitmask, Lambda)) {
515+ massV0 = massLambdaV0;
516+ m_hAnalysis.fill (HIST (" massLambda" ), std::hypot (momMother[0 ], momMother[1 ], momMother[2 ]), massLambdaV0);
517+ m_hAnalysis.fill (HIST (" armenteros_plot_lambda" ), alphaAP, qtAP);
518+ m_hAnalysis.fill (HIST (" nSigmaTPCPr" ), candidatePos.p , candidatePos.nsigmaTPC );
519+ m_hAnalysis.fill (HIST (" nSigmaITSPr" ), candidatePos.p , m_responseITS.nSigmaITS <o2::track::PID::Proton>(candidatePos.itsClusterSize , candidatePos.p , candidatePos.eta ));
520+ m_hAnalysis.fill (HIST (" nSigmaTPCPi" ), candidateNeg.p , candidateNeg.nsigmaTPC );
521+ m_hAnalysis.fill (HIST (" nSigmaITSPi" ), candidateNeg.p , m_responseITS.nSigmaITS <o2::track::PID::Pion>(candidateNeg.itsClusterSize , candidateNeg.p , candidateNeg.eta ));
522+ m_hAnalysis.fill (HIST (" pmatchingPr" ), candidatePos.pTPC , (candidatePos.pTPC - candidatePos.p ) / candidatePos.pTPC );
523+ m_hAnalysis.fill (HIST (" pmatchingPi" ), -candidateNeg.pTPC , (candidateNeg.pTPC - candidateNeg.p ) / candidateNeg.pTPC );
524+
525+ } else if (TESTBIT (v0Bitmask, AntiLambda)) {
526+ massV0 = massAntiLambdaV0;
527+ m_hAnalysis.fill (HIST (" massLambda" ), std::hypot (momMother[0 ], momMother[1 ], momMother[2 ]) * -1 .f , massAntiLambdaV0);
528+ // "signed" pt for antimatter
529+ m_hAnalysis.fill (HIST (" armenteros_plot_lambda" ), alphaAP, qtAP);
530+ m_hAnalysis.fill (HIST (" nSigmaTPCPi" ), candidatePos.p , candidatePos.nsigmaTPC );
531+ m_hAnalysis.fill (HIST (" nSigmaITSPi" ), candidatePos.p , m_responseITS.nSigmaITS <o2::track::PID::Pion>(candidatePos.itsClusterSize , candidatePos.p , candidatePos.eta ));
532+ m_hAnalysis.fill (HIST (" nSigmaTPCPr" ), candidateNeg.p , candidateNeg.nsigmaTPC );
533+ m_hAnalysis.fill (HIST (" nSigmaITSPr" ), candidateNeg.p , m_responseITS.nSigmaITS <o2::track::PID::Proton>(candidateNeg.itsClusterSize , candidateNeg.p , negTrack.eta ));
534+ m_hAnalysis.fill (HIST (" pmatchingPi" ), candidatePos.pTPC , (candidatePos.pTPC - candidatePos.p ) / candidatePos.pTPC );
535+ m_hAnalysis.fill (HIST (" pmatchingPr" ), -candidateNeg.pTPC , (candidateNeg.pTPC - candidateNeg.p ) / candidateNeg.pTPC );
536+
537+ } else if (TESTBIT (v0Bitmask, Photon)) {
538+ massV0 = 0 .f ;
539+ m_hAnalysis.fill (HIST (" nSigmaTPCEl" ), candidatePos.p , candidatePos.nsigmaTPC );
540+ m_hAnalysis.fill (HIST (" nSigmaTPCEl" ), candidateNeg.p , candidateNeg.nsigmaTPC );
541+ m_hAnalysis.fill (HIST (" nSigmaITSEl" ), candidatePos.p , m_responseITS.nSigmaITS <o2::track::PID::Electron>(candidatePos.itsClusterSize , candidatePos.p , candidatePos.eta ));
542+ m_hAnalysis.fill (HIST (" nSigmaITSEl" ), candidateNeg.p , m_responseITS.nSigmaITS <o2::track::PID::Electron>(candidateNeg.itsClusterSize , candidateNeg.p , candidateNeg.eta ));
543+ m_hAnalysis.fill (HIST (" armenteros_plot_gamma" ), alphaAP, qtAP);
544+ m_hAnalysis.fill (HIST (" pmatchingEl" ), candidatePos.pTPC , (candidatePos.pTPC - candidatePos.p ) / candidatePos.pTPC );
545+ m_hAnalysis.fill (HIST (" pmatchingEl" ), -candidateNeg.pTPC , (candidateNeg.pTPC - candidateNeg.p ) / candidateNeg.pTPC );
546+ }
547+ m_hAnalysis.fill (HIST (" radiusV0" ), radiusV0);
548+ m_hAnalysis.fill (HIST (" armenteros_plot" ), alphaAP, qtAP);
549+
550+ return massV0;
551+ }
552+
553+ template <bool isMC = false >
554+ void fillTable (const Candidate& candidate)
555+ {
556+ m_ClusterStudiesTable (
557+ candidate.p , // p
558+ candidate.eta , // eta
559+ candidate.phi , // phi
560+ candidate.itsClusterSize , // itsClsize
561+ static_cast <uint8_t >(candidate.partID )); // partID
562+ if (!setting_smallTable) {
563+ m_ClusterStudiesTableExtra (
564+ candidate.pTPC , // pTPC
565+ candidate.pidInTrk , // pidInTrk
566+ candidate.tpcNSigma , // TpcNSigma
567+ candidate.tofNSigma , // TofNSigma
568+ candidate.tofMass , // TofMass
569+ candidate.cosPAMother , // cosPA
570+ candidate.massMother ); // massMother
571+ }
572+
573+ if constexpr (isMC) {
574+ m_ClusterStudiesTableMc (
575+ candidate.pdgCode ); // pdgCod
576+ }
577+ }
578+
432579 // =========================================================================================================
433580
434581 template <typename T>
@@ -637,61 +784,22 @@ struct LfTreeCreatorClusterStudies {
637784 m_hAnalysis.fill (HIST (" Lambda_vs_K0s" ), massK0sV0, massLambdaV0);
638785 // float massPhotonV0 = computeMassMother(o2::constants::physics::MassElectron, o2::constants::physics::MassElectron, momPos, momNeg, momMother);
639786
640- uint8_t v0Bitmask (0 );
641- if (v0.isPhotonV0 ()) {
642- SETBIT (v0Bitmask, Photon);
643- }
644- if (std::abs (massK0sV0 - o2::constants::physics::MassK0Short) < v0setting_massWindowK0s) {
645- SETBIT (v0Bitmask, K0s);
646- }
647- if ((std::abs (massLambdaV0 - o2::constants::physics::MassLambda0) < v0setting_massWindowLambda) && (alphaAP > 0 )) {
648- SETBIT (v0Bitmask, Lambda);
649- }
650- if ((std::abs (massAntiLambdaV0 - o2::constants::physics::MassLambda0) < v0setting_massWindowLambda) && (alphaAP < 0 )) {
651- SETBIT (v0Bitmask, AntiLambda);
652- }
787+ uint8_t v0Bitmask = selectV0MotherHypothesis (massK0sV0, massLambdaV0, massAntiLambdaV0, alphaAP, v0);
653788 if (v0Bitmask == 0 || (v0Bitmask & (v0Bitmask - 1 )) != 0 ) {
654789 return ;
655790 }
656791 m_hAnalysis.fill (HIST (" v0_selections" ), V0Selections::kV0PID );
657792
658- uint8_t partID_pos{0 }, partID_neg{0 };
659- if (TESTBIT (v0Bitmask, Lambda)) {
660- if (qtAP < lambdasetting_qtAPcut)
661- return ;
662- if (std::abs (posTrack.tpcNSigmaPr ()) > v0setting_nsigmatpcPr || std::abs (negTrack.tpcNSigmaPi ()) > v0setting_nsigmatpcPi)
663- return ;
664- if (std::hypot (momMother[0 ], momMother[1 ], momMother[2 ]) < lambdasetting_pmin)
665- return ;
666- partID_pos = PartID::pr;
667- partID_neg = PartID::pi;
668- m_hAnalysis.fill (HIST (" v0_type" ), V0Type::Lambda);
669- } else if (TESTBIT (v0Bitmask, AntiLambda)) {
670- if (qtAP < lambdasetting_qtAPcut)
671- return ;
672- if (std::abs (posTrack.tpcNSigmaPi ()) > v0setting_nsigmatpcPr || std::abs (negTrack.tpcNSigmaPr ()) > v0setting_nsigmatpcPi)
673- return ;
674- if (std::hypot (momMother[0 ], momMother[1 ], momMother[2 ]) < lambdasetting_pmin)
675- return ;
676- partID_pos = PartID::pi;
677- partID_neg = PartID::pr;
678- m_hAnalysis.fill (HIST (" v0_type" ), V0Type::AntiLambda);
679- } else if (TESTBIT (v0Bitmask, K0s)) {
680- m_hAnalysis.fill (HIST (" v0_type" ), V0Type::K0s);
681- return ; // K0s not implemented
682- } else if (TESTBIT (v0Bitmask, Photon)) {
683- // require photon conversion to happen in one of the Inner Tracker layers (± 0.5 cm resolution)
684- m_hAnalysis.fill (HIST (" photon_conversion_position" ), decayVtx[0 ], decayVtx[1 ]);
685- m_hAnalysis.fill (HIST (" photon_radiusV0" ), radiusV0);
686- if (!(radiusV0 > 1.76 && radiusV0 < 4.71 ))
687- return ;
688- if (std::abs (posTrack.tpcNSigmaEl ()) > v0setting_nsigmatpcEl || std::abs (negTrack.tpcNSigmaEl ()) > v0setting_nsigmatpcEl)
689- return ;
690- m_hAnalysis.fill (HIST (" photon_conversion_position_layer" ), decayVtx[0 ], decayVtx[1 ]);
691- partID_pos = PartID::el;
692- partID_neg = PartID::el;
693- m_hAnalysis.fill (HIST (" v0_type" ), V0Type::Photon);
694- } else {
793+ Candidate candidatePos (std::hypot (momPos[0 ], momPos[1 ], momPos[2 ]) * posTrack.sign (),
794+ RecoDecay::eta (momPos), RecoDecay::phi (momPos), posTrack.itsClusterSizes (),
795+ 0 , posTrack.tpcInnerParam () * posTrack.sign (), posTrack.pidForTracking (),
796+ -999 .f , -999 .f , -999 .f , cosPA, -999 .f , 0 );
797+ Candidate candidateNeg (std::hypot (momNeg[0 ], momNeg[1 ], momNeg[2 ]) * negTrack.sign (),
798+ RecoDecay::eta (momNeg), RecoDecay::phi (momNeg), negTrack.itsClusterSizes (),
799+ 0 , negTrack.tpcInnerParam () * negTrack.sign (), negTrack.pidForTracking (),
800+ -999 .f , -999 .f , -999 .f , cosPA, -999 .f , 0 );
801+
802+ if (!selectPidV0Daughters (candidatePos, candidateNeg, posTrack, negTrack, momMother, qtAP, v0Bitmask)) {
695803 return ;
696804 }
697805
@@ -704,80 +812,14 @@ struct LfTreeCreatorClusterStudies {
704812 return ;
705813 }
706814
707- float massV0{0 .f };
708- m_hAnalysis.fill (HIST (" v0_selections" ), V0Selections::kV0DaughterDCAtoPV );
709- if (TESTBIT (v0Bitmask, Lambda)) {
710- massV0 = massLambdaV0;
711- m_hAnalysis.fill (HIST (" massLambda" ), std::hypot (momMother[0 ], momMother[1 ], momMother[2 ]), massLambdaV0);
712- m_hAnalysis.fill (HIST (" armenteros_plot_lambda" ), alphaAP, qtAP);
713- m_hAnalysis.fill (HIST (" nSigmaTPCPr" ), std::hypot (momPos[0 ], momPos[1 ], momPos[2 ]), posTrack.tpcNSigmaPr ());
714- m_hAnalysis.fill (HIST (" nSigmaITSPr" ), std::hypot (momPos[0 ], momPos[1 ], momPos[2 ]), m_responseITS.nSigmaITS <o2::track::PID::Proton>(posTrack.itsClusterSizes (), posTrack.p (), posTrack.eta ()));
715- m_hAnalysis.fill (HIST (" nSigmaTPCPi" ), std::hypot (momNeg[0 ], momNeg[1 ], momNeg[2 ]) * -1 .f , negTrack.tpcNSigmaPi ());
716- m_hAnalysis.fill (HIST (" nSigmaITSPi" ), std::hypot (momNeg[0 ], momNeg[1 ], momNeg[2 ]) * -1 .f , m_responseITS.nSigmaITS <o2::track::PID::Pion>(negTrack.itsClusterSizes (), negTrack.p (), negTrack.eta ()));
717- m_hAnalysis.fill (HIST (" pmatchingPr" ), posTrack.tpcInnerParam (), (posTrack.tpcInnerParam () - posTrack.p ()) / posTrack.tpcInnerParam ());
718- m_hAnalysis.fill (HIST (" pmatchingPi" ), -negTrack.tpcInnerParam (), (negTrack.tpcInnerParam () - negTrack.p ()) / negTrack.tpcInnerParam ());
719-
720- } else if (TESTBIT (v0Bitmask, AntiLambda)) {
721- massV0 = massAntiLambdaV0;
722- m_hAnalysis.fill (HIST (" massLambda" ), std::hypot (momMother[0 ], momMother[1 ], momMother[2 ]) * -1 .f , massAntiLambdaV0);
723- // "signed" pt for antimatter
724- m_hAnalysis.fill (HIST (" armenteros_plot_lambda" ), alphaAP, qtAP);
725- m_hAnalysis.fill (HIST (" nSigmaTPCPi" ), std::hypot (momPos[0 ], momPos[1 ], momPos[2 ]), posTrack.tpcNSigmaPi ());
726- m_hAnalysis.fill (HIST (" nSigmaITSPi" ), std::hypot (momPos[0 ], momPos[1 ], momPos[2 ]), m_responseITS.nSigmaITS <o2::track::PID::Pion>(posTrack.itsClusterSizes (), posTrack.p (), posTrack.eta ()));
727- m_hAnalysis.fill (HIST (" nSigmaTPCPr" ), std::hypot (momNeg[0 ], momNeg[1 ], momNeg[2 ]) * -1 .f , negTrack.tpcNSigmaPr ());
728- m_hAnalysis.fill (HIST (" nSigmaITSPr" ), std::hypot (momNeg[0 ], momNeg[1 ], momNeg[2 ]) * -1 .f , m_responseITS.nSigmaITS <o2::track::PID::Proton>(negTrack.itsClusterSizes (), negTrack.p (), negTrack.eta ()));
729- m_hAnalysis.fill (HIST (" pmatchingPi" ), posTrack.tpcInnerParam (), (posTrack.tpcInnerParam () - posTrack.p ()) / posTrack.tpcInnerParam ());
730- m_hAnalysis.fill (HIST (" pmatchingPr" ), -negTrack.tpcInnerParam (), (negTrack.tpcInnerParam () - negTrack.p ()) / negTrack.tpcInnerParam ());
731-
732- } else if (TESTBIT (v0Bitmask, Photon)) {
733- massV0 = 0 .f ;
734- m_hAnalysis.fill (HIST (" nSigmaTPCEl" ), std::hypot (momPos[0 ], momPos[1 ], momPos[2 ]), posTrack.tpcNSigmaEl ());
735- m_hAnalysis.fill (HIST (" nSigmaTPCEl" ), std::hypot (momNeg[0 ], momNeg[1 ], momNeg[2 ]) * -1 .f , negTrack.tpcNSigmaEl ());
736- m_hAnalysis.fill (HIST (" nSigmaITSEl" ), std::hypot (momPos[0 ], momPos[1 ], momPos[2 ]), m_responseITS.nSigmaITS <o2::track::PID::Electron>(posTrack.itsClusterSizes (), posTrack.p (), posTrack.eta ()));
737- m_hAnalysis.fill (HIST (" nSigmaITSEl" ), std::hypot (momNeg[0 ], momNeg[1 ], momNeg[2 ]) * -1 .f , m_responseITS.nSigmaITS <o2::track::PID::Electron>(negTrack.itsClusterSizes (), negTrack.p (), negTrack.eta ()));
738- m_hAnalysis.fill (HIST (" armenteros_plot_gamma" ), alphaAP, qtAP);
739- m_hAnalysis.fill (HIST (" pmatchingEl" ), posTrack.tpcInnerParam (), (posTrack.tpcInnerParam () - posTrack.p ()) / posTrack.tpcInnerParam ());
740- m_hAnalysis.fill (HIST (" pmatchingEl" ), -negTrack.tpcInnerParam (), (negTrack.tpcInnerParam () - negTrack.p ()) / negTrack.tpcInnerParam ());
741- }
742- m_hAnalysis.fill (HIST (" radiusV0" ), radiusV0);
743- m_hAnalysis.fill (HIST (" armenteros_plot" ), alphaAP, qtAP);
744- m_v0TrackParCovs.push_back (v0TrackParCov);
815+ float massV0 = fillHistogramsV0 (massLambdaV0, massAntiLambdaV0, momMother, momPos, momNeg, candidatePos, candidateNeg, alphaAP, qtAP, radiusV0, v0Bitmask);
816+ candidatePos.massV0 = massV0;
817+ candidateNeg.massV0 = massV0;
745818
746819 if (!setting_fillV0) {
747820 return ;
748821 }
749822
750- m_ClusterStudiesTable (
751- std::hypot (momPos[0 ], momPos[1 ], momPos[2 ]) * posTrack.sign (), // p_pos
752- RecoDecay::eta (momPos), // eta_pos
753- RecoDecay::phi (momPos), // phi_pos
754- posTrack.itsClusterSizes (), // itsClsize_pos
755- partID_pos); // partID_pos
756- m_ClusterStudiesTable (
757- std::hypot (momNeg[0 ], momNeg[1 ], momNeg[2 ]) * negTrack.sign (), // p_neg
758- RecoDecay::eta (momNeg), // eta_neg
759- RecoDecay::phi (momNeg), // phi_neg
760- negTrack.itsClusterSizes (), // itsClsize_neg
761- partID_neg); // partID_neg
762- if (!setting_smallTable) {
763- m_ClusterStudiesTableExtra (
764- posTrack.tpcInnerParam () * posTrack.sign (), // pTPC_pos
765- posTrack.pidForTracking (), // pidInTrk_pos
766- -999 .f , // TpcNSigma_pos
767- -999 .f , // TofNSigma_pos
768- -999 .f , // TofMass_pos
769- cosPA, // cosPA
770- massV0); // massV0
771- m_ClusterStudiesTableExtra (
772- negTrack.tpcInnerParam () * negTrack.sign (), // pTPC_neg
773- negTrack.pidForTracking (), // pidInTrk_neg
774- -999 .f , // TpcNSigma_neg
775- -999 .f , // TofNSigma_neg
776- -999 .f , // TofMass_neg
777- cosPA, // cosPA
778- massV0); // massV0
779- }
780-
781823 if constexpr (isMC) { // MC
782824 if (!posTrack.has_mcParticle () || !negTrack.has_mcParticle ()) {
783825 return ;
@@ -786,12 +828,13 @@ struct LfTreeCreatorClusterStudies {
786828 auto posMcParticle = posTrack.mcParticle ();
787829 auto negMcParticle = negTrack.mcParticle ();
788830
789- m_ClusterStudiesTableMc (
790- posMcParticle.pdgCode ()); // pdgCode_pos
791- m_ClusterStudiesTableMc (
792- negMcParticle.pdgCode ()); // pdgCode_neg
831+ candidatePos.pdgCode = posMcParticle.pdgCode ();
832+ candidateNeg.pdgCode = negMcParticle.pdgCode ();
793833 }
794834
835+ fillTable<isMC>(candidatePos);
836+ fillTable<isMC>(candidateNeg);
837+
795838 m_hAnalysis.fill (HIST (" isPositive" ), true );
796839 m_hAnalysis.fill (HIST (" isPositive" ), false );
797840 }
0 commit comments