- Shower Model Selection
- Some details
Shower Model Selection
As of version 8.3, PYTHIA comes with three different complete
parton-shower frameworks: the original "simple" showers, the VINCIA
antenna showers and the Dire dipole showers. Thereby comparisons between
these different shower approaches become easier. A warning, however,
is that the integration of VINCIA and Dire is still ongoing, so one
may expect some adjustments to occur in the next few releases,
over and above the level of normal evolution.
Since early days PYTHIA 8 has allowed external shower programs
to be linked, thereby replacing the internal simple ones, see the
Implement New Showers page.
The VINCIA and Dire codes originally were structured to make use of this
functionality, but were developed and distributed as separate codes.
Starting with version 8.300, these two programs now are fully
integrated into the PYTHIA distributions, and appear on equal footing
with the old simple showers. Which of the internal shower frameworks
that will be used in a run is determined by the following switch.
default = 1;
minimum = 1;
maximum = 3)
Choice of which shower machinery that will be used in PYTHIA (when not
linking an external shower).
option 1 : Simple Showers.
This is the "old" shower framework that has its roots in PYTHIA 6 and
has been distributed with PYTHIA 8 since the beginning. It is a less
ambitious project than the other two, but for that reason also more
mature and stable, which is a reason why it for now remains as default.
It also has some special features that the other two don't.
option 2 : VINCIA
Showers. Based on sequences of pT-ordered 2→3
branchings, the VINCIA shower model is similar to that of
ARIADNE, which it resembles strongly for final-state evolution while
adopts a different (backwards-evolution) picture for initial-state
radiation. The branching kernels, known as antenna
functions, treat coherent sums of parton pairs without requiring a
separation into "radiators" and "spectators". The current PYTHIA
implementation includes QCD and QED 2→3 branchings with full
mass dependence and, for the latter, multipole interference effects. A
few longstanding hallmarks of
VINCIA, such as
automated uncertainty variations and (iterated) matrix-element
corrections, are not yet available in this version.
option 3 : Dire Showers.
Dire (short for Dipole resummation) implements a transverse-momentum ordered
dipole shower in which radiator-spectator particle pairs evolve
simultaneously. The emission phase space is fully symmetric between radiator
and spectator, while the overall emission probability is separated into two
pieces corresponding that are enhanced (suppressed) in region collinear
(anti-collinear) to the radiator or the spectator, respectively.
Dire includes QCD and QED emissions, a detailed treatment
of (quark/lepton) mass effects, and is set up to include higher-order
corrections, such as triple-collinear or double-soft parton emissions.
Further webpages, as linked above (and in the Parton Showers
section of the left-column index), provide more detailed information
on the respective framework.
There are some differences between the showers to be aware of
- The Dire shower comes with a nontrivial variable weight. It is
therefore important that results for each event are weighted by the
event weight in
pythia.info.weight(), e.g. when filled
in a histogram. The simple and VINCIA showers by default come with
unit weight, so do not have that issue. (Non-unit weights can still
come from the hard-process cross section in some cases, so it is
prudent always to apply the event weight.)
- While all three shower models do ordinary QCD and QED radiation,
beyond that the capabilities vary.
- Tuned parameter values for PYTHIA's modeling of
nonperturbative physics are normally only valid for
the specific shower model they were tuned with,
due to differences in perturbative regularisations between the
three shower models and a nontrivial
interplay between perturbative and nonperturbative physics modeling
in general. Both VINCIA
and Dire therefore come with their own dedicated default tune
parameters which are activated in different ways, see the respective
- As mentioned above, some of the hallmark features of VINCIA
during its standalone development have not yet been carried over to
the PYTHIA implementation. This includes (iterated) matrix-element
corrections, automated uncertainty variations, tree-level 2→4
branchings and NLO corrected 2→ 3 ones, sector showers,
facilities for matching and merging, and the
VinciaRoot tool for live histogram displays.
This is work in progress
and we expect most of these features to reappear in future
releases of PYTHIA 8.3.
classes implemented the simple shower, but also acted as base classes
from which the external showers derived. This had some disadvantages
for the purpose of the tighter integration of VINCIA and Dire, so the
two aspects are now split. The
SpaceShower classes remain as bare-bones base classes,
from which the actual showers are derived. The code for the simple
showers has been moved to the new derived
SimpleSpaceShower. An external shower that does not
use any of the existing shower algorithms will therefore work as before,
which would be the normal case, but alternatively a shower could derive
from the new classes and then reuse relevant code in them.
Settings names for the simple shower have been retained through this
transformation, again for reasons of backwards compatibility of user
code, e.g. in command files. Thus setting names beginning with
to the current baseline "simple" showers, and so do the
HiddenValley: shower-related settings.
As a rule, the corresponding VINCIA settings begin with
Vincia: and the Dire ones with
Variations:. A few of the simple shower settings also
apply to the other two, as documented on the respective page.
It is possible that future evolution will standardize some settings,
while others will be more clearly separated.