@@ -1026,6 +1026,7 @@ struct AnalysisSameEventPairing {
10261026 Produces<aod::DielectronsInfo> dielectronInfoList;
10271027 Produces<aod::DimuonsExtra> dimuonExtraList;
10281028 Produces<aod::DielectronsAll> dielectronAllList;
1029+ Produces<aod::DielectronsMls> dielectronMlList;
10291030 Produces<aod::DimuonsAll> dimuonAllList;
10301031 Produces<aod::DileptonFlow> dileptonFlowList;
10311032 Produces<aod::DileptonsInfo> dileptonInfoList;
@@ -1380,6 +1381,7 @@ struct AnalysisSameEventPairing {
13801381 dileptonFlowList.reserve (1 );
13811382 if (fConfigFlatTables .value ) {
13821383 dielectronAllList.reserve (1 );
1384+ dielectronMlList.reserve (1 );
13831385 dimuonAllList.reserve (1 );
13841386 }
13851387 if (useMiniTree.fConfigMiniTree ) {
@@ -1466,6 +1468,8 @@ struct AnalysisSameEventPairing {
14661468 }
14671469 }
14681470 if constexpr ((TPairType == pairTypeEE) && (TTrackFillMap & VarManager::ObjTypes::ReducedTrackBarrelPID) > 0 ) {
1471+ isSelectedBDT = false ;
1472+ fOutputMlPsi2ee .clear ();
14691473 if (applyBDT) {
14701474 std::vector<float > dqInputFeatures = fDQMlResponse .getInputFeatures (t1, t2, VarManager::fgValues);
14711475
@@ -1497,7 +1501,7 @@ struct AnalysisSameEventPairing {
14971501
14981502 LOG (debug) << " Model index: " << modelIndex << " , pT: " << VarManager::fgValues[VarManager::kPt ] << " , centrality (kCentFT0C): " << VarManager::fgValues[VarManager::kCentFT0C ];
14991503 isSelectedBDT = fDQMlResponse .isSelectedMl (dqInputFeatures, modelIndex, fOutputMlPsi2ee );
1500- VarManager::FillBdtScore (fOutputMlPsi2ee ); // TODO: check if this is needed or not
1504+ VarManager::FillBdtScore (fOutputMlPsi2ee );
15011505 }
15021506
15031507 if (applyBDT && !isSelectedBDT)
@@ -1512,6 +1516,10 @@ struct AnalysisSameEventPairing {
15121516 VarManager::fgValues[VarManager::kKFMass ], VarManager::fgValues[VarManager::kKFChi2OverNDFGeo ], VarManager::fgValues[VarManager::kVertexingLxyz ], VarManager::fgValues[VarManager::kVertexingLxyzOverErr ], VarManager::fgValues[VarManager::kVertexingLxy ], VarManager::fgValues[VarManager::kVertexingLxyOverErr ], VarManager::fgValues[VarManager::kVertexingTauxy ], VarManager::fgValues[VarManager::kVertexingTauxyErr ], VarManager::fgValues[VarManager::kKFCosPA ], VarManager::fgValues[VarManager::kKFJpsiDCAxyz ], VarManager::fgValues[VarManager::kKFJpsiDCAxy ],
15131517 VarManager::fgValues[VarManager::kKFPairDeviationFromPV ], VarManager::fgValues[VarManager::kKFPairDeviationxyFromPV ],
15141518 VarManager::fgValues[VarManager::kKFMassGeoTop ], VarManager::fgValues[VarManager::kKFChi2OverNDFGeoTop ], VarManager::fgValues[VarManager::kVertexingTauzProjected ], VarManager::fgValues[VarManager::kVertexingTauxyProjected ], VarManager::fgValues[VarManager::kVertexingLzProjected ], VarManager::fgValues[VarManager::kVertexingLxyProjected ]);
1519+ dielectronMlList (VarManager::fgValues[VarManager::kCentFT0C ],
1520+ (applyBDT && fOutputMlPsi2ee .size () > 0 ) ? VarManager::fgValues[VarManager::kBdtBackground ] : -999 .f ,
1521+ (applyBDT && fOutputMlPsi2ee .size () > 1 ) ? VarManager::fgValues[VarManager::kBdtPrompt ] : -999 .f ,
1522+ (applyBDT && fOutputMlPsi2ee .size () > 2 ) ? VarManager::fgValues[VarManager::kBdtNonprompt ] : -999 .f );
15151523 }
15161524 }
15171525 if constexpr (TPairType == pairTypeMuMu) {
0 commit comments