From torbjorn at thep.lu.se Tue Jul 2 08:57:43 2019 From: torbjorn at thep.lu.se (=?UTF-8?Q?Torbj=c3=b6rn_Sj=c3=b6strand?=) Date: Tue, 2 Jul 2019 09:57:43 +0200 Subject: [Pythia8-announce] Pythia 8.242 now available Message-ID: Dear All, PYTHIA 8.242 has been released today, and can be downloaded from http://home.thep.lu.se/Pythia Unlike most releases, this is mainly a bug-fix one, with only a few physics improvements. More news will instead come with the Pythia 8.3 release, in a few months time. That version will initially be intended for tryout rather than for production runs, however, so 8.242 will be the recommended version to use at least for the rest of 2019 (barring the unexpected). You find a summary of changes below, which is a slightly abbreviated version of the one in the Update History, found e.g. in the html manual. Wishing you an enjoyable experience with PYTHIA 8.242. 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) ===================================================================== Bug fixes * A bug fix in 8.240, for an issue with colour vs. anticolour assignment of dipole ends in baryon-number-violating decays, unfortunately introduced a bug of its own. Specifically, in cases where the recoiler of a final-state radiation is in the initial state, the recoiler colour type should be negated relative to a final-state recoiler, which is now done. In addition, the new code has been extended to apply for all colour (anti)triplets, including (anti)squarks. The bug has meant that high-pT jets in some flavour combinations have acquired a larger multiplicity than they should, at very high pT by up to 10%. Physics at lower pT scales appear unaffected, as is e.g. top, W, Z and H decays. Thanks to Patrick Komiske and Jesse Thaler. * Fix that PDF set 22 was unreachable, since a range check had not been updated. * Bug fixes to the LHEF3 file reader. An issue previously led to some tags being skipped, if the line before the tag was commented by a hash/pound sign (#). * Static code analysis by Dmitri Konstantinov and colleagues revealed four errors, now fixed. - The H^+ contribution was missed in BSM Higgs width calculation for the gamma + Z^0 channel. - Typo in the expression for the slepton/sneutrino partial width to a chargino plus a neutrino/lepton. - Typo in the merging machinery for SUSY pair production. - Possibility of incorrect kinematics when photoproduction involves off-shell photons. * Fixed faulty behaviour in PartonVertex assignment, where parton shower would boost vertices to unphysical spatial points. To this end the event and particle rotbst methods have been endowed with a second optional argument not to boost production vertices. * Bug fixes to the "guess" option for defining hard process name for multijet merging. An issue previously led to the hard process name being only corrected once for the first event, and then no longer adjusted automatically.The main89.cc program has been modified as a consequence. * Bug fixes for the hard process name handling for weak-boson-fusion-like processes that led to an incorrect counting of additional emissions. In multijet merging, this led to incorrect no-emission probabilities being applied to such processes. * Fixed cross section for heavy-quark pair production in gamma+gluon and gamma+gamma fusion processes. Thanks to Javier Alberto Murillo Quijada. * Bug fix for hard diffraction and resolved photons, wherein kinematics is not recalculated when previous steps already failed. * Bug fix in the check that energy-momentum is preserved, without which DIS events e.g. generated with main36.cc can be falsely rejected. * Protect against potential square root of negative number in Dark Matter resonance handling. Thanks to Peter Richardson. * Fix minor typo in the I_0 and I_1 Bessel functions. * Various other minor typo corrections in documentation and comments. --------------------------------------------------------------------- Physics changes * New setting Beams:allowVariableEnergy allow incoming beam energies or momenta to be set event-by event, by further arguments to the pythia.next() call. Only processes belonging to the SoftQCD family can be simulated this way. * A winner-takes-it-all strategy for choosing parton shower histories has been added in multijet merging. This is an unfortunate necessity for extremely high multiplicity merging, to avoid excessive memory usage. Other memory usage tweaks have been included in the History class. * Corrections and extensions to the VMD framework for photon beams, including improved kinematics and minor corrections for the production of VMD states. It is now possible to generate the J/Psi as one of the VMD states. * Process g gamma -> t tbar has been enabled. * New main77.cc example how double parton scattering events can be reweighted according to a different model than default in Pythia. Contributed by Boris Blok and Paolo Gunnellini. --------------------------------------------------------------------- Technical and administrative changes * The implementation of the indexing operator event[i] has been changed from straight vector indexing to using the at(i) method. Thanks to Helen Brooks. * The new method Event::free() empties the event record, like Event::clear(), but also frees up the memory of the Particle vector. * Some simple methods have been added to the Event class, to return the final-state multiplicity, or the rapidity/angular separation between two particles in the event record. * A simple method has been added to the Settings class, to check whether only SoftQCD processes are switched on. A new check at initialization to warn if SoftQCD processes are mixed with other kinds of processes, since this can lead to doublecounting and/or low efficiency. * Fix cases where scale() and scaleSecond() return values were not stored in the event record, by allowing new #scaleShowers tag in Les Houches events. Thanks to Oleh Fedkevych. * New particle decay codes 93 and 94 for singlet particle decaying to a q qbar pair plus a new singlet. Thanks to Philippe Mermod. * The examples main10.cc and main62.cc have been rewritten to avoid having histograms in global scope. ===================================================================== From torbjorn at thep.lu.se Wed Jul 3 07:46:54 2019 From: torbjorn at thep.lu.se (=?UTF-8?Q?Torbj=c3=b6rn_Sj=c3=b6strand?=) Date: Wed, 3 Jul 2019 08:46:54 +0200 Subject: [Pythia8-announce] Pythia 8.242 retracted Message-ID: <7e771603-b5eb-de1c-f1d4-e3f90673ea41@thep.lu.se> Dear All, Subsequent to the PYTHIA 8.242 release of yesterday we have received two bug reports, one that the (modified) Les Houches reader is not correctly setting scales for the showers, the other that the Python interface needs to be updated. We will address these issues and get back with an 8.243 version where they are fixed. In the meantime we would recommend you not to use 8.242. If you already did, and noted some other error, of course we would like to know about it. Apologies for these mistakes. 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) From torbjorn at thep.lu.se Fri Jul 5 11:13:25 2019 From: torbjorn at thep.lu.se (=?UTF-8?Q?Torbj=c3=b6rn_Sj=c3=b6strand?=) Date: Fri, 5 Jul 2019 12:13:25 +0200 Subject: [Pythia8-announce] Pythia 8.2xx now available Message-ID: Dear All, Again apologies for the PYTHIA 8.242 issues rapidly noted. We now make a new try with the release of PYTHIA 8.243, which can be downloaded from http://home.thep.lu.se/Pythia The amount of changes from 8.242 is very small: * Bug fix in the Les Houches reader, where the introduction of the optional #scaleShowers tag in 8.242 meant that parton showers were killed if that tag was not present. Should not affect LHE3-compliant files. Thanks to Helen Brooks. * The Python interface in include/Pythia8Plugins/PythonWrapper.h has been updated. * An obsolete method declaration in ProcessContainer.h is removed. * main29.cc has been updated with safer handling of a pointer. Address tiny issue of possibly uninitialized variable in ColourReconnectionHooks.h. Thanks to Leif Gellersen. Wishing you a more enjoyable experience this time around. 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) From torbjorn at thep.lu.se Wed Oct 30 08:27:57 2019 From: torbjorn at thep.lu.se (=?UTF-8?Q?Torbj=c3=b6rn_Sj=c3=b6strand?=) Date: Wed, 30 Oct 2019 09:27:57 +0100 Subject: [Pythia8-announce] Pythia 8.301 now available Message-ID: <608f7de6-1d71-4aa6-3d63-7767023d1d87@thep.lu.se> 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. ===================================================================== From torbjorn at thep.lu.se Fri Dec 20 10:42:09 2019 From: torbjorn at thep.lu.se (=?UTF-8?Q?Torbj=c3=b6rn_Sj=c3=b6strand?=) Date: Fri, 20 Dec 2019 11:42:09 +0100 Subject: [Pythia8-announce] Pythia 8.244 now available Message-ID: Dear All, A new release PYTHIA 8.244 can now be downloaded from http://home.thep.lu.se/Pythia There are only a very few changes, for bugs that have affected some specific critical applications: * The combination of weight variations, within the context of uncertainty bands, has not been well documented and therefore prone to misunderstandings. Now the behaviour of Info::getGroupWeight() has been made transparent, and the documentation in Variations has been improved. The main121.cc example has been modified accordingly. * Restore the capability to set width and lifetime of a resonance separately (changed in 8.240). Now the lifetime is set from the width only if the allowCalc() method of the resonance class returns true. * Updated handling of Powheg files, such that files with multiple/variable number of real emissions can be handled. The default value of the POWHEG:nFinal parameter has been changed to -1, see the POWHEG Merging documentation. * Limit the amount by which transverse smearing of the space-time quark-antiquark string breakup vertices can give large shifts. This is regulated by the new HadronVertex:maxSmear parameter. Also some other related changes. * Fixes for consistent storage of production vertices in units of mm. Thanks to Christopher Plumberg. * Number of weights in info is reset to 1 for each new init call. Wishing you an enjoyable holiday season. 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, Marius Utheim)