47 return StatusCode::SUCCESS;
53 return StatusCode::SUCCESS;
59 std::optional<ITrkDistanceFinder::TwoPoints>
63 std::pair<PointOnTrack,PointOnTrack> minpoints;
75#ifdef SEEDNEWTONTRKDISTANCEFINDER_DEBUG
76 ATH_MSG_DEBUG(
"Returned a_phi " << minpoints.first.getPhiPoint() );
77 ATH_MSG_DEBUG(
"Returned b_phi " << minpoints.second.getPhiPoint() );
85 std::optional<ITrkDistanceFinder::TwoPoints>
89 if (std::isnan(
a.perigeeParameters()->parameters()[
Trk::d0])||std::isnan(b.perigeeParameters()->parameters()[
Trk::d0])) {
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_WARNING(x)
virtual StatusCode finalize() override
Trk2DDistanceFinder(const std::string &t, const std::string &n, const IInterface *p)
virtual std::optional< TwoPoints > CalculateMinimumDistance(const Trk::Perigee &, const Trk::Perigee &) const override final
method to do the calculation starting from two MeasuredPerigees
std::atomic< int > m_numberOfMinimizationFailures
virtual StatusCode initialize() override
ToolHandle< Trk2dDistanceSeeder > m_2ddistanceseeder
virtual ~Trk2DDistanceFinder()
Ensure that the ATLAS eigen extensions are properly loaded.
ParametersT< TrackParametersDim, Charged, PerigeeSurface > Perigee
std::pair< Amg::Vector3D, Amg::Vector3D > TwoPoints