Skip to content

Migrate PixelDigitization to use IAtRNGSvc for AthenaMT

John Chapman requested to merge jchapman/athena:MTRNG_PixelDigi_master into master

In order to make the output of MT MC Overlay (and digitization) reproducible then we need to use the thread-safe random number service (via IAtRNGSvc) in all digitization code. This merge request does this for the Pixel Digitization code. The approach taken is to retrieve the CLHEP::HepRandomEngine instance re-seeded for the current event in a method of the PileUpTool which is called once per event, this is then as an argument in calls to other methods where random numbers are required. This helps to make those tools (more) const.

Due to the slightly different way that the random number seeding is done in the MT service, the output is slightly different, but this should just be statistical.

Edited by John Chapman

Merge request reports