Skip to content

Commit

Permalink
Allow low mom in track parameter estimation
Browse files Browse the repository at this point in the history
  • Loading branch information
beomki-yeo committed Feb 22, 2024
1 parent 15ace85 commit 0ad90ee
Showing 1 changed file with 3 additions and 10 deletions.
13 changes: 3 additions & 10 deletions Core/include/Acts/Seeding/EstimateTrackParamsFromSeed.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -237,17 +237,10 @@ std::optional<BoundVector> estimateTrackParamsFromSeed(
circleCenter(1) = -1. / a * circleCenter(0) + b;
// Radius is distance between circleCenter and first sp, which is at (0, 0) in
// the new frame
// Sign depends on the slope a (positive vs negative)
int sign = a > 0 ? -1 : 1;
ActsScalar rho = sign / circleCenter.norm();

// The projection of the top space point on the transverse plane of the new
// frame
ActsScalar rn = local2.x() * local2.x() + local2.y() * local2.y();
// The (1/tanTheta) of momentum in the new frame,
static constexpr ActsScalar G = static_cast<ActsScalar>(1. / 24.);
const ActsScalar R = circleCenter.norm();
ActsScalar invTanTheta =
local2.z() * std::sqrt(1. / rn) / (1. + G * rho * rho * rn);
local2.z() /
(2.f * R * std::asin(std::hypot(local2.x(), local2.y()) / 2.f * R));
// The momentum direction in the new frame (the center of the circle has the
// coordinate (-1.*A/(2*B), 1./(2*B)))
ActsScalar A = -circleCenter(0) / circleCenter(1);
Expand Down

0 comments on commit 0ad90ee

Please sign in to comment.