Master Switches

  1. Process Level
  2. PartonLevel
  3. HadronLevel
Sometimes it may be convenient to omit certain aspects of the event generation chain. This cannot be motivated in a full-blown production run, but can often be convenient for own understanding and for debug purposes. The flags on this page allow just that.

The event generation is subdivided into three levels: the process level, the parton level and the hadron level, and flags are grouped accordingly.

Process Level

The ProcessLevel class administrates the initial step of the event generation, wherein the basic process is selected. Currently this is done either using some of the internal processes, or with Les Houches Accord input.

There could not be a complete event without an initial process, so it would not be a normal action to switch off this step. Furthermore, without a process set, it is also not possible to carry out the tasks on the parton level. It is still possible, however, to hadronize a parton-level configuration provided by some external program.

flag  ProcessLevel:all   (default = on)
If off, do not attempt to carry out any generation at all on the process level. For the parton level only final-state radiation is possible, using the Pythia::forceTimeShower(...) method. Do allow parton configurations stored in the event record to hadronize and hadrons to decay, however, as set by the HadronLevel switches. Further details are found here.

For ProcessLevel:all = on one part of the event generation on this level may be switched off individually:

flag  ProcessLevel:resonanceDecays   (default = on)
Master switch to allow resonance decays; on/off = true/false. Normal hadrons and leptons do not count as resonances, so this is aimed specifically towards Z^0, W^+-, t, h^0 and similar objects beyond the Standard Model. Do not use this option if you may produce coloured resonances and intend to allow hadronization, since currently the program would not know how to handle this.

It is possible to stop the generation immediately after the basic process has been selected, see PartonLevel:all below.

PartonLevel

The PartonLevel class administrates the middle step of the event generation, i.e. the evolution from an input (hard) process from ProcessLevel, containing a few partons only, to a complete parton-level configuration to be handed on to HadronLevel. This step involves the application of initial- and final-state radiation, multiparton interactions and the structure of beam remnants.

flag  PartonLevel:all   (default = on)
If off then stop the generation after the hard process has been generated, but before the parton-level and hadron-level steps. The process record is filled, but the event one is then not.

For PartonLevel:all = on some parts of the event generation on this level may be switched off individually:

flag  PartonLevel:MPI   (default = on)
Master switch for multiparton interactions; on/off = true/false. Further options are found here.

flag  PartonLevel:ISR   (default = on)
Master switch for initial-state radiation; on/off = true/false. Further options are found here.

flag  PartonLevel:FSR   (default = on)
Master switch for final-state radiation; on/off = true/false. Further options are found here. If you leave this switch on, the following two switches allow more detailed control to switch off only parts of the showers.

flag  PartonLevel:FSRinProcess   (default = on)
Switch for final-state radiation in association with the hard process itself; on/off = true/false. In addition PartonLevel:FSR must be on for these emissions to occur.

flag  PartonLevel:FSRinResonances   (default = on)
Master switch for final-state radiation in any resonance decays subsequent to the hard process itself; on/off = true/false. In addition PartonLevel:FSR must be on for these emissions to occur.

flag  PartonLevel:earlyResDec   (default = off)
If on then do resonance decays early, before beam handling including colour reconnection. If off then decays are done afterwards, and so are unaffected by colour reconnection. The early-decay option is still primitive, for some first studies. Eventually the choice should be made individually for each resonance based on lifetime (and the environment).

Switching off all the above MPI/ISR/FSR switches is not equivalent to setting PartonLevel:all = off. In the former case a minimal skeleton of parton-level operations are carried out, such as tying together the scattered partons with the beam remnants into colour singlets, and storing this information in the event record. It is therefore possible to go on and hadronize the event, if desired. In the latter case no operations at all are carried out on the parton level, and therefore it is also not possible to go on to the hadron level.

flag  PartonLevel:Remnants   (default = on)
Master switch for addition of beam remnants; on/off = true/false. Only intended for very special applications, and cannot be used to generate complete events. Specifically, unlike the other switches above, the program will complain and possibly crash unless you also set HadronLevel:all = off and Check:event = off.

It is possible to stop the generation immediately after the parton level has been set up, see HadronLevel:all below.

HadronLevel

The HadronLevel class administrates the final step of the event generation, wherein the partonic configuration from PartonLevel is hadronized, including string fragmentation and secondary decays.

Most of the code in this class itself deals with subdividing the partonic content of the event into separate colour singlets, that can be treated individually by the string fragmentation machinery. When a junction and an antijunction are directly connected, it also breaks the string between the two, so that the topology can be reduced back to two separate one-junction systems, while still preserving the expected particle flow in the junction-junction string region(s).

flag  HadronLevel:all   (default = on)
If off then stop the generation after the hard process and parton-level activity has been generated, but before the hadron-level steps.

For HadronLevel:all = on some parts of the event generation on this level may be switched on or off individually:

flag  HadronLevel:Hadronize   (default = on)
Master switch for hadronization; on/off = true/false. Further options are found here.

flag  HadronLevel:Decay   (default = on)
Master switch for decays; on/off = true/false. Further options are found here.

flag  HadronLevel:Rescatter   (default = off)
Master switch for hadronic rescattering, following the hadronization; on/off = true/false.
Note: If this is on, Fragmentation:setVertices and HadronVertex:rapidDecays are automatically treated as being on, since they provide spacetime information required by rescattering. Consider also turning on PartonVertex:setVertex. Further options are found here.

flag  HadronLevel:BoseEinstein   (default = off)
Master switch for the simulation of Bose-Einstein effects; on/off = true/false. Further options are found here.

flag  HadronLevel:DeuteronProduction   (default = off)
Master switch for the production of deuterons and anti-deuterons in an event; on/off = true/false. Further options are found here.