The offline software framework of the Pierre Auger Observatory

The Pierre Auger Observatory is designed to unveil the nature and the origins of the highest energy cosmic rays. The large and geographically dispersed collaboration of physicists and the wide-ranging collection of simulation and reconstruction tasks pose some special challenges for the offline analysis software. We have designed and implemented a general purpose framework which allows collaborators to contribute algorithms and sequencing instructions to build up the variety of applications they require. The framework includes machinery to manage these user codes, to organize the abundance of user-contributed configuration files, to facilitate multi-format file handling, and to provide access to event and time-dependent detector information which can reside in various data sources. A number of utilities are also provided, including a novel geometry package which allows manipulation of abstract geometrical objects independent of coordinate system choice. The framework is implemented in C++, and takes advantage of object oriented design and common open source tools, while keeping the user side simple enough for C++ novices to learn in a reasonable time. The distribution system incorporates unit and acceptance testing in order to support rapid development of both the core framework and contributed user code

[1]  S. Incerti,et al.  Geant4 developments and applications , 2006, IEEE Transactions on Nuclear Science.

[2]  Ronald L. Rivest,et al.  The MD5 Message-Digest Algorithm , 1992, RFC.

[3]  P F Åkesson,et al.  Event Data Model in ATLAS , 2005 .

[4]  Gary V. Vaughan,et al.  GNU Autoconf, Automake, and Libtool , 2000 .

[5]  Nicolai M. Josuttis The C++ standard library , 1999 .

[6]  S. J. Sciutto AIRES: A system for air shower simulations , 1999 .

[7]  Elliotte Rusty Harold,et al.  XML in a Nutshell, Third Edition , 2004 .

[8]  S. Patton Concrete uses of XML in software development and data analysis , 2003, ArXiv.

[9]  Greg Lindstrom,et al.  Programming with Python , 2005, IT Professional.

[10]  De Young,et al.  IceTray : a Software Framework for IceCube , 2005 .

[11]  S. Sciutto AIRES: A system for air shower simulations (Version 2.2.0) , 1999 .

[12]  Elliotte Rusty Harold,et al.  XML in a Nutshell , 2001 .

[13]  R. Engel,et al.  One-dimensional Hybrid Approach to Extensive Air Shower Simulation , 2006, astro-ph/0606564.

[14]  Mark Lutz,et al.  Programming Python , 1996 .

[15]  Marko Zavrtanik,et al.  Properties and performance of the prototype instrument for the Pierre Auger Observatory , 2004, Nuclear Instruments and Methods in Physics Research Section A: Accelerators, Spectrometers, Detectors and Associated Equipment.

[16]  Björn Karlsson,et al.  Beyond the C++ Standard Library: An Introduction to Boost , 2005 .

[17]  T. DeYoung,et al.  ICETRAY : A SOFTWARE FRAMEWORK FOR ICECUBE , 2022 .

[18]  J Stephens,et al.  Beginning MySQL database design and optimization : from novice to professional/ Jon Stephens and Chad Russell , 2004 .