250 likes | 270 Views
This experience highlights the motivation and process of migrating the HERWIG project to a modern framework, including the early years, mid-life crisis, and current status. Lessons learned and conclusions drawn from the migration are also discussed.
E N D
Experience in migrating the code to a modern framework Changing HERWIG g Herwig++ Peter Richardson IPPP, Durham University SuperB 2nd June
Summary • Motivation • Early Years • Mid-Life Crisis • Current • Lessons • Conclusions SuperB 2nd June
Motivation • The HERWIG project began 25 years ago and was intended to provide a good description of perturbative QCD. • Improvements and developments over the years. • Mainly made by generations of PhD students/postdocs modifying (hacking) the code. SuperB 2nd June
Motivation • In 2000 it became clear that: • The structure was difficult to maintain; • Making certain changes could led to unstable results; • Necessary improvements to the physics modelling were impossible to implement with the current code structure. • Decided to write a new program based on the same physics ideas but with improvements wherever possible to the modelling. SuperB 2nd June
Early Years • Having made that decision the logical choice was an object-oriented program in C++. • This was in an environment where: • other generator projects, e.g. PYTHIA, were also being rewritten in C++; • and new projects, e.g. SHERPA, were being developed in C++. • When we started the PYTHIA rewrite had already made significant progress on the infrastructure code. SuperB 2nd June
Early Years • Decided to join forces and separate the infrastructure from the physics of the event generator. • Split the infrastructure from PYTHIA7 into ThePEG. • Intended that the physics modules of both programs would then be built on this infrastructure. • Seemed like a good idea at the time, would have allowed pick and mix for physics models. SuperB 2nd June
Early Years • As there was nobody who understood both the physics and C++ applied for funding to PPARC/STFC for 4 years of postdoc funding to write the new program. • Employed people who were particle physicists with C++ expertise, but not event generator authors. • Hoped to increase the number of experts in the field in this way, again it seemed like a good idea at the time. SuperB 2nd June
Early Years • One postdoc started October 2000 for two years, the second a year later eventually for three years. • After 4 man years of effort we had a basic version for e+e- collisions: • Basic cluster hadronization model with minor improvements for baryon and bottom/charm hadron production; • Improved parton shower for final-state radiation; • Simple model of hadron decays as in the FORTRAN program. SuperB 2nd June
LEP Event Shapes Herwig++ compared to SLD Phys.Rev.D65:092006,2002 Herwig++ compared to ALEPH Phys.Lett.B512:30-48,2001 SuperB 2nd June
Mid-Life Crisis • After this version we were more reliant on the authors of the original FORTRAN program for further developments, no dedicated manpower although more recently dedicated C++ expert • Took a further two years for a basic version for hadron-hadron collisions. • Two years after that for the inclusion of multiple parton-parton interactions, improved hadron decays and BSM physics. • So about 8 years to produce a program suitable for simulating LHC collisions! SuperB 2nd June
Underlying Event Herwig++ compared to CDF data SuperB 2nd June
POWHEG method for Drell-Yan Herwig++ POWHEG MC@NLO CDF Run I Z pT D0 Run II Z pT JHEP 0810:015,2008 Hamilton, PR, Tully SuperB 2nd June
pT of jets in W+jets at the Tevatron All Jets 3rd Hardest Jet Herwig++ compared to data from CDF Phys.Rev.D77:011108,2008 SuperB 2nd June
QED Radiation SuperB 2nd June
UED e- near e- far Look at the decay q e- near q*L Z* e+ far e+ near e+ far e*R g* Herwig++ compared to hep-ph/0507170 Smillie and Webber SuperB 2nd June
Hadron Decays • The current simulation of hadron decays • includes spin correlations; • detailed simulation of tau decays; • good simulation of light meson and baryon decays; • QED radiation using the YFS approach ; • Sophisticated treatment of off-shell effects; • Reasonable description of inclusive B decays. • Not focussed on B mixing or rare B decays, but can be interfaced to EvtGen. SuperB 2nd June
Hadron Decays Tau Decays, tgrnt Bgpen SuperB 2nd June
Current • The current version Herwig++ 2.4 is a better simulation of lepton-lepton, lepton-hadron and hadron-hadron collisions than its FORTRAN predecessor HERWIG6.5. • However its taken a long time to get there and if the LHC had been finished on time we would have been too late. • So what have we learnt? SuperB 2nd June
Lessons: Structure • Using ThePEG as our structure has a number of pros • Memory handling • Parameter setting and cons • Steep learning curve • Some things weren’t the way we’d have done them • With hindsight I still think this was the right decision and some of the advantages were lost when PYTHIA withdrew. SuperB 2nd June
Lessons: Structure • In C++ getting the structure right is the key. • Many features we intended to add, which were impossible in the FORTRAN, we very easy in the C++. • Conversely changes we hadn’t intended proved painful. • Equally for some things like the parton shower it took a number of iterations to get the structure right. SuperB 2nd June
Lessons: Structure • In the B-physics community tend to rely on EvtGen for all decays, with PHOTOS for QED radiation. • However both Herwig and SHERPA now have good internal modelling for hadron decays. • In any new event simulation code need to think how bits of this can be used. • Equally need to avoid the problems which led to different experiments using different versions of EvtGen. SuperB 2nd June
Lessons: People • In hindsight it would have been easier to teach the people who knew the physics C++ than teach the people who knew C++ the physics: • Learning event generator physics 5-10 years; • Learning C++ 5-10 weeks. • Many things would have been faster if we’d realised what the bugs were earlier. • The money spent on postdocs would have been better used to buy out the teaching of the generator experts. SuperB 2nd June
Lessons: People • In practice a lot of the recent code has been written by physicists with input/review by a C++ expert. • Or even with two people in the same room doing the key pieces together which has worked very well in practice. SuperB 2nd June
Lessons: Collaboration • As a group of theorists we weren’t really ready for the level of management that was probably needed. • In the early stages this was a major problem with too little oversight of the C++ experts and too little involvement of the event generator experts. • In the later stages most of the work has been done by a small number of people in close collaboration of those with physics and C++ expertise. SuperB 2nd June
Summary • Herwig++ is now provides a sophisticated simulation of hadron collisions. • However it’s been a long slow and often painful process. • Any rewrite will certainly take longer than you expect. • Good luck! SuperB 2nd June