<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article article-type="brief-report" dtd-version="2.3" xml:lang="EN" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Phys.</journal-id>
<journal-title>Frontiers in Physics</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Phys.</abbrev-journal-title>
<issn pub-type="epub">2296-424X</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">1502621</article-id>
<article-id pub-id-type="doi">10.3389/fphy.2024.1502621</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Physics</subject>
<subj-group>
<subject>Brief Research Report</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>SMASH as an event generator for heavy-ion collisions</article-title>
<alt-title alt-title-type="left-running-head">Sciarra and Elfner</alt-title>
<alt-title alt-title-type="right-running-head">
<ext-link ext-link-type="uri" xlink:href="https://doi.org/10.3389/fphy.2024.1502621">10.3389/fphy.2024.1502621</ext-link>
</alt-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname>Sciarra</surname>
<given-names>Alessandro</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/2854447/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/data-curation/"/>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/software/"/>
<role content-type="https://credit.niso.org/contributor-roles/supervision/"/>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/visualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>Elfner</surname>
<given-names>Hannah</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<xref ref-type="aff" rid="aff2">
<sup>2</sup>
</xref>
<xref ref-type="aff" rid="aff3">
<sup>3</sup>
</xref>
<xref ref-type="aff" rid="aff4">
<sup>4</sup>
</xref>
<xref ref-type="corresp" rid="c001">&#x2a;</xref>
<uri xlink:href="https://loop.frontiersin.org/people/2764454/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/funding-acquisition/"/>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/project-administration/"/>
<role content-type="https://credit.niso.org/contributor-roles/resources/"/>
<role content-type="https://credit.niso.org/contributor-roles/software/"/>
<role content-type="https://credit.niso.org/contributor-roles/supervision/"/>
<role content-type="https://credit.niso.org/contributor-roles/visualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
</contrib>
</contrib-group>
<aff id="aff1">
<sup>1</sup>
<institution>Institute for Theoretical Physics</institution>, <institution>Goethe University</institution>, <addr-line>Frankfurt</addr-line>, <country>Germany</country>
</aff>
<aff id="aff2">
<sup>2</sup>
<institution>Department for hot and dense QCD matter</institution>, <institution>GSI Helmholtzzentrum f&#xfc;r Schwerionenforschung</institution>, <addr-line>Darmstadt</addr-line>, <country>Germany</country>
</aff>
<aff id="aff3">
<sup>3</sup>
<institution>Frankfurt Institute for Advanced Studies</institution>, <addr-line>Frankfurt am Main</addr-line>, <country>Germany</country>
</aff>
<aff id="aff4">
<sup>4</sup>
<institution>Helmholtz Research Academy Hesse (HFHF)</institution>, <institution>GSI Helmholtz Center</institution>, <institution>Campus Frankfurt</institution>, <addr-line>Frankfurt am Main</addr-line>, <country>Germany</country>
</aff>
<author-notes>
<fn fn-type="edited-by">
<p>
<bold>Edited by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/246347/overview">Andreas Redelbach</ext-link>, Frankfurt Institute for Advanced Studies, Germany</p>
</fn>
<fn fn-type="edited-by">
<p>
<bold>Reviewed by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/1798985/overview">Qingfeng Li</ext-link>, Huzhou University, China</p>
<p>
<ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/2295957/overview">Varese Tim&#xf3;teo</ext-link>, State University of Campinas, Brazil</p>
</fn>
<corresp id="c001">&#x2a;Correspondence: Hannah Elfner, <email>h.elfner@gsi.de</email>
</corresp>
</author-notes>
<pub-date pub-type="epub">
<day>29</day>
<month>10</month>
<year>2024</year>
</pub-date>
<pub-date pub-type="collection">
<year>2024</year>
</pub-date>
<volume>12</volume>
<elocation-id>1502621</elocation-id>
<history>
<date date-type="received">
<day>27</day>
<month>09</month>
<year>2024</year>
</date>
<date date-type="accepted">
<day>16</day>
<month>10</month>
<year>2024</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#xa9; 2024 Sciarra and Elfner.</copyright-statement>
<copyright-year>2024</copyright-year>
<copyright-holder>Sciarra and Elfner</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/">
<p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.</p>
</license>
</permissions>
<abstract>
<p>In this article we present an overview of the SMASH hadronic transport approach that is applied for non-equilibrium dynamics of hadrons in heavy-ion collisions. We will give an overview about the ingredients of the approach and the applications for the dynamical description of heavy-ion collisions and for calculations of fundamental properties of the hadron gas. The main emphasis of the article will be the infrastructure for sustainable software development that we have developed over the last 10 years including extensive unit tests and continuous integration. We will also provide one section about the performance of the code and how it can be analyzed and improved in the future.</p>
</abstract>
<kwd-group>
<kwd>transport theory</kwd>
<kwd>sustainable software</kwd>
<kwd>performance</kwd>
<kwd>event generator</kwd>
<kwd>heavy-ion collisions</kwd>
</kwd-group>
<custom-meta-wrap>
<custom-meta>
<meta-name>section-at-acceptance</meta-name>
<meta-value>High-Energy and Astroparticle Physics</meta-value>
</custom-meta>
</custom-meta-wrap>
</article-meta>
</front>
<body>
<sec id="s1">
<title>1 Introduction</title>
<p>The building blocks of matter and the fundamental forces of nature are summarized in the standard model of particle physics. Besides the electromagnetic and the weak interaction, the strong force is responsible for keeping quarks together. Gluons are the corresponding exchange particles and bind the quarks in pairs and triples such that color neutral objects are formed, the hadrons. Studying hadronic matter under extreme conditions of temperature and density is the main goal of heavy-ion research. Within the collisions of nuclei that are accelerated to almost the speed of light by major accelerators around the world&#x2014;currently the Large Hadron Collider (LHC) at CERN, the Relativistic Heavy Ion Collider (RHIC) at BNL and the SIS-18&#xa0;at GSI&#x2014;the matter is heated and compressed such that the circumstances are similar to the ones only microseconds after the Big Bang or the ones in neutron star mergers [<xref ref-type="bibr" rid="B1">1</xref>].</p>
<p>At such high temperatures and/or densities, hadronic matter undergoes a phase transition to the quark-gluon plasma, where hadrons are not bound anymore and quarks and gluons become the active degrees of freedom. To study the properties of this new state of matter as well as the nature of the transition are the main motivations behind heavy-ion research. Experimentally, it is only possible to observe the final state particle distributions of hadrons and electromagnetic probes in the detector. To connect the measurements to fundamental insights, detailed models of the dynamical evolution are indispensable. The hadronic transport approach SMASH (Simulating Many Accelerated Strongly-interacting Hadrons) [<xref ref-type="bibr" rid="B2">2</xref>, <xref ref-type="bibr" rid="B3">3</xref>] is one of the general purpose event generators in the field. This microscopic transport approach incorporates the non-equilibrium dynamics of hadrons in a heavy-ion collision and is therefore applicable for the full evolution at low beam energies and for the early/late stages at high beam energies.</p>
<p>Transport approaches have been developed and applied for more than 30&#xa0;years and many approaches exist [<xref ref-type="bibr" rid="B4">4</xref>&#x2013;<xref ref-type="bibr" rid="B11">11</xref>] that are available to the public, at least on request. It is crucial to compare different approximations and frameworks carefully to assess the impact of certain choices on experimental observables. This has been carried out extensively by the Transport Model Evaluation Project [<xref ref-type="bibr" rid="B12">12</xref>&#x2013;<xref ref-type="bibr" rid="B14">14</xref>]. This exemplifies why open source codes and transparent development practices are important to allow the user to assess the validity of the approach and understand changes over time, when new features are included. Another aspect is that a modern software development infrastructure allows new students and external collaborators [<xref ref-type="bibr" rid="B15">15</xref>&#x2013;<xref ref-type="bibr" rid="B17">17</xref>] to access and work with the code without much overhead.</p>
<p>In this work, the main ingredients and scope of the SMASH transport approach are explained in <xref ref-type="sec" rid="s2">Section 2</xref>. In <xref ref-type="sec" rid="s3">Section 3</xref> the software development environment is described in detail to show-case an example of transparent development in line with the FAIR4RS rules. <xref ref-type="sec" rid="s4">Section 4</xref> addresses performance and optimization potential of the code, since it is also part of sustainable software development to use high performance computing resources efficiently. The last <xref ref-type="sec" rid="s5">Section 5</xref> summarizes the main findings and conclusions.</p>
</sec>
<sec id="s2">
<title>2 Physics application</title>
<p>SMASH is a relativistic hadronic transport code, that represents an effective solution of the relativistic Boltzmann equation incorporating all well-known hadronic species based on the particle data book from 2018 [<xref ref-type="bibr" rid="B18">18</xref>].<disp-formula id="e1">
<mml:math id="m1">
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>p</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3bc;</mml:mi>
</mml:mrow>
</mml:msup>
<mml:msub>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3bc;</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msub>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>p</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:msup>
<mml:mrow>
<mml:mi>F</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
</mml:mrow>
</mml:msup>
<mml:msubsup>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>p</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:msub>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>p</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext>coll</mml:mtext>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</disp-formula>where <inline-formula id="inf1">
<mml:math id="m2">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the distribution function, <inline-formula id="inf2">
<mml:math id="m3">
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>C</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mtext>coll</mml:mtext>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> is the collision term, <inline-formula id="inf3">
<mml:math id="m4">
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>F</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> is the force experienced by individual particles and <inline-formula id="inf4">
<mml:math id="m5">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the particle mass. For high beam energy collisions, the potential term can be neglected <inline-formula id="inf5">
<mml:math id="m6">
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>F</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, while for low beam energy collisions, <inline-formula id="inf6">
<mml:math id="m7">
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>F</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> where <inline-formula id="inf7">
<mml:math id="m8">
<mml:mrow>
<mml:mi>U</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is the mean-field potential. The collision term contains all the details of the interactions between the particles. At lower energies the reactions proceed via resonance excitation and decay while at high energies strings are excited and fragment via Pythia [<xref ref-type="bibr" rid="B19">19</xref>, <xref ref-type="bibr" rid="B20">20</xref>]. Within SMASH binary collisions are handled via a geometric collision criterion, but there is also the stochastic rates approach available relying on testparticles and interaction probabilities on a spatial grid, which allows for multi-particle reactions.</p>
<p>
<xref ref-type="fig" rid="F1">Figure 1</xref> displays several steps of the time evolution for a low energy heavy ion collision corresponding to the ones studied at SIS-18&#xa0;at GSI. One can clearly see the hot and dense region that is formed as well as the collective velocity of the system. The collective flow is one of the major observables to constrain transport coefficients and the equation of state of strongly interacting matter.</p>
<fig id="F1" position="float">
<label>FIGURE 1</label>
<caption>
<p>Figure taken from [<xref ref-type="bibr" rid="B2">2</xref>]. Snapshots of the time evolution of a Au &#x2b; Au collision at <inline-formula id="inf8">
<mml:math id="m9">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>E</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mi>i</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.8</mml:mn>
<mml:mi>A</mml:mi>
<mml:mtext>&#x2009;GeV</mml:mtext>
</mml:mrow>
</mml:math>
</inline-formula> with impact parameter <inline-formula id="inf9">
<mml:math id="m10">
<mml:mrow>
<mml:mi>b</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>3</mml:mn>
<mml:mtext>&#x2009;fm</mml:mtext>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf10">
<mml:math id="m11">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>s</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>20</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>. The energy density <inline-formula id="inf11">
<mml:math id="m12">
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>00</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:math>
</inline-formula> (background color) and velocity of Landau frame (arrows) are displayed for the baryons in the system. The velocity is proportional to the arrow length and the maximal arrow length corresponds to a velocity of 0.55 <inline-formula id="inf12">
<mml:math id="m13">
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
</caption>
<graphic xlink:href="fphy-12-1502621-g001.tif"/>
</fig>
<p>
<xref ref-type="fig" rid="F2">Figure 2</xref> (left) shows as an example the energy dependence of the proton-proton cross-sections. At low energies, resonance excitations dominate, followed by a regime of soft string excitation and decay while hard processes take over at high energies. The elastic cross-section is fitted to the available experimental data. In <xref ref-type="fig" rid="F2">Figure 2</xref> (right) the mass dependent width of the <inline-formula id="inf13">
<mml:math id="m14">
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:mrow>
</mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mn>1440</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> resonance is shown. The width is inversely proportional to the lifetime of the resonance. The mass of the resonance is determined by a relativistic Breit-Wigner distribution in each individual scattering. Dependent on the mass, different decay processes are kinematically possible, therefore the width is changing accordingly. These figures are shown to give an impression of the complexity of modeling all the individual reaction channels of more than 150 hadronic species.</p>
<fig id="F2" position="float">
<label>FIGURE 2</label>
<caption>
<p>Figures taken from [<xref ref-type="bibr" rid="B2">2</xref>, <xref ref-type="bibr" rid="B21">21</xref>]. Left: Cross-section for pp reactions as a function of the center-of-mass energy, the contributions of different processes are shown. Right: Mass-dependent width of the <inline-formula id="inf14">
<mml:math id="m15">
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>&#x2a;</mml:mo>
</mml:mrow>
</mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mn>1440</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> resonance indicating that different branching ratios appear at different thresholds.</p>
</caption>
<graphic xlink:href="fphy-12-1502621-g002.tif"/>
</fig>
<p>SMASH can be applied in several settings; <monospace>Collider</monospace> for full collision simulations as shown in <xref ref-type="fig" rid="F1">Figure 1</xref>, <monospace>Box</monospace> for infinite hadronic matter, <monospace>Sphere</monospace> for expanding matter as well as <monospace>List</monospace> where the user can insert any particle list of choice to be evolved in time. Examples of calculations in infinite hadronic matter include the calculation of transport coefficients of the hadron gas at different temperatures and chemical potentials (see, e.g., [<xref ref-type="bibr" rid="B22">22</xref>, <xref ref-type="bibr" rid="B23">23</xref>]). The expanding sphere serves as a simplified setup to simulate collision dynamics as has been employed, e.g., in [<xref ref-type="bibr" rid="B24">24</xref>]. The listmodus is crucial for calculations where SMASH is employed for the late hadronic rescattering as part of hybrid approaches. The standard model for the dynamical evolution of high energy heavy-ion collisions involves a non-equilibrium initial state, a viscous hydrodynamic evolution and hadronic rescattering. SMASH has been applied for this purpose in our own SMASH-vHLLE hybrid<xref ref-type="fn" rid="fn1">
<sup>1</sup>
</xref> approach [<xref ref-type="bibr" rid="B25">25</xref>, <xref ref-type="bibr" rid="B26">26</xref>] as well as by other theory groups around the world [<xref ref-type="bibr" rid="B27">27</xref>&#x2013;<xref ref-type="bibr" rid="B30">30</xref>]. It is also possible to couple to SMASH as a library to employ certain modules or just the hadron gas properties. The complete particle content and the resonance properties can be changed by exchanging two human readable text file, <monospace>particles.txt</monospace> and <monospace>decaymodes.txt</monospace>, which offers a lot of flexibility.</p>
<p>An additional target group of the approach are large experimental collaborations like ALICE, STAR, NA61, CBM and HADES that are running the code to make predictions or compare to their measurements. To ensure that external users can follow updates of the codes and how changes and addition of features affect the physics observables a physics analysis suite is run for each tagged version of the code. The results for each SMASH version are publicly available<xref ref-type="fn" rid="fn2">
<sup>2</sup>
</xref> and the corresponding analysis code is released<xref ref-type="fn" rid="fn3">
<sup>3</sup>
</xref> as well. This test includes inherent tests such as the comparison of collision rates to analytic expectations and detailed balance tests as well as comparisons to experimental data in vacuum (elementary cross-sections and angular distributions) and hot and dense medium (AA collisions at different beam energies). To ensure simple application, the installation of the code is documented in detail and docker/singularity images are provided for each tagged public version. There are also all commonly used output formats supported by SMASH including several stages of OSCAR formats in text and binary versions as well as a ROOT interface. In addition, there is an interface for HepMC output to connect to the RIVET analysis software that is being adopted by the heavy-ion community recently [<xref ref-type="bibr" rid="B31">31</xref>].</p>
</sec>
<sec id="s3">
<title>3 Sustainable software development</title>
<p>SMASH is an open source code developed by one working group, and employed by many theoretical groups and experimental collaborations world-wide. To make such a code sustainable, a few points are important. The software development follows strict rules that ensure the FAIR4RS principles for software development [<xref ref-type="bibr" rid="B32">32</xref>] and, hence, sustainability. The released code is publicly available on GitHub and published on Zenodo, where each version gets a DOI associated and the <monospace>CITATION.cff</monospace> file maintained in the codebase is used for metadata (Findable and Accessible). Internal development of new features and constant improvements happen in a private repository, that is regularly made public, whenever a new version of the software is released (1&#x2013;2 times per year). For flawless and straightforward usage, every new release is shipped with Docker images that allow any user to immediately run simulations in a dedicated container. Versioning is crucial to avoid misunderstandings and misinterpretation of physics results. Typically, in software development, semantic versioning is used, where the first digit highlights major changes, the second digit indicates backward compatible changes and the third digits is reserved for small bug fixes. SMASH does not fully comply with this versioning scheme, as new physics features are often driving new releases and backward compatibility is not always easy to guarantee. However, a detailed <monospace>CHANGELOG</monospace> file is kept up-to-date during development and any potentially relevant change for the user is listed and shortly described there. Every new release is provided with both an extensive code documentation as well as a less technical user guide (Reusable).</p>
<p>No large codebase could survive, grow and improve over many years without a rigorous and complete testing strategy or if good practices in software development were not applied as often as possible. Unit, integration and system tests are regularly developed in SMASH to ensure code correctness and over 100 test suites exist. <xref ref-type="fig" rid="F3">Figure 3</xref> illustrates how software tests are classified and what is usual to be expected in terms of execution time and number of tests. SMASH acceptance tests are developed in separate codebase (smash-analysis) and consists of a whole plethora of physics tests already mentioned in <xref ref-type="sec" rid="s2">Section 2</xref>.</p>
<fig id="F3" position="float">
<label>FIGURE 3</label>
<caption>
<p>The tests pyramid, taken from [<xref ref-type="bibr" rid="B33">33</xref>]. Different types of software tests are classified according to some features. The base surface of each layer is proportional to how many of that test type should exist in a codebase and it is inversely proportional to their execution time and development cost. Roughly speaking, unit tests are about testing each unit of the codebase. A unit might be, e.g., a module or sometimes a class/function. Integration tests are meant to test the correct interaction between different units. System tests ensure the correctness of larger (if not all) parts of a codebase. Acceptance tests determine whether the application meets the requirements. In our context, they ensure that physics is correctly described and, e.g., experimental data reproduced as expected.</p>
</caption>
<graphic xlink:href="fphy-12-1502621-g003.tif"/>
</fig>
<p>New developments happen on dedicated Git branches and are merged into the private codebase via pull requests, a very well known GitHub functionality, which offers the possibility to associate given requirements before authorizing the merge. These are a positive code review and the successful run of a given set of actions. The former is thoughtfully done by at least another group member, although often many developers interact exchanging suggestions and improvements. The latter, instead, is an automatic continuous integration system which is set up to build the code on a few common architectures and with different compilers, to ensure proper formatting as well as complete documentation of the code and to check that all unit, functional and system tests pass. If any of these operations fail, the merge of the pull request is denied. Due to their intense computational cost, acceptance tests cannot be run at each pull request, nor would it make sense. A natural point in development to run them is just before each new public release, in order to ensure transparency between versions.</p>
<p>Given the available tests infrastructure as well as the procedure to merge code changes into the codebase, developers are free to experiment and refactor code. This is a key aspect in order to be able to constantly apply clean code [<xref ref-type="bibr" rid="B34">34</xref>] principles and, hence, keep the software development sustainable also from the technical point of view of changing existing code and writing new one.</p>
<p>The software is written in C&#x2b;&#x2b; and built via CMake and is modular, such that it is useable in parts or fully as a library (Interoperable). Usage of new C&#x2b;&#x2b; standards is constantly considered, although the need to offer a reliable product on most machines in the world delays upgrades to most recent language features (at the moment C&#x2b;&#x2b;17 is used).</p>
</sec>
<sec id="s4">
<title>4 Performance and optimization</title>
<p>SMASH performance is a core aspect in development and there is lots of ongoing effort trying to find possible improvements. However, &#x201c;<italic>Programmers waste enormous amounts of time thinking about, or worrying about, the speed of noncritical parts of their programs, and these attempts at efficiency actually have a strong negative impact when debugging and maintenance are considered. We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil. Yet we should not pass up our opportunities in that critical 3%.</italic>&#x201d; &#x2013; D. Knuth [<xref ref-type="bibr" rid="B35">35</xref>]. This is the reason why optimization tasks are kept as much as possible separated from development and clean-code refactoring. Roughly speaking the code has first to work&#x2014;tests ensure that&#x2014;and then, exactly because tests exist, the code can be freely changed looking for better performance. This is only done after having thoroughly profiled the code, typically measuring how many times single functions are called and how much of SMASH runtime is spent executing each of them. In this way, educated guesses about possible bottlenecks can be made and optimization efforts structured.</p>
<p>In a complex codebase, no matter how carefully development is done, accidental pessimizations can occur during development. This is why SMASH is shipped with a standardized set of benchmarks which are run on the same machine before every new release, in order to check how the new version performs with respect to the previous one(s). As different compilers produce different executables in terms of performance, benchmarks are run compiling the code using two of the most common C&#x2b;&#x2b; compilers: GNU and LLVM. In <xref ref-type="fig" rid="F4">Figure 4</xref> the benchmark outcome comparing two given SMASH versions is visualized. Overall the trend is clear: The codebase performance has constantly improved and in the last couple of years SMASH got roughly two times faster in most of the possible setups.</p>
<fig id="F4" position="float">
<label>FIGURE 4</label>
<caption>
<p>Evolution of SMASH performance over four releases. Different groups of bars refer to different SMASH setups. The percentage above the second and fourth bar within each group indicates the relative improvement (green) or loss (red) of performance. Since the &#x201c;high-energy collision benchmark&#x201d; has been introduced in SMASH-2.2, 2&#xa0;bars are missing there. The potentials implementation is known to be sub-optimal and performance has slightly degraded there, because of some code-entanglement which will be cleaned up soon. <monospace>Box</monospace>, <monospace>Collider</monospace> and <monospace>Sphere</monospace> refer to the SMASH default setups already mentioned in <xref ref-type="sec" rid="s2">Section 2</xref>, while the other names refer to different physics systems and/or observables, possibly simulated with different approaches. The <monospace>bin/benchmarks</monospace> folder in SMASH codebase contains all further details.</p>
</caption>
<graphic xlink:href="fphy-12-1502621-g004.tif"/>
</fig>
</sec>
<sec id="s5">
<title>5 Summary and conclusion</title>
<p>SMASH is a general purpose event generator for heavy-ion collisions based on the relativistic Boltzmann equation. The microscopic non-equilibrium dynamics of all hadrons are simulated from initial to final stage or it is employed for the late hadronic rescatterings at high beam energies. The way how sustainable software development is employed is pioneering in the landscape of research software in the field of theoretical heavy-ion reactions. Therefore, the steps that are undertaken to ensure transparency and reproducibility of results are described in detail. The initial performance analysis and first optimization have been shown as well, but there is certainly room for additional work in the future. For example, one can look into multi-threading or parallel computing for CPU intensive settings involving stochastic rates, many testparticles or parallel ensembles.</p>
</sec>
</body>
<back>
<sec sec-type="data-availability" id="s6">
<title>Data availability statement</title>
<p>Publicly available datasets were analyzed in this study. This data can be found here: <ext-link ext-link-type="uri" xlink:href="https://github.com/smash-transport/smash/releases/tag/SMASH-3.1">https://github.com/smash-transport/smash/releases/tag/SMASH-3.1</ext-link>.</p>
</sec>
<sec sec-type="author-contributions" id="s7">
<title>Author contributions</title>
<p>AS: Conceptualization, Data curation, Investigation, Methodology, Software, Supervision, Validation, Visualization, Writing&#x2013;original draft, Writing&#x2013;review and editing. HE: Conceptualization, Funding acquisition, Investigation, Project administration, Resources, Software, Supervision, Visualization, Writing&#x2013;original draft, Writing&#x2013;review and editing.</p>
</sec>
<sec sec-type="funding-information" id="s8">
<title>Funding</title>
<p>The author(s) declare that financial support was received for the research, authorship, and/or publication of this article. Funded by the Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) &#x2013; Project number 315477589 &#x2013; TRR 211.</p>
</sec>
<ack>
<p>Computational resources have been provided by the Center for Scientific Computing (CSC) at the Goethe-University of Frankfurt and the GreenCube at GSI.</p>
</ack>
<sec sec-type="COI-statement" id="s9">
<title>Conflict of interest</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
<p>The handling editor AR declared a shared affiliation with the author(s) at the time of review.</p>
</sec>
<sec sec-type="disclaimer" id="s10">
<title>Publisher&#x2019;s note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<fn-group>
<fn id="fn1">
<label>1</label>
<p>
<ext-link ext-link-type="uri" xlink:href="https://github.com/smash-transport/smash-vhlle-hybrid">https://github.com/smash-transport/smash-vhlle-hybrid</ext-link>
</p>
</fn>
<fn id="fn2">
<label>2</label>
<p>
<ext-link ext-link-type="uri" xlink:href="http://theory.gsi.de/~smash/analysis_suite/SMASH-3.1/index.html">http://theory.gsi.de/&#x2dc;smash/analysis_suite/SMASH-3.1/index.html</ext-link>
</p>
</fn>
<fn id="fn3">
<label>3</label>
<p>
<ext-link ext-link-type="uri" xlink:href="https://github.com/smash-transport/smash-analysis">https://github.com/smash-transport/smash-analysis</ext-link>
</p>
</fn>
</fn-group>
<ref-list>
<title>References</title>
<ref id="B1">
<label>1.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Abbott</surname>
<given-names>BP</given-names>
</name>
<name>
<surname>Abbott</surname>
<given-names>R</given-names>
</name>
<name>
<surname>Abbott</surname>
<given-names>T</given-names>
</name>
<name>
<surname>Acernese</surname>
<given-names>F</given-names>
</name>
<name>
<surname>Ackley</surname>
<given-names>K</given-names>
</name>
<name>
<surname>Adams</surname>
<given-names>C</given-names>
</name>
<etal/>
</person-group> <article-title>GW170817: observation of gravitational waves from a binary neutron star inspiral</article-title>. <source>Phys Rev Lett</source> (<year>2017</year>) <volume>119</volume>:<fpage>161101</fpage>. <pub-id pub-id-type="doi">10.1103/PhysRevLett.119.161101</pub-id>
</citation>
</ref>
<ref id="B2">
<label>2.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Weil</surname>
<given-names>J</given-names>
</name>
<name>
<surname>Steinberg</surname>
<given-names>V</given-names>
</name>
<name>
<surname>Staudenmaier</surname>
<given-names>J</given-names>
</name>
<name>
<surname>Pang</surname>
<given-names>LG</given-names>
</name>
<name>
<surname>Oliinychenko</surname>
<given-names>D</given-names>
</name>
<name>
<surname>Mohs</surname>
<given-names>J</given-names>
</name>
<etal/>
</person-group> <article-title>Particle production and equilibrium properties within a new hadron transport approach for heavy-ion collisions</article-title>. <source>Phys Rev C</source> (<year>2016</year>) <volume>94</volume>:<fpage>054905</fpage>. <pub-id pub-id-type="doi">10.1103/PhysRevC.94.054905</pub-id>
</citation>
</ref>
<ref id="B3">
<label>3.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wergieluk</surname>
<given-names>A</given-names>
</name>
<name>
<surname>Weil</surname>
<given-names>J</given-names>
</name>
<name>
<surname>Tindall</surname>
<given-names>J</given-names>
</name>
<name>
<surname>Steinberg</surname>
<given-names>V</given-names>
</name>
<name>
<surname>Staudenmaier</surname>
<given-names>J</given-names>
</name>
<name>
<surname>Sorensen</surname>
<given-names>A</given-names>
</name>
<etal/>
</person-group> <article-title>smash-transport/smash: SMASH-3</article-title>.<fpage>1</fpage> (<year>2024</year>). <pub-id pub-id-type="doi">10.5281/zenodo.10707746</pub-id>
</citation>
</ref>
<ref id="B4">
<label>4.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hartnack</surname>
<given-names>C</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>ZX</given-names>
</name>
<name>
<surname>Neise</surname>
<given-names>L</given-names>
</name>
<name>
<surname>Peilert</surname>
<given-names>G</given-names>
</name>
<name>
<surname>Rosenhauer</surname>
<given-names>A</given-names>
</name>
<name>
<surname>Sorge</surname>
<given-names>H</given-names>
</name>
<etal/>
</person-group> <article-title>Quantum molecular dynamics: a microscopic model from unilac to CERN energies</article-title>. <source>Nucl Phys A</source> (<year>1989</year>) <volume>495</volume>:<fpage>303C</fpage>&#x2013;<lpage>320C</lpage>. <pub-id pub-id-type="doi">10.1016/0375-9474(89)90328-X</pub-id>
</citation>
</ref>
<ref id="B5">
<label>5.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Bass</surname>
<given-names>SA</given-names>
</name>
<name>
<surname>Belkacem</surname>
<given-names>M</given-names>
</name>
<name>
<surname>Bleicher</surname>
<given-names>M</given-names>
</name>
<name>
<surname>Brandstetter</surname>
<given-names>M</given-names>
</name>
<name>
<surname>Bravina</surname>
<given-names>L</given-names>
</name>
<name>
<surname>Ernst</surname>
<given-names>C</given-names>
</name>
<etal/>
</person-group> <article-title>Microscopic models for ultrarelativistic heavy ion collisions</article-title>. <source>Prog Part Nucl Phys</source> (<year>1998</year>) <volume>41</volume>:<fpage>255</fpage>&#x2013;<lpage>369</lpage>. <pub-id pub-id-type="doi">10.1016/S0146-6410(98)00058-1</pub-id>
</citation>
</ref>
<ref id="B6">
<label>6.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Nara</surname>
<given-names>Y</given-names>
</name>
<name>
<surname>Otuka</surname>
<given-names>N</given-names>
</name>
<name>
<surname>Ohnishi</surname>
<given-names>A</given-names>
</name>
<name>
<surname>Niita</surname>
<given-names>K</given-names>
</name>
<name>
<surname>Chiba</surname>
<given-names>S</given-names>
</name>
</person-group>. <article-title>Study of relativistic nuclear collisions at AGS energies from p &#x2b; Be to Au &#x2b; Au with hadronic cascade model</article-title>. <source>Phys Rev C</source> (<year>2000</year>) <volume>61</volume>:<fpage>024901</fpage>. <pub-id pub-id-type="doi">10.1103/PhysRevC.61.024901</pub-id>
</citation>
</ref>
<ref id="B7">
<label>7.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Lin</surname>
<given-names>ZW</given-names>
</name>
<name>
<surname>Ko</surname>
<given-names>CM</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>BA</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>B</given-names>
</name>
<name>
<surname>Pal</surname>
<given-names>S</given-names>
</name>
</person-group>. <article-title>Multiphase transport model for relativistic heavy ion collisions</article-title>. <source>Phys Rev C</source> (<year>2005</year>) <volume>72</volume>:<fpage>064901</fpage>. <pub-id pub-id-type="doi">10.1103/PhysRevC.72.064901</pub-id>
</citation>
</ref>
<ref id="B8">
<label>8.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Bratkovskaya</surname>
<given-names>EL</given-names>
</name>
<name>
<surname>Cassing</surname>
<given-names>W</given-names>
</name>
<name>
<surname>Konchakovski</surname>
<given-names>VP</given-names>
</name>
<name>
<surname>Linnyk</surname>
<given-names>O</given-names>
</name>
</person-group>. <article-title>Parton-hadron-string dynamics at relativistic collider energies</article-title>. <source>Nucl Phys A</source> (<year>2011</year>) <volume>856</volume>:<fpage>162</fpage>&#x2013;<lpage>82</lpage>. <pub-id pub-id-type="doi">10.1016/j.nuclphysa.2011.03.003</pub-id>
</citation>
</ref>
<ref id="B9">
<label>9.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Buss</surname>
<given-names>O</given-names>
</name>
<name>
<surname>Gaitanos</surname>
<given-names>T</given-names>
</name>
<name>
<surname>Gallmeister</surname>
<given-names>K</given-names>
</name>
<name>
<surname>van Hees</surname>
<given-names>H</given-names>
</name>
<name>
<surname>Kaskulov</surname>
<given-names>M</given-names>
</name>
<name>
<surname>Lalakulich</surname>
<given-names>O</given-names>
</name>
<etal/>
</person-group> <article-title>Transport-theoretical description of nuclear reactions</article-title>. <source>Phys Rept</source> (<year>2012</year>) <volume>512</volume>:<fpage>1</fpage>&#x2013;<lpage>124</lpage>. <pub-id pub-id-type="doi">10.1016/j.physrep.2011.12.001</pub-id>
</citation>
</ref>
<ref id="B10">
<label>10.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Pierog</surname>
<given-names>T</given-names>
</name>
<name>
<surname>Karpenko</surname>
<given-names>I</given-names>
</name>
<name>
<surname>Katzy</surname>
<given-names>JM</given-names>
</name>
<name>
<surname>Yatsenko</surname>
<given-names>E</given-names>
</name>
<name>
<surname>Werner</surname>
<given-names>K</given-names>
</name>
<name>
<surname>Epos</surname>
<given-names>LHC</given-names>
</name>
</person-group>. <article-title>EPOS LHC: test of collective hadronization with data measured at the CERN Large Hadron Collider</article-title>. <source>Phys Rev C</source> (<year>2015</year>) <volume>92</volume>:<fpage>034906</fpage>. <pub-id pub-id-type="doi">10.1103/PhysRevC.92.034906</pub-id>
</citation>
</ref>
<ref id="B11">
<label>11.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Gl&#xe4;&#xdf;el</surname>
<given-names>S</given-names>
</name>
<name>
<surname>Kireyeu</surname>
<given-names>V</given-names>
</name>
<name>
<surname>Voronyuk</surname>
<given-names>V</given-names>
</name>
<name>
<surname>Aichelin</surname>
<given-names>J</given-names>
</name>
<name>
<surname>Blume</surname>
<given-names>C</given-names>
</name>
<name>
<surname>Bratkovskaya</surname>
<given-names>E</given-names>
</name>
<etal/>
</person-group> <article-title>Cluster and hypercluster production in relativistic heavy-ion collisions within the parton-hadron-quantum-molecular-dynamics approach</article-title>. <source>Phys Rev C</source> (<year>2022</year>) <volume>105</volume>:<fpage>014908</fpage>. <pub-id pub-id-type="doi">10.1103/PhysRevC.105.014908</pub-id>
</citation>
</ref>
<ref id="B12">
<label>12.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhang</surname>
<given-names>YX</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>YJ</given-names>
</name>
<name>
<surname>Colonna</surname>
<given-names>M</given-names>
</name>
<name>
<surname>Danielewicz</surname>
<given-names>P</given-names>
</name>
<name>
<surname>Ono</surname>
<given-names>A</given-names>
</name>
<name>
<surname>Tsang</surname>
<given-names>MB</given-names>
</name>
<etal/>
</person-group> <article-title>Comparison of heavy-ion transport simulations: collision integral in a box</article-title>. <source>Phys Rev C</source> (<year>2018</year>) <volume>97</volume>:<fpage>034625</fpage>. <pub-id pub-id-type="doi">10.1103/PhysRevC.97.034625</pub-id>
</citation>
</ref>
<ref id="B13">
<label>13.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ono</surname>
<given-names>A</given-names>
</name>
<name>
<surname>Xu</surname>
<given-names>J</given-names>
</name>
<name>
<surname>Colonna</surname>
<given-names>M</given-names>
</name>
<name>
<surname>Danielewicz</surname>
<given-names>P</given-names>
</name>
<name>
<surname>Ko</surname>
<given-names>CM</given-names>
</name>
<name>
<surname>Tsang</surname>
<given-names>MB</given-names>
</name>
<etal/>
</person-group> <article-title>Comparison of heavy-ion transport simulations: collision integral with pions and resonances in a box</article-title>. <source>Phys Rev C</source> (<year>2019</year>) <volume>100</volume>:<fpage>044617</fpage>. <pub-id pub-id-type="doi">10.1103/PhysRevC.100.044617</pub-id>
</citation>
</ref>
<ref id="B14">
<label>14.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wolter</surname>
<given-names>H</given-names>
</name>
<name>
<surname>Colonna</surname>
<given-names>M</given-names>
</name>
<name>
<surname>Cozma</surname>
<given-names>D</given-names>
</name>
<name>
<surname>Danielewicz</surname>
<given-names>P</given-names>
</name>
<name>
<surname>Ko</surname>
<given-names>CM</given-names>
</name>
<name>
<surname>Kumar</surname>
<given-names>R</given-names>
</name>
<etal/>
</person-group> <article-title>Transport model comparison studies of intermediate-energy heavy-ion collisions</article-title>. <source>Prog Part Nucl Phys</source> (<year>2022</year>) <volume>125</volume>:<fpage>103962</fpage>. <pub-id pub-id-type="doi">10.1016/j.ppnp.2022.103962</pub-id>
</citation>
</ref>
<ref id="B15">
<label>15.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Sorensen</surname>
<given-names>A</given-names>
</name>
<name>
<surname>Koch</surname>
<given-names>V</given-names>
</name>
</person-group>. <article-title>Phase transitions and critical behavior in hadronic transport with a relativistic density functional equation of state</article-title>. <source>Phys Rev C</source> (<year>2021</year>) <volume>104</volume>:<fpage>034904</fpage>. <pub-id pub-id-type="doi">10.1103/PhysRevC.104.034904</pub-id>
</citation>
</ref>
<ref id="B16">
<label>16.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Sorensen</surname>
<given-names>A</given-names>
</name>
<name>
<surname>Oliinychenko</surname>
<given-names>D</given-names>
</name>
<name>
<surname>Koch</surname>
<given-names>V</given-names>
</name>
<name>
<surname>McLerran</surname>
<given-names>L</given-names>
</name>
</person-group>. <article-title>Speed of sound and baryon cumulants in heavy-ion collisions</article-title>. <source>Phys Rev Lett</source> (<year>2021</year>) <volume>127</volume>:<fpage>042303</fpage>. <pub-id pub-id-type="doi">10.1103/PhysRevLett.127.042303</pub-id>
</citation>
</ref>
<ref id="B17">
<label>17.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Oliinychenko</surname>
<given-names>D</given-names>
</name>
<name>
<surname>Sorensen</surname>
<given-names>A</given-names>
</name>
<name>
<surname>Koch</surname>
<given-names>V</given-names>
</name>
<name>
<surname>McLerran</surname>
<given-names>L</given-names>
</name>
</person-group>. <article-title>Sensitivity of Au&#x2b;Au collisions to the symmetric nuclear matter equation of state at 2&#x2013;5 nuclear saturation densities</article-title>. <source>Phys Rev C</source> (<year>2023</year>) <volume>108</volume>:<fpage>034908</fpage>. <pub-id pub-id-type="doi">10.1103/PhysRevC.108.034908</pub-id>
</citation>
</ref>
<ref id="B18">
<label>18.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Tanabashi</surname>
<given-names>M</given-names>
</name>
<name>
<surname>Hagiwara</surname>
<given-names>K</given-names>
</name>
<name>
<surname>Hikasa</surname>
<given-names>K</given-names>
</name>
<name>
<surname>Nakamura</surname>
<given-names>K</given-names>
</name>
<name>
<surname>Sumino</surname>
<given-names>Y</given-names>
</name>
<name>
<surname>Takahashi</surname>
<given-names>F</given-names>
</name>
<etal/>
</person-group> <article-title>Review of particle physics</article-title>. <source>Phys Rev D</source> (<year>2018</year>) <volume>98</volume>:<fpage>030001</fpage>. <pub-id pub-id-type="doi">10.1103/PhysRevD.98.030001</pub-id>
</citation>
</ref>
<ref id="B19">
<label>19.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Bierlich</surname>
<given-names>C</given-names>
</name>
<name>
<surname>Chakraborty</surname>
<given-names>S</given-names>
</name>
<name>
<surname>Desai</surname>
<given-names>N</given-names>
</name>
<name>
<surname>Gellersen</surname>
<given-names>L</given-names>
</name>
<name>
<surname>Helenius</surname>
<given-names>I</given-names>
</name>
<name>
<surname>Ilten</surname>
<given-names>P</given-names>
</name>
<etal/>
</person-group> <article-title>A comprehensive guide to the physics and usage of PYTHIA 8.3</article-title>. <source>Scipost Phys Codeb</source> (<year>2022</year>) <volume>2022</volume>:<fpage>8</fpage>. <pub-id pub-id-type="doi">10.21468/SciPostPhysCodeb.8</pub-id>
</citation>
</ref>
<ref id="B20">
<label>20.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Bierlich</surname>
<given-names>C</given-names>
</name>
<name>
<surname>Chakraborty</surname>
<given-names>S</given-names>
</name>
<name>
<surname>Desai</surname>
<given-names>N</given-names>
</name>
<name>
<surname>Gellersen</surname>
<given-names>L</given-names>
</name>
<name>
<surname>Helenius</surname>
<given-names>I</given-names>
</name>
<name>
<surname>Ilten</surname>
<given-names>P</given-names>
</name>
<etal/>
</person-group> <article-title>Codebase release 8.3 for PYTHIA</article-title>. <source>Scipost Phys Codebases</source> (<year>2022</year>) <fpage>8-r8.3</fpage>&#x2013;<lpage>r8.3</lpage>. <pub-id pub-id-type="doi">10.21468/SciPostPhysCodeb.8-r8.3</pub-id>
</citation>
</ref>
<ref id="B21">
<label>21.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Mohs</surname>
<given-names>J</given-names>
</name>
<name>
<surname>Ryu</surname>
<given-names>S</given-names>
</name>
<name>
<surname>Elfner</surname>
<given-names>H</given-names>
</name>
</person-group>. <article-title>Particle production via strings and baryon stopping within a hadronic transport approach</article-title>. <source>J Phys</source> (<year>2020</year>) <volume>47</volume>:<fpage>065101</fpage>. <pub-id pub-id-type="doi">10.1088/1361-6471/ab7bd1</pub-id>
</citation>
</ref>
<ref id="B22">
<label>22.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Rose</surname>
<given-names>JB</given-names>
</name>
<name>
<surname>Torres-Rincon</surname>
<given-names>JM</given-names>
</name>
<name>
<surname>Sch&#xe4;fer</surname>
<given-names>A</given-names>
</name>
<name>
<surname>Oliinychenko</surname>
<given-names>DR</given-names>
</name>
<name>
<surname>Petersen</surname>
<given-names>H</given-names>
</name>
</person-group>. <article-title>Shear viscosity of a hadron gas and influence of resonance lifetimes on relaxation time</article-title>. <source>Phys Rev C</source> (<year>2018</year>) <volume>97</volume>:<fpage>055204</fpage>. <pub-id pub-id-type="doi">10.1103/PhysRevC.97.055204</pub-id>
</citation>
</ref>
<ref id="B23">
<label>23.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Rose</surname>
<given-names>JB</given-names>
</name>
<name>
<surname>Greif</surname>
<given-names>M</given-names>
</name>
<name>
<surname>Hammelmann</surname>
<given-names>J</given-names>
</name>
<name>
<surname>Fotakis</surname>
<given-names>JA</given-names>
</name>
<name>
<surname>Denicol</surname>
<given-names>GS</given-names>
</name>
<name>
<surname>Elfner</surname>
<given-names>H</given-names>
</name>
<etal/>
</person-group> <article-title>Cross-conductivity: novel transport coefficients to constrain the hadronic degrees of freedom of nuclear matter</article-title>. <source>Phys Rev D</source> (<year>2020</year>) <volume>101</volume>:<fpage>114028</fpage>. <pub-id pub-id-type="doi">10.1103/PhysRevD.101.114028</pub-id>
</citation>
</ref>
<ref id="B24">
<label>24.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Dorau</surname>
<given-names>P</given-names>
</name>
<name>
<surname>Rose</surname>
<given-names>JB</given-names>
</name>
<name>
<surname>Pablos</surname>
<given-names>D</given-names>
</name>
<name>
<surname>Elfner</surname>
<given-names>H</given-names>
</name>
</person-group>. <article-title>Jet quenching in the hadron gas: an exploratory study</article-title>. <source>Phys Rev C</source> (<year>2020</year>) <volume>101</volume>:<fpage>035208</fpage>. <pub-id pub-id-type="doi">10.1103/PhysRevC.101.035208</pub-id>
</citation>
</ref>
<ref id="B25">
<label>25.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Sch&#xe4;fer</surname>
<given-names>A</given-names>
</name>
<name>
<surname>Karpenko</surname>
<given-names>I</given-names>
</name>
<name>
<surname>Wu</surname>
<given-names>XY</given-names>
</name>
<name>
<surname>Hammelmann</surname>
<given-names>J</given-names>
</name>
<name>
<surname>Elfner</surname>
<given-names>H</given-names>
</name>
</person-group>. <article-title>Particle production in a hybrid approach for a beam energy scan of Au&#x2b;Au/Pb&#x2b;Pb collisions between &#x3d;4.3 GeV and 200.0 GeV.Eur.Phys.J.A58</article-title>. (<year>2022</year>) <volume>230</volume>. <pub-id pub-id-type="doi">10.1140/epja/s10050-022-00872-x</pub-id>
</citation>
</ref>
<ref id="B26">
<label>26.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>G&#xf6;tz</surname>
<given-names>N</given-names>
</name>
<name>
<surname>Elfner</surname>
<given-names>H</given-names>
</name>
</person-group>. <article-title>Temperature and net baryochemical potential dependence of in a hybrid approach</article-title>. <source>Phys Rev C</source> (<year>2022</year>) <volume>106</volume>:<fpage>054904</fpage>. <pub-id pub-id-type="doi">10.1103/PhysRevC.106.054904</pub-id>
</citation>
</ref>
<ref id="B27">
<label>27.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Nijs</surname>
<given-names>G</given-names>
</name>
<name>
<surname>van der Schee</surname>
<given-names>W</given-names>
</name>
<name>
<surname>G&#xfc;rsoy</surname>
<given-names>U</given-names>
</name>
<name>
<surname>Snellings</surname>
<given-names>R</given-names>
</name>
</person-group>. <article-title>Bayesian analysis of heavy ion collisions with the heavy ion computational framework Trajectum</article-title>. <source>Phys Rev C</source> (<year>2021</year>) <volume>103</volume>:<fpage>054909</fpage>. <pub-id pub-id-type="doi">10.1103/PhysRevC.103.054909</pub-id>
</citation>
</ref>
<ref id="B28">
<label>28.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Everett</surname>
<given-names>D</given-names>
</name>
<name>
<surname>Ke</surname>
<given-names>W</given-names>
</name>
<name>
<surname>Paquet</surname>
<given-names>JF</given-names>
</name>
<name>
<surname>Vujanovic</surname>
<given-names>G</given-names>
</name>
<name>
<surname>Bass</surname>
<given-names>SA</given-names>
</name>
<name>
<surname>Du</surname>
<given-names>L</given-names>
</name>
<etal/>
</person-group> <article-title>Multisystem Bayesian constraints on the transport coefficients of QCD matter</article-title>. <source>Phys Rev C</source> (<year>2021</year>) <volume>103</volume>:<fpage>054904</fpage>. <pub-id pub-id-type="doi">10.1103/PhysRevC.103.054904</pub-id>
</citation>
</ref>
<ref id="B29">
<label>29.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Everett</surname>
<given-names>D</given-names>
</name>
<name>
<surname>Ke</surname>
<given-names>W</given-names>
</name>
<name>
<surname>Paquet</surname>
<given-names>JF</given-names>
</name>
<name>
<surname>Vujanovic</surname>
<given-names>G</given-names>
</name>
<name>
<surname>Bass</surname>
<given-names>S</given-names>
</name>
<name>
<surname>Du</surname>
<given-names>L</given-names>
</name>
<etal/>
</person-group> <article-title>Phenomenological constraints on the transport properties of QCD matter with data-driven model averaging</article-title>. <source>Phys Rev Lett</source> (<year>2021</year>) <volume>126</volume>:<fpage>242301</fpage>. <pub-id pub-id-type="doi">10.1103/PhysRevLett.126.242301</pub-id>
</citation>
</ref>
<ref id="B30">
<label>30.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wu</surname>
<given-names>XY</given-names>
</name>
<name>
<surname>Qin</surname>
<given-names>GY</given-names>
</name>
<name>
<surname>Pang</surname>
<given-names>LG</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>XN</given-names>
</name>
</person-group>. <article-title>D viscous hydrodynamics at finite net baryon density: identified particle spectra, anisotropic flows, and flow fluctuations across energies relevant to the beam-energy scan at RHIC</article-title>. <source>Phys Rev</source> (<year>2022</year>) <volume>105</volume>:<fpage>034909</fpage>. <pub-id pub-id-type="doi">10.1103/PhysRevC.105.034909</pub-id>
</citation>
</ref>
<ref id="B31">
<label>31.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Bierlich</surname>
<given-names>C</given-names>
</name>
<name>
<surname>Buckley</surname>
<given-names>A</given-names>
</name>
<name>
<surname>Butterworth</surname>
<given-names>J</given-names>
</name>
<name>
<surname>Gutschow</surname>
<given-names>C</given-names>
</name>
<name>
<surname>Lonnblad</surname>
<given-names>L</given-names>
</name>
<name>
<surname>Procter</surname>
<given-names>T</given-names>
</name>
<etal/>
</person-group> <article-title>Robust independent validation of experiment and theory: rivet version 4 release note</article-title>. <source>SciPost</source> (<year>2024</year>).</citation>
</ref>
<ref id="B32">
<label>32.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Barker</surname>
<given-names>M</given-names>
</name>
<name>
<surname>Chue Hong</surname>
<given-names>NP</given-names>
</name>
<name>
<surname>Katz</surname>
<given-names>DS</given-names>
</name>
<name>
<surname>Lamprecht</surname>
<given-names>AL</given-names>
</name>
<name>
<surname>Martinez-Ortiz</surname>
<given-names>C</given-names>
</name>
<name>
<surname>Psomopoulos</surname>
<given-names>F</given-names>
</name>
<etal/>
</person-group> <article-title>Introducing the fair principles for research software</article-title>. <source>Scientific Data 9</source> (<year>2022</year>) <volume>622</volume>:<fpage>622</fpage>. <pub-id pub-id-type="doi">10.1038/s41597-022-01710-x</pub-id>
</citation>
</ref>
<ref id="B33">
<label>33.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Sciarra</surname>
<given-names>A</given-names>
</name>
</person-group>. <article-title>Clean testing&#x2013;Good practices in general coding</article-title>. <source>GitHub</source> (<year>2023</year>).</citation>
</ref>
<ref id="B34">
<label>34.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Martin</surname>
<given-names>RC</given-names>
</name>
</person-group>. <article-title>Clean code: a handbook of agile software craftsmanship Upper Saddle River, NJ: prentice Hall</article-title> (<year>2009</year>).</citation>
</ref>
<ref id="B35">
<label>35.</label>
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Knuth</surname>
<given-names>DE</given-names>
</name>
</person-group>. <article-title>Structured programming with go to statements</article-title>. <source>ACM Comput Surv</source> (<year>1974</year>) <volume>6</volume>:<fpage>261</fpage>&#x2013;<lpage>301</lpage>. <pub-id pub-id-type="doi">10.1145/356635.356640</pub-id>
</citation>
</ref>
</ref-list>
</back>
</article>