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.226: 26 April 2017
- Implementation of gamma-hadron collisions and
photoproduction in lepton-hadron ones. Section
Photon-photon Interactions renamed to
Photoproduction to cover also
gamma-hadron documentation. Modified
GammaKinematics
class to sample photon kinematics also with one photon. Added
case gamma-hadron to SigmaTotal
.
- Automatic mixing of resolved and unresolved photon-photon interactions.
Implemented by introducing resolved and unresolved PDF pointers for a
BeamParticle
, and calling the relevant one once the process
has been selected. In case of one direct photon the correct number of
photon-initiated processes (PhotonParton
) is set by
ProcessContainer
. A new method Info::photonMode()
to output the type of the process. Updated sample program
main69.cc
.
- Check if there is room left for photon-beam remnants also in case
of softQCD processes. Very rarely fails.
- A new partonic subprocess q gamma → q gamma, mainly to
study photon production in lepton → gamma - hadron
collisions.
- Modified kinematics methods for DIS and photoproduction physics,
to take beam particle masses into account where important.
For DIS, e.g., the incoming lepton is kept massive, which leads to
slight changes only visible at very low energies.
- Redesigned the merging machinery to allow users to define their
own ME+PS merging plugin, which can then be used by Pythia. This change
does not affect the physics of Pythia's internal merging schemes.
For further details see the new section on "Implementing an external
ME+PS combination scheme and interfacing this plugin with Pythia"
on the Matching and Merging
page.
- Added some new (optional) virtual functions to the timelike and
spacelike showers, to ease ME+PS merging with shower plugin codes. The
change does not impair the compatibility of existing shower plugin codes.
See the description on how to
Implement New Showers,
the new methods
allowedSplitting(...)
and
getRecoilers(...)
, and the modified
getSplittingName(...)
ones.
- New method
Pythia::addUserHooksPtr(...)
allows
the simultaneous use of several User Hooks.
When several hooks are applicable for a given task the net effect is
multiplicative, in weights or in veto survival. It is up to the user
to ensure that such combinations are the intended ones.
- New User Hooks added to set the
space-time vertices for the ISR, FSR and MPI evolution process.
New
main65.cc
example illustrates how to set it up.
Thanks to Christian Bierlich.
- Bug fix in the user hooks machinery for setting fragmentation
parameters, and an extension of this framework also to junction
topologies.
- Four central members from the NNPDF 3.1 sets are made available,
as
PDF:pSet
(and equivalent) codes 17 - 20: the LO
ones with alpha_s = 0.130 and 0.118, and the
NLO and NNLO ones with the latter alpha_s. Note that these
are rather different from the default NNPDF 2.3 ones; in particular
the small-x behaviour is completely changed. Therefore
MPI cross sections are appreciably modified for current parameter
values, and retunes will be necessary before using NNPDF 3.1 in
production. Thanks to Juan Rojo.
- Construct pi^+- PDFs so that dbar = u
and d = ubar, shortcutting the returned d, dbar
values since these are not always constructed correctly in LHAPDF.
Thanks to Vincent Andrieux.
- Upgrade from fjcore version 3.0.5 to 3.2.1. This removes the
usage of the deprecated
std::auto_ptr
C++ feature.
Thanks to Ivan Razumov.
- Fix a number of harmless but annoying warnings issued in some
versions of GCC 6.x, where the
-Wmisleading-indentation
flag appears to be on by default. Thanks to Ivan Razumov.
- Bug fix the calculation of enhancement factor for the machinery
with two hard processes. By mistake statistics was added once with
the correct value for each event (accessible with
Info::enhanceMPI()
), and once with unity, leading to a
dilution of the effect. The average enhancement factor is now also
calculated at initialization, see Info::enhanceMPIavg()
and Info::enhanceMPIoldavg()
.
- Bug fix in
SusyLesHouches.cc
, in which the unitary
checks of SLHA mixing matrices previously ignored imaginary components,
leading to failures when reading in spectra with explicit CP violation.
Thanks to M. Noormandipur for pointing to this bug. Mixing-matrix output
simultaneously updated so that the magnitudes, rather than the real parts,
of mixing-matrix elements are printed.
- A new approach has been introduced to force settings values
outside their allowed range, either by using the keyword
FORCE
after the key (= parameter name) in an
readString()
or readFile()
command line,
or by using a new optional third argument force = true
(which is false
by default) in the Settings
methods used to change values. The latter methods also will add a new
key to the database if not already there when force = true
is set. The old special force
methods are now redundant
and will be removed in the next major release.
- New methods
Settings::getReadHistory
and
ParticleData::getReadHistory
return a vector
with all strings that have been read in by the
Settings::readString()
and
ParticleData::readString()
methods, respectively, and thereby also the information set by the
Pythia::readString()
and Pythia::readFile()
commands.
- Introduce possibility to make phase space cuts on the DIS
Q^2 variable.
- Add options to use the DIS Q^2 variable as factorization
and/or renormalization scale.
- Introduce some freedom to modify the default shape of the
low-mass part of diffractive cross sections, and thereby also the
integrated value.
- The new
LHAupHelaconia
class in
include/Pythia8Plugins/LHAHelaconia.h
provides an
interface to the HelacOnia [Sha15] package for onium production,
see further the new
HelacOnia Processes page. The
new main35.cc
example shows how to use the interface,
and how to compare with corresponding internal Pythia results.
- Modified
configure
and Makefile
s
fixes an issue with linking shared libraries on a Mac, and automatizes
the selection of whether to link static or shared libraries to the
example main programs.
- Two new
Vec4
methods introduced: cross4
for cross product of three four-vectors, and getTwoPerpendicular
to create to four-vectors perpendicular to two given ones.
- New
main74.cc
illustrates how the modified Mass Drop
Tagger code in FastJet can be used to improve mass reconstruction of
a resonance.
- When using the
PhaseSpace:bias2Selection
to reweight
high-pT events the PhaseSpace:pTHatMinDiverge
value is now used as ultimate fail-safe to avoid pT = 0.
- Bug fix in the
TimeShower::findMEtype(...)
for a
few rare cases.
- Bug fixes for the squark-gluino and gluino-chargino processes.
The charge-conjugate processes were not handled correctly, since the
PDF factors are different, and have now been separated.
- Minor addition to
Streams.cc
includes to avoid
problems on one platform. Thanks to Joshua Ellis.
- Bug fix in
HVStringFlav
, which otherwise left
some Hidden Valley particles massless. Thanks to Colleen Treado.
- A few minor fixes when Dark Matter is used as incoming beams in
Les Houches input. Thanks to Roberto Ruiz.
- Minor bug fix where the process container for resonance decays
(only) from LHE input is not initialized. This can lead to the problem
where particle input without lifetimes are not corrected, even when
the
LesHouches:setLifetime
mode is non-zero.
- Bug fix in LED/Unparticle + Z^0 production: correct
cross section for allowed Z^0 decay channels. Thanks to
Andreas Albert.
- Fixed memory leak in
TimeShower
, for the case when
the ProcessLevel is off. Thanks to Ryosuke Sato.
- Fix that the MPI machinery did not work for the (infrequently used)
MultipartonInteractions:bProfile = 0
option.
- Minor division-by-zero bug fix in statistics calculation and
harmless uninitialized
bool
s in CoupSUSY
.
Thanks to Vittorio Zecca.
- Minor numerical precision improvements in gamma-gamma kinematics
and in tHat and uHat construction.
- 8.223: 5 January 2017
- Nadine Fischer and Leif Lönnblad join as co-authors,
while Jesper Roy Christiansen leaves. Nishista Desai, Ilkka Helenius
and Stefan Prestel have new affiliations.
- The machinery for resolved γγ collisions has been extended,
such that now soft processes and MPIs can be simulated, also when
embedded in l^+l^- collisions. (But not yet diffraction.)
Also some further improvements have been introduced, see
the Photon-photon Interactions
description. This implies several changes in different parts of
the code, mainly related to beam remnants and beam particles.
-
Also direct-resolved and direct-direct processes are included for
γγ interactions, with photon beams and within lepton beams.
This involves new subprocesses where one initiator is a photon and the
other a parton. A new sample main program (
main69.cc
)
illustrates how the different classes of γγ interactions
are combined.
- The kinematics of γγ have been revised to include all
mass corrections and to handle also non-equal leptons. A new class
GammaKinematics
is introduced to handle the sampling of
the kinematics. A fix for the ProcessLevel::roomForRemnants()
function, which rejected a bit too many processes when photon-photon
collisions were generated within lepton beams.
- New cuts for the kinematics of γγ interactions in
l^+l^- collisions are introduced, for details see
Photon-photon Interactions.
Matching new kinematics output methods, see
Event Information.
- A PDF for point-like photon is included. In case of lepton PDFs, the
photon contribution has now restricted virtuality and also more accurate
lower limit for the virtuality. A new option to use separate PDFs for
hard processes, with photon PDFs obtained from LHAPDF5. CJKL PDFs are
modified so that, instead of freezing the scale below its minimum,
the scale evolution is approximated with log(Q^2).
- A new alternative "thermal hadronization" option is introduced,
wherein an exponential exp(-pT / T) hadronic transverse
momentum spectrum replaces the default Gaussian one, with a
"temperature" T as free parameter. Given this pT,
the next hadron (consistent with local flavour conservation) is picked
among the possibilities with an exp(-mT / T) weight.
This option is accessed with
StringPT:thermalModel = on
.
See further the Fragmentation and
Flavour Selection descriptions
and the article [Fis16].
- A new option
StringPT:closePacking = on
allows to
enhance the pT width in regions where there is a high
density of partly overlapping strings. This works both for the
default Gaussian and the alternative exponential (see above)
pT description; in the latter case it will also enhance the
rate of heavier-particle production. See further the
Fragmentation description
and the article [Fis16].
- A new simple model for hadronic rescattering is introduced,
with two variants, as described in [Fis16]. A new master
switch
HadronLevel:HadronScatter
, by default off, and
HadronScatter:mode
to pick among them and the old one.
See the Hadron Scattering page
for further details and parameters. New status codes 111 and 112
introduced for rescattered hadrons.
- A first process for Dark Matter production, for the pair production
of new Dirac DM particles through an s-channel vector-like
mediator.
- New mode
BeamRemnants:unresolvedHadron
can be used to
let original hadron remain as beam remnant, e.g. for coherent emission
of photons.
- New option with running coupling in Hidden Valley scenarios.
Some other small fixes in it.
- Fixed a check in the construction of all shower histories for
the merging, which meant that not all histories were produced for
squarks+jets. Included rudimentary facilities to guess the process
for merging.
- Added functionality to write Pythia events to a LHEF3-style string,
e.g. for use in an external Pythia caller.
- Improved safety checks for the presence of LHE files.
- New status codes 49 and 59 introduced for ISR and FSR partons,
respectively, to represent special states in the evolution where
E^2 - p^2 = m^2 is not fulfilled.
- New behaviour of
Event::remove
, where mother and
daughter indices now are updated by default.
- Fix in the setup of tunes with
SpaceShower:rapidityOrder = off
.
The new (in 8.219) SpaceShower:rapidityOrderMPI
then also
ought to have been set off, but this was missed, giving small
inconsistencies (around 2% reduction of the charged multiplicity).
Thanks to James Monk.
- New method
string Hist::getTitle()
to get the title
of a histogram, while void Hist::title(string )
sets it.
Thanks to Roberto Franceschini.
- Corrected behaviour for R-hadrons produced in sequential
resonance decays (for example a squark decaying to a gluino with the
latter forming an R-hadron). Thanks to Jinmian Li for
alerting us.
- Minor updates so that
main91
and main92
examples work also with ROOT 6, in addition to the existing ROOT 5
support. Thanks to Li Huang.
- Include correct mass suppression for excited fermion three-body
decays F^* → F Fbar f, primarily for F = t.
Thanks to Olya Igonkina and Oleg Zenin.
- Two new
Hist::rivetTable
methods allow histograms to
be written on file in a format that Rivet understands.
- New particle data method
nQuarksInCode(int idQ)
counts
how many copies of the requested quark code idQ
that a
quark, diquark, meson or baryon code contains.
- Bring the
FJcore
package inside the Pythia8
namespace to avoid potential name clashes with user code. Thanks to
Andy Buckley.
- Fixed
flat_namespace
issue for macOS. Thanks to
Juergen Reuter.
- Ensure that bash shell is used in
Makefile
s.
Thanks to Inga Strumke.
- New
#define PYTHIA_VERSION_INTEGER 82xx
in
Pythia.h
matches already existing
#define PYTHIA_VERSION 8.2xx
, for more convenient
matching using integers. Thanks to Andrii Verbytskyi.
- The handling of the
meMode
ranges 52 - 60 and 62 - 70
were incorrect, insofar as checks or not against duplication of existing
channels go, and have now been set straight. Thanks to Christopher
West.
- Minor bug fix in the
TimeShower
machinery to optionally
enhance the rate of some shower branchings.
- A minor fix for
BeamParticle::popBack()
method to reset
companion choice also if iComp = 0
.
- Cleanup of unmatched xml tags and other xml inconsistencies.
- Two minor particle data fixes.
- Small fix in the parsing code of
LHEF3.h
.
- Year updated to 2017.
- Small clarifications in the documentation.
- 8.219: 10 May 2016
- An interface to the Python programming language has been introduced,
see A Python Interface for details.
Various minor changes in the C++ code have been done in order to permit
the automatic generation of the interface.
- Included a new framework for automated parton-shower uncertainty bands.
Variations of the QCD renormalisation scale for both initial- and
final-state showers can now be computed by Pythia on the fly, and are
provided as a list of alternative weights for each event, representing
the probability that the given event would have occurred under different
shower assumptions. So-called "nonsingular terms" can also be added to
the splitting kernels to estimate the possible effect of missing
matrix-element corrections. Full documentation is found on the
Automated Shower Variations page,
and a paper is due to appear on arXiv shortly.
- When a final-state g → g g branching happens with
a massive recoiler, radiation in the recoiler direction is now
by default further suppressed to respect the "dead cone" effect,
see new switch
TimeShower:recoilDeadCone
. Furthermore
a new switch, TimeShower:MEextended
, on by defaults,
attempts to guess the most relevant ME correction when the
correct choice is not known or implemented. Thanks to
Jesse Thaler, Michele Selvaggi and Fabio Maltoni.
- The gamma-gamma hard-process machinery has been extended to
convolute the partonic PDFs in a photon with the flux of photons inside
a lepton. The description is intended for the region of quasireal photons,
but full kinematics is implemented.
- New constructors that take streams rather than files as input.
Thus the contents of a file can be read and then broadcast to multiple
instances of Pythia, eliminating the inefficiency of multiple jobs
reading from the same initialization files. This facilitates running
with MPIs (Message Process Interfaces). Affected areas are settings,
particle data and PDF grids.
- Small additions and fixes to the LHEF3 framework, to keep track of
weight keys, and improve parsing.
- A new class allows PDF data files in the lhagrid1 format,
with some restrictions, to be read and used. This does not replace
all that you can do with a complete LHAPDF6 installation, but at
least permits some simple studies without LHAPDF6 + Boost.
New example
main55.cc
illustrates this, and event
properties for an intermediate spinless resonance in
γ + γ → γ + γ at 750 GeV.
- Four Pomeron PDF sets from the ACTW study [Alv99] now
implemented.
- The three Pomeron H1 Jets PDF data files have been joined to one.
- The external decays interface has
been extended by a new method that allows sequential decays to be done
in one call.
- Increased possibilities to set the epsilon and
alpha' parameters of the Pomeron trajectory for
hard-diffraction Pomeron fluxes.
- Extrapolation of PDFs to small x values when
PDF:extrapolate = on
now extended to more cases.
- New flag
TimeShower:QEDshowerByOther
allows charged
resonances, like the W^+-, to radiate photons.
- The jet matching algorithm in
JetMatching.h
has been
extended to better handle heavy quarks, heavy colored particles (such
as squarks) and "other" partons (coloured but produced from an
Electroweak vertex).
- Added a new option
SpaceShower:rapidityOrderMPI
, which
will enforce an ordering in rapidity for emissions off secondary
scattering systems. This will be enabled by default, ensuring backwards
compatibility. The old SpaceShower:rapidityOrder
now only
refers to the hard(est) subprocess.
- Changes to the cross section handling in the presence of user
vetoes/weights, containing three changes:
1. Counter of selected event pythia.info.nSelected()
is now updated immediately after the hard process generation.
2. More fine-grained input settings to enforce that Pythia
generates (or reads) exactly a fixed number of hard process events.
3. The Pythia "internal cross section"
pythia.info.sigmaGen()
and the event weight
pythia.info.weight()
now directly include the effect of
event vetoes and event reweighting that are applied by the leading-order
ME+PS merging prescriptions.
- Changes to the merging classes to allow for a postponed CKKW-L
event veto. (See end of CKKW-L Merging
page for details.)
- Small changes to virtual parton shower functions, and to the merging
classes, to prepare ME+PS merging with the Vincia parton shower.
- The HepMC interface has been
modified such that the detection of unhadronized quarks or gluons
leads to an exception being thrown, so that the user can decide what
action to take. See further new/renamed
free_parton_exception
switch. The usage of exceptions for this specific task is by request
from ATLAS, and does not represent a general change of programming
style. Thanks to James Monk.
- A class
WVec
has been introduced to store vectors of
strings. The delimiters { } are introduced to provide input with
embedded blanks, and broken up across several lines. See further the
Settings Scheme description.
- The
Settings::toLower
method used to convert a string
to lowercase, and also trim it from initial or trailing blanks and special
characters, now moved to PythiaStdlib.h
so it can be used
more generally. Other code changes accordingly.
- Remove many rarely (if ever) used
ostream& os = cout
optional arguments in favour of hardcoded cout
in the code.
Eliminates some redundancy of methods.
- Rename
...print(...
methods to ...list(...
to favour a more regular naming pattern.
- Minor
configure
and Makefile
updates,
to address potential linking problems on some platforms for boost, gzip
and promc. Thanks to Dmitri Konstantinov.
- New
--config
option of pythia8-config
echoes the arguments passed to configure
.
- The description of
POWHEG:vetoCount = 0
has been
corrected. Thanks to Florian Koenig.
- Allow for lightest neutralino not to decay as a resonance.
- Do not switch off the Breit-Wigner width treatment of a resonance
as easily as previously, but only if the width is below 1e-6 GeV.
- Make some
SlowJet
methods virtual to allow derived
classes with modified properties.
- Moved some misplaced info on parton-level choice of MPIs.
- Corrected typos where some bottomonium long-distance matrix element
had been set larger than normally assumed.
- Fixed typo potentially giving incorrect colour flow in resonance
decays.
- Fixed an out-of-bounds array access in HelicityMatrixElements.
Thanks to Vittorio Zecca.
- Fixes in
main80.cc
and main89.cc
.
- Fixed problem with the SLHAinterface not being zeroed-out when
using repeated subruns.
- Minor fix for beam particles, that no default was set as to whether
they are gammas or not.
- Cleaned up error printout for the PDF classes.
- Change a few true/false to on/off in the documentation to make the
php version of the manual recognize them.
- Some trivial code, manual and bibliography updates.
- 8.215: 4 January 2016
- Ilkka Helenius joins as new PYTHIA co-author.
- A new machinery for gamma-gamma collisions is now available,
see Photon-photon Interactions.
So far only hard processes can be generated, along with parton showers
and hadronization, but without multiparton interactions. The CJKL parton
distributions of the photon have been implemented and are used.
- Double production of charmonium and bottomonium 3S1 states
is now available, but with only the colour-singlet processes included,
see Onia Processes for details.
- Weak merging implemented, i.e. W gauge bosons can be
produced either as part of the hard matrix element or in the parton
shower, and a proper treatment merges these two possibilities consistently.
See the CKKW-L page for details.
- Running alpha_em in merging description.
- Improved interface to external parton showers, such as
VINCIA and
DIRE,
so that these now also can use the various matching and merging
frameworks implemented in Pythia.
- New options in the jet matching
framework, such that expert users can use their own veto code for
Madgraph-style jet matching.
- New convenient possibility to run Madgraph5_aMC@NLO from within
Pythia, by wrapping the Madgraph5_aMC@NLO executable inside a new
LHAupMadgraph
class that derives from the Pythia
LHAup
base class.
See MadGraph5 Processes
for a brief overview, and examples/main34.cc
for an example
how to use it. Still at an experimental stage, and only tested for
Madgraph5_aMC@NLO v2.3.3.
- By default the program will now assign the PYTHIA mass for
massless c and b quarks in Les Houches input, see
LesHouches:setQuarkMass
.
Usually a logical recoiler is found that can transfer the needed
four-momentum to the quark. The already existing machinery for
giving masses to massless leptons has been expanded to use the more
sophisticated algorithm now in place.
- Significant bug found in timelike and spacelike showers, whereby
the azimuthal anisotropy from gluon polarization in the past has been
overestimated. This does not affect multijet rates, but can influence
distributions sensitive to angular correlations, although checks have
not revealed any appreciable effects. New switches
TimeShower:phiPolAsymHard
and
SpaceShower:phiPolAsymHard
regulate whether the first
branching after/before the hard process can correlate with the
hard-process event plane. Thanks to Radek Zlebcik.
- Some further new options and minor additions in the machinery for
hard diffraction. This includes three options for setting the impact
parameter for the Pomeron p subcollision, a possibility to
access both it and the impact parameter both for the original
p p, and options to rescale the Pomeron flux, including one
that uses the MBR renormalization. Some default values changed, notably
that now MPI is checked.
- A new constructor for the
Pythia
class takes references
to a Settings
and a ParticleData
object as
inputs. In cases where multiple Pythia
copies are created
this allows the xmldoc
files to be read only once.
Updated examples/main19.cc
illustrates.
- New method
Particle::daughterListRecursive()
that uses the daughterList()
method to trace
consecutive generations of decay products.
- New
Vec4
friend method pShift(...)
to transfer four-momentum between two four-vectors so as to bring them
to have specified new masses.
- New particle method
intPol()
returns the polarization
as an integer if the stored double-precision number is very close to
0, +-1, +-2 or 9, and else -9.
- Initialize the random number generator earlier, so a non-default
seed choice also could benefit early external initialization making
use of it.
- Minor fix in interface to zlib.
- Changed default setting in
main89mlm.cmnd
, to better
agree with common practice.
- Minor improvements and fixes in the weighting facilities for
initial- and final-state showers.
- Minor update in the beam-remnant handling for DIS.
- Minor improvements in the handling of resonance mass selection.
- The GetDJR function of the
JetMatchingMadgraph
class
has been renamed getDJR
to adhere to standard naming
conventions. A pointer in the same class is explicitly nulled.
- Bug fix in the selection of masses in resonance decays.
In rare situations this could give wrong masses for particles.
Thanks to Are Raklev and Anders Kvellestad.
- The
StringFlav::combine( int, int bool)
method is
renamed combineId
to avoid a potential incorrect
method overloading. Thanks to James Monk.
- Bug fix: copy vertex information when a long-lived particle
decays to three quarks (typically with baryon number violation),
whereof two have such a small invariant mass that they collapse to a
diquark. Thanks to Cristiano Alpigiani.
- Bug fix for excited quarks q^* and leptons l^*,
that if new decay channels were introduced they could incorrectly make
use of the matrix element expressions for the existing decay modes.
Thanks to Simone Amoroso.
- Bug fix in the kinematics of four or more resonance decay products
when kinematics is redone owing to matrix-element corrections.
Thanks to Simone Amoroso.
- Changed off-shell behaviour for squark pair production.
- Minor fix for random number start-up in the PowhegBox interface,
and inserted warning that using LHAPDF5 in both Pythia and PowhegBox
can be dangerous.
- Correct two misspelt endtags for LHEF3 output from Pythia.
Minor technical changes in the LHEF3 machinery.
- Bug fix for information on the pdf value chosen for the hardest MPI,
which was reported a factor 9/4 too large for an incoming gluon. Does
not affect the event generation itself.
- Correct
BeamRemnants:primordialKThard
from 2.0 to 1.71
for ATLAS tune AZ. Thanks to Christian Bauer.
- Introduce protection against (close-to-)zero-energy partons in string
length calculations, and against topologies with extremely small angles
between two junction legs. Thanks to Jan Fiete Grosse-Oetringhaus.
- Check by trial whether a given LHAPDF5 set contains photons or not,
therey avoiding explicit enumeration of such sets.
- When the ARCH environment variable does not have a valid value it
is set to LINUX in configure. Thanks to Alessandro Degano.
- Make the BOOST include directory available when the LHAPDF6 plugin
is used.
- Minor corrections for the LHAPDF6 description in README.
Thanks to Radek Zlebcik.
- Fix harmless name overloading in
ProcessContainer.cc
.
- Updated address for Philip Ilten.
- A few bibliography updates.
- Year updated to 2016.
- 8.212: 23 September 2015
- Included new weighting facilities in initial- and final-state showers.
This allows to consistently enhance rare shower branchings without
impairing the no-emission probabilities, see
User Hooks. A new
main63.cc
,
together with main63.cmnd
, illustrates this feature.
- Added new functionality to time- and spacelike showers to streamline
merging with external shower plugins, see
Implement New Showers.
- New possibility to access hadronization parameters in each step of
the hadronization process, and to veto individual hadrons, see
User Hooks. Thanks to Christian Bierlich.
- The EvtGen interface has been
expanded with the possibility to force a rare decay of some of the
particle species handled by EvtGen, with an event weight compensating
for this bias. New status codes 95 or 96 single out particles from a
forced decay, without or with oscillation. Documentation has been
expanded.
- New option
MultipartonInteractions:pTmaxMatch = 3
introduced to allow better matching for multiparton final states.
Thanks to Paolo Gunnellini.
- Added possibility to write Les Houches Event Files abiding to the
latest (v. 3) standard,see
Les Houches Accord. The new
main64.cc
illustrates how to use the LHEF3 writer.
- Fixes in the merging machinery, related to the scales associated
with final-state splittings with an initial-state recoiler. The
evolution scales and energy sharing values associated with this
configuration were not calculated correctly, as an incorrect recoiler
momentum was used, leading to a numerical small deviation from the
actual result. This issue has now been corrected. Some additional
matching and merging changes, mostly to make the reclustering in the
merging numerically more stable, and to make UN2LOPS possible.
- Fix bug for the
Beams:newLHEFsameInit = on
option,
whereby several LHE files can be read in without new initialization
for each. When the gzip support was improved in 8.209 the filenames
were no longer reset properly, and so no files beyond the first one
were read. Thanks to Roberto Franceschini.
- Bug fix in the junction handling for the case of gluinos.
- Avoid segmentation fault for some rare junction topologies.
Thanks to Gabriel Magill.
- Minor fix for the path to the PowhegBox plugin, as used in the
Makefile
.
- Minor fix for the
configure
script, for the case
of building a shared library on Mac OS X. Thanks to Mikhail Kirsanov.
- Several minor changes in the hard diffractive machinery.
- PDG codes 51 - 60 have been reserved for Dark Matter (DM) particles.
51, 52 and 53 are intended for spin 0, 1/2 and 1 stable DM particles,
respectively. 54 and 55 are for spin 0 and 1 unstable mediators of
s-channel DM pair creation or annihilation. The rest can be used freely,
say in models with several DM particles. Masses should be set
appropriately. Particles 54 and 55 come equipped with a fictitious mix
of potential decay modes, to be modified according to the specific model.
By default all have separate antiparticles, with negative codes.
These can be removed by setting the antiparticle name to be "void". The
ParticleData::antiName(...)
method has been fixed to accept
this, just like ParticleData::names(...)
already did.
- Several processes have been set up with wrong process codes, and are
now fixed. The corrections are 4003 → 4203, 4004 → 4204,
4005 → 4205, 961 → 1061, 3124 → 3123, 3126 → 3124,
3144 → 3143, and 3146 → 3144.
- For tau decay spin correlations the
f fbar → V → f fbar matrix element,
V = gamma/Z^0 or W^+-, is now only used when the
incoming fermion pair has no other daughters. Else the simpler
V → f fbar matrix element is used.
- Minor technical changes, to allow for external pT-unordered
parton showers. No effect for the internal showers.
- The SLHA reading operation has become significantly less verbose:
where previously identical warning messages could be issued for
many particle codes, now these codes are collected into a single list
that is written once.
- Bug fix in the input of SLHA decay tables. Previously, the first DECAY
entry could be ignored under certain conditions, so that the internal SUSY
machinery was used to calculate decay properties. This was the case, in
particular, when internal SUSY processes were invoked to generate events.
- Minor correction in the cross section for f fbar → G*
for extra-dimensional processes.
main85.cc
has been updated so it can handle weighted
events.
main89mlm.cmnd
contained misleading instructions which
are now changed.
- Protect against rare but disastrous negative mass-squared by numerical
roundoff in string fragmentation.
- Introduce protection against numerical instability of companion quark
distribution in x → 1 limit.
- Use the
PythiaStdlib.h
header rather than accessing
Stdlib directly in SusyLesHouches.h
.
- Output to
cerr
replaced by ditto to cout
.
Excepted is the examples main programs, where it serves a pedagogical
function, while a separate cerr
is less relevant for big
batch runs. (Also FJcore
code is excepted).
- Give final-state showers used for decays access to the beams;
not needed for PYTHIA itself but for some plugin showers.
- Fix minor typo in
README
, in instruction for enabling
64 bit compilation.
- Insert two missing
std::
in
Pythia8Plugins/GeneratorInputs.h
.
- Minor update in histogram overflow handling.
- Add to the documentation that
TimeShower:weightGluonToQuark = 1
is required for consistent
aMC@NLO merging.
- Clarify documentation on which particles are stable by default.
- 8.210: 29 June 2015
- Bug fix in CKKW-L merging for LHE files, such that the factorization
and renormalization scales are set by the
SCALUP
value if
the muf2
and mur2
LHEF3 attributes have not
been set, and the user has not set any explicit values. This change
restores the PYTHIA 8.1 behaviour.
- Various technical improvements in the machinery for hard
diffraction.
- Correct quark flavour selection when a string spanned directly
between two junctions is split up.
- Check that SK-I and SK-II colour reconnection machineries only
are called for event topologies they are set up to handle.
- Bug fixes in partial widths of the W' boson. Results are
correct when the W' is a simply rescaled copy of the W,
but not for more general couplings. Thanks to Mihail Chizhov.
- Minor fix in default location of PDF data files in the constructors.
No practical consequence since correct non-default values are used.
- Tiny fix in the
configure
script, so that CXX options
containing an equal sign are parsed correctly.
- 8.209: 25 May 2015
- The "An Introduction to PYTHIA 8.2", arXiv:1410.3012 [hep-ph],
has now been published in Comput. Phys.Commun. 191 (2015) 159.
- The new QCD-based colour reconnection machinery has been expanded
with checks whether reconnecting dipoles are causally connected.
This cannot be defined exactly, and therefore several different
options are available. Also some other minor changes in this part
of the code, including updates of parameter default values.
- New options for
ColourReconnection:flipMode
allows
to sidestep the gluon-move handling but still retain the final
flip step.
- New
ColourReconnection:forceResonance
switch
allows an additional colour reconnection step after late resonance
decays. This is especially relevant for
H^0 → W^+ W^- / Z^0 Z^0 → q_1 qbar_2 q_3 qbar_4,
since the Higgs is so long-lived that its decay is well separated
from the rest of the event.
- The old SK I and SK II colour reconnection models are now available.
These are specially aimed at the processes
e^+ e^- → W^+ W^- / Z^0 Z^0, but are also relevant for
H^0 → W^+ W^- / Z^0 Z^0.
- Colour reconnection also made possible, optionally, for the
forceHadronLevel
method.
- A new switch
POWHEG:QEDveto
has been introduced to
steer the treatment of non-QCD radiation in the POWHEG implementation
of include/Pythia8Plugins/PowhegHooks.h
.
- The need to link to the Boost library to read gzipped files
has been eliminated by including iostream classes wrapping the zlib
compression library, see new files
Streams.h
and
Streams.cc
.
- Linkage to LHAPDF6 so far has been based on the LHAPDF5 compatibility
mode, which requires no Boost headers. The new configure option
--with-lhapdf6-plugin=LHAPDF6.h
uses native mode, and
then requires Boost headers.
- The LHAPDF6 PDF values are frozen at the respective x
and Q^2 boundary if the (x, Q^2) pair falls outside
the fit region.
- New functions to extract the fit boundaries, the current
alpha_s value, and the quark masses from LHADPF6.
- New option in the HepMC interface, whereby PYTHIA particles can be
appended to an existing HepMC event. Thanks to Mikhail Kirsanov.
- A new runtime interface to the POWHEGBOX matrix element programs,
bypassing the need for intermediate LHE files. The new files
include/Pythia8Plugins/LHAPowheg.h
and
include/Pythia8Plugins/PowhegProcs.h
contain the
LHAup class wrapper used to build the POWHEG plugin libraries and
the simple class that facilitates loading the POWHEG plugins,
respectively. The new examples/main33.cc
demonstrates
how to use these plugins, and examples/main33.cmnd
contains
the commands needed for POWHEGBOX to run the example.
- When reading in particle data from the SLHA interface, changes done
by the user takes precedence over the SLHA input ones. To be more
specific, particle data changes by the
Pythia::readString
and readFile
methods are buffered and repeated after
the SLHA initialization.
- New
#define PYTHIA_VERSION 8.2xx
in Pythia.h
allows user-code preprecessors to make version-specific choices, and
allows the Pythia
class constructor to check that the
header-file version number matches those of the source code and the
XML files. Thanks to Pere Mato.
- User-defined semi-internal processes can now be accompanied by
user-defined phase-space generators, via a second optional argument to
Pythia::setSigmaPtr(SigmaProcess*, PhaseSpace* = 0)
.
Default is the old behaviour, with PYTHIA selecting the phase-space
generator itself, based on the process type. Alternatively, the user
may provide a pointer to an instance of an object inheriting from
the PhaseSpace
class. Sufficiently well-tested and general
such generators could be communicated to the PYTHIA authors for possible
inclusion in a future release.
- Updated initialization of LHEF files in
LesHouches.cc
to ignore file contents enclosed in comment tags,
<!-- .. -->
and/or the special CDATA statement,
<![CDATA[ .. ]]>
. The latter occurs, e.g., in LHEF
files produced by CalcHep. (It is generally used to store content that
contains XML-illegal characters like "<" or "&", such as JavaScript
source.) Thanks to A. Belyaev and A. Pukhov for help with this update.
- New flag
LesHouches:matchInOut
, by default on,
to recalculate the energies and longitudinal momenta of the incoming
particles from the outgoing ones for Les Houches input. Reduces effect
of numerical inconsistencies in input.
- Updated EvtGen interface, to allow a pointer to an FSR engine to be
passed. Thanks to Torben Ferber.
- Spin information for tau leptons now also set up for
Z' and W' decays.
- New method
AlphaStrong::setThresholds(...)
allows to
set the charm, bottom and top flavour-threshold masses used for the
running of alpha_strong.
- New option for the
Event::list()
methods allows to show
momenta with more decimal digits.
- New
Particle::isFinalPartonLevel()
method to tell whether
a particle belonged to the final state on the parton level of generation
or not. New main73.cc
example illustrates usefulness.
- The
[]
operator is implemented for the Vec4
class to return its components by index.
- New method
string Settings::output(string key)
returns
the value of a variable as a string. In Pythia::readString()
or readFile()
calls this can now be used to print a
current setting value by the command key = ?
.
- The role of the
pythia.forceTimeShower(...)
method is
better explained in the hadron-level standalone documentation, and
main21.cc
has been extended with an example.
- The
TimeShower::enhancePTmax()
method is made virtual.
- The
iTopCopyId()
and iBotCopyId()
methods
now scan all mothers/daughters, rather than only the first and last,
when searching for a unique flavour match.
- New example
main62.cc
illustrates how a user hook can
steer the selection of angles in a resonance decay.
- Minor correction in the treatment of the highest multiplicity in
FxFx jet matching.
- Minor correction in the interface to aMC@NLO for dijet and
photon+jet processes.
- Inserted missing endtag that corrupted the
Tunes.php
page. Thanks to Tim Martin.
- Minor fix for polarization sign when the tau polarization
is forced.
- The meaning of the
HiggsXX:parity
options for CP mixing
has been slightly modified and is better described.
- Clarification in the documentation that impact-parameter-enhancement
factor calculation for two hard processes does not work for the
x-dependent impact-parameter profile option.
- Fixed a factor sqrt(2) error in couplings for
chargino + squark pair production. Thanks to Michihisa Takeuchi.
- Some minor bug fixes in the SUSY code, and some speed optimization
suggested by Martin White.
- Fixed incorrect indexing in the SLHA interface.
- Removed misleading flavour setup for unused Pomeron.
- Fixed possible unwarranted destruction of pointer to external timelike
shower by the
Pythia
destructor.
- Initialized pointers to NULL in the
Info
class,
to avoid some problems. Thanks to Keno Fischer.
- Minor
Makefile
improvements for LHAPDF linking.
- Minor improvement to the
main89.cc
example program.
- Mildly modified warning/error messages when junction splitting
fails.
- Minor fixes in
LHAFortran.h
, which is also moved to
include/Pythia8Plugins
to better reflect its peripheral
role.
- New machinery for hard diffraction now in place. Still being
debugged and tested, so not yet ready for public usage.
- 8.205: 23 January 2015
- Unfortunate tiny typo made the new A14 tunes inaccessible.
Now fixed.
- Resolved an inconsistency between MLM and FxFx merging that was
introduced in 8.201 upon answering a user request. The effect should
be minimal. Thanks to Josh Bendavid for bringing this to our attention.
- Amended the automated reading of the (optional)
"TimeShower:nPartonsInBorn" setting from Les Houches Event files
produced with aMC@NLO. Heavy coloured objects are now handled correctly
when the information in the Les Houches event does not include heavy
partons of the lowest-multiplicity state into its counting (as is
conventional). Thanks to Josh Bendavid for pointing this out.
- 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 Zlebcik.
- 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 Zlebcik.
- 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.