--
GavinKirby - 2010-09-29
This page documents the use of Pythia to generate ttH (Higgs-strahlung from top/tbar) events.
The code consists primarily of three files, in addition to the .params file which specifies the run parameters. These files are:
- src/tth.f -- the main Fortran source code,
- inc/tth.inc -- contains variable declarations
- inc/tth_inl.inc -- containing inline functions
- pycomm.inc --
The shell script test/linktth is used to compile the code.
A run may be initiated in the test area by using the command
./tthsf < [filename].params > [output logfile]
for a given parameters file. The code is set up to dump unsatisfactory events in the output logfile for debugging purposes.
Params Files
Run information is specified in a .params file. The top line of a .params file should look like:
14000D0 5000 10 500 p p
In this case, 14000 is the centre of mass energy (in
GeV), 5000 is the number of events to generate, 10 is the number of events to printout at the start of the run, 500 is the subsequent printout interval, and "p p" is the initial state appropriate to the LHC (e.g. p pbar would be used for Tevatron runs).
Pythia Code
tth.f
tth.inc
This file contains variable declarations for the main program and each of the subroutines in tth.f: error counters, event particle counters and particle indices, as well as logical (Boolean) variables used in the main Fortran code.
tth_inl.inc
Changes from VBF
The code was initially designed to generate vector boson (WW) fusion events, and it has been adapted in stages to generate ttH events instead, with some additional modifications. In particular, the histogramming aspect of the initial VBF code (which used the Pythia data to prepare an hbook file) has been disabled, with a view to amending the code to produce a text output file containing the necessary information (in the appropriate format) to prepare root ntuples for histogramming and analysis.
Particle Number Checking
The code uses a number of independent checks to ensure that the events that Pythia is generating have the appropriate structure. In particular, it is important to check that the numbers of particles of each kind in an event are correct. For semileptonic ttH we expect to find one top, one tbar, one each of Wplus and Wminus (or two, for H->bbar), one lepton and its associated neutrino (or three leptons, for H->leptons), one (or two) each of b and bbar.
Particle Parentage Checking
It is also important to check that the particles in each event correspond to the expected pattern of decays (i.e. parent/daughter particles). For instance, one expects the lepton in a semileptonic ttH process to appear as a result of the weak decay of a W (or from H->ll) and this condition can be imposed on events, so together with the independent counting of particles it is possible to impose the condition (for example) that any acceptable event must contain exactly one lepton with a W parent (of appropriate charge).