/usr/share/doc/pythia8-doc/html/ASecondHardProcess.html is in pythia8-doc-html 8.1.80-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 | <html>
<head>
<title>A Second Hard Process</title>
<link rel="stylesheet" type="text/css" href="pythia.css"/>
<link rel="shortcut icon" href="pythia32.gif"/>
</head>
<body>
<h2>A Second Hard Process</h2>
When you have selected a set of hard processes for hadron beams, the
<a href="MultipartonInteractions.html" target="page">multiparton interactions</a>
framework can add further interactions to build up a realistic
underlying event. These further interactions can come from a wide
variety of processes, and will occasionally be quite hard. They
do represent a realistic random mix, however, which means one cannot
predetermine what will happen. Occasionally there may be cases
where one wants to specify also the second hard interaction rather
precisely. The options on this page allow you to do precisely that.
<p/><code>flag </code><strong> SecondHard:generate </strong>
(<code>default = <strong>off</strong></code>)<br/>
Generate two hard scatterings in a collision between hadron beams.
The hardest process can be any combination of internal processes,
available in the normal <a href="ProcessSelection.html" target="page">process
selection</a> machinery, or external input. Here you must further
specify which set of processes to allow for the second hard one, see
the following.
<h3>Process Selection</h3>
In principle the whole <a href="ProcessSelection.html" target="page">process
selection</a> allowed for the first process could be repeated
for the second one. However, this would probably be overkill.
Therefore here a more limited set of prepackaged process collections
are made available, that can then be further combined at will.
Since the description is almost completely symmetric between the
first and the second process, you always have the possibility
to pick one of the two processes according to the complete list
of possibilities.
<p/>
Here comes the list of allowed sets of processes, to combine at will:
<p/><code>flag </code><strong> SecondHard:TwoJets </strong>
(<code>default = <strong>off</strong></code>)<br/>
Standard QCD <i>2 -> 2</i> processes involving gluons and
<i>d, u, s, c, b</i> quarks.
<p/><code>flag </code><strong> SecondHard:PhotonAndJet </strong>
(<code>default = <strong>off</strong></code>)<br/>
A prompt photon recoiling against a quark or gluon jet.
<p/><code>flag </code><strong> SecondHard:TwoPhotons </strong>
(<code>default = <strong>off</strong></code>)<br/>
Two prompt photons recoiling against each other.
<p/><code>flag </code><strong> SecondHard:Charmonium </strong>
(<code>default = <strong>off</strong></code>)<br/>
Production of charmonium via colour singlet and colour octet channels.
<p/><code>flag </code><strong> SecondHard:Bottomonium </strong>
(<code>default = <strong>off</strong></code>)<br/>
Production of bottomonium via colour singlet and colour octet channels.
<p/><code>flag </code><strong> SecondHard:SingleGmZ </strong>
(<code>default = <strong>off</strong></code>)<br/>
Scattering <i>q qbar -> gamma^*/Z^0</i>, with full interference
between the <i>gamma^*</i> and <i>Z^0</i>.
<p/><code>flag </code><strong> SecondHard:SingleW </strong>
(<code>default = <strong>off</strong></code>)<br/>
Scattering <i>q qbar' -> W^+-</i>.
<p/><code>flag </code><strong> SecondHard:GmZAndJet </strong>
(<code>default = <strong>off</strong></code>)<br/>
Scattering <i>q qbar -> gamma^*/Z^0 g</i> and
<i>q g -> gamma^*/Z^0 q</i>.
<p/><code>flag </code><strong> SecondHard:WAndJet </strong>
(<code>default = <strong>off</strong></code>)<br/>
Scattering <i>q qbar' -> W^+- g</i> and
<i>q g -> W^+- q'</i>.
<p/><code>flag </code><strong> SecondHard:TopPair </strong>
(<code>default = <strong>off</strong></code>)<br/>
Production of a top pair, either via QCD processes or via an
intermediate <i>gamma^*/Z^0</i> resonance.
<p/><code>flag </code><strong> SecondHard:SingleTop </strong>
(<code>default = <strong>off</strong></code>)<br/>
Production of a single top, either via a <i>t-</i> or
an <i>s-</i>channel <i>W^+-</i> resonance.
<p/>
A further process collection comes with a warning flag:
<p/><code>flag </code><strong> SecondHard:TwoBJets </strong>
(<code>default = <strong>off</strong></code>)<br/>
The <i>q qbar -> b bbar</i> and <i>g g -> b bbar</i> processes.
These are already included in the <code>TwoJets</code> sample above,
so it would be double-counting to include both, but we assume there
may be cases where the <i>b</i> subsample will be of special interest.
This subsample does not include flavour-excitation or gluon-splitting
contributions to the <i>b</i> rate, however, so, depending
on the topology if interest, it may or may not be a good approximation.
<h3>Cuts and scales</h3>
The second hard process obeys exactly the same selection rules for
<a href="PhaseSpaceCuts.html" target="page">phase space cuts</a> and
<a href="CouplingsAndScales.html" target="page">couplings and scales</a>
as the first one does. Specifically, a <i>pTmin</i> cut for
<i>2 -> 2</i> processes would apply to the first and the second hard
process alike, and ballpark half of the time the second could be
generated with a larger <i>pT</i> than the first. (Exact numbers
depending on the relative shape of the two cross sections.) That is,
first and second is only used as an administrative distinction between
the two, not as a physics ordering one.
<p/>
Optionally it is possible to pick the mass and <i>pT</i>
<a href="PhaseSpaceCuts.html" target="page">phase space cuts</a> separately for
the second hard interaction. The main application presumably would
be to allow a second process that is softer than the first, but still
hard. But one is also free to make the second process harder than the
first, if desired. So long as the two <i>pT</i> (or mass) ranges
overlap the ordering will not be the same in all events, however.
<h3>Cross-section calculation</h3>
As an introduction, a brief reminder of Poissonian statistics.
Assume a stochastic process in time, for now not necessarily a
high-energy physics one, where the probability for an event to occur
at any given time is independent of what happens at other times.
Then the probability for <i>n</i> events to occur in a finite
time interval is
<br/><i>
P_n = <n>^n exp(-<n>) / n!
</i><br/>
where <i><n></i> is the average number of events. If this
number is small we can approximate <i>exp(-<n>) = 1 </i>,
so that <i>P_1 = <n></i> and
<i>P_2 = <n>^2 / 2 = P_1^2 / 2</i>.
<p/>
Now further assume that the events actually are of two different
kinds <i>a</i> and <i>b</i>, occurring independently of each
other, such that <i><n> = <n_a> + <n_b></i>.
It then follows that the probability of having one event of type
<i>a</i> (or <i>b</i>) and nothing else is
<i>P_1a = <n_a></i> (or <i>P_1b = <n_b></i>).
From
<br/><i>
P_2 = (<n_a> + <n_b>)^2 / 2 = (P_1a + P_1b)^2 / 2 =
(P_1a^2 + 2 P_1a P_1b + P_1b^2) / 2
</i><br/>
it is easy to read off that the probability to have exactly two
events of kind <i>a</i> and none of <i>b</i> is
<i>P_2aa = P_1a^2 / 2</i> whereas that of having one <i>a</i>
and one <i>b</i> is <i>P_2ab = P_1a P_1b</i>. Note that the
former, with two identical events, contains a factor <i>1/2</i>
while the latter, with two different ones, does not. If viewed
in a time-ordered sense, the difference is that the latter can be
obtained two ways, either first an <i>a</i> and then a <i>b</i>
or else first a <i>b</i> and then an <i>a</i>.
<p/>
To translate this language into cross-sections for high-energy
events, we assume that interactions can occur at different <i>pT</i>
values independently of each other inside inelastic nondiffractive
(sometimes equated with "minbias") events. Then the above probabilities
translate into
<i>P_n = sigma_n / sigma_ND</i> where <i>sigma_ND</i> is the
total nondiffractive cross section. Again we want to assume that
<i>exp(-<n>)</i> is close to unity, i.e. that the total
hard cross section above <i>pTmin</i> is much smaller than
<i>sigma_ND</i>. The hard cross section is dominated by QCD
jet production, and a reasonable precaution is to require a
<i>pTmin</i> of at least 20 GeV at LHC energies.
(For <i>2 -> 1</i> processes such as
<i>q qbar -> gamma^*/Z^0 (-> f fbar)</i> one can instead make a
similar cut on mass.) Then the generic equation
<i>P_2 = P_1^2 / 2</i> translates into
<i>sigma_2/sigma_ND = (sigma_1 / sigma_ND)^2 / 2</i> or
<i>sigma_2 = sigma_1^2 / (2 sigma_ND)</i>.
<p/>
Again different processes <i>a, b, c, ...</i> contribute,
and by the same reasoning we obtain
<i>sigma_2aa = sigma_1a^2 / (2 sigma_ND)</i>,
<i>sigma_2ab = sigma_1a sigma_1b / sigma_ND</i>,
and so on.
<p/>
There is one important correction to this picture: all collisions
do no occur under equal conditions. Some are more central in impact
parameter, others more peripheral. This leads to a further element of
variability: central collisions are likely to have more activity
than the average, peripheral less. Integrated over impact
parameter standard cross sections are recovered, but correlations
are affected by a "trigger bias" effect: if you select for events
with a hard process you favour events at small impact parameter
which have above-average activity, and therefore also increased
chance for further interactions. (In PYTHIA this is the origin
of the "pedestal effect", i.e. that events with a hard interaction
have more underlying activity than the level found in minimum-bias
events.) When you specify a matter overlap profile in the
multiparton-interactions scenario, such an enhancement/depletion factor
<i>f_impact</i> is chosen event-by-event and can be averaged
during the course of the run. As an example, the double Gaussian
form used in Tune A gives approximately
<i><f_impact> = 2.5</i>. The above equations therefore
have to be modified to
<i>sigma_2aa = <f_impact> sigma_1a^2 / (2 sigma_ND)</i>,
<i>sigma_2ab = <f_impact> sigma_1a sigma_1b / sigma_ND</i>.
Experimentalists often instead use the notation
<i>sigma_2ab = sigma_1a sigma_1b / sigma_eff</i>,
from which we see that PYTHIA "predicts"
<i>sigma_eff = sigma_ND / <f_impact></i>.
When the generation of multiparton interactions is switched off it is
not possible to calculate <i><f_impact></i> and therefore
it is set to unity.
<p/>
When this recipe is to be applied to calculate
actual cross sections, it is useful to distinguish three cases,
depending on which set of processes are selected to study for
the first and second interaction.
<p/>
(1) The processes <i>a</i> for the first interaction and
<i>b</i> for the second one have no overlap at all.
For instance, the first could be <code>TwoJets</code> and the
second <code>TwoPhotons</code>. In that case, the two interactions
can be selected independently, and cross sections tabulated
for each separate subprocess in the two above classes. At the
end of the run, the cross sections in <i>a</i> should be multiplied
by <i><f_impact> sigma_1b / sigma_ND</i> to bring them to
the correct overall level, and those in <i>b</i> by
<i><f_impact> sigma_1a / sigma_ND</i>.
<p/>
(2) Exactly the same processes <i>a</i> are selected for the
first and second interaction. In that case it works as above,
with <i>a = b</i>, and it is only necessary to multiply by an
additional factor <i>1/2</i>. A compensating factor of 2
is automatically obtained for picking two different subprocesses,
e.g. if <code>TwoJets</code> is selected for both interactions,
then the combination of the two subprocesses <i>q qbar -> g g</i>
and <i>g g -> g g</i> can trivially be obtained two ways.
<p/>
(3) The list of subprocesses partly but not completely overlap.
For instance, the first process is allowed to contain <i>a</i>
or <i>c</i> and the second <i>b</i> or <i>c</i>, where
there is no overlap between <i>a</i> and <i>b</i>. Then,
when an independent selection for the first and second interaction
both pick one of the subprocesses in <i>c</i>, half of those
events have to be thrown, and the stored cross section reduced
accordingly. Considering the four possible combinations of first
and second process, this gives a
<br/><i>
sigma'_1 = sigma_1a + sigma_1c * (sigma_2b + sigma_2c/2) /
(sigma_2b + sigma_2c)
</i><br/>
with the factor <i>1/2</i> for the <i>sigma_1c sigma_2c</i> term.
At the end of the day, this <i>sigma'_1</i> should be multiplied
by the normalization factor
<br/><i>
f_1norm = <f_impact> (sigma_2b + sigma_2c) / sigma_ND
</i><br/>
here without a factor <i>1/2</i> (or else it would have been
double-counted). This gives the correct
<br/><i>
(sigma_2b + sigma_2c) * sigma'_1 = sigma_1a * sigma_2b
+ sigma_1a * sigma_2c + sigma_1c * sigma_2b + sigma_1c * sigma_2c/2
</i><br/>
The second interaction can be handled in exact analogy.
<p/>
For the considerations above it is assumed that the phase space cuts
are the same for the two processes. It is possible to set the mass and
transverse momentum cuts differently, however. This changes nothing
for processes that already are different. For two collisions of the
same type it is partly a matter of interpretation what is intended.
If we consider the case of the same process in two non-overlapping
phase space regions, most likely we want to consider them as
separate processes, in the sense that we expect a factor 2 relative
to Poissonian statistics from either of the two hardest processes
populating either of the two phase space regions. In total we are
therefore lead to adopt the same strategy as in case (3) above:
only in the overlapping part of the two allowed phase space regions
could two processes be identical and thus appear with a 1/2 factor,
elsewhere the two processes are never identical and do not
include the 1/2 factor. We reiterate, however, that the case of
partly but not completely overlapping phase space regions for one and
the same process is tricky, and not to be used without prior
deliberation.
<p/>
The listing obtained with the <code>pythia.statistics()</code>
already contain these corrections factors, i.e. cross sections
are for the occurrence of two interactions of the specified kinds.
There is not a full tabulation of the matrix of all the possible
combinations of a specific first process together with a specific
second one (but the information is there for the user to do that,
if desired). Instead <code>pythia.statistics()</code> shows this
matrix projected onto the set of processes and associated cross
sections for the first and the second interaction, respectively.
Up to statistical fluctuations, these two sections of the
<code>pythia.statistics()</code> listing both add up to the same
total cross section for the event sample.
<p/>
There is a further special feature to be noted for this listing,
and that is the difference between the number of "selected" events
and the number of "accepted" ones. Here is how that comes about.
Originally the first and second process are selected completely
independently. The generation (in)efficiency is reflected in the
different number of initially tried events for the first and second
process, leading to the same number of selected events. While
acceptable on their own, the combination of the two processes may
be unacceptable, however. It may be that the two processes added
together use more energy-momentum than kinematically allowed, or,
even if not, are disfavoured when the PYTHIA approach to provide
correlated parton densities is applied. Alternatively, referring
to case (3) above, it may be because half of the events should
be thrown for identical processes. Taken together, it is these
effects that reduced the event number from "selected" to "accepted".
(A further reduction may occur if a
<a href="UserHooks.html" target="page">user hook</a> rejects some events.)
<p/>
It is allowed to use external Les Houches Accord input for the
hardest process, and then pick an internal one for the second hardest.
In this case PYTHIA does not have access to your thinking concerning
the external process, and cannot know whether it overlaps with the
internal or not. (External events <i>q qbar' -> e+ nu_e</i> could
agree with the internal <i>W</i> ones, or be a <i>W'</i> resonance
in a BSM scenario, to give one example.) Therefore the combined cross
section is always based on the scenario (1) above. Corrections for
correlated parton densities are included also in this case, however.
That is, an external event that takes a large fraction of the incoming
beam momenta stands a fair chance of being rejected when it has to be
combined with another hard process. For this reason the "selected" and
"accepted" event numbers are likely to disagree.
<p/>
In the cross section calculation above, the <i>sigma'_1</i>
cross sections are based on the number of accepted events, while
the <i>f_1norm</i> factor is evaluated based on the cross sections
for selected events. That way the suppression by correlations
between the two processes does not get to be double-counted.
<p/>
The <code>pythia.statistics()</code> listing contains two final
lines, indicating the summed cross sections <i>sigma_1sum</i> and
<i>sigma_2sum</i> for the first and second set of processes, at
the "selected" stage above, plus information on the <i>sigma_ND</i>
and <i><f_impact></i> used. The total cross section
generated is related to this by
<br/><i>
<f_impact> * (sigma_1sum * sigma_2sum / sigma_ND) *
(n_accepted / n_selected)
</i><br/>
with an additional factor of <i>1/2</i> for case 2 above.
<p/>
The error quoted for the cross section of a process is a combination
in quadrature of the error on this process alone with the error on
the normalization factor, including the error on
<i><f_impact></i>. As always it is a purely statistical one
and of course hides considerably bigger systematic uncertainties.
<h3>Event information</h3>
Normally the <code>process</code> event record only contains the
hardest interaction, but in this case also the second hardest
is stored there. If both of them are <i>2 -> 2</i> ones, the
first would be stored in lines 3 - 6 and the second in 7 - 10.
For both, status codes 21 - 29 would be used, as for a hardest
process. Any resonance decay chains would occur after the two
main processes, to allow normal parsing. The beams in 1 and 2
only appear in one copy. This structure is echoed in the
full <code>event</code> event record.
<p/>
Most of the properties accessible by the
<code><a href="EventInformation.html" target="page">pythia.info</a></code>
methods refer to the first process, whether that happens to be the
hardest or not. The code and <i>pT</i> scale of the second process
are accessible by the <code>info.codeMPI(1)</code> and
<code>info.pTMPI(1)</code>, however.
<p/>
The <code>sigmaGen()</code> and <code>sigmaErr()</code> methods provide
the cross section and its error for the event sample as a whole,
combining the information from the two hard processes as described
above. In particular, the former should be used to give the
weight of the generated event sample. The statistical error estimate
is somewhat cruder and gives a larger value than the
subprocess-by-subprocess one employed in
<code>pythia.statistics()</code>, but this number is
anyway less relevant, since systematical errors are likely to dominate.
</body>
</html>
<!-- Copyright (C) 2013 Torbjorn Sjostrand -->
|