source: HiSusy/trunk/Pythia8/pythia8170/htmldoc/ProgramFiles.html @ 1

Last change on this file since 1 was 1, checked in by zerwas, 11 years ago

first import of structure, PYTHIA8 and DELPHES

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