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