]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PYTHIA8/pythia8175/phpdoc/EventInformation.php
Update to 8.175
[u/mrichter/AliRoot.git] / PYTHIA8 / pythia8175 / phpdoc / EventInformation.php
CommitLineData
c6b60c38 1<html>
2<head>
3<title>Event Information</title>
4<link rel="stylesheet" type="text/css" href="pythia.css"/>
5<link rel="shortcut icon" href="pythia32.gif"/>
6</head>
7<body>
8
9<script language=javascript type=text/javascript>
10function stopRKey(evt) {
11var evt = (evt) ? evt : ((event) ? event : null);
12var node = (evt.target) ? evt.target :((evt.srcElement) ? evt.srcElement : null);
13if ((evt.keyCode == 13) && (node.type=="text"))
14{return false;}
15}
16
17document.onkeypress = stopRKey;
18</script>
19<?php
20if($_POST['saved'] == 1) {
21if($_POST['filepath'] != "files/") {
22echo "<font color='red'>SETTINGS SAVED TO FILE</font><br/><br/>"; }
23else {
24echo "<font color='red'>NO FILE SELECTED YET.. PLEASE DO SO </font><a href='SaveSettings.php'>HERE</a><br/><br/>"; }
25}
26?>
27
28<form method='post' action='EventInformation.php'>
29
30<h2>Event Information</h2>
31
32The <code>Info</code> class collects various one-of-a-kind information,
33some relevant for all events and others for the current event.
34An object <code>info</code> is a public member of the <code>Pythia</code>
35class, so if you e.g. have declared <code>Pythia pythia</code>, the
36<code>Info</code> methods can be accessed by
37<code>pythia.info.method()</code>. Most of this is information that
38could also be obtained e.g. from the event record, but is here more
39directly available. It is primarily intended for processes generated
40internally in PYTHIA, but many of the methods would work also for
41events fed in via the Les Houches Accord.
42
43<h3>List information</h3>
44
45<a name="method1"></a>
46<p/><strong>void Info::list() &nbsp;</strong> <br/>
47a listing of most of the information set for the current event.
48
49
50<h3>The beams</h3>
51
52<a name="method2"></a>
53<p/><strong>int Info::idA() &nbsp;</strong> <br/>
54
55<strong>int Info::idB() &nbsp;</strong> <br/>
56the identities of the two beam particles.
57
58
59<a name="method3"></a>
60<p/><strong>double Info::pzA() &nbsp;</strong> <br/>
61
62<strong>double Info::pzB() &nbsp;</strong> <br/>
63the longitudinal momenta of the two beam particles.
64
65
66<a name="method4"></a>
67<p/><strong>double Info::eA() &nbsp;</strong> <br/>
68
69<strong>double Info::eB() &nbsp;</strong> <br/>
70the energies of the two beam particles.
71
72
73<a name="method5"></a>
74<p/><strong>double Info::mA() &nbsp;</strong> <br/>
75
76<strong>double Info::mB() &nbsp;</strong> <br/>
77the masses of the two beam particles.
78
79
80<a name="method6"></a>
81<p/><strong>double Info::eCM() &nbsp;</strong> <br/>
82
83<strong>double Info::s() &nbsp;</strong> <br/>
84the CM energy and its square for the two beams.
85
86
87<h3>Initialization</h3>
88
89<a name="method7"></a>
90<p/><strong>bool Info::tooLowPTmin() &nbsp;</strong> <br/>
91normally false, but true if the proposed <i>pTmin</i> scale was too low
92in timelike or spacelike showers, or in multiparton interactions. In the
93former case the <i>pTmin</i> is raised to some minimal value, in the
94latter the initialization fails (it is impossible to obtain a minijet
95cross section bigger than the nondiffractive one by reducing
96<i>pTmin</i>).
97
98
99<h3>The event type</h3>
100
101<a name="method8"></a>
102<p/><strong>string Info::name() &nbsp;</strong> <br/>
103
104<strong>int Info::code() &nbsp;</strong> <br/>
105the name and code of the process that occurred.
106
107
108<a name="method9"></a>
109<p/><strong>int Info::nFinal() &nbsp;</strong> <br/>
110the number of final-state partons in the hard process.
111
112
113<a name="method10"></a>
114<p/><strong>bool Info::isResolved() &nbsp;</strong> <br/>
115are beam particles resolved, i.e. were PDF's used for the process?
116
117
118<a name="method11"></a>
119<p/><strong>bool Info::isDiffractiveA() &nbsp;</strong> <br/>
120
121<strong>bool Info::isDiffractiveB() &nbsp;</strong> <br/>
122is either beam diffractively excited?
123
124
125<a name="method12"></a>
126<p/><strong>bool Info::isDiffractiveC() &nbsp;</strong> <br/>
127is there central diffraction (a.k.a. double Pomeron exchange)?
128
129
130<a name="method13"></a>
131<p/><strong>bool Info::isMinBias() &nbsp;</strong> <br/>
132is the process a minimum-bias one?
133
134
135<a name="method14"></a>
136<p/><strong>bool Info::isLHA() &nbsp;</strong> <br/>
137has the process been generated from external Les Houches Accord
138information?
139
140
141<a name="method15"></a>
142<p/><strong>bool Info::atEndOfFile() &nbsp;</strong> <br/>
143true if a linked Les Houches class refuses to return any further
144events, presumably because it has reached the end of the file from
145which events have been read in.
146
147
148<a name="method16"></a>
149<p/><strong>bool Info::hasSub() &nbsp;</strong> <br/>
150does the process have a subprocess classification?
151Currently only true for minbias and Les Houches events, where it allows
152the hardest collision to be identified.
153
154
155<a name="method17"></a>
156<p/><strong>string Info::nameSub() &nbsp;</strong> <br/>
157
158<strong>int Info::codeSub() &nbsp;</strong> <br/>
159
160<strong>int Info::nFinalSub() &nbsp;</strong> <br/>
161the name, code and number of final-state partons in the subprocess
162that occurred when <code>hasSub()</code> is true. For a minimum-bias event
163the <code>code</code> would always be 101, while <code>codeSub()</code>
164would vary depending on the actual hardest interaction, e.g. 111 for
165<i>g g -> g g</i>. For a Les Houches event the <code>code</code> would
166always be 9999, while <code>codeSub()</code> would be the external
167user-defined classification code. The methods below would also provide
168information for such particular subcollisions.
169
170
171<h3>Hard process initiators</h3>
172
173The methods in this sections refer to the two initial partons of the
174hard <i>2 -> n</i> process (diffraction excluded; see below).
175
176<a name="method18"></a>
177<p/><strong>int Info::id1() &nbsp;</strong> <br/>
178
179<strong>int Info::id2() &nbsp;</strong> <br/>
180the identities of the two partons coming in to the hard process.
181
182
183<a name="method19"></a>
184<p/><strong>double Info::x1() &nbsp;</strong> <br/>
185
186<strong>double Info::x2() &nbsp;</strong> <br/>
187<i>x</i> fractions of the two partons coming in to the hard process.
188
189
190<a name="method20"></a>
191<p/><strong>double Info::y() &nbsp;</strong> <br/>
192
193<strong>double Info::tau() &nbsp;</strong> <br/>
194rapidity and scaled mass-squared of the hard-process subsystem, as
195defined by the above <i>x</i> values.
196
197
198<a name="method21"></a>
199<p/><strong>bool Info::isValence1() &nbsp;</strong> <br/>
200
201<strong>bool Info::isValence2() &nbsp;</strong> <br/>
202<code>true</code> if the two hard incoming partons have been picked
203to belong to the valence piece of the parton-density distribution,
204else <code>false</code>. Should be interpreted with caution.
205Information is not set if you switch off parton-level processing.
206
207
208<h3>Hard process parton densities and scales</h3>
209
210The methods in this section refer to the partons for which parton
211densities have been defined, in order to calculate the cross section
212of the hard process (diffraction excluded; see below).
213
214<p/>
215These partons would normally agree with the
216ones above, the initiators of the <i>2 -> n</i> process, but it
217does not have to be so. Currently the one counterexample is POWHEG
218events [<a href="Bibliography.php" target="page">Ali10</a>]. Here the original hard process could be
219<i>2 -> (n-1)</i>. The NLO machinery at times would add an
220initial-state branching to give a <i>2 -> n</i> process with a
221changed initial state. In that case the values in this section
222refer to the original <i>2 -> (n-1)</i> state and the initiator
223ones above to the complete<i>2 -> n</i> process. The
224<code>Info::list()</code> printout will contain a warning in such cases.
225
226<p/>
227For external events in the Les Houches format, the pdf information
228is obtained from the optional <code>#pdf</code> line. When this
229information is absent, the parton identities and <i>x</i> values agree
230with the initiator ones above, while the pdf values are unknown and
231therefore set to vanish. The <i>alpha_s</i> and <i>alpha_em</i>
232values are part of the compulsory information. The factorization and
233renormalization scales are both equated with the one compulsory scale
234value in the Les Houches standard, except when a <code>#pdf</code>
235line provides the factorization scale separately. If <i>alpha_s</i>,
236<i>alpha_em</i> or the compulsory scale value are negative at input
237then new values are defined as for internal processes.
238
239<a name="method22"></a>
240<p/><strong>int Info::id1pdf() &nbsp;</strong> <br/>
241
242<strong>int Info::id2pdf() &nbsp;</strong> <br/>
243the identities of the two partons for which parton density values
244are defined.
245
246
247<a name="method23"></a>
248<p/><strong>double Info::x1pdf() &nbsp;</strong> <br/>
249
250<strong>double Info::x2pdf() &nbsp;</strong> <br/>
251<i>x</i> fractions of the two partons for which parton density values
252are defined.
253
254
255<a name="method24"></a>
256<p/><strong>double Info::pdf1() &nbsp;</strong> <br/>
257
258<strong>double Info::pdf2() &nbsp;</strong> <br/>
259parton densities <i>x*f(x,Q^2)</i> evaluated for the two incoming
260partons; could be used e.g. for reweighting purposes in conjunction
261with the <code>idpdf</code>, <code>xpdf</code> and <code>QFac</code>
262methods. Events obtained from external programs or files may not
263contain this information and, if so, 0 is returned.
264
265
266<a name="method25"></a>
267<p/><strong>double Info::QFac() &nbsp;</strong> <br/>
268
269<strong>double Info::Q2Fac() &nbsp;</strong> <br/>
270the <i>Q</i> or <i>Q^2</i> factorization scale at which the
271densities were evaluated.
272
273
274<a name="method26"></a>
275<p/><strong>double Info::alphaS() &nbsp;</strong> <br/>
276
277<strong>double Info::alphaEM() &nbsp;</strong> <br/>
278the <i>alpha_strong</i> and <i>alpha_electromagnetic</i> values used
279for the hard process.
280
281
282<a name="method27"></a>
283<p/><strong>double Info::QRen() &nbsp;</strong> <br/>
284
285<strong>double Info::Q2Ren() &nbsp;</strong> <br/>
286the <i>Q</i> or <i>Q^2</i> renormalization scale at which
287<i>alpha_strong</i> and <i>alpha_electromagnetic</i> were evaluated.
288
289
290<h3>Hard process kinematics</h3>
291
292The methods in this section provide info on the kinematics of the hard
293processes, with special emphasis on <i>2 -> 2</i> (diffraction excluded;
294see below).
295
296<a name="method28"></a>
297<p/><strong>double Info::mHat() &nbsp;</strong> <br/>
298
299<strong>double Info::sHat() &nbsp;</strong> <br/>
300the invariant mass and its square for the hard process.
301
302
303<a name="method29"></a>
304<p/><strong>double Info::tHat() &nbsp;</strong> <br/>
305
306<strong>double Info::uHat() &nbsp;</strong> <br/>
307the remaining two Mandelstam variables; only defined for <i>2 -> 2</i>
308processes.
309
310
311<a name="method30"></a>
312<p/><strong>double Info::pTHat() &nbsp;</strong> <br/>
313
314<strong>double Info::pT2Hat() &nbsp;</strong> <br/>
315transverse momentum and its square in the rest frame of a <i>2 -> 2</i>
316processes.
317
318
319<a name="method31"></a>
320<p/><strong>double Info::m3Hat() &nbsp;</strong> <br/>
321
322<strong>double Info::m4Hat() &nbsp;</strong> <br/>
323the masses of the two outgoing particles in a <i>2 -> 2</i> processes.
324
325
326<a name="method32"></a>
327<p/><strong>double Info::thetaHat() &nbsp;</strong> <br/>
328
329<strong>double Info::phiHat() &nbsp;</strong> <br/>
330the polar and azimuthal scattering angles in the rest frame of
331a <i>2 -> 2</i> process.
332
333
334<h3>Diffraction</h3>
335
336Information on the primary elastic or
337<?php $filepath = $_GET["filepath"];
338echo "<a href='Diffraction.php?filepath=".$filepath."' target='page'>";?>diffractive</a> process
339(<i>A B -> A B, X1 B, A X2, X1 X2, A X B</i>) can be obtained with
340the methods in the "Hard process kinematics" section above. The
341variables here obviously are <i>s, t, u, ...</i> rather than
342<i>sHat, tHat, uHat, ...</i>, but the method names remain to avoid
343unnecessary duplication. Most other methods are irrelevant for a
344primary elastic/diffractive process.
345
346<p/>Central diffraction <i>A B -> A X B</i> is a <i>2 -> 3</i>
347process, and therefore most of the <i>2 -> 2</i> variables are
348no longer relevant. The <code>tHat()</code> and <code>uHat()</code>
349methods instead return the two <i>t</i> values at the <i>A -> A</i>
350and <i>B -> B</i> vertices, and <code>pTHat()</code> the average
351transverse momentum of the three outgoing "particles", while
352<code>thetaHat()</code> and <code>phiHat()</code> are undefined.
353
354<p/>
355While the primary interaction does not contain a hard process,
356the diffractive subsystems can contain them, but need not.
357Specifically, double diffraction can contain two separate hard
358subprocesses, which breaks the methods above. Most of them have been
359expanded with an optional argument to address properties of diffractive
360subsystems. This argument can take four values:
361<ul>
362<li>0 : default argument, used for normal nondiffractive events or
363the primary elastic/diffractive process (see above);
364<li>1 : the <i>X1</i> system in single diffraction <i>A B -> X1 B</i>
365or double diffraction <i>A B -> X1 X2</i>;
366<li>2 : the <i>X2</i> system in single diffraction <i>A B -> A X2</i>
367or double diffraction <i>A B -> X1 X2</i>;
368<li>3 : the <i>X</i> system in central diffraction <i>A B -> A X B</i>.
369</ul>
370The argument is defined for all of the methods in the three sections above,
371"Hard process initiators", "Hard process parton densities and scales" and
372"Hard process kinematics", with the exception of the <code>isValence</code>
373methods. Also the four final methods of "The event type" section, the
374<code>...Sub()</code> methods, take this argument. But recall that they
375will only provide meaningful answers, firstly if there is a system of the
376requested type, and secondly if there is a hard subprocess in this system.
377A simple check for this is that <code>id1()</code> has to be nonvanishing.
378The methods below this section do not currently provide information
379specific to diffractive subsystems, e.g. the MPI information is not
380bookkept in such cases.
381
382<h3>Event weight and activity</h3>
383
384<a name="method33"></a>
385<p/><strong>double Info::weight() &nbsp;</strong> <br/>
386weight assigned to the current event. Is normally 1 and thus
387uninteresting. However, there are several cases where one may have
388nontrivial event weights. These weights must the be used e.g. when
389filling histograms.
390<br/>(i) In the <code><?php $filepath = $_GET["filepath"];
391echo "<a href='PhaseSpaceCuts.php?filepath=".$filepath."' target='page'>";?>
392PhaseSpace:increaseMaximum = off</a></code> default strategy,
393an event with a differential cross-section above the assumed one
394(in a given phase-space point) is assigned a weight correspondingly
395above unity. This should happen only very rarely, if at all, and so
396could normally be disregarded.
397<br/>(ii) The <?php $filepath = $_GET["filepath"];
398echo "<a href='UserHooks.php?filepath=".$filepath."' target='page'>";?>User Hooks</a> class offers
399the possibility to bias the selection of phase space points, which
400means that events come with a compensating weight, stored here.
401<br/>(iii) For Les Houches events some strategies allow negative weights,
402which then after unweighting lead to events with weight -1. There are
403also Les Houches strategies where no unweighting is done, so events
404come with a weight. Specifically, for strategies <i>+4</i> and
405<i>-4</i>, the event weight is in units of pb. (Internally in mb,
406but converted at output.)
407
408
409<a name="method34"></a>
410<p/><strong>double Info::weightSum() &nbsp;</strong> <br/>
411Sum of weights accumulated during the run. For unweighted events this
412agrees with the number of generated events. In order to obtain
413histograms normalized "per event", at the end of a run, histogram
414contents should be divided by this weight. (And additionally
415divided by the bin width.) Normalization to cross section also
416required multiplication by <code>sigmaGen()</code> below.
417
418
419<a name="method35"></a>
420<p/><strong>int Info::lhaStrategy() &nbsp;</strong> <br/>
421normally 0, but if Les Houches events are input then it gives the
422event weighting strategy, see
423<?php $filepath = $_GET["filepath"];
424echo "<a href='LesHouchesAccord.php?filepath=".$filepath."' target='page'>";?>Les Houches Accord</a>.
425
426
427<a name="method36"></a>
428<p/><strong>int Info::nISR() &nbsp;</strong> <br/>
429
430<strong>int Info::nFSRinProc() &nbsp;</strong> <br/>
431
432<strong>int Info::nFSRinRes() &nbsp;</strong> <br/>
433the number of emissions in the initial-state showering, in the final-state
434showering excluding resonance decays, and in the final-state showering
435inside resonance decays, respectively.
436
437
438<a name="method37"></a>
439<p/><strong>double Info::pTmaxMPI() &nbsp;</strong> <br/>
440
441<strong>double Info::pTmaxISR() &nbsp;</strong> <br/>
442
443<strong>double Info::pTmaxFSR() &nbsp;</strong> <br/>
444Maximum <i>pT</i> scales set for MPI, ISR and FSR, given the
445process type and scale choice for the hard interactions. The actual
446evolution will run down from these scales.
447
448
449<a name="method38"></a>
450<p/><strong>double Info::pTnow() &nbsp;</strong> <br/>
451The current <i>pT</i> scale in the combined MPI, ISR and FSR evolution.
452Useful for classification in <?php $filepath = $_GET["filepath"];
453echo "<a href='UserHooks.php?filepath=".$filepath."' target='page'>";?>user hooks</a>,
454but not once the event has been evolved.
455
456
457<a name="method39"></a>
458<p/><strong>double Info::mergingWeight() &nbsp;</strong> <br/>
459combined leading-order merging weight assigned to the current event, if
460tree-level multi-jet merging (i.e.
461<a href="CKKWLMerging.html" target="page"> CKKW-L</a> or
462<a href="UMEPSMerging.html" target="page"> UMEPS</a> merging) is attempted. If
463tree-level multi-jet merging is
464performed, all histograms should be filled with this weight, as discussed in
465 <a href="CKKWLMerging.html" target="page"> CKKW-L Merging</a> and
466 <a href="UMEPSMerging.html" target="page"> UMEPS Merging</a>.
467
468
469<a name="method40"></a>
470<p/><strong>double Info::mergingWeightNLO() &nbsp;</strong> <br/>
471combined NLO merging weight assigned to the current event, if
472NLO multi-jet merging (i.e.
473<a href="NLOMerging.html" target="page"> NL<sup>3</sup></a> or
474<a href="NLOMerging.html" target="page"> UNLOPS</a> merging) is attempted. If
475NLO multi-jet merging is
476performed, all histograms should be filled with this weight, as discussed in
477 <a href="NLOMerging.html" target="page"> NLO Merging</a> .
478
479
480<h3>Multiparton interactions</h3>
481
482<a name="method41"></a>
483<p/><strong>double Info::a0MPI() &nbsp;</strong> <br/>
484The value of a0 when an x-dependent matter profile is used,
485<code>MultipartonInteractions:bProfile = 4</code>.
486
487
488<a name="method42"></a>
489<p/><strong>double Info::bMPI() &nbsp;</strong> <br/>
490The impact parameter <i>b</i> assumed for the current collision when
491multiparton interactions are simulated. Is not expressed in any physical
492size (like fm), but only rescaled so that the average should be unity
493for minimum-bias events (meaning less than that for events with hard
494processes).
495
496
497<a name="method43"></a>
498<p/><strong>double Info::enhanceMPI() &nbsp;</strong> <br/>
499The choice of impact parameter implies an enhancement or depletion of
500the rate of subsequent interactions, as given by this number. Again
501the average is normalized be unity for minimum-bias events (meaning
502more than that for events with hard processes).
503
504
505<a name="method44"></a>
506<p/><strong>int Info::nMPI() &nbsp;</strong> <br/>
507The number of hard interactions in the current event. Is 0 for elastic
508and diffractive events, and else at least 1, with more possible from
509multiparton interactions.
510
511
512<a name="method45"></a>
513<p/><strong>int Info::codeMPI(int i) &nbsp;</strong> <br/>
514
515<strong>double Info::pTMPI(int i) &nbsp;</strong> <br/>
516the process code and transverse momentum of the <code>i</code>'th
517subprocess, with <code>i</code> in the range from 0 to
518<code>nMPI() - 1</code>. The values for subprocess 0 is redundant with
519information already provided above.
520
521
522<a name="method46"></a>
523<p/><strong>int Info::iAMPI(int i) &nbsp;</strong> <br/>
524
525<strong>int Info::iBMPI(int i) &nbsp;</strong> <br/>
526are normally zero. However, if the <code>i</code>'th subprocess is
527a rescattering, i.e. either or both incoming partons come from the
528outgoing state of previous scatterings, they give the position in the
529event record of the outgoing-state parton that rescatters.
530<code>iAMPI</code> and <code>iBMPI</code> then denote partons coming from
531the first or second beam, respectively.
532
533
534<a name="method47"></a>
535<p/><strong>double Info::eMPI(int i) &nbsp;</strong> <br/>
536The enhancement or depletion of the rate of the <code>i</code>'th
537subprocess. Is primarily of interest for the
538<code>MultipartonInteractions:bProfile = 4</code> option, where the
539size of the proton depends on the <i>x</i> values of the colliding
540partons. Note that <code>eMPI(0) = enhanceMPI()</code>.
541
542
543<h3>Cross sections</h3>
544
545Here are the currently available methods related to the event sample
546as a whole, for the default value <code>i = 0</code>, and otherwise for
547the specific process code provided as argument. This is the number
548obtained with <code>Info::code()</code>, while the further subdivision
549given by <code>Info::codeSub()</code> is not bookkept. While continuously
550updated during the run, it is recommended only to study these properties
551at the end of the event generation, when the full statistics is available.
552The individual process results are not available if
553<?php $filepath = $_GET["filepath"];
554echo "<a href='ASecondHardProcess.php?filepath=".$filepath."' target='page'>";?>a second hard process</a> has been
555chosen, but can be gleaned from the <code>pythia.stat()</code> output.
556
557<a name="method48"></a>
558<p/><strong>long Info::nTried(int i = 0) &nbsp;</strong> <br/>
559
560<strong>long Info::nSelected(int i = 0) &nbsp;</strong> <br/>
561
562<strong>long Info::nAccepted(int i = 0) &nbsp;</strong> <br/>
563the total number of tried phase-space points, selected hard processes
564and finally accepted events, summed over all allowed processes
565(<code>i = 0</code>) or for the given process.
566The first number is only intended for a study of the phase-space selection
567efficiency. The last two numbers usually only disagree if the user introduces
568some veto during the event-generation process; then the former is the number
569of acceptable events found by PYTHIA and the latter the number that also
570were approved by the user. If you set <?php $filepath = $_GET["filepath"];
571echo "<a href='ASecondHardProcess.php?filepath=".$filepath."' target='page'>";?>a
572second hard process</a> there may also be a mismatch.
573
574
575<a name="method49"></a>
576<p/><strong>double Info::sigmaGen(int i = 0) &nbsp;</strong> <br/>
577
578<strong>double Info::sigmaErr(int i = 0) &nbsp;</strong> <br/>
579the estimated cross section and its estimated error,
580summed over all allowed processes (<code>i = 0</code>) or for the given
581process, in units of mb. The numbers refer to the accepted event sample
582above, i.e. after any user veto.
583
584
585<h3>Loop counters</h3>
586
587Mainly for internal/debug purposes, a number of loop counters from
588various parts of the program are stored in the <code>Info</code> class,
589so that one can keep track of how the event generation is progressing.
590This may be especially useful in the context of the
591<code><?php $filepath = $_GET["filepath"];
592echo "<a href='UserHooks.php?filepath=".$filepath."' target='page'>";?>User Hooks</a></code> facility.
593
594<a name="method50"></a>
595<p/><strong>int Info::getCounter(int i) &nbsp;</strong> <br/>
596the method that gives you access to the value of the various loop
597counters.
598<br/><code>argument</code><strong> i </strong> : the counter number you want to access:
599<br/><code>argumentoption </code><strong> 0 - 9</strong> : counters that refer to the run as a whole,
600i.e. are set 0 at the beginning of the run and then only can increase.
601
602<br/><code>argumentoption </code><strong> 0</strong> : the number of successful constructor calls for the
603<code>Pythia</code> class (can only be 0 or 1).
604
605<br/><code>argumentoption </code><strong> 1</strong> : the number of times a <code>Pythia::init(...)</code>
606call has been begun.
607
608<br/><code>argumentoption </code><strong> 2</strong> : the number of times a <code>Pythia::init(...)</code>
609call has been completed successfully.
610
611<br/><code>argumentoption </code><strong> 3</strong> : the number of times a <code>Pythia::next()</code>
612call has been begun.
613
614<br/><code>argumentoption </code><strong> 4</strong> : the number of times a <code>Pythia::next()</code>
615call has been completed successfully.
616
617<br/><code>argumentoption </code><strong> 10 - 19</strong> : counters that refer to each individual event,
618and are reset and updated in the top-level <code>Pythia::next()</code>
619method.
620
621<br/><code>argumentoption </code><strong> 10</strong> : the number of times the selection of a new hard
622process has been begun. Normally this should only happen once, unless a
623user veto is set to abort the current process and try a new one.
624
625<br/><code>argumentoption </code><strong> 11</strong> : the number of times the selection of a new hard
626process has been completed successfully.
627
628<br/><code>argumentoption </code><strong> 12</strong> : as 11, but additionally the process should
629survive any user veto and go on to the parton- and hadron-level stages.
630
631<br/><code>argumentoption </code><strong> 13</strong> : as 11, but additionally the process should
632survive the parton- and hadron-level stage and any user cuts.
633
634<br/><code>argumentoption </code><strong> 14</strong> : the number of times the loop over parton- and
635hadron-level processing has begun for a hard process. Is reset each
636time counter 12 above is reached.
637
638<br/><code>argumentoption </code><strong> 15</strong> : the number of times the above loop has successfully
639completed the parton-level step.
640
641<br/><code>argumentoption </code><strong> 16</strong> : the number of times the above loop has successfully
642completed the checks and user vetoes after the parton-level step.
643
644<br/><code>argumentoption </code><strong> 17</strong> : the number of times the above loop has successfully
645completed the hadron-level step.
646
647<br/><code>argumentoption </code><strong> 18</strong> : the number of times the above loop has successfully
648completed the checks and user vetoes after the hadron-level step.
649
650<br/><code>argumentoption </code><strong> 20 - 39</strong> : counters that refer to a local part of the
651individual event, and are reset at the beginning of this part.
652
653<br/><code>argumentoption </code><strong> 20</strong> : the current system being processed in
654<code>PartonLevel::next()</code>. Is almost always 1, but for double
655diffraction the two diffractive systems are 1 and 2, respectively.
656
657<br/><code>argumentoption </code><strong> 21</strong> : the number of times the processing of the
658current system (see above) has begun.
659
660<br/><code>argumentoption </code><strong> 22</strong> : the number of times a step has begun in the
661combined MPI/ISR/FSR evolution downwards in <i>pT</i>
662for the current system.
663
664<br/><code>argumentoption </code><strong> 23</strong> : the number of times MPI has been selected for the
665downwards step above.
666
667<br/><code>argumentoption </code><strong> 24</strong> : the number of times ISR has been selected for the
668downwards step above.
669
670<br/><code>argumentoption </code><strong> 25</strong> : the number of times FSR has been selected for the
671downwards step above.
672
673<br/><code>argumentoption </code><strong> 26</strong> : the number of times MPI has been accepted as the
674downwards step above, after the vetoes.
675
676<br/><code>argumentoption </code><strong> 27</strong> : the number of times ISR has been accepted as the
677downwards step above, after the vetoes.
678
679<br/><code>argumentoption </code><strong> 28</strong> : the number of times FSR has been accepted as the
680downwards step above, after the vetoes.
681
682<br/><code>argumentoption </code><strong> 29</strong> : the number of times a step has begun in the
683separate (optional) FSR evolution downwards in <i>pT</i>
684for the current system.
685
686<br/><code>argumentoption </code><strong> 30</strong> : the number of times FSR has been selected for the
687downwards step above.
688
689<br/><code>argumentoption </code><strong> 31</strong> : the number of times FSR has been accepted as the
690downwards step above, after the vetoes.
691
692<br/><code>argumentoption </code><strong> 40 - 49</strong> : counters that are unused (currently), and
693that therefore are free to use, with the help of the two methods below.
694
695
696
697
698<a name="method51"></a>
699<p/><strong>void Info::setCounter(int i, int value = 0) &nbsp;</strong> <br/>
700set the above counters to a given value. Only to be used by you
701for the unassigned counters 40 - 49.
702<br/><code>argument</code><strong> i </strong> : the counter number, see above.
703
704<br/><code>argument</code><strong> value </strong> (<code>default = <strong>0</strong></code>) : set the counter to this number;
705normally the default value is what you want.
706
707
708
709<a name="method52"></a>
710<p/><strong>void Info::addCounter(int i, int value = 0) &nbsp;</strong> <br/>
711increase the above counters by a given amount. Only to be used by you
712for the unassigned counters 40 - 49.
713<br/><code>argument</code><strong> i </strong> : the counter number, see above.
714
715<br/><code>argument</code><strong> value </strong> (<code>default = <strong>1</strong></code>) : increase the counter by this amount;
716normally the default value is what you want.
717
718
719
720<h3>Parton shower history</h3>
721
722The following methods are mainly intended for internal use,
723e.g. for matrix-element matching.
724
725<a name="method53"></a>
726<p/><strong>void Info::hasHistory(bool hasHistoryIn) &nbsp;</strong> <br/>
727
728<strong>bool Info::hasHistory() &nbsp;</strong> <br/>
729set/get knowledge whether the likely shower history of an event
730has been traced.
731
732
733<a name="method54"></a>
734<p/><strong>void Info::zNowISR(bool zNowIn) &nbsp;</strong> <br/>
735
736<strong>double Info::zNowISR() &nbsp;</strong> <br/>
737set/get value of <i>z</i> in latest ISR branching.
738
739
740<a name="method55"></a>
741<p/><strong>void Info::pT2NowISR(bool pT2NowIn) &nbsp;</strong> <br/>
742
743<strong>double Info::pT2NowISR() &nbsp;</strong> <br/>
744set/get value of <i>pT^2</i> in latest ISR branching.
745
746
747<h3>Header information</h3>
748
749A simple string key/value store, mainly intended for accessing
750information that is stored in the header block of Les Houches Event
751(LHE) files. In principle, any <code>LHAup</code> derived class can set
752this header information, which can then be read out later. Although the
753naming convention is arbitrary, in practice, it is dictated by the
754XML-like format of LHE files, see <?php $filepath = $_GET["filepath"];
755echo "<a href='LesHouchesAccord.php?filepath=".$filepath."' target='page'>";?>
756Les Houches Accord</a> for more details.
757
758<a name="method56"></a>
759<p/><strong>string Info::header(string key) &nbsp;</strong> <br/>
760return the header named <code>key</code>
761
762
763<a name="method57"></a>
764<p/><strong>vector &lt;string&gt; Info::headerKeys() &nbsp;</strong> <br/>
765return a vector of all header key names
766
767
768<a name="method58"></a>
769<p/><strong>void Info::setHeader(string key, string val) &nbsp;</strong> <br/>
770set the header named <code>key</code> with the contents of <code>val</code>
771
772
773</body>
774</html>
775
776<!-- Copyright (C) 2013 Torbjorn Sjostrand -->