[Pythia8-announce] Pythia 8.301 now available

Torbjörn Sjöstrand torbjorn at thep.lu.se
Wed Oct 30 08:27:57 GMT 2019


Dear All,

PYTHIA 8.301 has been released today, and can be downloaded from
       http://home.thep.lu.se/Pythia
specifically from the "Future (v 8.3)" frame of the left-hand index.
The webpage has been updated slightly to more directly distinguish
the 8.1, 8.2 and 8.3 branches.

The new version represents the biggest single step since the release
of Pythia 8. There are two major reasons for this. Firstly, the code
is now based on the C++11 standard rather than on the C++98 one, and
much of the internal administrative structure has been modified as
part of the transition. Secondly, the Vincia and Dire parton showers
have now been integrated into the standard distribution, significantly
expanding the code size. In addition there are many smaller changes,
as outlined further below.

For now, the new code is in a try-out stage. It should be fully
functional and ready to be used, but we do not exclude that a few
rough edges may remain. Therefore we strongly encourage you to
test drive it and provide feedback. But for now we would recommend
that large production runs stay with PYTHIA 8.243. An updated 8.3
version should appear in a not too distant future, and then
be ready for prime time.

You find a summary of changes below, which is a slightly abbreviated
list of the one in the Update History, found e.g. in the html manual.
Changes are relative to the 8.243 version, with a few caveats
explained below.

Wishing you an enjoyable experience with PYTHIA 8.301.

Sincerely yours,
The Pythia 8 Collaboration
(Christian Bierlich, Nishita Desai, Ilkka Helenius, Philip Ilten,
Leif Lönnblad, Stephen Mrenna, Stefan Prestel, Christine Rasmussen,
Torbjörn Sjöstrand, Peter Skands)

=====================================================================

Physics changes

* The Vincia and Dire parton-shower programs, which previously have
   been available as free-standing add-ons to Pythia, are now fully
   integrated into Pythia, and will henceforth be distributed as part
   of this package. This has significant implications for code and
   documentation. The new master switch PartonShowers:model allows
   a simple choice of which to use, with 1 being the simple old
   internal one, 2 being Vincia and 3 being Dire. Note that Dire
   always comes with weighted events, while the other two by default
   have unit weight events, so analysis strategies must be adjusted
   accordingly.

* MadGraph-generated plugins for matrix element corrections to the
   Vincia and Dire parton-shower programs are now available. A new
   plugins directory has been created, where MadGraph5 matrix elements
   can be stored. Note that this implementation still is preliminary,
   with further improvements to come. To build the available plugins,
   --enable-mg5mes should be specified.

* Four new main programs have been introduced in the context of
   illustrating the Vincia and Dire shower models. Two of them also
   serve as examples of multithreading if Pythia is configured to link
   to OpenMP. main200.cc provides a simple test of final-state
   shower components, in a LEP-like setup. main201.cc compares two
   different shower models on dijet events. The two runs are executed
   in parallel if Pythia has been configured to link to OpenMP.
   main202.cc measures the running time for ttbar events and outputs
   a few test distributions. main300.cc can be linked against both
   HepMC2 and OpenMP, if Pythia has been configured correspondingly.
   It is capable of command-line instructions.

* A new plugin header, Visualisation, is available and used in the
   main300.cc example program. Events can now be visualized via output
   that can be passed through GraphViz to produce a postscript file.

* New class LowEnergyProcess for the hadronization of low-energy
   collisions between two hadrons. By default there is a smooth
   transition between this simple nonperturbative model and the full
   MPI-based framework at higher energies. To be used e.g. within the
   modelling of hadronic rescattering in the final state of high-energy
   collisions. This framework is still under development.

---------------------------------------------------------------------

Technical and administrative changes

* C++ compilation is done with a -std=c++11 flag, instead of -std=c++98.
   More generally, many (but not all) new C++11 features can from now on
   occur in the PYTHIA code.

* The HTML and XML versions of the manual have been significantly
   reordered, with contents grouped in an increased set of main headings,
   each with an expandable index of subheadings. There are several new
   sections, notably for the Vincia and Dire showers. Among other changes,
   the example main programs have been classified by keywords, and are
   listed and searchable at the "Example Programs" page.

* The PHP version of the manual has been discontinued, since it would
   be difficult to maintain in conjunction with the ongoing expansion of
   the html manual. The include/Pythia8/phpdoc directory has been removed.

* The Python interface has been completely redesigned to handle C++11
   by migrating from a SWIG-generated interface to a PyBind11 one.
   It is now possible for users to generate their own interface. Full
   details are given on the Python Interface page.

* The field Pythia::info of type Info has been made a constant reference,
   so that it cannot be externally manipulated outside of the internal
   classes. This constant reference points back to Pythia::infoPrivate
   instance, which is for internal use only. This instance now also
   contains pointers to several other commonly used classes.

* A new base class PhysicsBase has been created, from which several of
   the "physics" classes derive. This class standardizes the setup of
   pointers to commonly used classes, via the Info class. It has new
   methods that are called at the beginning and end of the generation
   of each event, and at the printout of final statistics. A new enum
   Status is provided in the method at the end of each event, to provide
   information on the reason for error exits.  The access of the most
   commonly used Settings methods is streamlined.

* Most of the pointers in the Pythia class are now shared pointers,
   such that there is no need for Pythia to keep track of new and delete
   obligations. New header SharedPointers.h.

* The CoupSM and CoupSUSY couplings classes are now separated, rather
   than the latter being derived from the former. This avoids the problem
   of the old Couplings pointer potentially changing address, and some
   pointer casting.

* Mathematical functions and methods have been extracted from the
   PythiaStdlib files and put in  new MathTools files. Thereby
   PythiaStdlib is more clearly reserved for declarations related to
   the Stdlib library, to some simple inline expressions (now constexpr
   where feasible) and to an expanded list of conversion constants.

* A new method Rndm::phaseSpace2 has been added, and can be used to
   sample two-body phase space.

* The data files related to parton distributions have been moved to a
   new share/pythia8/pdfdata directory, and code has been changed
   accordingly.

* Iterators are made available to simplify the study of the particles
   in the event record.

* A new StringInteractions base class to provide common administrative
   framework for string shoving, rope hadronization, swing, (some) colour
   reconnection models, and more.

* The build system has been updated to handle external package
   configuration scripts.

* The ProMC example and configuration option has been dropped.

* Optional package configurations for RIVET and YODA have been added.

* Support for BOOST has been dropped and only LHAPDF6 with versions
   greater than 6.2 are supported.

* The flag --openmp has been added. Currently, OpenMP is used in some
   of the examples mentioned above, and in DireWeightContainer.cc.

* All 2 to 2 SUSY processes now inherit from Sigma2SUSY.

---------------------------------------------------------------------

Warnings and bug fixes

* Currently some of the Matching and Merging frameworks are not yet
   up and running; this is part of the necessary work before 8.3
   can be viewed as a complete replacement for 8.2. Specifically
   the three M&M bug fixes of version 8.242 have not yet been ported,
   partly because more robust alternatives are planned. (These are
   the one that relate to the "guess" option, to the name handling for
   weak-boson-fusion-like processes and to the winner-takes-it-all
   strategy.)

* Introduced a compromise for the treatment of lifetime and width, so
   that these can be set separately in some situations. If an SLHA file
   is used to set particle properties, then SLHA:allowUserOverride = true
   allows the lifetime to be set using a command file/string.  Otherwise,
   lifetime is calculated from particle width. The ability to have the
   width and lifetime as independent properties is convenient for studies
   of new physics.

* The heavy ion machinery has been fixed so that particle vertex
   information in the event record is stored in units of mm rather
   than fm, while internal calculations still are in fm. Thanks to
   Christopher Plumberg.

* The headers in include/Pythia8Plugins have been updated to no longer
   contain using namespace Pythia8. Thanks to Axel Naumann for pointing
   out inconsistent usage of scope.

* A bug in the XML-to-HTML conversion has led to the indiscriminate
   removal of "more" from the HTML manual, notably in
   Pythia::moreDecays().

* Bug fix so the option UncertaintyBands:ISRpTmin2Fac is correctly used
   in SimpleSpaceShower.cc.

* Bug fix stopping growth of number weights when multiple init calls
   are made in Info.

* Bug fix for SusyWidthFunctions.cc< incorrectly calling integrateGauss,
   resulting in a width of zero.

* Bug fix to prevent overwriting of dark matter masses from unused
   model selections.

* Bug fix where instead of counting all PDG ids less than 100 as
   the Standard Model, masses of BSM Higges and dark matter are allowed
   to be set without changing minMassSM.

* Bug fix for Les Houches Event File input without specified beams,
   such that multiparton decays of a resonance can be combined with
   showers, although with proper care needed so as not to doublecount
   emissions.

* Clarify that Q2 scale has to be set by hand for DIS processes,
   if so desired.

=====================================================================



More information about the Pythia8-announce mailing list