The LHCb Simulation Application, Gauss: Design, Evolution and Experience
Abstract
The LHCb simulation application, Gauss, is based on the Gaudi framework and on experiment basic components such as the Event Model and Detector Description. Gauss also depends on external libraries for the generation of the primary events (Pythia 6, EvtGen, etc.) and on Geant4 for particle transport in the experimental setup. The application supports the production of different types of events from minimum bias to B physics signals and particle guns. It is used for purely generators-level studies as well as full simulations. Gauss is used both directly by physicists and in massive central productions on the grid. The design and implementation of the application and its evolution due to evolving requirements will be described as in the case of the recently adopted Python-based configuration or the possibility of taking into account detectors conditions via a Simulation Conditions database. The challenge of supporting at the same time the flexibililty needed for the different tasks for which it is used, from evaluation of physics reach to background modeling, together with the stability and reliabilty of the code will also be described.