Skip to content

Start of GlobalSimulation development

Peter Sherwood requested to merge peter/athena:main-27323-0 into main

The GlobalSim package contains code to simulate the Global Trigger.

The approach taken starts by creating a call graph of the Algorithms in the system. These read from and write to a simple DataRepository object. The Algorithms are run in the order of their IO dependencies to ensure that when an Algorithm is run, the Algorithms which supply it inputs have been run.

By concentrating on Algorithms and their dependencies, hardware details, which are not known, or which will very likely will be changed, can be ignored for now.

As, at this point the Algorithms themselves are nit fully known, this version of the package uses L1TopoSimulation Algorithms, together with configuration data taken from TCS::L1Menu to test the the approach. As a result of using older packages there are unpleasant features of GlobalSim (lack of thread safety, const correctness, heavy use of down casting). It is expected that these will be removed if and when GlobalSim versions of these and newer Algorithms are implemented.

To facilitate an eventual standalone version of GlobalSim, an effort has been made to minimise Athena dependencies.

ATR-23323

@konstant @dsankey @rhowen @hillier @kimura @martyniu @peter

Edited by Peter Sherwood

Merge request reports