Speaker
Description
The integration of diverse high-energy collision Monte Carlo models into a unified simulation workflow is usually time-consuming. This is primarily because these models are conventionally developed as monolithic applications with heterogeneous data input and output formats. As a result, a need for multiple converters and auxiliary scripts arises, which not only impedes the modeling process but also introduces potential sources of error. Along with it, data conversion usually requires disk usage that increase the computation time.
One of the possible approaches for this problem has been suggested by the JETSCAPE framework [1], where the models are implemented as subclasses of task classes with standardized interclass communication. JETSCAPE is, however, centered around its own set of models with support for custom modules, as opposed to being a dedicated library for model coupling. Another example of a tool for Monte-Carlo code integration is HepMC3 library [2]. It provides extensive tools for MC data manipulation and is integrated with a number of Monte-Carlo event generators, as well as ROOT for I/O. While it may greatly simplify the typical workflow, it does not provide methods for explicit integration of multiple consequent models.
A lightweight C++ library named COllision LAyout (COLA) was developed to standardize and organize Monte-Carlo relativistic nucleus-nucleus collisions models, streamlining subsequent development [3]. Its design is founded on the principles of modularity and dependency injection (DI). By encapsulating models representing distinct simulation stages into self-contained modules, they can be assembled into a single program encompassing the complete modeling pipeline. This architecture offers high flexibility, allowing any module to be replaced within minutes without any recompilation. As a significant proportion of contemporary Monte Carlo code for modelling high-energy collisions is written in C++, largely due to the availability of comprehensive libraries such as ROOT [4] and Geant4 [5], C++ was selected as the language for the development of this library. Language interoperability and a possible Geant4 integration are discussed to extend the applicability of the library.
The AAMCC-MST [6] model has been split into several modules to demonstrate the possibilities of this library. In addition to that, the SMASH [7] model was ported into a generator module for COLA.
References:
- H. Putschke et al. The JETSCAPE framework. arXiv:1903.07706, 2019
- A. Buckley et al. The HepMC3 Event Record Library for Monte Carlo Event Generators. arXiv: 1912.08005, 2019
- Public repository of COLA library: https://github.com/Spectator-matter-group-INR-RAS/COLA (Accessed: December 2025)
- Rene Brun and Fons Rademakers. Root — an object oriented data analysis framework. Nucl. Instrum. Methods Phys. Res., Sect. A, 389(1):81–86, 1997.
- J. Allison et al. Recent developments in Geant4. Nucl. Instrum. Methods Phys. Res., Sect. A 835, 186–225 (2016)
- Roman Nepeivoda et al. Pre-Equilibrium Clustering in Production of Spectator Fragments in Collisions of Relativistic Nuclei. Particles, 5(1):40–51, 2022.
- J.~Weil et al. Particle production and equilibrium properties within a new hadron transport approach for heavy-ion collisions, Phys. Rev. C 94, 054905, 5 (2016)