diff --git a/Tracking/Acts/FaserActsKalmanFilter/FaserActsKalmanFilter/CKF2.h b/Tracking/Acts/FaserActsKalmanFilter/FaserActsKalmanFilter/CKF2.h index 6209dda840a81c780b8ec4b71d745165e9bc1ce3..da7baf0c88406e764b454796e58239e3de7d93b0 100644 --- a/Tracking/Acts/FaserActsKalmanFilter/FaserActsKalmanFilter/CKF2.h +++ b/Tracking/Acts/FaserActsKalmanFilter/FaserActsKalmanFilter/CKF2.h @@ -111,6 +111,11 @@ public: virtual Acts::MagneticFieldContext getMagneticFieldContext(const EventContext& ctx) const; private: + size_t m_numberOfEvents {0}; + size_t m_numberOfTrackSeeds {0}; + size_t m_numberOfFittedTracks {0}; + size_t m_numberOfSelectedTracks {0}; + void computeSharedHits(std::vector<IndexSourceLink>* sourceLinks, TrackFinderResult& results) const; std::shared_ptr<TrackFinderFunction> m_fit; std::shared_ptr<TrackFitterFunction> m_kf; diff --git a/Tracking/Acts/FaserActsKalmanFilter/src/CKF2.cxx b/Tracking/Acts/FaserActsKalmanFilter/src/CKF2.cxx index 566470969777edd4d55b5f20df4f1a4eeae6419b..e75632427e36b77d968cf9cb961268ac5342a481 100644 --- a/Tracking/Acts/FaserActsKalmanFilter/src/CKF2.cxx +++ b/Tracking/Acts/FaserActsKalmanFilter/src/CKF2.cxx @@ -77,6 +77,7 @@ StatusCode CKF2::initialize() { StatusCode CKF2::execute() { const EventContext& ctx = Gaudi::Hive::currentContext(); + m_numberOfEvents++; ATH_CHECK(m_trackCollection.initialize()); SG::WriteHandle<TrackCollection> trackContainer{m_trackCollection,ctx}; @@ -131,6 +132,7 @@ StatusCode CKF2::execute() { Acts::LoggerWrapper{*m_logger}, pOptions, &(*initialSurface)); // Perform the track finding for all initial parameters + m_numberOfTrackSeeds += initialParameters->size(); ATH_MSG_DEBUG("Invoke track finding with " << initialParameters->size() << " seeds."); IndexSourceLinkContainer tmp; for (const auto& sl : *sourceLinks) { @@ -158,6 +160,7 @@ StatusCode CKF2::execute() { ckfResult.fittedStates, {trackTip}, {{trackTip, ckfResult.fittedParameters.at(trackTip)}}))); } } + m_numberOfFittedTracks += allTrajectories.size(); // the list of MultiTrajectories is sorted by the number of measurements using the chi2 value as a tie-breaker allTrajectories.sort([](const TrajectoryInfo &left, const TrajectoryInfo &right) { @@ -194,6 +197,7 @@ StatusCode CKF2::execute() { if (track2) { std::unique_ptr<Trk::Track> track3 = m_kalmanFitterTool2->fit(ctx, gctx, *track2, trajectories, Acts::BoundVector::Zero(), m_isMC, origin); outputTracks->push_back(std::move(track3)); + m_numberOfSelectedTracks++; } } } @@ -215,6 +219,11 @@ StatusCode CKF2::execute() { StatusCode CKF2::finalize() { + ATH_MSG_INFO("CombinatorialKalmanFilterAlg::finalize()"); + ATH_MSG_INFO(m_numberOfEvents << " events processed."); + ATH_MSG_INFO(m_numberOfTrackSeeds << " seeds."); + ATH_MSG_INFO(m_numberOfFittedTracks << " fitted tracks."); + ATH_MSG_INFO(m_numberOfSelectedTracks << " selected and re-fitted tracks."); return StatusCode::SUCCESS; }