1 | <html> |
---|
2 | <head> |
---|
3 | <title>Fragmentation</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='Fragmentation.php'> |
---|
29 | |
---|
30 | <h2>Fragmentation</h2> |
---|
31 | |
---|
32 | Fragmentation in PYTHIA is based on the Lund string model |
---|
33 | [<a href="Bibliography.php" target="page">And83, Sjo84</a>]. Several different aspects are involved in |
---|
34 | the physics description, which here therefore is split accordingly. |
---|
35 | This also, at least partly, reflect the set of classes involved in |
---|
36 | the fragmentation machinery. |
---|
37 | |
---|
38 | <p/> |
---|
39 | The variables collected here have a very wide span of usefulness. |
---|
40 | Some would be central in any hadronization tuning exercise, others |
---|
41 | should not be touched except by experts. |
---|
42 | |
---|
43 | <p/> |
---|
44 | The fragmentation flavour-choice machinery is also used in a few |
---|
45 | other places of the program, notably particle decays, and is thus |
---|
46 | described on the separate <?php $filepath = $_GET["filepath"]; |
---|
47 | echo "<a href='FlavourSelection.php?filepath=".$filepath."' target='page'>";?>Flavour |
---|
48 | Selection</a> page. |
---|
49 | |
---|
50 | <h3>Fragmentation functions</h3> |
---|
51 | |
---|
52 | The <code>StringZ</code> class handles the choice of longitudinal |
---|
53 | lightcone fraction <i>z</i> according to one of two possible |
---|
54 | shape sets. |
---|
55 | |
---|
56 | <p/> |
---|
57 | The Lund symmetric fragmentation function [<a href="Bibliography.php" target="page">And83</a>] is the |
---|
58 | only alternative for light quarks. It is of the form |
---|
59 | <br/><i> |
---|
60 | f(z) = (1/z) * (1-z)^a * exp(-b m_T^2 / z) |
---|
61 | </i><br/> |
---|
62 | with the two main free parameters <i>a</i> and <i>b</i> to be |
---|
63 | tuned to data. They are stored in |
---|
64 | |
---|
65 | <br/><br/><table><tr><td><strong>StringZ:aLund </td><td></td><td> <input type="text" name="1" value="0.3" size="20"/> (<code>default = <strong>0.3</strong></code>; <code>minimum = 0.0</code>; <code>maximum = 2.0</code>)</td></tr></table> |
---|
66 | The <i>a</i> parameter of the Lund symmetric fragmentation function. |
---|
67 | |
---|
68 | |
---|
69 | <br/><br/><table><tr><td><strong>StringZ:bLund </td><td></td><td> <input type="text" name="2" value="0.8" size="20"/> (<code>default = <strong>0.8</strong></code>; <code>minimum = 0.2</code>; <code>maximum = 2.0</code>)</td></tr></table> |
---|
70 | The <i>b</i> parameter of the Lund symmetric fragmentation function. |
---|
71 | |
---|
72 | |
---|
73 | <p/> |
---|
74 | In principle, each flavour can have a different <i>a</i>. Then, |
---|
75 | for going from an old flavour <i>i</i> to a new <i>j</i> one |
---|
76 | the shape is |
---|
77 | <br/><i> |
---|
78 | f(z) = (1/z) * z^{a_i} * ((1-z)/z)^{a_j} * exp(-b * m_T^2 / z) |
---|
79 | </i><br/> |
---|
80 | This is only implemented for diquarks relative to normal quarks: |
---|
81 | |
---|
82 | <br/><br/><table><tr><td><strong>StringZ:aExtraDiquark </td><td></td><td> <input type="text" name="3" value="0.5" size="20"/> (<code>default = <strong>0.5</strong></code>; <code>minimum = 0.0</code>; <code>maximum = 2.0</code>)</td></tr></table> |
---|
83 | allows a larger <i>a</i> for diquarks, with total |
---|
84 | <i>a = aLund + aExtraDiquark</i>. |
---|
85 | |
---|
86 | |
---|
87 | <p/> |
---|
88 | Finally, the Bowler modification [<a href="Bibliography.php" target="page">Bow81</a>] introduces an extra |
---|
89 | factor |
---|
90 | <br/><i> |
---|
91 | 1/z^{r_Q * b * m_Q^2} |
---|
92 | </i><br/> |
---|
93 | for heavy quarks. To keep some flexibility, a multiplicative factor |
---|
94 | <i>r_Q</i> is introduced, which ought to be unity (provided that |
---|
95 | quark masses were uniquely defined) but can be set in |
---|
96 | |
---|
97 | <br/><br/><table><tr><td><strong>StringZ:rFactC </td><td></td><td> <input type="text" name="4" value="1.0" size="20"/> (<code>default = <strong>1.0</strong></code>; <code>minimum = 0.0</code>; <code>maximum = 2.0</code>)</td></tr></table> |
---|
98 | <i>r_c</i>, i.e. the above parameter for <i>c</i> quarks. |
---|
99 | |
---|
100 | |
---|
101 | <br/><br/><table><tr><td><strong>StringZ:rFactB </td><td></td><td> <input type="text" name="5" value="0.67" size="20"/> (<code>default = <strong>0.67</strong></code>; <code>minimum = 0.0</code>; <code>maximum = 2.0</code>)</td></tr></table> |
---|
102 | <i>r_b</i>, i.e. the above parameter for <i>b</i> quarks. |
---|
103 | |
---|
104 | |
---|
105 | <br/><br/><table><tr><td><strong>StringZ:rFactH </td><td></td><td> <input type="text" name="6" value="1.0" size="20"/> (<code>default = <strong>1.0</strong></code>; <code>minimum = 0.0</code>; <code>maximum = 2.0</code>)</td></tr></table> |
---|
106 | <i>r_h</i>, i.e. the above parameter for heavier hypothetical quarks, |
---|
107 | or in general any new coloured particle long-lived enough to hadronize. |
---|
108 | |
---|
109 | |
---|
110 | <p/> |
---|
111 | As an alternative, it is possible to switch over to the |
---|
112 | Peterson/SLAC formula [<a href="Bibliography.php" target="page">Pet83</a>] |
---|
113 | <br/><i> |
---|
114 | f(z) = 1 / ( z * (1 - 1/z - epsilon/(1-z))^2 ) |
---|
115 | </i><br/> |
---|
116 | for charm, bottom and heavier (defined as above) by the three flags |
---|
117 | |
---|
118 | <br/><br/><strong>StringZ:usePetersonC</strong> <input type="radio" name="7" value="on"><strong>On</strong> |
---|
119 | <input type="radio" name="7" value="off" checked="checked"><strong>Off</strong> |
---|
120 | (<code>default = <strong>off</strong></code>)<br/> |
---|
121 | use Peterson for <i>c</i> quarks. |
---|
122 | |
---|
123 | |
---|
124 | <br/><br/><strong>StringZ:usePetersonB</strong> <input type="radio" name="8" value="on"><strong>On</strong> |
---|
125 | <input type="radio" name="8" value="off" checked="checked"><strong>Off</strong> |
---|
126 | (<code>default = <strong>off</strong></code>)<br/> |
---|
127 | use Peterson for <i>b</i> quarks. |
---|
128 | |
---|
129 | |
---|
130 | <br/><br/><strong>StringZ:usePetersonH</strong> <input type="radio" name="9" value="on"><strong>On</strong> |
---|
131 | <input type="radio" name="9" value="off" checked="checked"><strong>Off</strong> |
---|
132 | (<code>default = <strong>off</strong></code>)<br/> |
---|
133 | use Peterson for hypothetical heavier quarks. |
---|
134 | |
---|
135 | |
---|
136 | <p/> |
---|
137 | When switched on, the corresponding epsilon values are chosen to be |
---|
138 | |
---|
139 | <br/><br/><table><tr><td><strong>StringZ:epsilonC </td><td></td><td> <input type="text" name="10" value="0.05" size="20"/> (<code>default = <strong>0.05</strong></code>; <code>minimum = 0.01</code>; <code>maximum = 0.25</code>)</td></tr></table> |
---|
140 | <i>epsilon_c</i>, i.e. the above parameter for <i>c</i> quarks. |
---|
141 | |
---|
142 | |
---|
143 | <br/><br/><table><tr><td><strong>StringZ:epsilonB </td><td></td><td> <input type="text" name="11" value="0.005" size="20"/> (<code>default = <strong>0.005</strong></code>; <code>minimum = 0.001</code>; <code>maximum = 0.025</code>)</td></tr></table> |
---|
144 | <i>epsilon_b</i>, i.e. the above parameter for <i>b</i> quarks. |
---|
145 | |
---|
146 | |
---|
147 | <br/><br/><table><tr><td><strong>StringZ:epsilonH </td><td></td><td> <input type="text" name="12" value="0.005" size="20"/> (<code>default = <strong>0.005</strong></code>; <code>minimum = 0.0001</code>; <code>maximum = 0.25</code>)</td></tr></table> |
---|
148 | <i>epsilon_h</i>, i.e. the above parameter for hypothetical heavier |
---|
149 | quarks, normalized to the case where <i>m_h = m_b</i>. The actually |
---|
150 | used parameter is then <i>epsilon = epsilon_h * (m_b^2 / m_h^2)</i>. |
---|
151 | This allows a sensible scaling to a particle with an unknown higher |
---|
152 | mass without the need for a user intervention. |
---|
153 | |
---|
154 | |
---|
155 | <h3>Fragmentation <i>pT</i></h3> |
---|
156 | |
---|
157 | The <code>StringPT</code> class handles the choice of fragmentation |
---|
158 | <i>pT</i>. At each string breaking the quark and antiquark of the pair are |
---|
159 | supposed to receive opposite and compensating <i>pT</i> kicks according |
---|
160 | to a Gaussian distribution in <i>p_x</i> and <i>p_y</i> separately. |
---|
161 | Call <i>sigma_q</i> the width of the <i>p_x</i> and <i>p_y</i> |
---|
162 | distributions separately, i.e. |
---|
163 | <br/><i> |
---|
164 | d(Prob) = exp( -(p_x^2 + p_y^2) / 2 sigma_q^2). |
---|
165 | </i><br/> |
---|
166 | Then the total squared width is |
---|
167 | <br/><i> |
---|
168 | <pT^2> = <p_x^2> + <p_y^2> = 2 sigma_q^2 = sigma^2. |
---|
169 | </i><br/> |
---|
170 | It is this latter number that is stored in |
---|
171 | |
---|
172 | <br/><br/><table><tr><td><strong>StringPT:sigma </td><td></td><td> <input type="text" name="13" value="0.304" size="20"/> (<code>default = <strong>0.304</strong></code>; <code>minimum = 0.0</code>; <code>maximum = 1.0</code>)</td></tr></table> |
---|
173 | the width <i>sigma</i> in the fragmentation process. |
---|
174 | |
---|
175 | |
---|
176 | <p/> |
---|
177 | Since a normal hadron receives <i>pT</i> contributions for two string |
---|
178 | breakings, it has a <i><p_x^2>_had = <p_y^2>_had = sigma^2</i>, |
---|
179 | and thus <i><pT^2>_had = 2 sigma^2</i>. |
---|
180 | |
---|
181 | <p/> |
---|
182 | Some studies on isolated particles at LEP has indicated the need for |
---|
183 | a slightly enhanced rate in the high-<i>pT</i> tail of the above |
---|
184 | distribution. This would have to be reviewed in the context of a |
---|
185 | complete retune of parton showers and hadronization, but for the |
---|
186 | moment we stay with the current recipe, to boost the above <i>pT</i> |
---|
187 | by a factor <i>enhancedWidth</i> for a small fraction |
---|
188 | <i>enhancedFraction</i> of the breakups, where |
---|
189 | |
---|
190 | <br/><br/><table><tr><td><strong>StringPT:enhancedFraction </td><td></td><td> <input type="text" name="14" value="0.01" size="20"/> (<code>default = <strong>0.01</strong></code>; <code>minimum = 0.0</code>; <code>maximum = 1.</code>)</td></tr></table> |
---|
191 | <i>enhancedFraction</i>,the fraction of string breaks with enhanced |
---|
192 | width. |
---|
193 | |
---|
194 | |
---|
195 | <br/><br/><table><tr><td><strong>StringPT:enhancedWidth </td><td></td><td> <input type="text" name="15" value="2.0" size="20"/> (<code>default = <strong>2.0</strong></code>; <code>minimum = 1.0</code>; <code>maximum = 10.0</code>)</td></tr></table> |
---|
196 | <i>enhancedWidth</i>,the enhancement of the width in this fraction. |
---|
197 | |
---|
198 | |
---|
199 | <h3>Jet joining procedure</h3> |
---|
200 | |
---|
201 | String fragmentation is carried out iteratively from both string ends |
---|
202 | inwards, which means that the two chains of hadrons have to be joined up |
---|
203 | somewhere in the middle of the event. This joining is described by |
---|
204 | parameters that in principle follows from the standard fragmentation |
---|
205 | parameters, but in a way too complicated to parametrize. The dependence |
---|
206 | is rather mild, however, so for a sensible range of variation the |
---|
207 | parameters in this section should not be touched. |
---|
208 | |
---|
209 | <br/><br/><table><tr><td><strong>StringFragmentation:stopMass </td><td></td><td> <input type="text" name="16" value="1.0" size="20"/> (<code>default = <strong>1.0</strong></code>; <code>minimum = 0.0</code>; <code>maximum = 2.0</code>)</td></tr></table> |
---|
210 | Is used to define a <i>W_min = m_q1 + m_q2 + stopMass</i>, |
---|
211 | where <i>m_q1</i> and <i>m_q2</i> are the masses of the two |
---|
212 | current endpoint quarks or diquarks. |
---|
213 | |
---|
214 | |
---|
215 | <br/><br/><table><tr><td><strong>StringFragmentation:stopNewFlav </td><td></td><td> <input type="text" name="17" value="2.0" size="20"/> (<code>default = <strong>2.0</strong></code>; <code>minimum = 0.0</code>; <code>maximum = 2.0</code>)</td></tr></table> |
---|
216 | Add to <i>W_min</i> an amount <i>stopNewFlav * m_q_last</i>, |
---|
217 | where <i>q_last</i> is the last <i>q qbar</i> pair produced |
---|
218 | between the final two hadrons. |
---|
219 | |
---|
220 | |
---|
221 | <br/><br/><table><tr><td><strong>StringFragmentation:stopSmear </td><td></td><td> <input type="text" name="18" value="0.2" size="20"/> (<code>default = <strong>0.2</strong></code>; <code>minimum = 0.0</code>; <code>maximum = 0.5</code>)</td></tr></table> |
---|
222 | The <i>W_min</i> above is then smeared uniformly in the range |
---|
223 | <i>W_min_smeared = W_min * [ 1 - stopSmear, 1 + stopSmear ]</i>. |
---|
224 | |
---|
225 | |
---|
226 | <p/> |
---|
227 | This <i>W_min_smeared</i> is then compared with the current remaining |
---|
228 | <i>W_transverse</i> to determine if there is energy left for further |
---|
229 | particle production. If not, i.e. if |
---|
230 | <i>W_transverse < W_min_smeared</i>, the final two particles are |
---|
231 | produced from what is currently left, if possible. (If not, the |
---|
232 | fragmentation process is started over.) |
---|
233 | |
---|
234 | <h3>Simplifying systems</h3> |
---|
235 | |
---|
236 | There are a few situations when it is meaningful to simplify the |
---|
237 | original task, one way or another. |
---|
238 | |
---|
239 | <br/><br/><table><tr><td><strong>HadronLevel:mStringMin </td><td></td><td> <input type="text" name="19" value="1." size="20"/> (<code>default = <strong>1.</strong></code>; <code>minimum = 0.5</code>; <code>maximum = 1.5</code>)</td></tr></table> |
---|
240 | Decides whether a partonic system should be considered as a normal |
---|
241 | string or a ministring, the latter only producing one or two primary |
---|
242 | hadrons. The system mass should be above <i>mStringMin</i> plus the |
---|
243 | sum of quark/diquark constituent masses for a normal string description, |
---|
244 | else the ministring scenario is used. |
---|
245 | |
---|
246 | |
---|
247 | <br/><br/><table><tr><td><strong>FragmentationSystems:mJoin </td><td></td><td> <input type="text" name="20" value="0.3" size="20"/> (<code>default = <strong>0.3</strong></code>; <code>minimum = 0.2</code>; <code>maximum = 1.</code>)</td></tr></table> |
---|
248 | When two colour-connected partons are very nearby, with at least |
---|
249 | one being a gluon, they can be joined into one, to avoid technical |
---|
250 | problems of very small string regions. The requirement for joining is |
---|
251 | that the invariant mass of the pair is below <i>mJoin</i>, where a |
---|
252 | gluon only counts with half its momentum, i.e. with its contribution |
---|
253 | to the string region under consideration. (Note that, for technical |
---|
254 | reasons, the 0.2 GeV lower limit is de facto hardcoded.) |
---|
255 | |
---|
256 | |
---|
257 | <br/><br/><table><tr><td><strong>FragmentationSystems:mJoinJunction </td><td></td><td> <input type="text" name="21" value="1.0" size="20"/> (<code>default = <strong>1.0</strong></code>; <code>minimum = 0.5</code>; <code>maximum = 2.</code>)</td></tr></table> |
---|
258 | When the invariant mass of two of the quarks in a three-quark junction |
---|
259 | string system becomes too small, the system is simplified to a |
---|
260 | quark-diquark simple string. The requirement for this simplification |
---|
261 | is that the diquark mass, minus the two quark masses, falls below |
---|
262 | <i>mJoinJunction</i>. Gluons on the string between the junction and |
---|
263 | the respective quark, if any, are counted as part of the quark |
---|
264 | four-momentum. Those on the two combined legs are clustered with the |
---|
265 | diquark when it is formed. |
---|
266 | |
---|
267 | |
---|
268 | <h3>Ministrings</h3> |
---|
269 | |
---|
270 | The <code>MiniStringFragmentation</code> machinery is only used when a |
---|
271 | string system has so small invariant mass that normal string fragmentation |
---|
272 | is difficult/impossible. Instead one or two particles are produced, |
---|
273 | in the former case shuffling energy-momentum relative to another |
---|
274 | colour singlet system in the event, while preserving the invariant |
---|
275 | mass of that system. With one exception parameters are the same as |
---|
276 | defined for normal string fragmentation, to the extent that they are |
---|
277 | at all applicable in this case. |
---|
278 | |
---|
279 | A discussion of the relevant physics is found in [<a href="Bibliography.php" target="page">Nor00</a>]. |
---|
280 | The current implementation does not completely abide to the scheme |
---|
281 | presented there, however, but has in part been simplified. (In part |
---|
282 | for greater clarity, in part since the class is not quite finished yet.) |
---|
283 | |
---|
284 | <br/><br/><table><tr><td><strong>MiniStringFragmentation:nTry </td><td></td><td> <input type="text" name="22" value="2" size="20"/> (<code>default = <strong>2</strong></code>; <code>minimum = 1</code>; <code>maximum = 10</code>)</td></tr></table> |
---|
285 | Whenever the machinery is called, first this many attempts are made |
---|
286 | to pick two hadrons that the system fragments to. If the hadrons are |
---|
287 | too massive the attempt will fail, but a new subsequent try could |
---|
288 | involve other flavour and hadrons and thus still succeed. |
---|
289 | After <i>nTry</i> attempts, instead an attempt is made to produce a |
---|
290 | single hadron from the system. Should also this fail, some further |
---|
291 | attempts at obtaining two hadrons will be made before eventually |
---|
292 | giving up. |
---|
293 | |
---|
294 | |
---|
295 | <h3>Junction treatment</h3> |
---|
296 | |
---|
297 | A junction topology corresponds to an Y arrangement of strings |
---|
298 | i.e. where three string pieces have to be joined up in a junction. |
---|
299 | Such topologies can arise if several valence quarks are kicked out |
---|
300 | from a proton beam, or in baryon-number-violating SUSY decays. |
---|
301 | Special attention is necessary to handle the region just around |
---|
302 | the junction, where the baryon number topologically is located. |
---|
303 | The junction fragmentation scheme is described in [<a href="Bibliography.php" target="page">Sjo03</a>]. |
---|
304 | The parameters in this section should not be touched except by experts. |
---|
305 | |
---|
306 | <br/><br/><table><tr><td><strong>StringFragmentation:eNormJunction </td><td></td><td> <input type="text" name="23" value="2.0" size="20"/> (<code>default = <strong>2.0</strong></code>; <code>minimum = 0.5</code>; <code>maximum = 10</code>)</td></tr></table> |
---|
307 | Used to find the effective rest frame of the junction, which is |
---|
308 | complicated when the three string legs may contain additional |
---|
309 | gluons between the junction and the endpoint. To this end, |
---|
310 | a pull is defined as a weighed sum of the momenta on each leg, |
---|
311 | where the weight is <i>exp(- eSum / eNormJunction)</i>, with |
---|
312 | <i>eSum</i> the summed energy of all partons closer to the junction |
---|
313 | than the currently considered one (in the junction rest frame). |
---|
314 | Should in principle be (close to) <i>sqrt((1 + a) / b)</i>, with |
---|
315 | <i>a</i> and <i>b</i> the parameters of the Lund symmetric |
---|
316 | fragmentation function. |
---|
317 | |
---|
318 | |
---|
319 | <br/><br/><table><tr><td><strong>StringFragmentation:eBothLeftJunction </td><td></td><td> <input type="text" name="24" value="1.0" size="20"/> (<code>default = <strong>1.0</strong></code>; <code>minimum = 0.5</code>)</td></tr></table> |
---|
320 | Retry (up to 10 times) when the first two considered strings in to a |
---|
321 | junction both have a remaining energy (in the junction rest frame) |
---|
322 | above this number. |
---|
323 | |
---|
324 | |
---|
325 | <br/><br/><table><tr><td><strong>StringFragmentation:eMaxLeftJunction </td><td></td><td> <input type="text" name="25" value="10.0" size="20"/> (<code>default = <strong>10.0</strong></code>; <code>minimum = 0.</code>)</td></tr></table> |
---|
326 | Retry (up to 10 times) when the first two considered strings in to a |
---|
327 | junction has a highest remaining energy (in the junction rest frame) |
---|
328 | above a random energy evenly distributed between |
---|
329 | <i>eBothLeftJunction</i> and |
---|
330 | <i>eBothLeftJunction + eMaxLeftJunction</i> |
---|
331 | (drawn anew for each test). |
---|
332 | |
---|
333 | |
---|
334 | <br/><br/><table><tr><td><strong>StringFragmentation:eMinLeftJunction </td><td></td><td> <input type="text" name="26" value="0.2" size="20"/> (<code>default = <strong>0.2</strong></code>; <code>minimum = 0.</code>)</td></tr></table> |
---|
335 | Retry (up to 10 times) when the invariant mass-squared of the final leg |
---|
336 | and the leftover momentum of the first two treated legs falls below |
---|
337 | <i>eMinLeftJunction</i> times the energy of the final leg (in the |
---|
338 | junction rest frame). |
---|
339 | |
---|
340 | |
---|
341 | <input type="hidden" name="saved" value="1"/> |
---|
342 | |
---|
343 | <?php |
---|
344 | echo "<input type='hidden' name='filepath' value='".$_GET["filepath"]."'/>"?> |
---|
345 | |
---|
346 | <table width="100%"><tr><td align="right"><input type="submit" value="Save Settings" /></td></tr></table> |
---|
347 | </form> |
---|
348 | |
---|
349 | <?php |
---|
350 | |
---|
351 | if($_POST["saved"] == 1) |
---|
352 | { |
---|
353 | $filepath = $_POST["filepath"]; |
---|
354 | $handle = fopen($filepath, 'a'); |
---|
355 | |
---|
356 | if($_POST["1"] != "0.3") |
---|
357 | { |
---|
358 | $data = "StringZ:aLund = ".$_POST["1"]."\n"; |
---|
359 | fwrite($handle,$data); |
---|
360 | } |
---|
361 | if($_POST["2"] != "0.8") |
---|
362 | { |
---|
363 | $data = "StringZ:bLund = ".$_POST["2"]."\n"; |
---|
364 | fwrite($handle,$data); |
---|
365 | } |
---|
366 | if($_POST["3"] != "0.5") |
---|
367 | { |
---|
368 | $data = "StringZ:aExtraDiquark = ".$_POST["3"]."\n"; |
---|
369 | fwrite($handle,$data); |
---|
370 | } |
---|
371 | if($_POST["4"] != "1.0") |
---|
372 | { |
---|
373 | $data = "StringZ:rFactC = ".$_POST["4"]."\n"; |
---|
374 | fwrite($handle,$data); |
---|
375 | } |
---|
376 | if($_POST["5"] != "0.67") |
---|
377 | { |
---|
378 | $data = "StringZ:rFactB = ".$_POST["5"]."\n"; |
---|
379 | fwrite($handle,$data); |
---|
380 | } |
---|
381 | if($_POST["6"] != "1.0") |
---|
382 | { |
---|
383 | $data = "StringZ:rFactH = ".$_POST["6"]."\n"; |
---|
384 | fwrite($handle,$data); |
---|
385 | } |
---|
386 | if($_POST["7"] != "off") |
---|
387 | { |
---|
388 | $data = "StringZ:usePetersonC = ".$_POST["7"]."\n"; |
---|
389 | fwrite($handle,$data); |
---|
390 | } |
---|
391 | if($_POST["8"] != "off") |
---|
392 | { |
---|
393 | $data = "StringZ:usePetersonB = ".$_POST["8"]."\n"; |
---|
394 | fwrite($handle,$data); |
---|
395 | } |
---|
396 | if($_POST["9"] != "off") |
---|
397 | { |
---|
398 | $data = "StringZ:usePetersonH = ".$_POST["9"]."\n"; |
---|
399 | fwrite($handle,$data); |
---|
400 | } |
---|
401 | if($_POST["10"] != "0.05") |
---|
402 | { |
---|
403 | $data = "StringZ:epsilonC = ".$_POST["10"]."\n"; |
---|
404 | fwrite($handle,$data); |
---|
405 | } |
---|
406 | if($_POST["11"] != "0.005") |
---|
407 | { |
---|
408 | $data = "StringZ:epsilonB = ".$_POST["11"]."\n"; |
---|
409 | fwrite($handle,$data); |
---|
410 | } |
---|
411 | if($_POST["12"] != "0.005") |
---|
412 | { |
---|
413 | $data = "StringZ:epsilonH = ".$_POST["12"]."\n"; |
---|
414 | fwrite($handle,$data); |
---|
415 | } |
---|
416 | if($_POST["13"] != "0.304") |
---|
417 | { |
---|
418 | $data = "StringPT:sigma = ".$_POST["13"]."\n"; |
---|
419 | fwrite($handle,$data); |
---|
420 | } |
---|
421 | if($_POST["14"] != "0.01") |
---|
422 | { |
---|
423 | $data = "StringPT:enhancedFraction = ".$_POST["14"]."\n"; |
---|
424 | fwrite($handle,$data); |
---|
425 | } |
---|
426 | if($_POST["15"] != "2.0") |
---|
427 | { |
---|
428 | $data = "StringPT:enhancedWidth = ".$_POST["15"]."\n"; |
---|
429 | fwrite($handle,$data); |
---|
430 | } |
---|
431 | if($_POST["16"] != "1.0") |
---|
432 | { |
---|
433 | $data = "StringFragmentation:stopMass = ".$_POST["16"]."\n"; |
---|
434 | fwrite($handle,$data); |
---|
435 | } |
---|
436 | if($_POST["17"] != "2.0") |
---|
437 | { |
---|
438 | $data = "StringFragmentation:stopNewFlav = ".$_POST["17"]."\n"; |
---|
439 | fwrite($handle,$data); |
---|
440 | } |
---|
441 | if($_POST["18"] != "0.2") |
---|
442 | { |
---|
443 | $data = "StringFragmentation:stopSmear = ".$_POST["18"]."\n"; |
---|
444 | fwrite($handle,$data); |
---|
445 | } |
---|
446 | if($_POST["19"] != "1.") |
---|
447 | { |
---|
448 | $data = "HadronLevel:mStringMin = ".$_POST["19"]."\n"; |
---|
449 | fwrite($handle,$data); |
---|
450 | } |
---|
451 | if($_POST["20"] != "0.3") |
---|
452 | { |
---|
453 | $data = "FragmentationSystems:mJoin = ".$_POST["20"]."\n"; |
---|
454 | fwrite($handle,$data); |
---|
455 | } |
---|
456 | if($_POST["21"] != "1.0") |
---|
457 | { |
---|
458 | $data = "FragmentationSystems:mJoinJunction = ".$_POST["21"]."\n"; |
---|
459 | fwrite($handle,$data); |
---|
460 | } |
---|
461 | if($_POST["22"] != "2") |
---|
462 | { |
---|
463 | $data = "MiniStringFragmentation:nTry = ".$_POST["22"]."\n"; |
---|
464 | fwrite($handle,$data); |
---|
465 | } |
---|
466 | if($_POST["23"] != "2.0") |
---|
467 | { |
---|
468 | $data = "StringFragmentation:eNormJunction = ".$_POST["23"]."\n"; |
---|
469 | fwrite($handle,$data); |
---|
470 | } |
---|
471 | if($_POST["24"] != "1.0") |
---|
472 | { |
---|
473 | $data = "StringFragmentation:eBothLeftJunction = ".$_POST["24"]."\n"; |
---|
474 | fwrite($handle,$data); |
---|
475 | } |
---|
476 | if($_POST["25"] != "10.0") |
---|
477 | { |
---|
478 | $data = "StringFragmentation:eMaxLeftJunction = ".$_POST["25"]."\n"; |
---|
479 | fwrite($handle,$data); |
---|
480 | } |
---|
481 | if($_POST["26"] != "0.2") |
---|
482 | { |
---|
483 | $data = "StringFragmentation:eMinLeftJunction = ".$_POST["26"]."\n"; |
---|
484 | fwrite($handle,$data); |
---|
485 | } |
---|
486 | fclose($handle); |
---|
487 | } |
---|
488 | |
---|
489 | ?> |
---|
490 | </body> |
---|
491 | </html> |
---|
492 | |
---|
493 | <!-- Copyright (C) 2012 Torbjorn Sjostrand --> |
---|
494 | |
---|