Table of Contents
Fetching ...

Development Strategies for Pythia version 7

Leif Lonnblad

TL;DR

Pythia7 addresses the need for a radical, object-oriented reimplementation of a high-energy physics event generator by mapping the entire generation history into a flexible OO event model. The proposed architecture centers on a layered, extensible set of handlers (Event-Handler, Collision-Handler, Sub-Process-Handler, Step-Handler) and modular components (Parton-XSec-Fn, Parton-Density, Remnant-Handler) to enable easy integration of new physics and interfaces. The approach emphasizes minimal external dependencies, reusable utilities, robust error handling, and comprehensive documentation, while maintaining compatibility with existing HEP software ecosystems. If realized, the framework promises improved extensibility, UI options, and reproducibility for complex LHC-era simulations and future colliders.

Abstract

This document describes the strategies for the development of the Pythia7 program. Both the internal and external structure of the program is discussed. Some comments on relationship to other software is given as well as some comments on coding conventions and other technical details.

Development Strategies for Pythia version 7

TL;DR

Pythia7 addresses the need for a radical, object-oriented reimplementation of a high-energy physics event generator by mapping the entire generation history into a flexible OO event model. The proposed architecture centers on a layered, extensible set of handlers (Event-Handler, Collision-Handler, Sub-Process-Handler, Step-Handler) and modular components (Parton-XSec-Fn, Parton-Density, Remnant-Handler) to enable easy integration of new physics and interfaces. The approach emphasizes minimal external dependencies, reusable utilities, robust error handling, and comprehensive documentation, while maintaining compatibility with existing HEP software ecosystems. If realized, the framework promises improved extensibility, UI options, and reproducibility for complex LHC-era simulations and future colliders.

Abstract

This document describes the strategies for the development of the Pythia7 program. Both the internal and external structure of the program is discussed. Some comments on relationship to other software is given as well as some comments on coding conventions and other technical details.

Paper Structure

This paper contains 31 sections, 3 equations, 5 figures.

Figures (5)

  • Figure 1: Class diagram for the suggested structure of a generated event in Pythia7. (See appendix \ref{['apx:booch']} for a quick guide on Booch notation.)
  • Figure 2: Class diagram for the suggested structure of different handlers responsible for the generating process in Pythia7.
  • Figure 3: An example of what an input file to a command-line interface could look like for Pythia7. Note that the syntax will most likely change during the development of Pythia7.
  • Figure 4: An example of what a main program using the Pythia7 library could look like. Note that the syntax and naming of methods will most likely change during the development of Pythia7.
  • Figure 5: Quick guide to the Booch notation used in this paper