diff --git a/Core/include/Acts/Seeding/SeedFinder.ipp b/Core/include/Acts/Seeding/SeedFinder.ipp index 2896fba925f..45b95ec05d5 100644 --- a/Core/include/Acts/Seeding/SeedFinder.ipp +++ b/Core/include/Acts/Seeding/SeedFinder.ipp @@ -368,8 +368,15 @@ SeedFinder::getCompatibleDoublets( const float uT = xNewFrame * iDeltaR2; const float vT = yNewFrame * iDeltaR2; - // interactionPointCut == true we apply this cut first cuts before - // coordinate transformation to avoid unnecessary calculations + // We check the interaction point by evaluating the minimal distance + // between the origin and the straight line connecting the two points in + // the doublets. Using a geometric similarity, the Im is given by + // yNewFrame * rM / deltaR <= m_config.impactMax + // However, we make here an approximation of the impact parameter + // which is valid under the assumption yNewFrame / xNewFrame is small + // The correct computation would be: + // yNewFrame * yNewFrame * rM * rM <= m_config.impactMax * + // m_config.impactMax * deltaR2 if (std::abs(rM * yNewFrame) <= impactMax * xNewFrame) { // check if duplet cotTheta is within the region of interest // cotTheta is defined as (deltaZ / deltaR) but instead we multiply