Generic Settings
Here are collected a few scattered topics, controlled from the
main Pythia
class.
Parton densities
There is one main physics choice to be made with the Pythia
class, namely which parton densities to use, a choice that then is
propagated through the program. The simplest option is to pick one
of the few distributions available internally:
mode name="Pythia:pPDFset" default="2" min="1" max="2"
Parton densities to be used for proton beams (and, by implication,
antiproton ones):
option value="1": GRV 94 L;
option value="2": CTEQ 5 L.
Obviously this choice is mainly intended to get going, and a much wider
selection could be used by linking to
an external library.
For electrons/leptons there is no need to choose between different
parametrizations, since only one implementation is available, and
should be rather uncontroversial (apart from some technical details).
However, insofar as e.g. e^+ e^- data often are corrected
back to a world without any initial-state photon radiation, it is
useful to have a corresponding option available here.
flag name="Pythia:lPDF" default="on"
Use parton densities for lepton beams or not. If off the colliding
leptons carry the full beam energy, if on part of the energy is
radiated away by initial-state photons. In the latter case the
initial-state showers will generate the angles and energies of the
set of photons that go with the collision. In addition one collinear
photon per beam carries any leftover amount of energy not described
by shower emissions. If the initial-state showers are switched off
these collinear photons will carry the full radiated energy.
Random numbers
The seed of the random number generator can be set here:
flag name="Pythia:setSeed" default="off"
Indicates whether a user-set seed should be used every time the
Pythia::init
routine is called. If off, the random number
generator is initialized with its default seed at the beginning
of the run, and never again. If on, each new Pythia::init
call (should several be made in the same run) results in the random
number being re-initialized, thereby possibly starting over with the
same sequence, if you do not watch out.
mode name="Pythia:seed" default="-1" max="900000000"
The seed to be used, if setSeed
is on.
A negative value gives the default seed,
a value 0 gives a random seed based on the time, and
a value between 1 and 900,000,000 a unique different random number
sequence.
Error Checks
There is also a few settings related to error checking.
flag name="Pythia:checkEvent" default="on"
When an event has been successfully generated, check that the
final event record does not contain any unphysical particles, or
nonconserved charge or energy-momentum. If this check fails, then
pythia.next()
obtains the value false
.
mode name="Pythia:nErrList" default="0"
The number of erroneous events, in the above check, for which
event listing and other detailed information will be printed.
After that, only the normal error messages will be issued.
Error counters are always updated, and accumulated numbers can be
shown with pythia.statistics()
at the end of the run.
parm name="Pythia:epTolerance" default="1e-5"
Maximum allowed summed deviation of E, p_x,
p_y and p_z between the incoming beams and the
final state, as a fraction of the initial energy. (Unfortunetely
roundoff errors do not scale linearly with the energy, and also have
a very long tail. So while most events at lower energies may be correct
to better than 1e-10, at LHC it does not have to signal any fundamental
bug if also the default tolerance above is violated occasionally.)