diff --git a/PWGJE/Tasks/CMakeLists.txt b/PWGJE/Tasks/CMakeLists.txt index f05c735ef21..85e7a1bc600 100644 --- a/PWGJE/Tasks/CMakeLists.txt +++ b/PWGJE/Tasks/CMakeLists.txt @@ -393,4 +393,4 @@ if(FastJet_FOUND) SOURCES bjetCentMult.cxx PUBLIC_LINK_LIBRARIES O2::Framework O2Physics::PWGJECore O2Physics::AnalysisCore COMPONENT_NAME Analysis) -endif() +endif() \ No newline at end of file diff --git a/PWGJE/Tasks/jetDsSpectrumAndSubstructure.cxx b/PWGJE/Tasks/jetDsSpectrumAndSubstructure.cxx index faf6871b7a8..c7b0af78e8a 100644 --- a/PWGJE/Tasks/jetDsSpectrumAndSubstructure.cxx +++ b/PWGJE/Tasks/jetDsSpectrumAndSubstructure.cxx @@ -105,7 +105,6 @@ struct JetDsSpecSubs { {"h_ds_mass", ";m_{D_{S}} (GeV/c^{2});dN/dm_{D_{S}}", {HistType::kTH1F, {{1000, 0., 10.}}}}, {"h_ds_eta", ";#eta_{D_{S}} (GeV/c^{2});dN/d#eta_{D_{S}}", {HistType::kTH1F, {{250, -5., 5.}}}}, {"h_ds_phi", ";#phi_{D_{S}} (GeV/c^{2});dN/d#phi_{D_{S}}", {HistType::kTH1F, {{250, -10., 10.}}}}}}; - Configurable vertexZCut{"vertexZCut", 10.0f, "Accepted z-vertex range"}; Configurable jetPtMin{"jetPtMin", 5.0, "minimum jet pT cut"}; @@ -201,11 +200,19 @@ struct JetDsSpecSubs { registry.fill(HIST("h_ds_eta"), dsCandidate.eta()); registry.fill(HIST("h_ds_phi"), dsCandidate.phi()); - // filling table - distJetTable(axisDistance, - jet.pt(), jet.eta(), jet.phi(), jet.tracks_as().size(), - dsCandidate.pt(), dsCandidate.eta(), dsCandidate.phi(), dsCandidate.m(), dsCandidate.y(), dsCandidate.mlScores()[0], dsCandidate.mlScores()[1], dsCandidate.mlScores()[2]); + // Retrieve ML scores safely + auto scores = dsCandidate.mlScores(); + float s0 = (scores.size() > 0) ? scores[0] : -999.f; + float s1 = (scores.size() > 1) ? scores[1] : -999.f; + float s2 = (scores.size() > 2) ? scores[2] : -999.f; + + distJetTable(axisDistance, + jet.pt(), jet.eta(), jet.phi(), + static_cast(jet.tracks_as().size()), + dsCandidate.pt(), dsCandidate.eta(), dsCandidate.phi(), + dsCandidate.m(), dsCandidate.y(), + s0, s1, s2); break; // get out of candidates' loop after first HF particle is found in jet } // end of DS candidates loop