@@ -81,7 +81,6 @@ struct TreeCreatorElectronMLDDA {
8181 {" V0/hMassK0Short" , " V0 mass K0S" , {HistType::kTH1F , {{200 , 0.4 , 0.6 }}}},
8282 {" V0/hMassLambda" , " V0 mass Lambda" , {HistType::kTH1F , {{100 , 1.08 , 1.18 }}}},
8383 {" V0/hMassAntiLambda" , " V0 mass AntiLambda" , {HistType::kTH1F , {{100 , 1.08 , 1.18 }}}},
84- {" hMvsPhiV" , " m_{ee} vs. #varphi_{V};#varphi_{V} (rad.);m_{ee} (GeV/c^{2})" , {HistType::kTH2F , {{90 , 0 , M_PI}, {100 , 0 , 0.1 }}}},
8584
8685 {" V0/hTPCdEdx_P_El" , " TPC dEdx vs. p;p_{in} (GeV/c);TPC dE/dx" , {HistType::kTH2F , {{500 , 0 , 5 }, {200 , 0 , 200 }}}},
8786 {" V0/hTPCdEdx_P_Pi" , " TPC dEdx vs. p;p_{in} (GeV/c);TPC dE/dx" , {HistType::kTH2F , {{500 , 0 , 5 }, {200 , 0 , 200 }}}},
@@ -120,13 +119,11 @@ struct TreeCreatorElectronMLDDA {
120119 Configurable<double > d_bz_input{" d_bz_input" , -999 , " bz field, -999 is automatic" };
121120 Configurable<int > useMatCorrType{" useMatCorrType" , 2 , " 0: none, 1: TGeo, 2: LUT" };
122121
123- Configurable<float > downscaling_electron_primary{" downscaling_electron_primary" , 1.1 , " down scaling factor to store primary electron for validation" };
124122 Configurable<float > downscaling_electron{" downscaling_electron" , 0.005 , " down scaling factor to store electron" };
125123 Configurable<float > downscaling_pion{" downscaling_pion" , 0.001 , " down scaling factor to store pion" };
126124 Configurable<float > downscaling_kaon{" downscaling_kaon" , 1.1 , " down scaling factor to store kaon" };
127125 Configurable<float > downscaling_proton{" downscaling_proton" , 0.005 , " down scaling factor to store proton" };
128126
129- Configurable<float > max_p_for_downscaling_electron_primary{" max_p_for_downscaling_electron_primary" , 0.0 , " max p to apply down scaling factor to store primary electron for validation" };
130127 Configurable<float > max_p_for_downscaling_electron{" max_p_for_downscaling_electron" , 2.0 , " max p to apply down scaling factor to store electron" };
131128 Configurable<float > max_p_for_downscaling_pion{" max_p_for_downscaling_pion" , 2.0 , " max p to apply down scaling factor to store pion" };
132129 Configurable<float > max_p_for_downscaling_kaon{" max_p_for_downscaling_kaon" , 0.0 , " max p to apply down scaling factor to store kaon" };
@@ -169,8 +166,8 @@ struct TreeCreatorElectronMLDDA {
169166 Configurable<int > cfg_min_ncluster_tpc{" cfg_min_ncluster_tpc" , 0 , " min ncluster tpc" };
170167 Configurable<int > cfg_min_ncluster_its{" cfg_min_ncluster_its" , 4 , " min ncluster its" };
171168 Configurable<int > cfg_min_ncluster_itsib{" cfg_min_ncluster_itsib" , 1 , " min ncluster itsib" };
172- Configurable<float > cfg_max_chi2tpc{" cfg_max_chi2tpc" , 5.0 , " max chi2/NclsTPC" };
173- Configurable<float > cfg_max_chi2its{" cfg_max_chi2its" , 6 .0 , " max chi2/NclsITS" };
169+ Configurable<float > cfg_max_chi2tpc{" cfg_max_chi2tpc" , 5.0 , " max chi2/NclsTPC" }; // comment
170+ Configurable<float > cfg_max_chi2its{" cfg_max_chi2its" , 36 .0 , " max chi2/NclsITS" };
174171 Configurable<float > cfg_max_dcaxy{" cfg_max_dcaxy" , 1.0 , " max dca XY in cm" };
175172 Configurable<float > cfg_max_dcaz{" cfg_max_dcaz" , 1.0 , " max dca Z in cm" };
176173 } trackcuts;
@@ -183,8 +180,8 @@ struct TreeCreatorElectronMLDDA {
183180 Configurable<float > cfg_max_mass_photon{" cfg_max_mass_photon" , 0.02 , " max mass for photon conversion" };
184181 Configurable<float > cfg_min_mass_k0s{" cfg_min_mass_k0s" , 0.490 , " min mass for K0S" };
185182 Configurable<float > cfg_max_mass_k0s{" cfg_max_mass_k0s" , 0.505 , " max mass for K0S" };
186- Configurable<float > cfg_min_mass_lambda{" cfg_min_mass_lambda" , 1.113 , " min mass for Lambda rejection " };
187- Configurable<float > cfg_max_mass_lambda{" cfg_max_mass_lambda" , 1.118 , " max mass for Lambda rejection " };
183+ Configurable<float > cfg_min_mass_lambda{" cfg_min_mass_lambda" , 1.113 , " min mass for Lambda" };
184+ Configurable<float > cfg_max_mass_lambda{" cfg_max_mass_lambda" , 1.118 , " max mass for Lambda" };
188185 Configurable<float > cfg_min_cospa{" cfg_min_cospa" , 0.9998 , " min cospa for v0" };
189186 Configurable<float > cfg_max_dcadau{" cfg_max_dcadau" , 0.2 , " max distance between 2 legs for v0" };
190187 Configurable<float > cfg_min_cr2findable_ratio_tpc{" cfg_min_cr2findable_ratio_tpc" , 0.8 , " min. TPC Ncr/Nf ratio" };
@@ -237,8 +234,8 @@ struct TreeCreatorElectronMLDDA {
237234 std::string prefix = " cascadecut_group" ;
238235 Configurable<float > cfg_min_mass_lambda{" cfg_min_mass_lambda" , 1.11 , " min mass for lambda in cascade" };
239236 Configurable<float > cfg_max_mass_lambda{" cfg_max_mass_lambda" , 1.12 , " max mass for lambda in cascade" };
240- Configurable<float > cfg_min_mass_Xi{ " cfg_min_mass_Xi " , 1.31 , " min mass for Xi" }; // this is for veto.
241- Configurable<float > cfg_max_mass_Xi{ " cfg_max_mass_Xi " , 1.33 , " max mass for Xi" }; // this is for veto.
237+ Configurable<float > cfg_min_mass_Xi_veto{ " cfg_min_mass_Xi_veto " , 1.31 , " min mass for Xi veto " };
238+ Configurable<float > cfg_max_mass_Xi_veto{ " cfg_max_mass_Xi_veto " , 1.33 , " max mass for Xi veto " };
242239 Configurable<float > cfg_min_mass_Omega{" cfg_min_mass_Omega" , 1.669 , " min mass for Omega" };
243240 Configurable<float > cfg_max_mass_Omega{" cfg_max_mass_Omega" , 1.675 , " max mass for Omega" };
244241 Configurable<float > cfg_min_cospa_v0{" cfg_min_cospa_v0" , 0.97 , " minimum V0 CosPA in cascade" };
@@ -555,7 +552,7 @@ struct TreeCreatorElectronMLDDA {
555552 bool isElectronTight (TTrack const & track)
556553 {
557554 bool is_El_TPC = v0cuts.cfg_min_TPCNsigmaEl_tight < track.tpcNSigmaEl () && track.tpcNSigmaEl () < v0cuts.cfg_max_TPCNsigmaEl_tight ;
558- bool is_El_TOF = track.hasTOF () && ( v0cuts.cfg_min_TOFNsigmaEl_tight < track.tofNSigmaEl () && track.tofNSigmaEl () < v0cuts.cfg_max_TOFNsigmaEl_tight ) ; // TOFreq
555+ bool is_El_TOF = track.hasTOF () ? v0cuts.cfg_min_TOFNsigmaEl_tight < track.tofNSigmaEl () && track.tofNSigmaEl () < v0cuts.cfg_max_TOFNsigmaEl_tight : true ; // TOFif
559556 return is_El_TPC && is_El_TOF;
560557 }
561558
@@ -576,7 +573,7 @@ struct TreeCreatorElectronMLDDA {
576573 }
577574
578575 template <typename TCollision, typename TTrack>
579- void fillTrackTable (TCollision const & collision, TTrack const & track, const uint8_t pidlabel, const uint8_t tracktype, const bool isForValidation)
576+ void fillTrackTable (TCollision const & collision, TTrack const & track, const uint8_t pidlabel, const bool isForValidation)
580577 {
581578 if (store_ele_band_only && !isElectron (track)) {
582579 return ;
@@ -591,27 +588,21 @@ struct TreeCreatorElectronMLDDA {
591588 // float dcaXY = mDcaInfoCov.getY();
592589 // float dcaZ = mDcaInfoCov.getZ();
593590
594- if (tracktype == static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::Track_Type:: kPrimary )) {
595- if (dist01 (engine) > downscaling_electron_primary && trackParCov.getP () < max_p_for_downscaling_electron_primary ) {
591+ if (pidlabel == static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label:: kElectron )) {
592+ if (dist01 (engine) > downscaling_electron && trackParCov.getP () < max_p_for_downscaling_electron ) {
596593 return ;
597594 }
598- } else { // secondary
599- if (pidlabel == static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label::kElectron )) {
600- if (dist01 (engine) > downscaling_electron && trackParCov.getP () < max_p_for_downscaling_electron) {
601- return ;
602- }
603- } else if (pidlabel == static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label::kPion )) {
604- if (dist01 (engine) > downscaling_pion && trackParCov.getP () < max_p_for_downscaling_pion) {
605- return ;
606- }
607- } else if (pidlabel == static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label::kKaon )) {
608- if (dist01 (engine) > downscaling_kaon && trackParCov.getP () < max_p_for_downscaling_kaon) {
609- return ;
610- }
611- } else if (pidlabel == static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label::kProton )) {
612- if (dist01 (engine) > downscaling_proton && trackParCov.getP () < max_p_for_downscaling_proton) {
613- return ;
614- }
595+ } else if (pidlabel == static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label::kPion )) {
596+ if (dist01 (engine) > downscaling_pion && trackParCov.getP () < max_p_for_downscaling_pion) {
597+ return ;
598+ }
599+ } else if (pidlabel == static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label::kKaon )) {
600+ if (dist01 (engine) > downscaling_kaon && trackParCov.getP () < max_p_for_downscaling_kaon) {
601+ return ;
602+ }
603+ } else if (pidlabel == static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label::kProton )) {
604+ if (dist01 (engine) > downscaling_proton && trackParCov.getP () < max_p_for_downscaling_proton) {
605+ return ;
615606 }
616607 }
617608
@@ -772,46 +763,62 @@ struct TreeCreatorElectronMLDDA {
772763 registry.fill (HIST (" V0/hCosPA" ), v0.v0cosPA ());
773764 registry.fill (HIST (" V0/hAP" ), v0.alpha (), v0.qtarm ());
774765
775- if (isPion (pos) && isPion (neg)) {
766+ if (isPionTight (pos) && isPion (neg)) {
776767 registry.fill (HIST (" V0/hMassK0Short" ), v0.mK0Short ());
777768 if (v0cuts.cfg_min_mass_k0s < v0.mK0Short () && v0.mK0Short () < v0cuts.cfg_max_mass_k0s ) {
778769 registry.fill (HIST (" V0/hTPCdEdx_P_Pi" ), neg.tpcInnerParam (), neg.tpcSignal ());
779770 registry.fill (HIST (" V0/hTOFbeta_P_Pi" ), neg.tpcInnerParam (), neg.beta ());
780- registry.fill (HIST (" V0/hTPCdEdx_P_Pi" ), pos.tpcInnerParam (), pos.tpcSignal ());
781- registry.fill (HIST (" V0/hTOFbeta_P_Pi" ), pos.tpcInnerParam (), pos.beta ());
782- fillTrackTable (collision, pos, static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label::kPion ), static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::Track_Type::kSecondary ), false );
783- fillTrackTable (collision, neg, static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label::kPion ), static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::Track_Type::kSecondary ), false );
771+ fillTrackTable (collision, neg, static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label::kPion ), false );
772+ }
773+ if (isPion (pos) && isPionTight (neg)) {
774+ registry.fill (HIST (" V0/hMassK0Short" ), v0.mK0Short ());
775+ if (v0cuts.cfg_min_mass_k0s < v0.mK0Short () && v0.mK0Short () < v0cuts.cfg_max_mass_k0s ) {
776+ registry.fill (HIST (" V0/hTPCdEdx_P_Pi" ), pos.tpcInnerParam (), pos.tpcSignal ());
777+ registry.fill (HIST (" V0/hTOFbeta_P_Pi" ), pos.tpcInnerParam (), pos.beta ());
778+ fillTrackTable (collision, pos, static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label::kPion ), false );
779+ }
784780 }
785781 }
782+
786783 if (isProton (pos) && isPionTight (neg)) {
787784 registry.fill (HIST (" V0/hMassLambda" ), v0.mLambda ());
788785 if (v0cuts.cfg_min_mass_lambda < v0.mLambda () && v0.mLambda () < v0cuts.cfg_max_mass_lambda ) {
789- fillTrackTable (collision, pos, static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label::kProton ), static_cast < uint8_t >(o2::aod::pwgem::dilepton::ml::Track_Type:: kSecondary ), false );
786+ fillTrackTable (collision, pos, static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label::kProton ), false );
790787 registry.fill (HIST (" V0/hTPCdEdx_P_Pr" ), pos.tpcInnerParam (), pos.tpcSignal ());
791788 registry.fill (HIST (" V0/hTOFbeta_P_Pr" ), pos.tpcInnerParam (), pos.beta ());
792789 }
793790 }
794791 if (isPionTight (pos) && isProton (neg)) {
795792 registry.fill (HIST (" V0/hMassAntiLambda" ), v0.mAntiLambda ());
796793 if (v0cuts.cfg_min_mass_lambda < v0.mAntiLambda () && v0.mAntiLambda () < v0cuts.cfg_max_mass_lambda ) {
797- fillTrackTable (collision, neg, static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label::kProton ), static_cast < uint8_t >(o2::aod::pwgem::dilepton::ml::Track_Type:: kSecondary ), false );
794+ fillTrackTable (collision, neg, static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label::kProton ), false );
798795 registry.fill (HIST (" V0/hTPCdEdx_P_Pr" ), neg.tpcInnerParam (), neg.tpcSignal ());
799796 registry.fill (HIST (" V0/hTOFbeta_P_Pr" ), neg.tpcInnerParam (), neg.beta ());
800797 }
801798 }
802- if (isElectron (pos) && isElectron (neg)) {
799+
800+ if (isElectronTight (pos) && isElectron (neg)) {
803801 registry.fill (HIST (" V0/hMassGamma" ), v0.mGamma ());
804- registry.fill (HIST (" V0/hXY_Gamma" ), v0.x (), v0.y ());
805802 registry.fill (HIST (" V0/hMassGamma_Rxy" ), v0.v0radius (), v0.mGamma ());
806- if (( v0cuts.cfg_min_mass_photon < v0.mGamma () && v0.mGamma () < v0cuts.cfg_max_mass_photon ) ) {
807- fillTrackTable (collision, pos, static_cast < uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label:: kElectron ), static_cast < uint8_t >(o2::aod::pwgem::dilepton::ml::Track_Type:: kSecondary ), false );
808- fillTrackTable (collision, neg, static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label::kElectron ), static_cast < uint8_t >(o2::aod::pwgem::dilepton::ml::Track_Type:: kSecondary ), false );
803+ if (v0cuts.cfg_min_mass_photon < v0.mGamma () && v0.mGamma () < v0cuts.cfg_max_mass_photon ) {
804+ registry. fill ( HIST ( " V0/hXY_Gamma " ), v0. x ( ), v0. y () );
805+ fillTrackTable (collision, neg, static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label::kElectron ), false );
809806 registry.fill (HIST (" V0/hTPCdEdx_P_El" ), neg.tpcInnerParam (), neg.tpcSignal ());
810807 registry.fill (HIST (" V0/hTOFbeta_P_El" ), neg.tpcInnerParam (), neg.beta ());
808+ }
809+ }
810+
811+ if (isElectron (pos) && isElectronTight (neg)) {
812+ registry.fill (HIST (" V0/hMassGamma" ), v0.mGamma ());
813+ registry.fill (HIST (" V0/hMassGamma_Rxy" ), v0.v0radius (), v0.mGamma ());
814+ if (v0cuts.cfg_min_mass_photon < v0.mGamma () && v0.mGamma () < v0cuts.cfg_max_mass_photon ) {
815+ registry.fill (HIST (" V0/hXY_Gamma" ), v0.x (), v0.y ());
816+ fillTrackTable (collision, pos, static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label::kElectron ), false );
811817 registry.fill (HIST (" V0/hTPCdEdx_P_El" ), pos.tpcInnerParam (), pos.tpcSignal ());
812818 registry.fill (HIST (" V0/hTOFbeta_P_El" ), pos.tpcInnerParam (), pos.beta ());
813819 }
814820 }
821+
815822 } // end of v0 loop
816823
817824 auto cascades_coll = cascades.sliceBy (perCollision_cascade, collision.globalIndex ());
@@ -884,66 +891,19 @@ struct TreeCreatorElectronMLDDA {
884891 registry.fill (HIST (" Cascade/hRxy_Xi" ), cascade.mXi (), cascade.cascradius ());
885892 registry.fill (HIST (" Cascade/hCTau_Xi" ), cascade.mXi (), ctauXi);
886893 }
887- if (!(cascadecuts.cfg_min_mass_Xi < cascade.mXi () && cascade.mXi () < cascadecuts.cfg_max_mass_Xi ) && isKaon (bachelor)) { // reject Xi candidates
894+ if (!(cascadecuts.cfg_min_mass_Xi_veto < cascade.mXi () && cascade.mXi () < cascadecuts.cfg_max_mass_Xi_veto ) && isKaon (bachelor)) { // reject Xi candidates
888895 registry.fill (HIST (" Cascade/hMassOmega" ), cascade.mOmega ());
889896 registry.fill (HIST (" Cascade/hMassPt_Omega" ), cascade.mOmega (), cascade.pt ());
890897 registry.fill (HIST (" Cascade/hRxy_Omega" ), cascade.mOmega (), cascade.cascradius ());
891898 registry.fill (HIST (" Cascade/hCTau_Omega" ), cascade.mOmega (), ctauOmega);
892899 if (cascadecuts.cfg_min_mass_Omega < cascade.mOmega () && cascade.mOmega () < cascadecuts.cfg_max_mass_Omega ) { // select Omega candidates
893900 registry.fill (HIST (" V0/hTPCdEdx_P_Ka" ), bachelor.tpcInnerParam (), bachelor.tpcSignal ());
894901 registry.fill (HIST (" V0/hTOFbeta_P_Ka" ), bachelor.tpcInnerParam (), bachelor.beta ());
895- fillTrackTable (collision, bachelor, static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label::kKaon ), static_cast < uint8_t >(o2::aod::pwgem::dilepton::ml::Track_Type:: kSecondary ), false );
902+ fillTrackTable (collision, bachelor, static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label::kKaon ), false );
896903 }
897904 }
898905 } // end of cascade loop
899-
900- if (downscaling_electron_primary > 0.0 ) {
901- std::array<float , 3 > ppos{0 , 0 , 0 };
902- std::array<float , 3 > pneg{0 , 0 , 0 };
903-
904- // for electron sample for validation
905- auto posTracks_per_coll = posTracks->sliceByCached (o2::aod::track::collisionId, collision.globalIndex (), cache);
906- auto negTracks_per_coll = negTracks->sliceByCached (o2::aod::track::collisionId, collision.globalIndex (), cache);
907- for (const auto & [pos, neg] : combinations (CombinationsFullIndexPolicy (posTracks_per_coll, negTracks_per_coll))) {
908- if (!isElectron (pos) || !isElectron (neg)) {
909- continue ;
910- }
911- if (!isSelectedTrack (collision, pos) || !isSelectedTrack (collision, neg)) {
912- continue ;
913- }
914-
915- auto posParCov = getTrackParCov (pos);
916- posParCov.setPID (pos.pidForTracking ());
917- mVtx .setPos ({collision.posX (), collision.posY (), collision.posZ ()});
918- mVtx .setCov (collision.covXX (), collision.covXY (), collision.covYY (), collision.covXZ (), collision.covYZ (), collision.covZZ ());
919- o2::base::Propagator::Instance ()->propagateToDCABxByBz (mVtx , posParCov, 2 .f , matCorr, &mDcaInfoCov );
920- getPxPyPz (posParCov, ppos);
921-
922- auto negParCov = getTrackParCov (neg);
923- negParCov.setPID (pos.pidForTracking ());
924- mVtx .setPos ({collision.posX (), collision.posY (), collision.posZ ()});
925- mVtx .setCov (collision.covXX (), collision.covXY (), collision.covYY (), collision.covXZ (), collision.covYZ (), collision.covZZ ());
926- o2::base::Propagator::Instance ()->propagateToDCABxByBz (mVtx , negParCov, 2 .f , matCorr, &mDcaInfoCov );
927- getPxPyPz (negParCov, pneg);
928-
929- ROOT::Math::PtEtaPhiMVector v1 (negParCov.getPt (), negParCov.getEta (), negParCov.getPhi () > 0 .f ? negParCov.getPhi () : negParCov.getPhi () + 2 * M_PI, o2::constants::physics::MassElectron);
930- ROOT::Math::PtEtaPhiMVector v2 (posParCov.getPt (), posParCov.getEta (), posParCov.getPhi () > 0 .f ? posParCov.getPhi () : posParCov.getPhi () + 2 * M_PI, o2::constants::physics::MassElectron);
931- ROOT::Math::PtEtaPhiMVector v12 = v1 + v2;
932- float phiv = o2::aod::pwgem::dilepton::utils::pairutil::getPhivPair (ppos[0 ], ppos[1 ], ppos[2 ], pneg[0 ], pneg[1 ], pneg[2 ], pos.sign (), neg.sign (), d_bz);
933- registry.fill (HIST (" hMvsPhiV" ), phiv, v12.M ());
934-
935- if ((dalitzcuts.cfg_min_mass_ee < v12.M () && v12.M () < dalitzcuts.cfg_max_mass_ee ) && (dalitzcuts.cfg_min_phiv_ee < phiv && phiv < dalitzcuts.cfg_max_phiv_ee )) { // ee from pi0 dalitz decay is found.
936- if (isElectronTight (pos) && isElectron (neg)) {
937- fillTrackTable (collision, neg, static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label::kElectron ), static_cast <int >(o2::aod::pwgem::dilepton::ml::Track_Type::kPrimary ), true ); // primary electron candidates
938- }
939- if (isElectron (pos) && isElectronTight (neg)) {
940- fillTrackTable (collision, pos, static_cast <uint8_t >(o2::aod::pwgem::dilepton::ml::PID_Label::kElectron ), static_cast <int >(o2::aod::pwgem::dilepton::ml::Track_Type::kPrimary ), true ); // primary electron candidates
941- }
942- }
943- } // end of ULS pair loop
944- }
945906 } // end of collision loop
946-
947907 stored_trackIds.clear ();
948908 stored_trackIds.shrink_to_fit ();
949909 } // end of process
0 commit comments