Table of Contents
Fetching ...

Pythia version 7-0.0 - a proof-of-concept version

Marc Bertini, Leif Lonnblad, Torbjorn Sjostrand

TL;DR

Pythia7-0.0 presents a proof-of-concept, object-oriented reimplementation of the Lund event generators in C++, aiming to provide a modular toolkit suitable for the LHC era and future colliders. It details an architecture built from abstract base classes for each generation step, runtime composition into an Event-Generator, and a rich Event-Record to capture full generation histories, with Lund string fragmentation used as a case study. The document also covers installation, usage, and developer-facing guidance, including persistence, interfaced objects, and a repository-based setup, while comparing Lund fragmentation with Pythia6 as a validation point. The authors emphasize the non-production status, outline missing physics (e.g., multiple interactions) and planned enhancements, and describe a roadmap toward production-quality code and broader software integration.

Abstract

This document describes the first proof-of-concept version of the Pythia7 program. Pythia7 is a complete re-write of the Pythia program in C++. It is mainly intended to be a replacement for the `Lund' family of event generators, but is also a toolkit with a structure suitable for implementing any event generator model. In this document, the structure of the program is presented both from the user and the developer point of view. It is not intended to be a complete manual, but together with the documentation provided in the distribution, it should be sufficient to start working with the program.

Pythia version 7-0.0 - a proof-of-concept version

TL;DR

Pythia7-0.0 presents a proof-of-concept, object-oriented reimplementation of the Lund event generators in C++, aiming to provide a modular toolkit suitable for the LHC era and future colliders. It details an architecture built from abstract base classes for each generation step, runtime composition into an Event-Generator, and a rich Event-Record to capture full generation histories, with Lund string fragmentation used as a case study. The document also covers installation, usage, and developer-facing guidance, including persistence, interfaced objects, and a repository-based setup, while comparing Lund fragmentation with Pythia6 as a validation point. The authors emphasize the non-production status, outline missing physics (e.g., multiple interactions) and planned enhancements, and describe a roadmap toward production-quality code and broader software integration.

Abstract

This document describes the first proof-of-concept version of the Pythia7 program. Pythia7 is a complete re-write of the Pythia program in C++. It is mainly intended to be a replacement for the `Lund' family of event generators, but is also a toolkit with a structure suitable for implementing any event generator model. In this document, the structure of the program is presented both from the user and the developer point of view. It is not intended to be a complete manual, but together with the documentation provided in the distribution, it should be sufficient to start working with the program.

Paper Structure

This paper contains 56 sections, 6 equations, 2 figures.

Figures (2)

  • Figure 1: Class diagram for the structure of a generated event in Pythia7.
  • Figure 2: Class diagram for the structure of different handlers responsible for the generation process in Pythia7.