Version: SMASH-3.1
Box
Attention
To perform the box simulation, SMASH introduces a grid to divide space into cells and the choice of the minimum cell size is driven by physics. In particular, the box is split into cells which have to be larger than the maximum interaction range of a particle traveling at the speed of light throughout a time step. Therefore the choice of the Delta_Time and Length keys has to be done carefully. Larger time steps will require a larger minimum cell size which, in turn, will need a larger box, since at least 2 cells in each direction have to exist (because of periodic boundary conditions). If this condition is not fulfilled, SMASH will abort with an error. It is worth mentioning that using Testparticles might also be advantageous, as they reduce the particles maximum interaction length and, hence, the minimal cell size.
Furthermore, even if the grid can be constructed, the value of Delta_Time is connected to another aspect and it should not be chosen too large, since the frequency with which collisions through the walls are searched for is performed only once in each time step. A rough approximation (imposed in the code) is that \( 10\cdot\mathtt{Delta\_Time} \le \mathtt{Length} \), and a smaller time step than the provided one might be needed in case SMASH aborts with an error about this aspect.
Warning
Because the box modus is intended to simulate an equilibrated hadron gas, features that break detailed balance should not be used, such as "Strings" (see here) and the "TopDown" approach of evaluating total cross sections (see here).

Mandatory keys

Init_Multiplicities — map<int,int>, required

See   Sphere: Init_Multiplicities.


Initial_Condition — string, required

Controls initial momentum distribution of particles.

  • "peaked momenta" → All particles have momentum \(p=3\,T\), where \(T\) is the temperature. Directions of momenta are uniformly distributed.
  • "thermal momenta" → Momenta are sampled from a Maxwell-Boltzmann distribution.
  • "thermal momenta quantum" → Momenta are sampled from a Fermi-Dirac distribution or a Bose-Einstein distribution, depending on the type of particle.

Length — double, required

Length of the cube's edge in fm.


Start_Time — double, required

Starting time of the simulation in fm. All particles in the box are initialized with \(x^0=\)Start_Time.


Temperature — double, required

Temperature in GeV of the box.


Optional keys

Account_Resonance_Widths — bool, optional, default = true

See   Sphere: Account_Resonance_Widths.

Note
Normally, one wants this option true. For example, for the detailed balance studies, it is better to account for spectral functions, because then at \(t=0\) one has exactly the expected thermal grand-canonical multiplicities, that can be compared to final ones. However, by toggling true to false one can observe the effect of spectral functions on the multiplicity. This is useful for understanding the implications of different ways of sampling resonances in hydrodynamics.

Baryon_Chemical_Potential — double, optional, default = 0.0

See   Sphere: Baryon_Chemical_Potential.


Charge_Chemical_Potential — bool, optional, default = false

See   Sphere: Charge_Chemical_Potential.


Equilibration_Time — double, optional, default = -1.0

Time in fm after which the output of the box is written out. The first time however will be printed. This is useful if one wants to simulate boxes for very long times and knows at which time the box reaches its thermal and chemical equilibrium. The default set to -1 is meaning that output is written from beginning on, if this key is not given.


Strange_Chemical_Potential — double, optional, default = 0.0

See   Sphere: Strange_Chemical_Potential.


Use_Thermal_Multiplicities — bool, optional, default = false

See   Sphere: Use_Thermal_Multiplicities.


Specifying jets

The Jet section can be specified in the Box section with the same meaning it has for the Sphere modus. It is namely possible to put a jet in the center of the box, on a outbound trajectory along the x-axis. Also here, if no PDG code is specified, but the section is given, an error about the missing key is raised.

Jet_Momentum — double, optional, default = 20.0

See   Sphere: Jet: Jet_Momentum.

Jet_PDG — int, required

See   Sphere: Jet: Jet_PDG.


Configuring a Box Simulation

The following example configures an infinite matter simulation in a Box with 10 fm cube length at a temperature of 200 MeV. The particles are initialized with thermal momenta at a start time of 10 fm. The particle numbers at initialization are 100 \( \pi^+ \), 100 \( \pi^0 \), 100 \( \pi^- \), 50 protons and 50 neutrons.

 Modi:
     Box:
         Length: 10.0
         Temperature: 0.2
         Initial_Condition: "thermal momenta"
         Start_Time: 10.0
         Init_Multiplicities:
             211: 100
             111: 100
             -211: 100
             2212: 50
             2112: 50

On the contrary, it is also possible to initialize a thermal box based on thermal multiplicities. This is done via

 Modi:
     Box:
         Length: 10.0
         Temperature: 0.2
         Use_Thermal_Multiplicities: True
         Initial_Condition: "thermal momenta"
         Baryon_Chemical_Potential: 0.0
         Strange_Chemical_Potential: 0.0
         Charge_Chemical_Potential: 0.0
         Account_Resonance_Widths: True

If one wants to simulate a jet in the hadronic medium, this can be done by using the following configuration setup:

 Modi:
     Box:
         Length: 10.0
         Temperature: 0.2
         Use_Thermal_Multiplicities: True
         Initial_Condition: "thermal momenta"
         Jet:
             Jet_PDG: 211
             Jet_Momentum: 100.0
Note
The box modus is most useful for infinite matter simulations with thermal and chemical equilibration and detailed balance. Detailed balance can however not be conserved if 3-body decays (or higher) are performed. To yield useful results applying a SMASH box simulation, it is therefore necessary to modify the provided default particles.txt and decaymodes.txt files by removing 3-body and higher order decays from the decay modes file and all corresponding particles that can no longer be produced from the particles file. In addition, strings need to be turned off, since they also break detailed balance due to lacking backreactions, and the total cross section should be computed by summing the partial processes.

SMASH is shipped with example files (config.yaml, particles.txt and decaymodes.txt) meeting the above mentioned requirements to set up an infinite matter simulation. These files are located in the input/box folder at the top-level of SMASH codebase. To run SMASH with the provided example configuration for the box system, execute
    ./smash -i INPUT_DIR/box/config.yaml\
            -p INPUT_DIR/box/particles.txt\
            -d INPUT_DIR/box/decaymodes.txt
where INPUT_DIR needs to be replaced by the path to the input directory at the top-level of SMASH codebase.