|
[Pythia8-announce] Pythia 8.301 now availableTorbjörn Sjöstrand torbjorn at thep.lu.seWed 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 |