Version: SMASH-3.3
List

The List modus provides a modus for hydro afterburner calculations. It takes per default files with a list of particles in Oscar 2013 format as an input. The input format can be adapted to a certain extent using the key Optional_Quantities. The provided particles are treated as a starting setup. Multiple events per file are supported. In the following, the input keys are listed with a short description, an example is given and some information about the input particle files is provided.

Warning
Because of how interactions between particles are found, SMASH might get stuck if more than two particles in the provided input particles file are at the same identical 4-position. Therefore, SMASH aborts with an error in such a case, reporting the faulty positions to the user. Even if it results in a (usually small) overhead at the beginning of the run, all events are checked before starting the simulation and possible errors about all events are reported. This is preferred to have SMASH crash after a (potentially large) number of events. It is the user's responsibility to decide how to handle such cases, depending on their framework and setup.
Attention
In List modus, the provided list of particles has to match information contained in the particles file (either the SMASH default one or that provided via the -p option), when appropriate. In particular, the mass of stable particles has to match that of the particles file. In case of a mismatch, the latter is used (modifying its energy to put the particle back on shell) and the user warned. Furthermore, all particles have to be on their mass shell. If not, their energy is adjusted and the user warned. Note that this type of warning is given only once and it is the user's responsibility to ensure that this is a desired behaviour.

File_Directory — string, required

Directory for the external particle lists. Although relative paths to the execution directory should work, you are encouraged to prefer absolute paths.


Filename — string, required

External particle lists filename. This key shall be omitted if List: File_Prefix is used. By using this key, it is understood that all events to be processed are contained in the given file, as this is the only one which will be read.


File_Prefix — string, required

Prefix for the external particle lists file. This key shall be omitted if List: Filename is used.


Shift_Id — int, optional, default = 0

Index of the first processed particle list file. Files with index smaller than the specidifed value are skipped. This key is considered when List: File_Prefix is used to specify which particles list file(s) should be read. If, instead, the user specifies the List: Filename key, this key is ignored.


Optional_Quantities — list of strings, optional, default = ["ID", "charge"]

Extra columns to be expected in the input file containing the list of particles. This is useful to e.g. continue a SMASH run that was paused while taking into account the formation time and cross section scaling properly.

The order of the quantities in the key value should respect the order of the extra columns in the input file.

Attention
It will cause wrong read-ins to leave out columns in between and there is no safety mechanism in place.

Available quantities:

  • "ID" → Particle identifier represented by an integer, unique for each particle in an event. Even if provided, the IDs will be set during the SMASH run in the order the particles are initialized.
  • "charge" → The particle's electric charge in units of the elementary charge e. This is only used for a consistency check and the charge will be set according to the PDG code data.
  • "ncoll" → Number of collisions the particle already went through.
  • "form_time" → Formation time. By default it is set to the time coordinate (first column in the input).
  • "xsecfac" → Scaling factor for the cross section, limited between 0 and 1. By default it is 1.
  • "proc_type" → Type of the last interaction (See Process types)
  • "time_last_coll" → Time when the last interaction happened.
  • "pdg_mother1" → Parent of the particle.
  • "pdg_mother2" → Second parent of the particle.
  • "spin0" → 0-th component of the spin vector.
  • "spin1" → 1-st component of the spin vector.
  • "spin2" → 2-nd component of the spin vector.
  • "spin3" → 3-rd component of the spin vector.
  • "perturbative_weight" → weight for treating heavy flavor hadrons perturbatively.

Be aware that the default setting of this key considers "ID" and "charge", which also have to be set by the user if these quantities are in the provided particle lists and other optional quantities are included as well. Hence, it is possible to leave out "ID" and "charge" in the input lists. Optional quantities that are not provided by the user as extra column in the input file are set to their default value when SMASH reads in the input file with the list of particles. Unless stated differently, this default value is 0.

Attention
The code does a minimal validation to see if the quantities are internally meaningful, but no check is done on the physics content. For instance, SMASH will not complain if a proton is said to originate from a pion via wall crossing. Ensuring the correctness of the input is the user's resposibility.
Note
If a floating point is given where an integer should be, only a warning is issued, as that might be on purpose.

Configuring an afterburner simulation

The following example sets up an afterburner simulation for a set of particle files located in particle_lists_in folder. The files are named as event10, event11, etc. (the first being number 10 is specified by the key Shift_Id). SMASH is run once for each event in the folder.

Modi:
    List:
        File_Directory: "particle_lists_in"
        File_Prefix: "event"
        Shift_Id: 10

Alternatively, if all events are contained in a single file (or if only one file has to be processed), the following configuration can be used (SMASH will then read the particle_lists_in/single_file_to_be_used.dat file).

Modi:
    List:
        File_Directory: "particle_lists_in"
        Filename: "single_file_to_be_used.dat"

Some information about the structure of input particle file

This is how an input particle file might look like:

#!OSCAR2013 particle_lists t x y z mass p0 px py pz pdg ID charge
# Units: fm fm fm fm GeV GeV GeV GeV GeV none none none
# event 0
0.1 6.42036 1.66473 9.38499 0.138 0.232871 0.116953 -0.115553 0.090303 111 0 0
# event 0 end
# event 1
0.1 6.42036 1.66473 9.38499 0.138 0.232871 0.116953 -0.115553 0.090303 111 0 0
# event 1 end

Each colum contains the described quantities. In particular, in the example above, one \(\pi^0\) with spatial coordinates

\[(t, x, y, z) = (0.1, 6.42036, 1.66473, 9.38499)\,\mathrm{fm}\]

and 4-momentum

\[(p_0,p_x,p_y,p_z)=(0.232871,0.116953,-0.115553,0.090303)\,\mathrm{GeV}\]

with mass = 0.138 GeV, pdg = 111, ID = 0 and charge 0 will be initialized for the first event (and also for the second event).

Note
SMASH is shipped with an example configuration file to set up an afterburner simulation by means of the list modus. This also requires a particle list to be read in. Both, the configuration file and the particle list, are located in the input/list folder at the top-level of SMASH codebase. To run SMASH with the provided example configuration and particle list, execute
   ./smash -i INPUT_DIR/list/config.yaml
where INPUT_DIR needs to be replaced by the path to the input directory at the top-level of SMASH codebase.