From f2c019707446800d9adeceeb13be4b4542afde95 Mon Sep 17 00:00:00 2001 From: Slava Krutelyov Date: Fri, 1 Mar 2024 05:46:28 -0800 Subject: [PATCH] check if any tracks were added before parsing the data --- .../src/DAClusterizerInZT_vect.cc | 15 +++++++++------ .../src/DAClusterizerInZ_vect.cc | 15 +++++++++------ 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/RecoVertex/PrimaryVertexProducer/src/DAClusterizerInZT_vect.cc b/RecoVertex/PrimaryVertexProducer/src/DAClusterizerInZT_vect.cc index 61ef41b672e80..382a51e052916 100644 --- a/RecoVertex/PrimaryVertexProducer/src/DAClusterizerInZT_vect.cc +++ b/RecoVertex/PrimaryVertexProducer/src/DAClusterizerInZT_vect.cc @@ -262,8 +262,12 @@ DAClusterizerInZT_vect::track_t DAClusterizerInZT_vect::fill(const vector 0 ? 1. / sumtkwt : 0.; + if (sumtkwt > 0) { + tks.extractRaw(); + tks.osumtkwt = 1. / sumtkwt; + } else { + tks.osumtkwt = 0.; + } #ifdef DEBUG if (DEBUGLEVEL > 0) { @@ -1109,15 +1113,14 @@ bool DAClusterizerInZT_vect::split(const double beta, track_t& tks, vertex_t& y, vector DAClusterizerInZT_vect::vertices(const vector& tracks) const { track_t&& tks = fill(tracks); + vector clusters; + if (tks.getSize() == 0) + return clusters; tks.extractRaw(); unsigned int nt = tks.getSize(); double rho0 = 0.0; // start with no outlier rejection - vector clusters; - if (tks.getSize() == 0) - return clusters; - vertex_t y; // the vertex prototypes // initialize:single vertex at infinite temperature diff --git a/RecoVertex/PrimaryVertexProducer/src/DAClusterizerInZ_vect.cc b/RecoVertex/PrimaryVertexProducer/src/DAClusterizerInZ_vect.cc index 3477a1a33416c..fbd9f96a5f633 100644 --- a/RecoVertex/PrimaryVertexProducer/src/DAClusterizerInZ_vect.cc +++ b/RecoVertex/PrimaryVertexProducer/src/DAClusterizerInZ_vect.cc @@ -208,8 +208,12 @@ DAClusterizerInZ_vect::track_t DAClusterizerInZ_vect::fill(const vector 0 ? 1. / sumtkwt : 0.; + if (sumtkwt > 0) { + tks.extractRaw(); + tks.osumtkwt = 1. / sumtkwt; + } else { + tks.osumtkwt = 0.; + } #ifdef DEBUG if (DEBUGLEVEL > 0) { @@ -768,13 +772,12 @@ bool DAClusterizerInZ_vect::split(const double beta, track_t& tks, vertex_t& y, vector DAClusterizerInZ_vect::vertices_no_blocks(const vector& tracks) const { track_t&& tks = fill(tracks); - tks.extractRaw(); - - double rho0 = 0.0; // start with no outlier rejection - vector clusters; if (tks.getSize() == 0) return clusters; + tks.extractRaw(); + + double rho0 = 0.0; // start with no outlier rejection vertex_t y; // the vertex prototypes