Update History

  1. 8.310: 25 July 2023
  2. 8.309: 16 February 2023
  3. 8.308: 16 November 2022
  4. 8.307: 25 February 2022
  5. 8.306: 28 June 2021
  6. 8.305: 03 May 2021
  7. 8.304: 09 April 2021
  8. 8.303: 01 September 2020
  9. 8.302: 24 April 2020
  10. 8.301: 30 October 2019
These update notes describe major updates relative to the PYTHIA 8.243 version, which was the starting point for PYTHIA 8.3. The step from 8.2 to 8.3 gave an occasion to break backwards compatibility. The main change is that C++11 is now assumed. The impact on existing used code should be mild, however.

8.310: 25 July 2023

  • Introduced a new use plugin system, see Plugins for details. This system is currently experimental and feedback is welcome. As part of this new system, a few changes have been made to how user provided classes are passed to a Pythia> object for consistency.
  • The new Logger class now handles printing such as initialization information and diagnostic messages. For more information about this class, see the Logging page.
  • The new BeamSetup class has been introduced to handle the beam configuration, including initializing and changing beam identities, kinematics and parton distributions. This is a structural change that simplifies the code in the Pythia class, but does not introduce any functional changes.
  • Modified interface to LHAPDF6 to allow for multi-threading. Thanks to Christopher Jones for the report.
  • Updated the Python interface to use pybind11 version 2.10.4 which is compatible with Python 3.11. Thanks to Mattias Ellert and David Runge for reporting the incompatibility and maintaining the Fedora and Arch Linux packages. Note, this version is not compatible with Python versions 3.5 and below, and so version 2.9.2 of pybind11 is used automatically for these versions.
  • Fix for the Python interface working with gcc13, thanks to Dmitri Konstantinov.
  • Fixed a bug in the Python interface which prevented main162.py from running correctly when passing a custom function for initialization.
  • Updated the Lambda_b0 lifetime to c*tau = 0.44 mm. The value was rounded to two significant digits since PDG and HFLAV do not quite agree to three digits. Thanks to A. Rossi for pointing out the previous default value (0.369 mm) was outdated.
  • Included several small fixes in response to running an LLVM static code analysis, thanks to Michal Kreps.
  • Fixed out-of-range access when calling Hist::getYMin and Hist::getYMax for a histogram that has not been booked.
  • Fixed BeamRemnants:unresolvedHadron option that was broken and had no effect since 8.307
  • Removed use of simple-template-ids in SusyLesHouches.h to make compliant with C++20. Thanks to Jonas Hahnfeld.
  • Fixed dipole sorting behaviour in ColourReconnection which resulted in an ordering that depended on the current memory state of the program.
  • Changed the default for Parallelism:balanceLoad to on and updated the documentation. This ensures each thread will always generate the same number of events.
  • Added the += notation for settings vectors, as well as the include = fileName directive, which allows for additional settings files to be directly read in.
  • Fixed a bug in the bookkeeping the number of hadrons in the string fragmentation.
  • 8.309: 16 February 2023

    8.308: 16 November 2022

    8.307: 25 February 2022

    8.306: 28 June 2021

    8.305: 03 May 2021

    8.304: 09 April 2021

    8.303: 01 September 2020

    8.302: 24 April 2020

    8.301: 30 October 2019