<chapter name="Top Processes"> 
 
<h2>Top Processes</h2> 
 
Different ways to produce top quarks, singly or in pairs. 
 
<flag name="Top:all" default="off"> 
Common switch for the group of top production. 
</flag> 
 
<flag name="Top:gg2ttbar" default="off"> 
Scatterings <ei>g g &rarr; t tbar</ei>. 
Code 601. 
</flag> 
 
<flag name="Top:qqbar2ttbar" default="off"> 
Scatterings <ei>q qbar &rarr; t tbar</ei> by gluon exchange. 
Code 602. 
</flag> 
 
<flag name="Top:qq2tq(t:W)" default="off"> 
Scatterings <ei>q q' &rarr; t q''</ei> by <ei>t</ei>-channel exchange 
of a <ei>W^+-</ei> boson. 
Code 603. 
</flag> 
 
<flag name="Top:ffbar2ttbar(s:gmZ)" default="off"> 
Scatterings <ei>f fbar &rarr; t tbar</ei> by <ei>s</ei>-channel exchange 
of a <ei>gamma^*/Z^0</ei> boson. 
Code 604. 
</flag> 
 
<flag name="Top:ffbar2tqbar(s:W)" default="off"> 
Scatterings <ei>f fbar' &rarr; t q''</ei> by <ei>s</ei>-channel exchange 
of a <ei>W^+-</ei> boson. 
Code 605. 
</flag> 
 
<flag name="Top:gmgm2ttbar" default="off"> 
Scatterings <ei>gamma gamma &rarr; t tbar</ei>. 
Code 606. 
</flag> 
 
<flag name="Top:ggm2ttbar" default="off"> 
Scatterings <ei>g gamma &rarr; t tbar</ei>. 
Code 607 when <ei>g gamma &rarr; t tbar</ei> and 617 
when <ei>gamma g &rarr; t tbar</ei>. 
</flag> 
 
<p/> 
By default top always decays to a <ei>W</ei> and a down-type quark. 
It is possible to switch on the <ei>t &rarr; H+ b</ei> decay mode. 
Note that its partial width is calculated using the <ei>tan(beta)</ei> 
value stored in <code>HiggsHchg:tanBeta</code>, so that it can be used 
without having to read in a SUSY parameter file. For the <ei>H+</ei> to 
decay also <code>Higgs:useBSM = on</code> is necessary. 
 
<h3>Threshold enhancements</h3> 
 
In the article "On the threshold behaviour of heavy top production", 
<ref>Fad90</ref>, cross section enhancements in the threshold region 
were discussed. Recently both CMS and ATLAS have found signals for such 
enhancements. The old equations, partly but not fully available in PYTHIA 6, 
have therefore now been reimplemented in full. The above-threshold 
enhancements are straightforward to implement, but the below-threshold 
"toponium" are less transparent, and different scenarios are explored. 
 
<p/> 
Relevant code is implemented as a new class <code>TopThreshold</code> 
in <code>SigmaQCD.h/.cc</code>, which  is accessed by the internal 
<ei>gg &rarr; ttbar</ei> and <ei>qqbar &rarr; ttbar</ei> classes 
in the same files. The implemented scenarios and free parameters 
within them are as follows. 
 
<modepick name="TopThreshold:model" default="0" min="0" max="2"> 
The choice of threshold behaviour for the <ei>g g &rarr; t tbar</ei> 
and <ei>q qbar &rarr; t tbar</ei> processes. 
<option value="0">no modifications to threshold, i.e. pure Born 
(leading order) matrix elements. 
</option> 
<option value="1">the simple Coulomb enhancement, which only works 
above the threshold, <ei>E = mHat(t + tbar) - m(t) - m(tbar) &gt; 0</ei>. 
</option> 
<option value="2">the Green's function in the whole threshold region, 
both <ei>E &gt; 0</ei> and <ei>E &lt; 0</ei>, but damped-out below 
(see <code>thrRegion</code> below). The procedure is to first pick 
<ei>m(t)</ei> and <ei>m(tbar)</ei> by Breit-Wigners, and then an 
<ei>mHat</ei> distributed all the way down to 
<ei>m(t) + m(tbar) - 2 * thrRegion</ei>. 
If <ei>E = mHat - m(t) - m(tbar) &lt; 0</ei> then a new 
<ei>m'(t) &lt; m(t)</ei> and a new <ei>m'(tbar) &lt; m(tbar)</ei> 
are picked according to Breit-Wigners under the requirement that 
<ei>E' = mHat - m'(t) - m'(tbar) &gt; 0</ei>. Finally the event is 
accepted or rejected according to the naive cross section reweighted 
to the Green's function value. 
</option> 
<note>Note:</note> In PYTHIA 8.317 the Green's function expression 
has been modified in a small but not irrelevant way. The variable 
<ei>E = mHat - 2 m_t</ei> (for equal <ei>t</ei> and <ei>tbar</ei> masses) 
is intended to be proportional to the squared velocity <ei>beta^2</ei>, 
but that only holds very close to threshold. By using the correct full 
expression, where <ei>beta^2 = 1 - 4m_t^2 / sHat</ei>, agreement is 
obtained with the Coulomb expression some distance above the threshold. 
<note>Warning:</note> The first edition of the threshold model framework, 
in PYTHIA 8.316, contained two intermediate scenarios, then options 2 and 3, 
that acted as controls and stepping stones towards the recommended 
option 4. In the current version those intermediate scenarios have been 
removed, and what used to be option 4 is now option 2. On the other hand, 
this scenario has been equipped with new variants; read on. 
</modepick> 
 
<p/> 
One aspect that was not fully appreciated in the PYTHIA 8.316 
implementation is the role of the top quark width. In PYTHIA the 
top quark has a Breit-Wigner mass distribution, whether the top 
decay is explicitly considered or not, since the subsequent decays 
are implicitly going to happen later on. In matrix element calculations 
a production of a top pair has to be performed with the same mass for 
the top and the antitop, to preserve  gauge invariance, and then the 
natural choice is the on-shell value. If you want to include the top 
width you should instead consider the production of its decay products, 
i.e. <ei>b W+ bbar W-</ei>, and to also include the <ei>W</ei> widths 
their decay products have to be swapped in. The way PYTHIA addresses 
this issue is to generate separate top and antitop Breit-Wigner masses, 
but use the event-by-event average in the production matrix elements. 
More specifically, the momentum three-vector is preserved in the choice 
of average, which translates into 
<ei> (1 - r_3 - r_4)^2 - 4 * r_3 * r_4 = 1 - 4 * r_avg </ei>, 
where <ei>r_3 = m_t^2/sHat</ei>, <ei>r_4 = m_tbar^2/sHat</ei>, and 
<ei>r_avg = m_avg^2/sHat</ei>. 
 
<p/> 
The question is now how the top mass issue is handled in the derivation 
of the threshold cross section expressions. This issue is not addressed 
in <ref>Fad90</ref>, which only does numerical integration of the 
below-threshold contribution, not Monte Carlo implementation. Going 
back to more detailed presentation, such as <ref>Fad91</ref>, it becomes 
apparent that the relevant Green's function expressions of option 2 
above are intended to include smearing from the top width. So it appears 
that there is doublecounting, that should be fixed. One could 
imagine two approaches to this. 
<br/>(a) Reduce the top quark width to a small number. This is then closer 
to the general thinking of the theory community, as noted above. 
The main issue is that the broadening of top quarks above threshold 
is also inhibited, which is unphysical. Technically, the top width cannot 
be made arbitrarily small, since a finite width is needed for the 
handling of the "toponium" below-threshold decay to off-shell top quarks. 
The top width changed here is the regular one stored in the particle 
data tables, and can be set as property <code>mWidth</code> of particle 6. 
Note, however, that PYTHIA will use the chosen top mass to recalculate 
the top width at initialization, so to inhibit this you must also set 
<code>6:doForceWidth = true</code>. 
<br/>(b) Reduce the top width used in the threshold-behaviour matrix 
element expressions. This then provides a natural continuation of the 
above-threshold behaviour traditionally used in PYTHIA, including 
model options 0 and 1 above, to the below-threshold one. The problem here 
is a practical one: a shrinking matrix element width gives a spectrum of 
discrete bound-state peaks in the <ei>t+tbar</ei> mass spectrum, which 
becomes messy to handle properly. Notably the initialization step may not 
fully catch the peaks, which later leads to some events receiving weights 
above unity to compensate. This kind of top width is regulated by the 
<code>tWidthGreen</code> parameter below. 
 
<parm name="TopThreshold:tWidthGreen" default="1.34" min="0.1" max="2."> 
top quark width as used in the Green's function. See description above 
for the issue this parameter is intended to address. 
</parm> 
 
<parm name="TopThreshold:thrRegion" default="10." min="5." max="20."> 
the Green's function, when used, is only assumed valid down to 
<ei>E = -thrRegion</ei>. In the region <ei>[-2 thrRegion, -thrRegion]</ei> 
it is linearly damped to zero, and below that identically zero. 
<note>Note:</note> renamed from <code>width</code> in PYTHIA 8.316, to avoid 
confusion with the width concept used e.g. in <code>tWidthGreen</code> 
above. Also, owing to a changed handling of the high-energy behaviour 
in model 2, damping at high masses is no longer required. 
</parm> 
 
<modepick name="TopThreshold:alphasOrder" default="2" min="0" max="2"> 
the order of the running of the <ei>alpha_strong</ei>, used for the 
top threshold factors (and nowhere else). 
<option value="0">no running. 
</option> 
<option value="1">first-order running. 
</option> 
<option value="2">second-order running. 
</option> 
</modepick> 
 
<parm name="TopThreshold:alphasValue" default="0.118" min="0.10" max="0.25"> 
the <ei>alpha_strong</ei> value at scale <ei>M_Z^2</ei>, that then runs 
according to the order defined above. 
</parm> 
 
<parm name="TopThreshold:ggSingletFrac" default="0.28571" min="0." max="1."> 
in the <ei>g g &rarr; t tbar</ei> process, colour factors gives 2/7 
singlet and the rest octet, but dynamics might modify this. 
</parm> 
 
<parm name="TopThreshold:qqSingletFrac" default="0." min="0." max="1."> 
in the <ei>q qbar &rarr; t tbar</ei> process colour arguments gives 
all octet and no singlet, but again modifications are possible. 
</parm> 
 
<flag name="TopThreshold:pseudoscalar" default="off"> 
distribute angles of the consecutive <ei>t</ei>, <ei>tbar</ei> <ei>W+</ei> 
and <ei>W-</ei> decays as if the <ei>t+tbar</ei> pair is in a pseudoscalar 
state, giving specific angular correlations otherwise absent. This only 
applies in the threshold region, while at higher energies a transition to 
independent <ei>t</ei> and <ei>tbar</ei> decays is assumed, see next two 
parameters. When on it affects all top threshold models, also the default 
pure Born level. 
</flag> 
 
<parm name="TopThreshold:psEBeginDamp" default="10."> 
when <code>TopThreshold:pseudoscalar = on</code> then the correlated 
decays are used up until this many GeV above the threshold energy. 
After that a linear damping is introduced, with the slack being taken 
over by independent <ei>t</ei> and <ei>tbar</ei> decays, until the 
latter completely takes over at the next scale. 
</parm> 
 
<parm name="TopThreshold:psEEndDamp" default="20."> 
the linear damping introduced in the previous parameter ends at the 
current one, so above this scale (relative to the threshold energy) 
only independent <ei>t</ei> and <ei>tbar</ei> decays remain. Must be 
chosen larger than the previous parameter. 
</parm> 
 
<br/> 
<note>Note 1:</note> Model 2, for <ei>E &lt; 0</ei>  redefines the 
<ei>t</ei> and <ei>tbar</ei> mass values in order to achieve a new 
<ei>E' &gt; 0</ei>. In order still to have access to the original 
quantities, before the new masses were selected, the following 
quantities are saved and retrievable: 
<br/><code>pythia.info.toponiumE</code> the original threshold energy 
<ei>E</ei>, which may have either sign; 
<br/><code>pythia.info.toponiumm3, pythia.info.toponiumm4</code> the two 
original <ei>t</ei> and <ei>tbar</ei> masses, which are larger than the 
<ei>m'</ei> ones found in the event record. 
 
<br/> 
<note>Note 2:</note> Five main programs explore the usage of this code: 
<br/><code>main368.cc</code> plots the shape of the pure singlet and octet 
enhancements; 
<br/><code>main369.cc</code> and <code>main370.cc</code> histogram 
a few quantities for many different scenarios, to allow direct comparisons, 
with code for parallelization using either OpenMP or 
<code>PythiaParallel</code>, respectively; 
<br/><code>main371.cc</code> histograms a wider set of quantities, but only 
for one model at a time; 
<br/><code>main372.cc</code> studies angular correlations between outgoing 
fermions. 
 
</chapter> 
 
<!-- Copyright (C) 2026 Torbjorn Sjostrand --> 
