Elsevier Science Home
Computer Physics Communications Program Library
Full text online from Science Direct
Programs in Physics & Physical Chemistry
CPC Home

[Licence| Download | New Version Template] aebw_v1_0.tar.gz(91 Kbytes)
Manuscript Title: THERMUS - A Thermal Model Package for ROOT
Authors: S. Wheaton, J. Cleymans, M. Hauer
Program title: THERMUS, version 2.1
Catalogue identifier: AEBW_v1_0
Distribution format: tar.gz
Journal reference: Comput. Phys. Commun. 180(2009)84
Programming language: C++.
Computer: PC, Pentium 4, 1 GB RAM (not hardware dependent).
Operating system: Linux: FEDORA, RedHat etc.
Keywords: statistical-thermal models, resonance decays, particle multiplicities, relativistic heavy-ion collisions.
PACS: 25.75.-q, 25.75.DW.
Classification: 17.7.

External routines: Numerical Recipes in C [1], ROOT [2]

Nature of problem:
Statistical-thermal model analyses of heavy-ion collision data require the calculation of both primordial particle densities and contributions from resonance decay. A set of thermal parameters (the number depending on the particular model imposed) and a set of thermalised particles, with their decays specified, is required as input to these models. The output is then a complete set of primordial thermal quantities for each particle, together with the contributions to the final particle yields from resonance decay.
In many applications of statistical-thermal models it is required to fit experimental particle multiplicities or particle ratios. In such analyses, the input is a set of experimental yields and ratios, a set of particles comprising the assumed hadron resonance gas formed in the collision and the constraints to be placed on the system. The thermal model parameters consistent with the specified constraints leading to the best-fit to the experimental data are then output.

Solution method:
THERMUS is a package designed for incorporation into the ROOT [2] framework, used extensively by the heavy-ion community. As such, it utilises a great deal of ROOT's functionality in its operation. ROOT features used in THERMUS include its containers, the wrapper TMinuit implementing the MINUIT fitting package, and the TMath class of mathematical functions and routines. Arguably the most useful feature is the utilisation of CINT as the control language, which allows interactive access to the THERMUS objects. Three distinct statistical ensembles are included in THERMUS, while additional options to include quantum statistics, resonance width and excluded volume corrections are also available.
THERMUS provides a default particle list including all mesons (up to the K*4 (2045)) and baryons (up to the Ω- ) listed in the July 2002 Particle Physics Booklet [3]. For each typically unstable particle in this list, THERMUS includes a text-file listing its decays. With thermal parameters specified, THERMUS calculates primordial thermal densities either by performing numerical integrations or else, in the case of the Boltzmann approximation without resonance width in the grand-canonical ensemble, by evaluating Bessel functions. Particle decay chains are then used to evaluate experimental observables (i.e. particle yields following resonance decay). Additional detector efficiency factors allow fine-tuning of the model predictions to a specific detector arrangement.
When parameters are required to be constrained, use is made of the 'Numerical Recipes in C' [1] function which applies the Broyden globally convergent secant method of solving nonlinear systems of equations. Since the NRC software is not freely-available, it has to be purchased by the user. THERMUS provides the means of imposing a large number of constraints on the chosen model (amongst others, THERMUS can fix the baryon-to-charge ratio of the system, the strangeness density of the system and the primordial energy per hadron).
Fits to experimental data are accomplished in THERMUS by using the ROOT TMinuit class. In its default operation, the standard χ2 function is minimised, yielding the set of best-fit thermal parameters. THERMUS allows the assignment of separate decay chains to each experimental input. In this way, the model is able to match the specific feed-down corrections of a particular data set.

Running time:
Depending on the analysis required, run-times vary from seconds (for the evaluation of particle multiplicities given a set of parameters) to several minutes (for fits to experimental data subject to constraints).

[1] W. H. Press, S. A. Teukolsky,W. T. Vetterling, B. P. Flannery, Numerical Recipes in C: The Art of Scientific Computing (Cambridge University Press, Cambridge, 2002).
[2] R. Brun and F. Rademakers, Nucl. Inst. & Meth. in Phys. Res. A 389 (1997) 81. See also http://root.cern.ch/.
[3] K. Hagiwara et al., Phys. Rev. D 66 (2002) 010001.