]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PYTHIA8/pythia8145/xmldoc/SampleMainPrograms.xml
Coverity fixes
[u/mrichter/AliRoot.git] / PYTHIA8 / pythia8145 / xmldoc / SampleMainPrograms.xml
CommitLineData
9419eeef 1<chapter name="Sample Main Programs">
2
3<h2>Sample Main Programs</h2>
4
5Descriptions of available classes, methods and settings are all
6very good and useful. Ultimately they are necessary for you to
7be able to fine-tune your runs to the task at hand. To get going,
8however, nothing helps like having explicit examples to study.
9This is what is provided in the <code>examples</code> subdirectory,
10along with instructions how they should be run:
11<ul>
12
13<li><code>main01.cc</code> : a simple study of the charged multiplicity
14for jet events at the LHC. (Brief example fitting on one slide.)</li>
15
16<li><code>main02.cc</code> : a simple study of the <ei>pT</ei> spectrum
17of Z bosons at the Tevatron. (Brief example fitting on one slide.)</li>
18
19<li><code>main03.cc</code> : a simple single-particle analysis of jet
20events, where input is set by <code>main03.cmnd</code> "cards file".</li>
21
22<li><code>main04.cc</code> : a simple study of several different kinds
23of events, with the choice to be made in the <code>main04.cmnd</code>
24"cards file".</li>
25
26<li><code>main05.cc</code> : generation of QCD jet events at the LHC,
27with jet analysis using the <code>CellJet</code> cone-jet finder.</li>
28
29<li><code>main06.cc</code> : tests of cross sections for elastic and
30diffractive topologies, using <code>main06.cmnd</code> to pick process.</li>
31
32<li><code>main07.cc</code> : tests of cross sections for minimum-bias
33events, using <code>main07.cmnd</code> to pick options.</li>
34
35<li><code>main08.cc</code> : generation of the QCD jet cross section
36by splitting the run into subruns, each in its own <ei>pT</ei> bin,
37and adding the results properly reweighted. Two options, with limits
38set either in the main program or by subrun specification in the
39<code>main08.cmnd</code> file.</li>
40
41<li><code>main09.cc</code> : generation of LEP1 hadronic events, i.e.
42<ei>e^+e^- -> gamma*/Z^0 -> q qbar</ei>, with charged multiplicity,
43sphericity, thrust and jet analysis.</li>
44
45<li><code>main10.cc</code> : illustration how userHooks can be used
46interact directly with the event-generation process.</li>
47
48<li><code>main11.cc</code> : generation of two predetermined hard
49interactions in each event.</li>
50
51<li><code>main12.cc</code> : a study of top events, fed in from the
52Les Houches Event File <code>ttbar.lhe</code>, here generated by
53PYTHIA 6.4. This file currently only contains 100 events
54so as not to make the distributed PYTHIA package too big, and so serves
55mainly as a demonstration of the principles involved. </li>
56
57<li><code>main13.cc</code> : a more sophisticated variant of
58<code>main12.cc</code>, where two Les Houches Event Files
59(<code>ttbar.lhe</code> and <code>ttbar2.lhe</code>) successively
60are used as input. Also illustrating some other aspects, like the
61capability to mix in internally generated events.</li>
62
63<li><code>main14.cc</code> : a systematic comparison of several
64cross section values with their corresponding values in PYTHIA 6.4,
65the latter available as a table in the code.</li>
66
67<li><code>main15.cc</code> : loop over several tries, either to redo
68B decays only or to redo the complete hadronization chain of an event.
69Since much of the generation process is only made once this is a way
70to increase efficiency.</li>
71
72<li><code>main16.cc</code> : put all user analysis code into a class
73of its own, separate from the main program; provide the "cards file"
74name as a command-line argument.</li>
75
76<li><code>main17.cc</code> : collect the Pythia calls in a wrapper class,
77thereby simplifying the main program; provide the "cards file" name
78as a command-line argument.</li>
79
80<li><code>main18.cc</code> : shows how to write an event filter class,
81where you keep a vector of pointers to the subset of particles you
82want to study further. The event record itself remains unchanged.</li>
83
84<li><code>main19.cc</code> : use several instances of Pythia, one for
85signal events and others for a variable number of pileup and "beam-gas"
86events, combined into one common event record.</li>
87
88<li><code>main20.cc</code> : shows how PYTHIA 8 can write a Les Houches
89Event File, using facilities potentially useful also for other programs
90to write an LHEF.</li>
91
92<li><code>main21.cc</code> : an example how a single particle or various
93parton-level configurations can be input directly for hadronization,
94without being tied to the full process-generation machinery, e.g. to
95study the hadronization of junction topologies. </li>
96
97<li><code>main22.cc</code> : tests of internally implemented cross sections
98for Supersymmetric particle production, with SYSY spectrum defined in
99<code>sps1a.spc</code> and settings in <code>main22.cmnd</code>. For
100illustration, an alternative example spectrum is also
101available, <code>sps1aWithDecays.spc</code>, which contains a decay
102table in SLHA format.</li>
103
104<li><code>main23.cc</code> : shows how an external decay handler can
105be linked to handle the decays of some particles.</li>
106
107<li><code>main24.cc</code> : shows how an external random number
108generator can be linked to replace the internal one.</li>
109
110<li><code>main25.cc</code> : shows how an external process can be
111implemented as a new class derived from a PYTHIA base class, and then
112handed in for generation as with a normal internal process.</li>
113
114<li><code>main26.cc</code> : shows how an external resonance can be
115implemented as a new class derived from a PYTHIA base class, and be
116used in an external process, both of which are then handed in for
117generation as with a normal internal resonance and process.</li>
118
119<li><code>main27.cc</code> : shows how an external beam momentum spread
120and vertex location generator can be implemented as a new class derived
121from a PYTHIA base class, and then handed in for internal use.</li>
122
123<li><code>main28.cc</code> : test program for processes in scenarios
124with large extra dimensions or unparticles.
125
126<li><code>main29.cc</code> : set up a fictitious production process
127to a generic resonance, where you easily can compose your own list
128of (two-body) decay modes to a variety of final states. Also traces
129decay chains down to truly stable particles: gamma, e+-, p/pbar and
130neutrinos. Suitable for astroparticle applications, like neutralino
131pair annihilation, where cross sections are calculated separately
132in another program.
133
134<li><code>main30.cc</code> : production of Kaluza-Klein <ei>gamma/Z</ei>
135states in TeV-sized extra dimensions.
136
137<li><code>main31.cc</code> : similar to main01, except that the
138event record is output in the HepMC event record format. Requires
139that HepMC is properly linked.</li>
140
141<li><code>main32.cc</code> : a streamlined version for the generation
142of events that are then stored in HepMC format, without any event
143analysis. That is, all physics studies will have to be done afterwards.
144The name of the input "cards file" (e.g. <code>main32.cmnd</code>)
145and output HepMC event file are to be provided as command-line arguments.
146Requires that HepMC is properly linked.</li>
147
148<li><code>main41.cc</code> : a test of the shape of parton densities,
149as a check prior to using a given PDF set in a generator. Requires
150that LHAPDF is properly linked.</li>
151
152<li><code>main42.cc</code> : compares the charged multiplicity
153distribution, and a few other minimum-bias physics aspects, between
154default PYTHIA PDF and another one. Requires that LHAPDF is properly
155linked.</li>
156
157<li><code>main43.cc</code> : tests the possibility to do backwards
158evolution from an incoming photon at the hard interaction. Requires
159that you link to a LHAPDF set that includes the photon PDF.</li>
160
161<li><code>main44.cc</code> : exemplifies how you create your own
162PDF set and link it in for use in the process generation.</li>
163
164<li><code>main51.cc</code> : exemplifies how you can link in runtime
165generation of hard processes from PYTHIA 6, using the Les Houches
166Accord facilities. This example is deprecated, since PYTHIA 8 by now
167contains essentially all hard processes found in PYTHIA 6.</li>
168
169<li><code>main61.cc</code> : an example how the FastJet jet finding
170package can be linked to allow an analysis of the final state,
171in this case for a study of W + jet production.</li>
172
173<li><code>main71.cc</code> : exemplifies an improved matching of
174parton showers to LHEF-style input based on the POWHEG approach,
175in this particular case for the POWHEG-hvq program applied to top
176pair production <ref>Cor10</ref>. The small sample of input events
177is stored in the <code>powheg-hvq.lhe</code> file.
178</li>
179
180<li><code>main72.cc</code> : input RPV-SUSY events from an LHEF file that
181 contains an SLHA spectrum inside its <code><header></code>. The
182 event file, <code>main72.lhe</code>, contains a sample events that
183 illustrate how to arrange color tags in the presence of the
184 color-space epsilon tensors that accompany baryon number violating
185 event topologies.
186</li>
187
188</ul>
189
190</chapter>
191
192<!-- Copyright (C) 2010 Torbjorn Sjostrand -->