CERN Accelerating science

The virtual collider programs we run

Following a post on our forums, we here give a brief introduction to each of the physics simulation packages we run. They are essentially competing models for describing the same physics, placing emphasis on different aspects. Accordingly, each is based on slightly different approximations, and originate in slightly different research communities.

Translating the quantum-field theoretical principles, approximations, and computer implementations, on a short web page, is of course not that easy, so please forgive us if the explanations do not go all the way. We hope at least they go some way, to explaining what the codes are, and their historical/geographical origins.

All the jobs we run in T4T have two main components: an event generator (which simulates particle collisions) and an analysis framework (which emulates the measurements performed on each simulated event).

In T4T, the analysis framework is in all cases RIVET, which contains a large library of encoded analyses most of which correspond to real-world measurements that have been performed in real experiments, and which RIVET allows us to repeat on simulated events, for comparison. (In addition, we also run a few analyses that represent pure theory-to-theory comparisons.) RIVET is therefore essential to what we call data and analysis preservation, in that it allows us to compare old measurements to the newest state-of-the art calculations, encoding all the subtleties of the original measurement in a unified framework preserved for the future. That's all we will say about RIVET here, as this page is mainly about the event generators. Currently, we run ones called (in alphabetical order):

  • EPOS
  • HERWIG++
  • PYTHIA 6
  • PYTHIA 8

We distinguish between 'general-purpose' event generators and more specialized ones. 

General-Purpose Generators

As the name implies, general-purpose generators are supposed to be able to handle many (ideally all) different physical process types, and be able to take care of all aspects of the event simulation (apart from the analysis step, handled by RIVET). These are thus the main workhorses for particle physics simulations. The three most widely used general-purpose generators in high-energy physics are HERWIG, PYTHIA, and SHERPA. As you see above all of them are represented in T4T, and one of the main uses of the web site which relies on T4T for its computing is cross-comparisons between these generators. What these generators actually do is somewhat complicated to describe, but here goes.

Starting from a fundamental scattering process, such as the production of a Higgs boson or the like, the generators contain algorithms for 'initial- and final-state radiation' (bremsstrahlung, also called 'parton showers', caused by the violent acceleration or deceleration of charged particles taking part in the fundamental scattering process), particle decays (like the decay of a Higgs boson into two photons, one of the most important discovery channels for it), additional interactions between the 'beam remnants' (called 'multiple interactions'), and hadronization (the process by which 'partons' - quarks and gluons produced in the fundamental scattering or by parton showering - turn into hadrons like pions or other mesons and baryons).

Each generator contains slightly different approximations to these processes, and had slightly different historical origins, as follows.

The oldest of the programs is PYTHIA, which started in 1978 and was then called JETSET (now obsolete and replaced by the PYTHIA label). It has been developed mainly by a research group based at Lund University in Sweden, together with researchers at Fermilab and CERN. The first version was a FORTRAN program small enough to fit on a couple of printed pages and contained an algorithm that described the 'fragmentation' of a 'fast parton' into a 'jet of mesons', corresponding to the 'hadronization' step mentioned above. Although the program has grown vastly since then (the newest version, PYTHIA 8, is about 100,000 lines of C++ code, though the last version of its FORTRAN predecessor, PYTHIA 6, is also still quite widely used), the modern-day PYTHIA generator still places a main emphasis on hadronization, and it is probably fair to say that it contains the most sophisticated model for that aspect, based on the so-called Lund String Model, which combines concepts from classical string theory (not superstrings!) with quantum tunneling.

Next on the scene came the HERWIG generator, started in the early eighties by researchers based in the UK (mainly Cambridge, Durham, and Manchester), also originally written in FORTRAN but now succeeded by a C++ version hence the name HERWIG++. The advent of HERWIG was tied to significant advances in the theoretical understanding of the process of 'parton showering', another of the steps mentioned above. Notably, the HERWIG model was constructed to give an improved description of coherence effects between different charged partons (such as when a positive and negative charge 'screen' each other), and was combined with a different (simpler) model of hadronization, called the 'Cluster Model'. For most of the eighties and nineties, any difference in the results obtained with PYTHIA and HERWIG was taken as a measure of the theoretical uncertainty surrounding each particular distribution. The modern equivalent of this is why it is so important that we don't just run a single generator in T4T.

Finally, improvements in the 00s on our ability to calculate the fundamental-scattering process itself (and the slow pace of moving from FORTRAN to C++ by the other generators) led to the advent of the SHERPA model, a brand new generator written from scratch in C++ and including a sophisticated algorithm for incorporating systematic quantum corrections to the hard-scattering process. This was initially combined with quite simple models for parton showering and hadronization, but SHERPA has now since quite a few years been developed to a full-fledged generator with state-of-the-art algorithms for all aspects of the physics modeling. This group was initially based in Germany (it originated in Dresden) but is now also strongly represented at Durham University, in the UK.

Special-Purpose Generators

In addition, there is a very large number of special-purpose generators, which focus on just one aspect of the physics modeling, with interfaces to the general-purpose ones for handling the remaining aspects. In T4T, the ones represented are ALPGEN, EPOS, PHOJET, and VINCIA.

ALPGEN is developed mainly by a research team based at CERN and in Italy. It focuses on improvements to the hard-scattering process similar to those done by the SHERPA generator, but with somewhat different underlying calculational methods. It is interfaced to either HERWIG or PYTHIA for parton showering and hadronization.

COMIX is used by the SHERPA generator to generate the hard-scattering processes. As such it is complementary to ALPGEN, but integrated within the SHERPA framework.

EPOS is a relatively new generator, developed mainly by French research teams, and it has a much broader range of application than 'just' the kinds of collisions represented in T4T. In particular, EPOS is developed to be able to handle also 'heavy-ion' collisions and cosmic-ray interactions in the atmosphere, both of which entail modeling not only proton-proton collisions but also nucleus-nucleus collisions. Nevertheless, it also does apply to proton-proton (pp) collisions, which is a main calibration point for it, hence it is interesting to compare it with pp measurements from the LHC and earlier accelerators, as done in T4T. Its main hadronization model is string-based, similarly to PYTHIA, but it also incorporates hydro-dynamics inspired models required to describe the so-called quark-gluon plasma phase of heavy-ion interactions. 

PHOJET is another generator that has very old roots, mainly from the German physics community. It is written in FORTRAN and uses a special kind of description of relatively low-energy ('soft') interactions called Regge Theory, which also has roots in string-based models, and it is interfaced to PYTHIA for hadronization.

VINCIA is the youngest of the generators, having started in 2007, and is written as a C++ plugin to PYTHIA 8. It began as a collaboration between researchers at Fermilab (Chicago) and Saclay (Paris), and now also has a main base at Monash University in Melbourne. It focuses on the combination of the fundamental-scattering process with parton showers, and aims to simultaneously improve the precision of both using a different scheme than those of ALPGEN and SHERPA. It interfaces PYTHIA 8 for hadronization.

That was a brief summary of the main emphasis and historical/geographical origins of each project. Going into details about each simulation component would require a (much) longer post, but we hope nonetheless these comments may be useful to people wanting to understand a little better which programs we run, and why there are so many of them. All contain different approximations, and attempt to reach the state-of-the-art through slightly different paths. Some do 'everything' while others only do specific aspects. 

Peter Skands