Skip to content

MdtReadoutElement - Interface clean up, documentation & consistent validity checks

Johannes Junggeburth requested to merge jojungge/athena:MdtReadoutUpdate into main

This MR is a follow-up of !62122 (merged) to clean up the MdtReadoutElement

  • Usage of the ATH_MSG macros throughout the place
  • Tidy up of the interface. All positions and transforms, e.g.
        Amg::Vector3D tubePos(const Identifier& id) const;
        Amg::Vector3D tubePos(const int tubelayer, const int tube) const;

can be accessed either via the Identifier or via explicitly stating the tubeLayer and tube. If they're accessed via Identifier, a check on whether the external Identifier matches the det element one is performed in the debug builds. If it fails exceptions are thrown. Internally, the class works consistently with the second interfaces

  • Remove all Coords methods
  • Kill methods that are never used or only in the MuonGeoModelTest
  • Add documentation to the interface methods

Okay to summarize this long pending merge request:

*Test on 100k particle gun events does not show any difference run2 simulation test

  • Subtle differences are seen in the data test. I have checked all possible ways of dumping the Readout geometry. The only difference, I could find is a numerical instability in the distorted surfaces
Singularity> sed -n '118508,118514p' MdtGeoDump.txt 
     Bounds  : Trk::CylinderBounds: (radius, averagePhi, halfPhiSector, halflengthInZ) = (14.6000004, 0.0000000, 3.1415927, 1280.7499695)
Local position along tube: (0.0818, -27.0000)
   Trk::StraightLineSurface
     Center position  (x, y, z) = (-836.0428, 5869.9332, -4671.0040)
     Rotation:             colX = (0.174484, -0.002757, 0.984656)
                           colY = (-0.984660, 0.000000, 0.174485)
                           colZ = (-0.000481, -0.999996, -0.002715)
### Element YY has now a sign
Singularity> sed -n '118508,118514p' build/MdtGeoDump.txt 
     Bounds  : Trk::CylinderBounds: (radius, averagePhi, halfPhiSector, halflengthInZ) = (14.6000004, 0.0000000, 3.1415927, 1280.7499695)
Local position along tube: (0.0818, -27.0000)
   Trk::StraightLineSurface
     Center position  (x, y, z) = (-836.0428, 5869.9332, -4671.0040)
     Rotation:             colX = (0.174484, -0.002757, 0.984656)
                           colY = (-0.984660, -0.000000, 0.174485)
                           colZ = (-0.000481, -0.999996, -0.002715)
Singularity>
Edited by Johannes Junggeburth

Merge request reports