Skip to content

Implementation of the HGTD tracking geometry

Noemi Calace requested to merge ncalace/athena:21.9-HGTD-TrkGeo into 21.9

This MR includes the first classes of the HGTD_TrackingGeometry package, implemented to build the tracking geometry for the HGTD. I have implemented the layers such that the surfaces are contained in a grid structure (implemented via a BinnedArray1D1D) using (R,phi) polar coordinate of the HGTD surfaces' centre.

The picture below shows grid and the centres of the modules on one layer: binning

The search for compatible surfaces is done via the HGTD_OverlapDescriptor which knows the layer it is associated to and navigate the grid to return for a given position the surface of the corresponding bin and the surrounding ones, namely +/-3 in R-direction and +/-3 in phi. The tolerance (in number of steps) in the two direction is adjustable via two parameters of the HGTD_OverlapDescriptor constructor and can be changed if needed. EDIT: The number of steps has been adapted to fix some inefficiencies in searching for compatible surfaces.

The configurations implemented allows to find the HGTD tracking geometry layers and surfaces where expected. This is what can be visualised using the ExtrapolationEngineTest (first layer on the positive endcap side):

image

Some changes are needed in the HGTD_ModuleDesign class to obtain the correct rotation of the HGTD modules and hence surfaces.

Contains also code cleanup.

The material is not yet mapped on the layers. It will be implemented soon.

Tagging the relevant people: @cohm, @dshope, @aleopold, @asalzbur, @nstyles, @tstreble, @tadej, @lshan, @wyswys, @sch

Edited by Noemi Calace

Merge request reports