Update History
These update notes describe major updates relative to the
PYTHIA 8.186 version, which was the last regular 8.1 release.
(Minor bug fixes will continue to appear.) The step from
8.1 to 8.2 gave an occasion to break backwards compatibility,
but this should only affect a small part of the user code.
Main news by version
- 8.204: 22 January 2015
- The
examples
directory has been moved back from
the share/Pythia8/
subdirectory to the main directory,
as was the case in PYTHIA 8.1, to make it more visible to newcomers.
The optional make install
step will create a copy of
examples
in share/Pythia8/
. The rarely
used examples/outref
subdirectory is moved to
share/Pythia8/outref
.
- Fifteen new tunes have been added,
the MonashStar tune from CMS and fourteen A14 tunes from ATLAS
[ATL14a]. The latter correspond to central tunes for
four different PDF sets and ten variations in five (approximate)
eigenvector directions. Furthermore, now the chosen
Tune:pp
implies the Tune:ee
value
to which it is related, and thus the latter need not be set
separately.
- Default settings values have been updated to agree with the
Monash 2013 tune. Thus typically the list of changed settings is
significantly reduced. Thanks to Mikhail Kirsanov for suggestion.
- The compositeness section has been expanded with six further
processes, describing the pair production of excited leptons or
neutrinos. Three-body contact-interaction decay modes of these
excited states have been introduced. A bug has been fixed that
gave the wrong helicity in decays for excited quarks, leptons and
neutrinos. Further, the gamma^*/Z^0/Z'^0 can decay to a pair
of excited fermions provided that the channels are added to the
list of allowed ones. Based on code provided by Olga Igonkina.
- A new interface to the EvtGen decay package, primarily intended
for bottom and charm decays, has been implemented. It is available
in
include/Pythia8Plugins/EvtGen.h
and an example how
to set it up is found in main48
.
- Several minor changes in the
examples
subdirectory.
This includes the README
, Makefile
an
runmains
files. The main61
example program
has been removed, since now LHAPDF can be loaded dynamically for
main42
, so that the two become equivalent. Further
main62
has been renamed main43
, to gather
HepMC-related examples, and testlhef3.lhe
has been
renamed wbj_lhef3.lhe
.
- A new example
main30
how to create a tailormade
copy of the ordinary event record, here with a history tracing
of the hard process closer to the PYTHIA 6 conventions.
- The ProMC input-output file format
is now implemented among the libraries that can be
configure
d to run with PYTHIA. An examples is provided
in main46.cc
. Thanks to Sergei Chekanov.
- Change in the setup of final-state-shower colour dipoles for the
non-default case of no interleaving, whereby it becomes less likely
to pick a colourless final-state particle as recoiler. New option
TimeShower:allowMPIdipole
gives more flexibility.
Thanks to Mihoko Nojiri and Bryan Webber.
- New options 3 and 4 for
TimeShower:pTdampMatch
and SpaceShower:pTdampMatch
, with new default 3 for the
latter. The main effect is that, by default, t tbar
production (as a 2 → 2 process) obtains damped
radiation above the process scale. Thanks to Andy Buckley
for suggestion.
- Initialization will now abort if a mode has been chosen with a
non-allowed value. This applies to those modes that have been
defined with the
modepick
or modefix
labels in the xmldoc/*.xml
files and, for the former,
where maximal and minimal values have been specified. The former
label is used to represent a discrete set of options, and so any
value outside the allowed range is just plain wrong. Thanks to James
Monk for suggestion.
- Added
getChannels()
in SusyResonanceWidths
to dynamically create the decay table for SUSY particles and thereby
to remove duplication in the XML file.
- New file
SusyWidthfunctions
. Added new class
WidthFunction
to handle calculation of three- and four-body
decay widths.
- In
main24.cc
the example spectrum file format has been
updated from SLHA1 to SLHA2, obtained from SoftSusy 3.5.1. The two new
slha1-example.spc
and slha2-example.spc
files
replace the older cmssm.spc
, snowmass2.spc
and softsusy.spc
ones.
- In
LesHouches.cc
the read-in of LHEF headers
containing tags that open and close on the same line (e.g., a single
line containing <tag>blabla</tag>
) has been
enabled. This could previously lead to improper initialization and
crashes. Also implemented a check for forgotten close-tag statements,
with a warning issued to the user. Thanks to Alexander Belyaev and
Alexander Pukhov.
- Bug fix in the conversion from the
xml
settings files
to their php
radio-button equivalents, whereby the text
describing some options was not set properly. (Typically the text of
the previous option was repeated.) Thanks to Radek Ziebcik.
- Minor fixes in the LHEF version 3 reader. Introduce a new
matching writer of LHEF version 1 or 3 files.
- Introduction of a new mode
LesHouches:setLeptonMass
,
such that by default final-state charged leptons acquire sensible
masses, even when the matrix-element calculations have been
performed with massless leptons. This and other energy-momentum
adjustments, e.g. for limited-precision storage, are now located in
ProcessContainer::constructProcess
.
http://home.thep.lu.se/Pythia
has been introduced
as a simpler but (hopefully) equivalent address to
http://home.thep.lu.se/~torbjorn/Pythia.html
, and
various documentation has been updated accordingly. Thanks to
Leif Lönnblad.
- New file
include/Pythia8Plugins/execinfo.h
contains
trivial copies of three backtrace methods needed to be able to compile
PYTHIA under Cygwin. The README
file and the worksheet
updated with brief information on three (non-supported) ways of working
with PYTHIA under Windows. Thanks to and Theo Hughes and Gordon Watts.
- Bug fix in check for colour sextets and transfer of such colour
information. Thanks to Alexander Belyaev and Alexander Pukhov.
- Improved handling of stray characters in the SUSY Les Houches
code. The check on the consistency of decay tables has been removed.
Improved warning/error printing in the SLHA interface.
- Bug fix in new beam remnant model, so that it basically
operates like the old one for e^+e^- annihilation.
- Two bug fixes in the new colour reconnection model, one for
diquarks at the ends of junction strings, and another to check that
coloured resonances are processes with early resonance decays option.
- Bug fix for multiple
Pythia::init()
calls, where
beam contents were not properly reset. Thanks to Josh Bendavid.
- Bug fix such that the valence content of a pi^0,
K^0_S, K^0_L and Pomeron is reselected for each
new event. Thanks to Radek Ziebcik.
- Fix typo in constants of the tau → 3 pi current
for the amplitudes of the rho, rho(1450), and
f2. Thanks to Ian Nugent.
- Small bug fixes for string and ministring fragmentation, for the
case when a low-mass (order 2 GeV) system contains at least three
partons, which fail to define a unique direction for the final
string region.
- New parameter
BeamRemnants:reducedKTatHighY
introduced
to reduce technical problems with low-mass MPIs produced at high
rapidities when primordial kT is introduced.
- Small bug fix in the global-recoil option for timelike showers.
- Update year to 2015, remove tabs and superfluous blanks, break long
lines where meaningful, and some further minor changes.
- 8.201: 14 October 2014
- The Introduction to PYTHIA 8.2 has now been assigned
the arXiv:1410.3012 [hep-ph] identifier, which has been introduced
in code and text.
- The
enable-shared
by mistake was not listed
among allowed configure options.
- Corrected a few tiny documentation typos.
- 8.200: 11 October 2014
- A new
share/Pythia8
directory collects all
documentation and example code. The examples
,
htmldoc
, phpdoc
and xmldoc
directories have been moved here. The main-directory files
AUTHORS
, COPYING
, GUIDELINE
and README
are also copied here during installation.
- A new
share/Pythia8/pdfdoc
directory collects pdf
documents that are linked from the htmldoc
and
phpdoc
directories. Over time it will provide more
in-depth descriptions of various physics aspects than offered in
the html/php-formatted documentation. In addition to the official
main publication and the worksheet, currently notes on LO vs. NLO
PDFs and on the g → q qbar branching kernel are
included.
- A new
include/Pythia8Plugins
directory collects
code that does not form part of the core PYTHIA functionality but
still has a general usefulness. Code in this directory will not be
compiled as part of the Pythia library, but can be linked where needed.
This new directory contains
- the jet matching classes in
CombineMatchingInput.h
,
GeneratorInput.h
and JetMatching.h
, moved
from the examples
directory;
- the
PowhegHooks
user hook, to veto shower emissions
above the POWHEG scale, formerly found in examples/main31.cc
;
- the
Pythia8ToHepMC
interface for output of PYTHIA events
into the HepMC format, combining the code previously in
include/Pythia8ToHepMC.h
and
pythia8tohepmc/Pythia8ToHepMC.cc
into a new
HepMC2.h
file;
- the
FastJet3.h
interface of PYTHIA particles to the
FastJet 3 library of jet finders, formerly found in
include/FastJet3.h
; and
- the
LHAPDF5.h
and LHAPDF6.h
files for
interfaces to the LHAPDF library (see further below).
- The configure/make structure has been considerably rewritten.
Now all external libraries to be linked are specified in the
main-directory
configure
step, along with other options,
so there is no longer an examples/configure
. The
make
step will, as before, compile and install libraries
inside the current directory, such that the main programs in the
examples
directory can be run. One small difference is that
also the archive libraries are installed in lib
and not in
lib/archive
.
A new optional make install
step allows you to copy
files to more convenient locations. The default option, with no directories
specified in the configure
step, requires you to have
superuser privileges. Then files will be copied to standard locations
as follows:
lib/ | → | /usr/lib/ |
include/ | → | /usr/include/ |
share/ | → | /usr/share/ |
pythia-config | → | /usr/bin/ |
-
The
pythia8-config.in
script has been replaced by a new
bin/pythia8-config
script. See the README file for details.
The make install
step by default will put a copy of it in
/usr/bin
.
- The interface to LHAPDF is now dynamically loaded when requested,
and can be either to version 5 or 6 of the library. The dummy code
previously in
lhapdfdummy/LHAPDFDummy.cc
, to be linked
when LHAPDF is not, is no longer required. The two new files
LHAPDF5.h
and LHAPDF6.h
in the
include/Pythia8Plugins
directory contain the necessary
interface code. The selection of PDF sets, notably for the proton,
has been extended to simplify mixing of internal and external PDF sets,
and it is now possible to specify different PDFs for the two incoming
protons at the LHC, see the PDF Selection
description.
- The new
LHEF3.h
file contains a generic interface for
reading Les Houches Event Files of versions 1.0, 2.0 and 3.0. This
allows more information to be read and studied by the author. Currently
PYTHIA itself makes little use of the information beyond the one in 1.0,
but it is available among the
Event Information.
Examples are found in main37.cc
and main38.cc
.
- The new
Beams:strictLHEFscale
switch can be used to
restrict parton showers in resonance decays to be below the input
Les Houches scale, not only the hard process itself.
The new Beams:setProductionScalesFromLHEF
switch can be used
to restrict the emission off each separate parton to be below its specific
scale.
- The
rootexamples
directory has been removed, and the
two programs examples/main91
and examples/main92
now illustrate how ROOT can be used in conjunction with PYTHIA.
- The executable built from
examples/mainxx.cc
is now
named examples/mainxx
, while previously it was named
examples/mainxx.exe
.
- The rudimentary support for compilation on Windows platforms,
present in PYTHIA 8.1, has not yet been updated for 8.2 and so is omitted.
Also the README.HepMC file is omitted for now.
- The ProMC interface is broken, and has been removed for now.
- Several methods have been removed from the
Event
class
since the properties now instead can be accessed from the individual
Particle
instance, if this particle belongs to an event.
These include iTopCopy
, iBotCopy
,
iTopCopyId
, iBotCopyId
,motherList
,
daughterList
, sisterList
,
sisterListTopBot
, isAncestor
,
statusHepMC
and undoDecay
.
- A number of deprecated
Pythia::init(...)
methods with
varying arguments have been removed. Instead call init()
without any arguments and use
Beam Parameters settings to
specify beams and energies in different ways.
- The deprecated
Pythia::statistics(...)
method has been
removed; instead use Pythia::stat(...)
.
- Several settings in the
Main:
series have been removed.
Most of these have already found replacements in the Init:
,
Next:
and Stat:
ones, and have been marked as
deprecated. Four further ones were deemed so peripheral that they were
removed altogether, but of course the underlying functionality remains.
- A few aliases for (parts of) settings names have been removed.
Previously "Multiple" was mapped to "Multiparton", "MI" to "MPI" and
"minBias" to "nonDiffractive" if a settings name was not found for the
original input string.
- The default tune has been changed from 4C to Monash 2013, meaning
Tune:ee = 7
and Tune:pp = 14
. The old 4C
tune that was default in 8.1 can be recovered with
Tune:ee = 3
and Tune:pp = 5
.
Also most other older tunes are based on Tune:ee = 3
.
- Two new CMS underlying-event tunes [CMS14] and the ATLAS
AZ tune [ATL14] have been added as options.
- The default handling of the g → q qbar splitting kernel
has been changed, affecting in particular heavy-flavour production.
TimeShower:weightGluonToQuark
has been changed from 1 to 4
to do this. All old tunes are with the 1 value but, since the tunes are
not probing the detailed g → q qbar behaviour, this is
not set as part of the tune options.
- Christine O. Rasmussen joins as new PYTHIA collaboration member.
- A new model for the handling of beam
remnants as an option to the old one, which remains as default
for now.
- Two new models for colour
reconnection, one quite sophisticated and one simpler.
This involves several new classes and files. It also includes some
changes in the hadronization framework, notably for the handling of
junctions. The old model remains as default for now. The
BeamRemnants:reconnectColours
flag to switch on/off
reconnection has been renamed ColourReconnection:reconnect
,
the main parameter BeamRemnants:reconnectRange
of the old
model has been renamed ColourReconnection:range
, and several
new settings have been introduced, notably
ColourReconnection:mode
to switch among the three models.
- A new
include/Pythia8Plugins/ColourReconnectionHooks.h
makes available an even larger selection of toy colour reconnection
models, via user hooks. Some of them are only intended for top decays,
for top mass uncertainty studies, whereas others can be used more
generally. The examples/main29.cc
program illustrates how
the different options should be set up.
- Several new features and improvements in the matching/merging
machinery. Notably the aMC@NLO matching scheme has been implemented,
see the aMC@NLO Matching
description. To this end the global-recoil option of timelike showers
has been improved, and security checks have been introduced for
inaccurate LHEF input. A new
main89.cc
example has been
introduced, where different .cmnd
files show how to set
up either CKKW-L, FxFx, MLM, UMEPS or UNLOPS merging.
- Improved capability for the
LHAup
Les Houches interface
to read SLHA information embedded in the input file or stream.
- The
Makefile
s have been updated to take into account
the changed structure of the HepMC interface.
- The Z' production process has been updated to optionally
allow decay to a fourth generation of fermions, with universal or
non-universal couplings.
- Introduction of a new Higgs CP-mixing parametrization via a mixing
angle phi as described in Higgs
Processes. The choice of the Higgs CP-mixing parametrization
now also affects the distributions of the tau decay products
from the processes H^0 → tau^+ tau^-.
- Bug fix in H^0 → W^+ W^- → 4 f matrix element
for mixed CP-state case.
- Various improvements and finer grain control for the determination
of tau decay correlations and tau polarizations. By
default the decays of tau pairs from known resonance decays
in Les Houches input are now correlated.
The
ParticleDecays:sophisticatedTau
mode
in Particle Decays has been renamed
TauDecays:mode
, as well as all tau-related
ParticleDecay
options, with two new options of
using only the internal machinery to determine correlations and
polarizations, and only using the provided SPINUP digit from Les
Houches input. The option TauDecays:externalMode
has been
introduced to control the interpretation of the SPINUP digit.
- For Les Houches Event input the energy of a particle is recalculated
from its three-momentum and mass, in order to limit mismatches from
limited numerical precision in the input values.
- Bug fix in the two-loop running alpha_s, for the matching
to six flavours at the top mass.
- Eliminate harmless compiler warnings for
FJcore
.
- Updated Introduction (= the official 8.2 article) and Worksheet.