1 | <html> |
---|
2 | <head> |
---|
3 | <title>Program Files</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> |
---|
10 | function stopRKey(evt) { |
---|
11 | var evt = (evt) ? evt : ((event) ? event : null); |
---|
12 | var node = (evt.target) ? evt.target :((evt.srcElement) ? evt.srcElement : null); |
---|
13 | if ((evt.keyCode == 13) && (node.type=="text")) |
---|
14 | {return false;} |
---|
15 | } |
---|
16 | |
---|
17 | document.onkeypress = stopRKey; |
---|
18 | </script> |
---|
19 | <?php |
---|
20 | if($_POST['saved'] == 1) { |
---|
21 | if($_POST['filepath'] != "files/") { |
---|
22 | echo "<font color='red'>SETTINGS SAVED TO FILE</font><br/><br/>"; } |
---|
23 | else { |
---|
24 | echo "<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='ProgramFiles.php'> |
---|
29 | |
---|
30 | <h2>Program Files</h2> |
---|
31 | |
---|
32 | The code is subdivided into a set of files, mainly by physics |
---|
33 | task. Each file typically contains one main class, but often |
---|
34 | with a few related helper classes that are not used elsewhere in |
---|
35 | the program. Normally the files come in pairs. |
---|
36 | <ul> |
---|
37 | <li>A header file, <code>.h</code> in the <code>include</code> |
---|
38 | subdirectory, where the public interface of the class is declared, |
---|
39 | and inline methods are defined.</li> |
---|
40 | <li>A source code file, <code>.cc</code> in the <code>src</code> |
---|
41 | subdirectory, where most of the methods are implemented.</li> |
---|
42 | </ul> |
---|
43 | During compilation, related dependency files, <code>.d</code>, and |
---|
44 | compiled code, <code>.o</code> are created in the <code>tmp</code> |
---|
45 | subdirectory. |
---|
46 | |
---|
47 | <p/> |
---|
48 | In part the <code>.xml</code> documentation files in the |
---|
49 | <code>xmldoc</code> subdirectory have matching names, but the match |
---|
50 | is broken by the desire to group topics more by user interaction than |
---|
51 | internal operation. On these pages the function of the different code |
---|
52 | files is summarized. Currently, each <code>.xml</code> file is also |
---|
53 | translated into an <code>.html</code> one in the |
---|
54 | <code>htmldoc</code> subdirectory, to allow easy viewing of the |
---|
55 | contents in a web browser, and an <code>.php</code> one in |
---|
56 | <code>phpdoc</code>, for more sophisticated interactivity |
---|
57 | if that subdirectory is installed on a web server. |
---|
58 | |
---|
59 | <p/> |
---|
60 | Here is the current list of files, ordered alphabetically, with a brief |
---|
61 | description of contents. |
---|
62 | |
---|
63 | <p/><code>file </code><strong> Analysis </strong> <br/> |
---|
64 | contains routines to analyze events. Currently it can do sphericity, |
---|
65 | thrust, Lund/Jade/Durham jet clustering, cone-jet finding, and the |
---|
66 | <i>kT</i>, anti-<i>kT</i> and Cambridge/Aachen algorithms for |
---|
67 | hadron colliders. |
---|
68 | |
---|
69 | |
---|
70 | <p/><code>file </code><strong> Basics </strong> <br/> |
---|
71 | contains some basic facilities of general use: a random number |
---|
72 | generator <code>Rndm</code>, a four-vector class <code>Vec4</code>, and a |
---|
73 | histogram class <code>Hist</code>. |
---|
74 | |
---|
75 | |
---|
76 | <p/><code>file </code><strong> BeamParticle </strong> <br/> |
---|
77 | contains information on all partons extracted from one of the two |
---|
78 | beams. Defines modified parton distributions accordingly during the |
---|
79 | showering and multiparton interactions processing, thereby extending on |
---|
80 | the one-particle-inclusive distributions defined by the previous class. |
---|
81 | Finds the internal structure for a beam remnant. |
---|
82 | |
---|
83 | |
---|
84 | <p/><code>file </code><strong> BeamRemnants </strong> <br/> |
---|
85 | adds primordial <i>kT</i> to the set of hard subsystems, |
---|
86 | and combines these subsystems with the two beam remnants to provide |
---|
87 | the overall energy-momentum picture. Also ties together all the |
---|
88 | colour lines into consistent singlets. |
---|
89 | |
---|
90 | |
---|
91 | <p/><code>file </code><strong> BeamShape </strong> <br/> |
---|
92 | generates momentum spread of beams, and spread of collision vertex |
---|
93 | position. |
---|
94 | |
---|
95 | |
---|
96 | <p/><code>file </code><strong> BoseEinstein </strong> <br/> |
---|
97 | provides a simple method to impose Bose-Einstein correlations on |
---|
98 | pairs of identical mesons. |
---|
99 | |
---|
100 | |
---|
101 | <p/><code>file </code><strong> Event </strong> <br/> |
---|
102 | contains the event record, which basically is a vector of particles. |
---|
103 | This file also contains the <code>Particle</code> class, used by |
---|
104 | <code>Event</code>. <code>Pythia</code> uses two <code>Event</code> |
---|
105 | objects, one for the process-level record (<code>process</code>) and |
---|
106 | one for the complete event (<code>event</code>). |
---|
107 | |
---|
108 | |
---|
109 | <p/><code>file </code><strong> FragmentationFlavZpT </strong> <br/> |
---|
110 | contains the classes for describing the fragmentation steps in |
---|
111 | flavour and in longitudinal and transverse momentum. |
---|
112 | |
---|
113 | |
---|
114 | <p/><code>file </code><strong> FragmentationSystems </strong> <br/> |
---|
115 | defines some containers of parton systems, for use in |
---|
116 | the fragmentation routines. |
---|
117 | |
---|
118 | |
---|
119 | <p/><code>file </code><strong> HadronLevel </strong> <br/> |
---|
120 | turns the parton-level event above into a set of outgoing particles, |
---|
121 | by applying string fragmentation (with special treatment for low-mass |
---|
122 | systems) and secondary decays, and optionally Bose-Einstein corrections. |
---|
123 | |
---|
124 | |
---|
125 | <p/><code>file </code><strong> HelicityBasics </strong> <br/> |
---|
126 | basic classes for the handling of helicities in tau lepton decays. |
---|
127 | |
---|
128 | |
---|
129 | <p/><code>file </code><strong> HelicityMatrixElements </strong> <br/> |
---|
130 | helicity-dependent decay matrix elements for the tau lepton. |
---|
131 | |
---|
132 | |
---|
133 | <p/><code>file </code><strong> HepMCInterface </strong> <br/> |
---|
134 | contains an interface to convert the PYTHIA 8 event record into the |
---|
135 | HepMC format. The <code>HepMCInterface.cc</code> file is located in |
---|
136 | the subdirectory <code>hepmcinterface</code> and is used to build a |
---|
137 | separate <code>libhepmcinterface</code> library. |
---|
138 | |
---|
139 | |
---|
140 | <p/><code>file </code><strong> HiddenValleyFragmentation </strong> <br/> |
---|
141 | hadronization in models with a hidden sector that contains an unbroken |
---|
142 | <i>SU(N)</i>, which gives confinement. The model and code is largely |
---|
143 | derived from the normal fragmentation classes. |
---|
144 | |
---|
145 | |
---|
146 | <p/><code>file </code><strong> History </strong> <br/> |
---|
147 | methods to reconstruct the imagined shower history of a |
---|
148 | matrix-element-generated multiparton configuration, as part of |
---|
149 | the CKKW-L matrix element merging. |
---|
150 | |
---|
151 | |
---|
152 | <p/><code>file </code><strong> Info </strong> <br/> |
---|
153 | is a simple container that gives access to some information on the |
---|
154 | nature of the current process, such as Mandelstam variables. |
---|
155 | Also contains a small database for errors and warnings encountered |
---|
156 | during program execution. |
---|
157 | |
---|
158 | |
---|
159 | <p/><code>file </code><strong> LesHouches </strong> <br/> |
---|
160 | gives the possibility to feed in parton configurations for the |
---|
161 | subsequent event generation. One base class is defined, with containers |
---|
162 | for initialization and event information, that can be read from |
---|
163 | <code>Pythia</code>. Derived classes allow for a few different cases. |
---|
164 | |
---|
165 | |
---|
166 | <p/><code>file </code><strong> LHAFortran </strong> <br/> |
---|
167 | is a header file only, for a class derived from the above LesHouches |
---|
168 | one, to be used for runtime interfacing to Fortran programs, such as |
---|
169 | PYTHIA 6. |
---|
170 | |
---|
171 | |
---|
172 | <p/><code>file </code><strong> LHAPDFInterface </strong> <br/> |
---|
173 | is a header file only, with interfaces to the key LHAPDF routines, |
---|
174 | as needed for a runtime interface. There is a file |
---|
175 | <code>lhapdfdummy/LHAPDFdummy.cc</code> with matching dummy |
---|
176 | implementations, however. This file is used to build a separate |
---|
177 | <code>liblhapdfdummy</code> library, to be linked when the LHAPDF |
---|
178 | library is not used, so as to avoid problems with undefined references. |
---|
179 | |
---|
180 | |
---|
181 | <p/><code>file </code><strong> MergingHooks </strong> <br/> |
---|
182 | intercede in the normal shower evolution to construct the relevant |
---|
183 | Sudakov form factor suppressions as part of the CKKW-L matrix element |
---|
184 | merging. |
---|
185 | |
---|
186 | |
---|
187 | <p/><code>file </code><strong> MiniStringFragmentation </strong> <br/> |
---|
188 | performs string fragmentation in cases where the colour singlet |
---|
189 | subsystem mass is so small that one or at most two primary hadrons |
---|
190 | should be produced from it. |
---|
191 | |
---|
192 | |
---|
193 | <p/><code>file </code><strong> MultipartonInteractions </strong> <br/> |
---|
194 | performs multiparton interactions. |
---|
195 | |
---|
196 | |
---|
197 | <p/><code>file </code><strong> ParticleData </strong> <br/> |
---|
198 | contains a database of all necessary particle data (masses, names, ..) |
---|
199 | and decay channels. |
---|
200 | |
---|
201 | |
---|
202 | <p/><code>file </code><strong> ParticleDecays </strong> <br/> |
---|
203 | performs the decays of all normal unstable hadrons and leptons, i.e. |
---|
204 | in mass up to and including <i>b bbar</i> systems. It is not |
---|
205 | intended for decays of electroweak resonances, like <i>Z^0</i>. |
---|
206 | |
---|
207 | |
---|
208 | <p/><code>file </code><strong> PartonDistributions </strong> <br/> |
---|
209 | contains parton distribution functions for the proton and electron. |
---|
210 | Currently very simple, with only two <i>p</i> parametrizations |
---|
211 | and one <i>e</i> ditto available, but it is possible to link in |
---|
212 | external sets. |
---|
213 | |
---|
214 | |
---|
215 | <p/><code>file </code><strong> PartonLevel </strong> <br/> |
---|
216 | turns the (hard) process above into a complete set of partons, by |
---|
217 | adding initial- and final-state radiation, multiparton |
---|
218 | interactions, and beam remnants. |
---|
219 | |
---|
220 | |
---|
221 | <p/><code>file </code><strong> PartonSystems </strong> <br/> |
---|
222 | keeps track of which partons belong to which partonic subsystem, |
---|
223 | i.e. one of the multiparton (semi)hard interactions with associated |
---|
224 | showers. |
---|
225 | |
---|
226 | |
---|
227 | <p/><code>file </code><strong> PhaseSpace </strong> <br/> |
---|
228 | selects a point in phase space for the hard-process generation, |
---|
229 | optimized separately for each process to give improved Monte Carlo |
---|
230 | efficiency. |
---|
231 | |
---|
232 | |
---|
233 | <p/><code>file </code><strong> ProcessContainer </strong> <br/> |
---|
234 | packages the information on a given subprocess, combining the |
---|
235 | phase-space selection and cross-section evaluation machineries |
---|
236 | with some statistics information. Also sets up the list of processes |
---|
237 | to be studied in a run. |
---|
238 | |
---|
239 | |
---|
240 | <p/><code>file </code><strong> ProcessLevel </strong> <br/> |
---|
241 | handles the generation of the (hard) process that sets the character |
---|
242 | of the event. This involves either using internally implemented |
---|
243 | processes or linking to Les Houches information. The latter can |
---|
244 | be by runtime interfaces or by reading in a file. This step also |
---|
245 | includes resonance decays. |
---|
246 | |
---|
247 | |
---|
248 | <p/><code>file </code><strong> Pythia </strong> <br/> |
---|
249 | is the main class, that administrates the whole event generation |
---|
250 | process by making use of all the others classes. Objects of most |
---|
251 | other classes reside (directly or indirectly) inside <code>Pythia</code>, |
---|
252 | so only a <code>Pythia</code> object needs to be explicitly instantiated |
---|
253 | and addressed by the user. |
---|
254 | |
---|
255 | |
---|
256 | <p/><code>file </code><strong> PythiaComplex </strong> <br/> |
---|
257 | is only a <code>.h</code> file, containing a <code>typedef</code> for |
---|
258 | double precision complex numbers. |
---|
259 | |
---|
260 | |
---|
261 | <p/><code>file </code><strong> PythiaStdlib </strong> <br/> |
---|
262 | contains most of the <code>Stdlib</code> headers used in PYTHIA 8, |
---|
263 | with <code>using</code> directives. It defines <code>M_PI</code> if |
---|
264 | this is not already done. Also a few simple inline methods: |
---|
265 | <code>pow2(x)</code>, <code>pow3(x)</code>, <code>pow4(x)</code>, |
---|
266 | <code>pow5(x)</code> and <code>pow6(x)</code> for small integer |
---|
267 | powers, and <code>sqrtpos(x)</code> where a <code>max(0., x)</code> |
---|
268 | ensures that one does not take the square root of a negative number. |
---|
269 | Also non-inlined <code>GammaReal(x)</code> for the <i>Gamma</i> |
---|
270 | function value of a real argument. |
---|
271 | |
---|
272 | |
---|
273 | <p/><code>file </code><strong> ResonanceDecays </strong> <br/> |
---|
274 | decays resonances as part of the hard-process stage, in many cases |
---|
275 | (but not all) including angular correlations between the decay products. |
---|
276 | |
---|
277 | |
---|
278 | <p/><code>file </code><strong> ResonanceWidths </strong> <br/> |
---|
279 | encodes some properties of resonances, in particular the dynamic |
---|
280 | calculation of widths. |
---|
281 | |
---|
282 | |
---|
283 | <p/><code>file </code><strong> RHadrons </strong> <br/> |
---|
284 | handles the production and decay of hadrons formed by long-lived |
---|
285 | gluinos, stops or sbottoms. |
---|
286 | |
---|
287 | |
---|
288 | <p/><code>file </code><strong> Settings </strong> <br/> |
---|
289 | contains a database of all flags, modes, parameters and words that |
---|
290 | determine the performance of the generator. Initial values are obtained |
---|
291 | from the contents of the <code>.xml</code> files, but these values can |
---|
292 | then be changed by the user. |
---|
293 | |
---|
294 | |
---|
295 | <p/><code>file </code><strong> SigmaCompositeness </strong> <br/> |
---|
296 | contains the cross sections and matrix elements for production of |
---|
297 | some particles in compositeness scenarios, specifically excited |
---|
298 | fermions. |
---|
299 | |
---|
300 | |
---|
301 | <p/><code>file </code><strong> SigmaEW </strong> <br/> |
---|
302 | contains the cross sections and matrix elements for electroweak |
---|
303 | processes involving photons, <i>Z^0</i>'s and <i>W^+-</i>'s. |
---|
304 | |
---|
305 | |
---|
306 | <p/><code>file </code><strong> SigmaExtraDim </strong> <br/> |
---|
307 | contains the cross sections and matrix elements for processes in |
---|
308 | scenarios involving extra dimensions. |
---|
309 | |
---|
310 | |
---|
311 | <p/><code>file </code><strong> SigmaGeneric </strong> <br/> |
---|
312 | contains the cross sections and matrix elements for some generic |
---|
313 | processes, to be used as building blocks for a few BSM scenarios. |
---|
314 | |
---|
315 | |
---|
316 | <p/><code>file </code><strong> SigmaHiggs </strong> <br/> |
---|
317 | contains the cross sections and matrix elements for Higgs production. |
---|
318 | |
---|
319 | |
---|
320 | <p/><code>file </code><strong> SigmaLeftRightSym </strong> <br/> |
---|
321 | contains the cross sections and matrix elements for particle production |
---|
322 | in left-right-symmetry scenarios, specifically righthanded <i>Z</i> |
---|
323 | and <i>W</i> bosons and doubly-charged Higgs bosons. |
---|
324 | |
---|
325 | |
---|
326 | <p/><code>file </code><strong> SigmaLeptoquark </strong> <br/> |
---|
327 | contains the cross sections and matrix elements for leptoquark production. |
---|
328 | |
---|
329 | |
---|
330 | <p/><code>file </code><strong> SigmaNewGaugeBosons </strong> <br/> |
---|
331 | contains the cross sections and matrix elements for a <i>Z'^0</i>, |
---|
332 | a <i>W^+-</i> and a horizontal gauge boson <i>R^0</i>. |
---|
333 | |
---|
334 | |
---|
335 | <p/><code>file </code><strong> SigmaOnia </strong> <br/> |
---|
336 | contains the cross sections and matrix elements for charmonium and |
---|
337 | bottomonium production. |
---|
338 | |
---|
339 | |
---|
340 | <p/><code>file </code><strong> SigmaProcess </strong> <br/> |
---|
341 | contains the base class and derived classes for the evaluation of |
---|
342 | different matrix elements. Also keeps track of allowed incoming |
---|
343 | parton configurations and their cross sections, including parton |
---|
344 | densities. In order to keep this file from becoming too big, actual |
---|
345 | cross sections are found in several separate files of derived classes: |
---|
346 | <code>SigmaQCD</code>, <code>SigmaEW</code>, <code>SigmaOnia</code>, |
---|
347 | <code>SigmaHiggs</code>, <code>SigmaSUSY</code>, |
---|
348 | <code>SigmaNewGaugeBosons</code>, <code>SigmaLeftRightSym</code>, |
---|
349 | <code>SigmaLeptoquark</code>, <code>SigmaCompositeness</code>, |
---|
350 | <code>SigmaExtraDim</code> and <code>SigmaGeneric</code>. |
---|
351 | |
---|
352 | |
---|
353 | <p/><code>file </code><strong> SigmaQCD </strong> <br/> |
---|
354 | contains the cross sections and matrix elements for soft and hard |
---|
355 | QCD processes. |
---|
356 | |
---|
357 | |
---|
358 | <p/><code>file </code><strong> SigmaSUSY </strong> <br/> |
---|
359 | contains the cross sections and matrix elements for Supersymmetric |
---|
360 | processes. |
---|
361 | |
---|
362 | |
---|
363 | <p/><code>file </code><strong> SigmaTotal </strong> <br/> |
---|
364 | contains parametrizations of total, elastic and diffractive hadronic |
---|
365 | cross sections. |
---|
366 | |
---|
367 | |
---|
368 | <p/><code>file </code><strong> SpaceShower </strong> <br/> |
---|
369 | performs spacelike initial-state transverse-momentum-ordered |
---|
370 | shower evolution. |
---|
371 | |
---|
372 | |
---|
373 | <p/><code>file </code><strong> StandardModel </strong> <br/> |
---|
374 | contains the running <i>alpha_strong</i>, with <i>Lambda</i> |
---|
375 | matching at flavour thresholds, the running <i>alpha_em</i>, |
---|
376 | CKM mixing matrices, and a few other parameters such as |
---|
377 | <i>sin^2(theta_W)</i>. |
---|
378 | |
---|
379 | |
---|
380 | <p/><code>file </code><strong> StringFragmentation </strong> <br/> |
---|
381 | performs string fragmentation of a given set of partons. |
---|
382 | |
---|
383 | |
---|
384 | <p/><code>file </code><strong> SusyCouplings </strong> <br/> |
---|
385 | stores the various couplings used for SUSY cross sections and |
---|
386 | decays, as calculated from input e.g. based on the SUSY Les Houches |
---|
387 | Accord. |
---|
388 | |
---|
389 | |
---|
390 | <p/><code>file </code><strong> SusyLesHouches </strong> <br/> |
---|
391 | contains information on SUSY parameters and particle data as specified |
---|
392 | by the SUSY Les Houches Accord. |
---|
393 | |
---|
394 | |
---|
395 | <p/><code>file </code><strong> TauDecays </strong> <br/> |
---|
396 | the main routines for handling tau lepton decays with helicity |
---|
397 | information. |
---|
398 | |
---|
399 | |
---|
400 | <p/><code>file </code><strong> TimeShower </strong> <br/> |
---|
401 | performs timelike final-state transverse-momentum-ordered |
---|
402 | shower evolution. |
---|
403 | |
---|
404 | |
---|
405 | <p/><code>file </code><strong> UserHooks </strong> <br/> |
---|
406 | Provides a way for a user to study the event at a few intermediate |
---|
407 | stages of evolution, to reject the event as a whole or to modify |
---|
408 | its cross-section weight. |
---|
409 | |
---|
410 | |
---|
411 | </body> |
---|
412 | </html> |
---|
413 | |
---|
414 | <!-- Copyright (C) 2012 Torbjorn Sjostrand --> |
---|