Replacement of InDetTestBLayer with InDetTestPixelLayer
The InDetTestBLayer
and InDetTestPixelLayer
tools are basically set up to perform similar operations related to the extrapolation to pixel layers, the InDetTestBLayer
tool simply being restricted to the two innermost pixel layers, resulting in a lot of unnecessary code duplication. Also the InDetTestBLayer
name doesn't appear to be really appropriate for ITk. For those reasons, this MR removes the InDetTestBLayer
package and replace the relevant tool with the InDetTestPixelLayer
tool where appropriate.
One noticeable difference is related to the private method InDetTestPixelLayerTool::IsInCorrectLayer
here, which used an implementation related on hit counting along the track not robust against the presence of holes. This has been replaced with a check based on m_pixelId->layer_disk(id)
, as was used in the InDetTestBLayer
tool. The IsInCorrectLayer
was used only in the public method InDetTestPixelLayerTool::getFracGood
and InDetTestPixelLayerTool::expectHit
which were not used yet in another Athena code.
To maintain the CPU use of the extrapolation as low as possible, a new property OuterRadius
is introduced to limit the extrapolation to the two innermost pixel layers when appropriate. (It is also updated for ITk configurations with appropriate values).
With those changes, the outputs of the expectHitInInnermostPixelLayer
and expectHitInNextToInnermostPixelLayer
have been checked to be identical in a large sample of tracks and the offline reconstruction outputs of the q445 and q447 tests have been checked to be unchanged, both for CA and RecExCommon configs.
Rebased on 22.0 branch considering the extent of the update in the configs and that Frozen Tier-0 policy is not violated.
Adding full-unit-tests for safety