]>
Commit | Line | Data |
---|---|---|
7dae8538 | 1 | #ifndef ROOT_ICommon |
2 | #define ROOT_ICommon | |
3 | ||
4 | #ifndef __CFORTRAN_LOADED | |
5 | //*KEEP,cfortran. | |
6 | #include "cfortran.h" | |
7 | //*KEND. | |
8 | #endif | |
9 | ||
10 | extern "C" { | |
11 | ||
12 | /*========================================================================*/ | |
13 | /* COMMON/DYLIM/QMIN,QMAX,QTMIN,QTMAX,YWMIN,YWMAX,XWMIN,XWMAX,THWMIN, */ | |
14 | /* & THWMAX,PHWMIN,PHWMAX,SETLMQ(12) */ | |
15 | /*------------------------------------------------------------------------*/ | |
16 | typedef struct { | |
17 | Float_t qmin; | |
18 | Float_t qmax; | |
19 | Float_t qtmin; | |
20 | Float_t qtmax; | |
21 | Float_t ywmin; | |
22 | Float_t ywmax; | |
23 | Float_t xwmin; | |
24 | Float_t xwmax; | |
25 | Float_t thwmin; | |
26 | Float_t thwmax; | |
27 | Float_t phwmin; | |
28 | Float_t phwmax; | |
29 | Bool_t setlmq[12]; | |
30 | Bool_t ywset; | |
31 | Bool_t thwset; | |
32 | } DylimCommon; | |
33 | ||
34 | #define DYLIM COMMON_BLOCK(DYLIM, dylim) | |
35 | COMMON_BLOCK_DEF(DylimCommon,DYLIM); | |
36 | ||
37 | /**************************************************************************/ | |
38 | /* D E S C R I P T I O N : */ | |
39 | /*------------------------------------------------------------------------*/ | |
40 | /* qmin, qmax : Mass limits for W */ | |
41 | /* qtmin, qtmax : q-subscript-t limits for W */ | |
42 | /* ywmin, ywmax : Y limits for W. Cannot be set simultaneously with */ | |
43 | /* thwmin, thwmax. */ | |
44 | /* xwmin, xwmax : Feynman x limit for W */ | |
45 | /* thwmin, thwmax : Theta limits for W. Cannot be set simultaneously */ | |
46 | /* with ywmin, ywmax. */ | |
47 | /* phwmin, phwmax : Phi limits for W */ | |
48 | /* setlmq : */ | |
49 | /* ywset, thwset : Logical flags internal to the interface. */ | |
50 | /**************************************************************************/ | |
51 | ||
52 | ||
53 | ||
54 | /*========================================================================*/ | |
55 | /* COMMON/EEPAR/SGMXEE,PLEP,PLEM,RSHMIN,RSHMAX,UPSLON,SIGZ,IBREM,IBEAM */ | |
56 | /*------------------------------------------------------------------------*/ | |
57 | typedef struct { | |
58 | Float_t sgmxee; | |
59 | Float_t plep; | |
60 | Float_t plem; | |
61 | Float_t rshmin; | |
62 | Float_t rshmax; | |
63 | Float_t upslon; | |
64 | Float_t sigz; | |
65 | Bool_t ibrem; | |
66 | Bool_t ibeam; | |
67 | } EeparCommon; | |
68 | ||
69 | #define EEPAR COMMON_BLOCK(EEPAR, eepar) | |
70 | COMMON_BLOCK_DEF(EeparCommon,EEPAR); | |
71 | ||
72 | /**************************************************************************/ | |
73 | /* D E S C R I P T I O N : */ | |
74 | /*------------------------------------------------------------------------*/ | |
75 | /* sgmxee */ | |
76 | /* plep : Polarisation of positron beam (P-subscript-L of e-superscript-+ */ | |
77 | /* plem : Polarisation of electron beam (P-subscript-L of e-superscript-- */ | |
78 | /* */ | |
79 | /* Brem- and beam-strahlung parameters */ | |
80 | /* rshmin : minimum subprocess energy (root-s-hyphen-subscript-min) */ | |
81 | /* rshmax : maximum subprocess energy (root-s-hyphen-subscript-max) */ | |
82 | /* upslon : beamstrahlung parameter (UPSILON) */ | |
83 | /* sigz : Longitudinal beam size in mm (sigma-subscript-z) */ | |
84 | /* ibrem : True if EEBREM used */ | |
85 | /* ibeam : True if EEBEAM used */ | |
86 | /**************************************************************************/ | |
87 | ||
88 | ||
89 | ||
90 | /*========================================================================*/ | |
91 | /* COMMON/FORCE/NFORCE,IFORCE(MXFORC),MFORCE(5,MXFORC),LOOK2(2,MXFORC), */ | |
92 | /* & LOOKST(MXFORC),MEFORC(MXFORC) */ | |
93 | /*------------------------------------------------------------------------*/ | |
94 | typedef struct { | |
95 | static const Int_t mxforc = 40; | |
96 | Int_t nforce; | |
97 | Int_t iforce[mxforc]; | |
98 | Int_t mforce[mxforc][5]; | |
99 | Int_t look2[mxforc][2]; | |
100 | Int_t lookst[mxforc]; | |
101 | Int_t meforc[mxforc]; | |
102 | } ForceCommon; | |
103 | ||
104 | #define FORCE COMMON_BLOCK(FORCE, force) | |
105 | COMMON_BLOCK_DEF(ForceCommon,FORCE); | |
106 | ||
107 | /**************************************************************************/ | |
108 | /* D E S C R I P T I O N : */ | |
109 | /*------------------------------------------------------------------------*/ | |
110 | /* mxforce : Size of forced-decay array */ | |
111 | /* nforce : Number of forced decay paths */ | |
112 | /* iforce : ID code for particle of forced decay */ | |
113 | /* mforce : Mode(s) of forced decay */ | |
114 | /* look2 */ | |
115 | /* lookst */ | |
116 | /* meforc : Matrix element of the forced decay */ | |
117 | /**************************************************************************/ | |
118 | ||
119 | ||
120 | ||
121 | /*========================================================================*/ | |
122 | /* COMMON/FRGPAR/PUD,PBARY,SIGQT,PEND,XGEN(8),PSPIN1(8),PMIX1(3,2), */ | |
123 | /* & PMIX2(3,2),XGENSS(9) */ | |
124 | /*------------------------------------------------------------------------*/ | |
125 | typedef struct { | |
126 | Float_t pud; | |
127 | Float_t pbary; | |
128 | Float_t sigqt; | |
129 | Float_t pend; | |
130 | Float_t xgen[8]; | |
131 | Float_t pspin1[8]; | |
132 | Float_t pmix1[2][3]; | |
133 | Float_t pmix2[2][3]; | |
134 | Float_t xgenss[9]; | |
135 | Float_t *pmixx1[6]; | |
136 | Float_t *pmixx2[6]; | |
137 | Float_t *frpar[32]; | |
138 | } FrgparCommon; | |
139 | ||
140 | #define FRGPAR COMMON_BLOCK(FRGPAR, frgpar) | |
141 | COMMON_BLOCK_DEF(FrgparCommon,FRGPAR); | |
142 | ||
143 | /**************************************************************************/ | |
144 | /* D E S C R I P T I O N : */ | |
145 | /*------------------------------------------------------------------------*/ | |
146 | /* Fragmentation parameters : */ | |
147 | /* pud : */ | |
148 | /* pbary : */ | |
149 | /* sigqt : Internal k-subscript-t parameter for jet fragmentation (sigma) */ | |
150 | /* pend : */ | |
151 | /* xgen : Jet fragmentation, Peterson with epsilon = a(n) / m, n = 4-8 */ | |
152 | /* pspin1 : */ | |
153 | /* pmix1 : */ | |
154 | /* pmix2 : */ | |
155 | /* xgenss : Fragmentation of GLSS, UPSS etc with epsilon = a(n)/m-squared */ | |
156 | /**************************************************************************/ | |
157 | ||
158 | ||
159 | ||
160 | /*========================================================================*/ | |
161 | /* COMMON/HCON/ANWWWW(4,4,4),ADWWWW(2,4),AIWWWW(4),HMASS,HGAM,HGAMS(29), */ | |
162 | /* & ETAHGG,MATCHH(29),ZSTARS(4,2),IHTYPE,HGAMSS(85,85) */ | |
163 | /*------------------------------------------------------------------------*/ | |
164 | typedef struct { | |
165 | Float_t anwwww[4][4][4]; | |
166 | Float_t adwwww[4][2]; | |
167 | Float_t aiwwww[4]; | |
168 | Float_t hmass; | |
169 | Float_t hgam; | |
170 | Float_t hgams[29]; | |
171 | Float_t etahgg; | |
172 | Int_t matchh[29]; | |
173 | Float_t zstars[2][4]; | |
174 | Int_t ihtype; | |
175 | Float_t hgamss[85][85]; | |
176 | } HconCommon; | |
177 | ||
178 | #define HCON COMMON_BLOCK(HCON, hcon) | |
179 | COMMON_BLOCK_DEF(HconCommon,HCON); | |
180 | ||
181 | /**************************************************************************/ | |
182 | /* D E S C R I P T I O N : */ | |
183 | /*------------------------------------------------------------------------*/ | |
184 | /* anwwww : */ | |
185 | /* adwwww : */ | |
186 | /* aiwwww : */ | |
187 | /* hmass : */ | |
188 | /* hgam : */ | |
189 | /* hgams : */ | |
190 | /* etahgg: */ | |
191 | /* matchh : */ | |
192 | /* zstars : */ | |
193 | /* ihtype : MSSM Higgs type, either HL0, HH0 or HA0 */ | |
194 | /* hgamss : */ | |
195 | /**************************************************************************/ | |
196 | ||
197 | ||
198 | ||
199 | /*========================================================================*/ | |
200 | /* COMMON/JETLIM/PMIN(MXLIM),PMAX(MXLIM),PTMIN(MXLIM),PTMAX(MXLIM), */ | |
201 | /* & YJMIN(MXLIM),YJMAX(MXLIM),PHIMIN(MXLIM),PHIMAX(MXLIM), */ | |
202 | /* & XJMIN(MXLIM),XJMAX(MXLIM),THMIN(MXLIM),THMAX(MXLIM), */ | |
203 | /* & SETLMJ(12*MXLIM) */ | |
204 | /*------------------------------------------------------------------------*/ | |
205 | typedef struct { | |
206 | static const Int_t mxlim = 8; | |
207 | Float_t pmin[mxlim]; | |
208 | Float_t pmax[mxlim]; | |
209 | Float_t ptmin[mxlim]; | |
210 | Float_t ptmax[mxlim]; | |
211 | Float_t yjmin[mxlim]; | |
212 | Float_t yjmax[mxlim]; | |
213 | Float_t phimin[mxlim]; | |
214 | Float_t phimax[mxlim]; | |
215 | Float_t xjmin[mxlim]; | |
216 | Float_t xjmax[mxlim]; | |
217 | Float_t thmin[mxlim]; | |
218 | Float_t thmax[mxlim]; | |
219 | Bool_t setlmj[12*mxlim]; | |
220 | } JetlimCommon; | |
221 | ||
222 | #define JETLIM COMMON_BLOCK(JETLIM, jetlim) | |
223 | COMMON_BLOCK_DEF(JetlimCommon,JETLIM); | |
224 | ||
225 | /**************************************************************************/ | |
226 | /* D E S C R I P T I O N : */ | |
227 | /*------------------------------------------------------------------------*/ | |
228 | /* Changes to mxlim should be echoed in MGLIMS and some of its access */ | |
229 | /* routines. */ | |
230 | /* pmin, pmax : Momentum limits for jets. */ | |
231 | /* ptmin, ptmax : p-subscript-t limits for jets. */ | |
232 | /* yjmin, yjmax : Y limits for each jet; not simultaneous to thmin, thmax.*/ | |
233 | /* phimin, phimax : Phi limits for jets. */ | |
234 | /* xjmin, xjmax : Feynman x limits for jets. */ | |
235 | /* thmin, thmax : Theta limits for jets, not simultaneous with yjmin, */ | |
236 | /* yjmax. */ | |
237 | /* setlmj : */ | |
238 | /* yjset, thset : Logical flags internal to the interface. */ | |
239 | /**************************************************************************/ | |
240 | ||
241 | ||
242 | ||
243 | /*========================================================================*/ | |
244 | /* COMMON/JETPAR/P(3),PT(3),YJ(3),PHI(3),XJ(3),TH(3),CTH(3),STH(3), */ | |
245 | /* & JETTYP(3),SHAT,THAT,QSQ,X1,X2,PBEAM(2), */ | |
246 | /* & QMW,QW,QTW,YW,XW,THW,QTMW,PHIW,SHAT1,THAT1,UHAT1,JWTYP, */ | |
247 | /* & INITYP(2),ISIGS,PBEAMS(5) */ | |
248 | /*------------------------------------------------------------------------*/ | |
249 | typedef struct { | |
250 | Float_t p[3]; | |
251 | Float_t pt[3]; | |
252 | Float_t yj[3]; | |
253 | Float_t phi[3]; | |
254 | Float_t xj[3]; | |
255 | Float_t th[3]; | |
256 | Float_t cth[3]; | |
257 | Float_t sth[3]; | |
258 | Int_t jettyp[3]; | |
259 | Float_t shat; | |
260 | Float_t that; | |
261 | Float_t uhat; | |
262 | Float_t qsq; | |
263 | Float_t x1; | |
264 | Float_t x2; | |
265 | Float_t pbeam[2]; | |
266 | Float_t qmw; | |
267 | Float_t qw; | |
268 | Float_t qtw; | |
269 | Float_t yw; | |
270 | Float_t xw; | |
271 | Float_t thw; | |
272 | Float_t qtmw; | |
273 | Float_t phiw; | |
274 | Float_t shat1; | |
275 | Float_t that1; | |
276 | Float_t uhat1; | |
277 | Int_t jwtyp; | |
278 | Float_t alfqsq; | |
279 | Float_t cthw; | |
280 | Float_t sthw; | |
281 | Float_t q0w; | |
282 | Int_t inityp[2]; | |
283 | Int_t isigs; | |
284 | Float_t pbeams[5]; | |
285 | } JetparCommon; | |
286 | ||
287 | #define JETPAR COMMON_BLOCK(JETPAR, jetpar) | |
288 | COMMON_BLOCK_DEF(JetparCommon,JETPAR); | |
289 | ||
290 | ||
291 | /**************************************************************************/ | |
292 | /* D E S C R I P T I O N : */ | |
293 | /*------------------------------------------------------------------------*/ | |
294 | /* jwtyp : W type, either W+-, Z0 or GM. */ | |
295 | /**************************************************************************/ | |
296 | ||
297 | ||
298 | ||
299 | /*========================================================================*/ | |
300 | /* COMMON/KEYS/IKEY, KEYON, KEYS(MXKEYS) */ | |
301 | /*------------------------------------------------------------------------*/ | |
302 | ||
303 | typedef struct { | |
304 | static const Int_t mxkeys = 20; | |
305 | Bool_t keys[mxkeys]; | |
306 | Bool_t keyon; | |
307 | Int_t ikey; | |
308 | Char_t *reac; | |
309 | } KeysCommon; | |
310 | ||
311 | #define KEYS COMMON_BLOCK(KEYS, keys) | |
312 | COMMON_BLOCK_DEF(KeysCommon,KEYS); | |
313 | ||
314 | /**************************************************************************/ | |
315 | /* D E S C R I P T I O N : */ | |
316 | /*------------------------------------------------------------------------*/ | |
317 | /* keys : Flag for process type. */ | |
318 | /**************************************************************************/ | |
319 | ||
320 | ||
321 | ||
322 | /*========================================================================*/ | |
323 | /* COMMON/KKGRAV/NEXTRAD,MASSD,KKGSD,SURFD,UVCUT */ | |
324 | /*------------------------------------------------------------------------*/ | |
325 | ||
326 | typedef struct { | |
327 | Int_t nextrad; | |
328 | Float_t massd; | |
329 | Float_t kkgsd; | |
330 | Float_t surfd; | |
331 | Bool_t uvcut; | |
332 | } KkgravCommon; | |
333 | ||
334 | #define KKGRAV COMMON_BLOCK(KKGRAV, kkgrav) | |
335 | COMMON_BLOCK_DEF(KkgravCommon,KKGRAV); | |
336 | ||
337 | /**************************************************************************/ | |
338 | /* D E S C R I P T I O N : */ | |
339 | /*------------------------------------------------------------------------*/ | |
340 | /* EXTRADIM process parameters : */ | |
341 | /* nextrad : delta */ | |
342 | /* massd : M-subscript-D */ | |
343 | /* uvcut : Logical flag */ | |
344 | /* */ | |
345 | /* kkgsd : */ | |
346 | /* surfd : */ | |
347 | /**************************************************************************/ | |
348 | ||
349 | ||
350 | ||
351 | /*========================================================================*/ | |
352 | /* COMMON/MBGEN/POMWT(LIMPOM),POMGEN(LIMPOM),MNPOM,MXPOM,PDIFFR,NPOM, */ | |
353 | /* & XBARY(2),DXBARY(2),XPOM(LIMPOM,2) */ | |
354 | /*------------------------------------------------------------------------*/ | |
355 | typedef struct { | |
356 | static const Int_t limpom = 20; | |
357 | Float_t pomwt[limpom]; | |
358 | Float_t pomgen[limpom]; | |
359 | Int_t mnpom; | |
360 | Int_t mxpom; | |
361 | Float_t pdiffr; | |
362 | Int_t npom; | |
363 | Float_t xbary[2]; | |
364 | Float_t dxbary[2]; | |
365 | Float_t xpom[2][limpom]; | |
366 | } MbgenCommon; | |
367 | ||
368 | #define MBGEN COMMON_BLOCK(MBGEN, mbgen) | |
369 | COMMON_BLOCK_DEF(MbgenCommon,MBGEN); | |
370 | ||
371 | /**************************************************************************/ | |
372 | /* D E S C R I P T I O N : */ | |
373 | /*------------------------------------------------------------------------*/ | |
374 | /* pomwt */ | |
375 | /* pomgen */ | |
376 | /* mnpom, mxpom : Min and max number of cut pomerons. */ | |
377 | /* pdiffr */ | |
378 | /* npom */ | |
379 | /* xbary */ | |
380 | /* dxbary */ | |
381 | /* xpom */ | |
382 | /**************************************************************************/ | |
383 | ||
384 | ||
385 | ||
386 | /*========================================================================*/ | |
387 | /* COMMON/MGLIMS/EHMGMN,EHMGMX,YHMGMN,YHMGMX,AMIJMN(MXLIM,MXLIM), */ | |
388 | /* & AMIJMX(MXLIM,MXLIM),FIXMIJ(MXLIM,MXLIM) */ | |
389 | /*------------------------------------------------------------------------*/ | |
390 | typedef struct { | |
391 | static const Int_t mxlim = 8; | |
392 | Float_t ehmgmn; | |
393 | Float_t ehmgmx; | |
394 | Float_t yhmgmn; | |
395 | Float_t yhmgmx; | |
396 | Float_t amijmn[mxlim][mxlim]; | |
397 | Float_t amijmx[mxlim][mxlim]; | |
398 | Bool_t fixmij[mxlim][mxlim]; | |
399 | } MglimsCommon; | |
400 | ||
401 | #define MGLIMS COMMON_BLOCK(MGLIMS, mglims) | |
402 | COMMON_BLOCK_DEF(MglimsCommon,MGLIMS); | |
403 | ||
404 | /**************************************************************************/ | |
405 | /* D E S C R I P T I O N : */ | |
406 | /*------------------------------------------------------------------------*/ | |
407 | /* Changes in mxlim should be echoed in JETLIM and in access routines for */ | |
408 | /* amijmn and amijmx. */ | |
409 | /* Limits for MadGraph multiparton processes */ | |
410 | /* ehmgmn, ehmgmx : Mass range */ | |
411 | /* yhmgmn, yhmgmx : */ | |
412 | /* amijmn, amijmx : Multimet mass limits */ | |
413 | /* fixmij : */ | |
414 | /**************************************************************************/ | |
415 | ||
416 | ||
417 | ||
418 | /*========================================================================*/ | |
419 | /* COMMON/NODCAY/NODCAY,NOETA,NOPI0,NONUNU,NOEVOL,NOHADR,NOGRAV */ | |
420 | /*------------------------------------------------------------------------*/ | |
421 | typedef struct { | |
422 | Bool_t nodcay; | |
423 | Bool_t noeta; | |
424 | Bool_t nopi0; | |
425 | Bool_t nonunu; | |
426 | Bool_t noevol; | |
427 | Bool_t nohadr; | |
428 | Bool_t nograv; | |
429 | } NodcayCommon; | |
430 | ||
431 | #define NODCAY COMMON_BLOCK(NODCAY, nodcay) | |
432 | COMMON_BLOCK_DEF(NodcayCommon,NODCAY); | |
433 | ||
434 | /**************************************************************************/ | |
435 | /* D E S C R I P T I O N : */ | |
436 | /*------------------------------------------------------------------------*/ | |
437 | /* Booleans used to forbid decay channels. */ | |
438 | /* nodcay : Suppress all decays */ | |
439 | /* noeta : Suppress eta decays */ | |
440 | /* nopi0 : Suppress pi-zero decays */ | |
441 | /* nonunu : Suppess Z-zero neutrino decays */ | |
442 | /* noevol : Suppress QCD evolution and hadronisation */ | |
443 | /* nohadr : Suppress hadronisation of jets and beam jets */ | |
444 | /* nograv : Suppress gravitino decays in GMSB model */ | |
445 | /**************************************************************************/ | |
446 | ||
447 | ||
448 | ||
449 | /*========================================================================*/ | |
450 | /* COMMON/PARTCL/NPTCL,PPTCL(5, MXPTCL),IORIG(MXPTCL),IDENT(MXPTCL), */ | |
451 | /* & IDCAY(MXPTCL) */ | |
452 | /*------------------------------------------------------------------------*/ | |
453 | typedef struct { | |
454 | static const Int_t mxptcl = 4000; | |
455 | static const Int_t ipack = 10000; | |
456 | Int_t nptcl; | |
457 | Float_t pptcl[mxptcl][5]; | |
458 | Int_t iorig[mxptcl]; | |
459 | Int_t ident[mxptcl]; | |
460 | Int_t idcay[mxptcl]; | |
461 | } PartclCommon; | |
462 | ||
463 | #define PARTCL COMMON_BLOCK(PARTCL, partcl) | |
464 | COMMON_BLOCK_DEF(PartclCommon,PARTCL); | |
465 | ||
466 | /**************************************************************************/ | |
467 | /* D E S C R I P T I O N : */ | |
468 | /*------------------------------------------------------------------------*/ | |
469 | /* Stores HEPEVT data. */ | |
470 | /* nptcl : Number of particles. */ | |
471 | /* pptcl : x, y, z, and 0 momentum of particles, and mass. */ | |
472 | /* iorig : origin of particles. */ | |
473 | /* ident : ID code. */ | |
474 | /* idcay : ID of decay products. */ | |
475 | /* mxptcl : Max number of particles. */ | |
476 | /* ipack : Packing integer, used in decoding idcay. */ | |
477 | /**************************************************************************/ | |
478 | ||
479 | ||
480 | ||
481 | /*========================================================================*/ | |
482 | /* COMMON/PRIMAR/NJET,SCM,HALFE,ECM,IDIN(2),NEVENT,NTRIES,NSIGMA */ | |
483 | /*------------------------------------------------------------------------*/ | |
484 | typedef struct { | |
485 | Int_t njet; | |
486 | Float_t scm; | |
487 | Float_t halfe; | |
488 | Float_t ecm; | |
489 | Int_t idin[2]; | |
490 | Int_t nevent; | |
491 | Int_t ntries; | |
492 | Int_t nsigma; | |
493 | } PrimarCommon; | |
494 | ||
495 | #define PRIMAR COMMON_BLOCK(PRIMAR, primar) | |
496 | COMMON_BLOCK_DEF(PrimarCommon,PRIMAR); | |
497 | ||
498 | /**************************************************************************/ | |
499 | /* D E S C R I P T I O N : */ | |
500 | /*------------------------------------------------------------------------*/ | |
501 | /* njet : */ | |
502 | /* scm : Square of the center-of-mass energy. */ | |
503 | /* halfe : Half the center-of-mass energy. */ | |
504 | /* ecm : Center-of-mass energy. */ | |
505 | /* idin : Beam types 1 and 2. */ | |
506 | /* nevent : Number of events to build. */ | |
507 | /* ntries : Maximum number of tries to find a good event. */ | |
508 | /* nsigma : Number of unevolved events for SIGF calculation. */ | |
509 | /**************************************************************************/ | |
510 | ||
511 | ||
512 | ||
513 | /*========================================================================*/ | |
514 | /* COMMON/PRTOUT/NEVPRT,NJUMP */ | |
515 | /*------------------------------------------------------------------------*/ | |
516 | typedef struct { | |
517 | Int_t nevprt; | |
518 | Int_t njump; | |
519 | } PrtoutCommon; | |
520 | ||
521 | #define PRTOUT COMMON_BLOCK(PRTOUT, prtout) | |
522 | COMMON_BLOCK_DEF(PrtoutCommon,PRTOUT); | |
523 | ||
524 | /**************************************************************************/ | |
525 | /* D E S C R I P T I O N : */ | |
526 | /*------------------------------------------------------------------------*/ | |
527 | /* nevprt : Number of events to print */ | |
528 | /* njump : Print every njump events. */ | |
529 | /**************************************************************************/ | |
530 | ||
531 | ||
532 | ||
533 | /*========================================================================*/ | |
534 | /* COMMON/QCDPAR/ALAM,ALAM2,CUTJET,ISTRUC */ | |
535 | /*------------------------------------------------------------------------*/ | |
536 | typedef struct { | |
537 | Float_t alam; | |
538 | Float_t alam2; | |
539 | Float_t cutjet; | |
540 | Int_t istruc; | |
541 | } QcdparCommon; | |
542 | ||
543 | #define QCDPAR COMMON_BLOCK(QCDPAR, qcdpar) | |
544 | COMMON_BLOCK_DEF(QcdparCommon,QCDPAR); | |
545 | ||
546 | /**************************************************************************/ | |
547 | /* D E S C R I P T I O N : */ | |
548 | /*------------------------------------------------------------------------*/ | |
549 | /* alam : QCD scale (LAMBDA) */ | |
550 | /* alam2 : Square of alam */ | |
551 | /* cutjet : Cutoff mass for QCD jet evolution (mu-subscript-c) */ | |
552 | /* istruc : Structure functions CTEQ3L, CTEQ2L, EHLQ or DO. */ | |
553 | /**************************************************************************/ | |
554 | ||
555 | ||
556 | ||
557 | /*========================================================================*/ | |
558 | /* COMMON/QLMASS/AMLEP(100),NQLEP,NMES,NBARY */ | |
559 | /*------------------------------------------------------------------------*/ | |
560 | typedef struct { | |
561 | static const Int_t nqlep = 61; | |
562 | static const Int_t nmes = 2; | |
563 | static const Int_t nbary = 2; | |
564 | Float_t amlep[100]; | |
565 | } QlmassCommon; | |
566 | ||
567 | #define QLMASS COMMON_BLOCK(QLMASS, qlmass) | |
568 | COMMON_BLOCK_DEF(QlmassCommon,QLMASS); | |
569 | ||
570 | /**************************************************************************/ | |
571 | /* D E S C R I P T I O N : */ | |
572 | /*------------------------------------------------------------------------*/ | |
573 | /* amlep : (C++ indices, Fortran is one greater) */ | |
574 | /* [5-7] : t, y and x quark mass (m-subscript-t, -y, -x) */ | |
575 | /* [21-26] : Masses of u, d, s, c, b and t, all -tilde */ | |
576 | /* [29] : g-tilde mass */ | |
577 | /* [30] : gamma-tilde mass */ | |
578 | /* [31-36] : Masses for nu-e, e, nu-mu, mu, nu-tau and tau, all -tilde */ | |
579 | /* [39] : W-plus-tilde mass */ | |
580 | /* [40] : Z-zero-tilde mass */ | |
581 | /* [63-71] : Higgs meson masses, charges 0,0,0,0,0,1,1,2,2 */ | |
582 | /**************************************************************************/ | |
583 | ||
584 | ||
585 | ||
586 | /*========================================================================*/ | |
587 | /* COMMON/SEED/XSEED */ | |
588 | /*------------------------------------------------------------------------*/ | |
589 | typedef struct { | |
590 | Char_t xseed[24]; | |
591 | } SeedCommon; | |
592 | ||
593 | #define SEED COMMON_BLOCK(SEED, seed) | |
594 | COMMON_BLOCK_DEF(SeedCommon,SEED); | |
595 | ||
596 | /**************************************************************************/ | |
597 | /* D E S C R I P T I O N : */ | |
598 | /*------------------------------------------------------------------------*/ | |
599 | /* Random number seed */ | |
600 | /**************************************************************************/ | |
601 | ||
602 | ||
603 | ||
604 | /*========================================================================*/ | |
605 | /* COMMON/SUGNU/XNUSUG(18) */ | |
606 | /*------------------------------------------------------------------------*/ | |
607 | typedef struct { | |
608 | Float_t xnusug[18]; | |
609 | } SugnuCommon; | |
610 | ||
611 | #define SUGNU COMMON_BLOCK(SUGNU, sugnu) | |
612 | COMMON_BLOCK_DEF(SugnuCommon,SUGNU); | |
613 | ||
614 | /**************************************************************************/ | |
615 | /* D E S C R I P T I O N : */ | |
616 | /*------------------------------------------------------------------------*/ | |
617 | /* Non-universal SUGRA terms : (C++ indexes again) */ | |
618 | /* xnusug[0-2] : Gaugino masses */ | |
619 | /* [3-5] : A terms (A-subscript-tau, -b, -t) */ | |
620 | /* [6-7] : Higgs masses (M-subscript-H-subscript-d, -u) */ | |
621 | /* [8-12] : 1st / 2nd generation masses (M-subscript-eR, -eL, -dR, */ | |
622 | /* -uR, -uL) */ | |
623 | /* [13-17] : 3rd generation masses (M-subscript-tau R, -tau L, -bR, */ | |
624 | /* -tR, -tL) */ | |
625 | /**************************************************************************/ | |
626 | ||
627 | ||
628 | ||
629 | /*========================================================================*/ | |
630 | /* COMMON/TCPAR/TCMRHO,TCGRHO */ | |
631 | /*------------------------------------------------------------------------*/ | |
632 | typedef struct { | |
633 | Float_t tcmrho; | |
634 | Float_t tcgrho; | |
635 | } TcparCommon; | |
636 | ||
637 | #define TCPAR COMMON_BLOCK(TCPAR, tcpar) | |
638 | COMMON_BLOCK_DEF(TcparCommon,TCPAR); | |
639 | ||
640 | /**************************************************************************/ | |
641 | /* D E S C R I P T I O N : */ | |
642 | /*------------------------------------------------------------------------*/ | |
643 | /* tcmrho : Technicolor mass */ | |
644 | /* tcgrho : Technicolor width */ | |
645 | /**************************************************************************/ | |
646 | ||
647 | ||
648 | ||
649 | /*========================================================================*/ | |
650 | /* COMMON/TYPES/LOC(100),NTYP,NJTTYP,NWWTYP(2),NWMODE(3) */ | |
651 | /*------------------------------------------------------------------------*/ | |
652 | typedef struct { | |
653 | static const Int_t mxtype = 8; | |
654 | Int_t loc[100]; | |
655 | Int_t ntyp; | |
656 | Int_t njttyp[mxtype]; | |
657 | Int_t nwwtyp[2]; | |
658 | Int_t nwmode[3]; | |
659 | } TypesCommon; | |
660 | ||
661 | #define TYPES COMMON_BLOCK(TYPES, types) | |
662 | COMMON_BLOCK_DEF(TypesCommon,TYPES); | |
663 | ||
664 | /**************************************************************************/ | |
665 | /* D E S C R I P T I O N : */ | |
666 | /*------------------------------------------------------------------------*/ | |
667 | /* Note : Any change in mxtype should be copied in xtypes. */ | |
668 | /* loc : */ | |
669 | /* ntyp : */ | |
670 | /* njttyp : Number of jet types in jet [index]. */ | |
671 | /* nwwtyp : */ | |
672 | /* nwmode : */ | |
673 | /**************************************************************************/ | |
674 | ||
675 | ||
676 | ||
677 | /*========================================================================*/ | |
678 | /* COMMON/XMSSM/GOMSSM,GOSUG,GOGMSB,GOAMSB,AL3UNI, */ | |
679 | /* & XGLSS,XMUSS,XHASS,XTBSS, */ | |
680 | /* & XQ1SS,XDRSS,XURSS,XL1SS,XERSS, */ | |
681 | /* & XQ2SS,XSRSS,XCRSS,XL2SS,XMRSS, */ | |
682 | /* & XQ3SS,XBRSS,XTRSS,XL3SS,XTARSS,XATSS,XABSS,XATASS, */ | |
683 | /* & XM1SS,XM2SS,XM0SU,XMHSU,XA0SU,XTGBSU,XSMUSU, */ | |
684 | /* & XLAMGM,XMESGM,XN5GM,XCMGV,XMGVTO, */ | |
685 | /* & XRSLGM,XDHDGM,XDHUGM,XDYGM,XN51GM,XN52GM,XN53GM, */ | |
686 | /* & XMN3NR,XMAJNR,XANSS,XNRSS,XSBCS */ | |
687 | /*------------------------------------------------------------------------*/ | |
688 | ||
689 | typedef struct { | |
690 | Bool_t gomssm; | |
691 | Bool_t gosug; | |
692 | Bool_t gogmsb; | |
693 | Bool_t goamsb; | |
694 | Bool_t al3uni; | |
695 | Float_t xglss; | |
696 | Float_t xmuss; | |
697 | Float_t xhass; | |
698 | Float_t xtbss; | |
699 | Float_t xq1ss; | |
700 | Float_t xdrss; | |
701 | Float_t xurss; | |
702 | Float_t xl1ss; | |
703 | Float_t xerss; | |
704 | Float_t xq2ss; | |
705 | Float_t xsrss; | |
706 | Float_t xcrss; | |
707 | Float_t xl2ss; | |
708 | Float_t xmrss; | |
709 | Float_t xq3ss; | |
710 | Float_t xbrss; | |
711 | Float_t xtrss; | |
712 | Float_t xl3ss; | |
713 | Float_t xtarss; | |
714 | Float_t xatss; | |
715 | Float_t xabss; | |
716 | Float_t xatass; | |
717 | Float_t xm1ss; | |
718 | Float_t xm2ss; | |
719 | Float_t xm0su; | |
720 | Float_t xmhsu; | |
721 | Float_t xa0su; | |
722 | Float_t xtgbsu; | |
723 | Float_t xsmusu; | |
724 | Float_t xlamgm; | |
725 | Float_t xmesgm; | |
726 | Float_t xn5gm; | |
727 | Float_t xcmgv; | |
728 | Float_t mgvto; | |
729 | Float_t xrslgm; | |
730 | Float_t xdhdgm; | |
731 | Float_t xdhugm; | |
732 | Float_t xdygm; | |
733 | Float_t xn51gm; | |
734 | Float_t xn52gm; | |
735 | Float_t xn53gm; | |
736 | Float_t xmn3nr; | |
737 | Float_t xmajnr; | |
738 | Float_t xanss; | |
739 | Float_t xnrss; | |
740 | Float_t xsbcs; | |
741 | ||
742 | } XmssmCommon; | |
743 | ||
744 | #define XMSSM COMMON_BLOCK(XMSSM, xmssm) | |
745 | COMMON_BLOCK_DEF(XmssmCommon,XMSSM); | |
746 | ||
747 | /**************************************************************************/ | |
748 | /* D E S C R I P T I O N : */ | |
749 | /*------------------------------------------------------------------------*/ | |
750 | /* Keyword flags : */ | |
751 | /* gomssm : True if any of the MSSM* keywords or SUGRA, GMSB or AMSB have */ | |
752 | /* been used. */ | |
753 | /* gosug : True if SUGRA has been used. */ | |
754 | /* gogmsb : True if GMSB has been used. */ | |
755 | /* goamsb : True if AMSB has been used. */ | |
756 | /* al3uni : True if AL3UNI has been used. */ | |
757 | /* */ | |
758 | /* MSSM parameters : */ | |
759 | /* xglss : Gluino mass */ | |
760 | /* xmuss : mu */ | |
761 | /* xhass : A mass */ | |
762 | /* xtbss : tan beta */ | |
763 | /* */ | |
764 | /* MSSM first generation : */ | |
765 | /* xq1ss : q-subscript-1 mass */ | |
766 | /* xdrss : d-subscript-r mass */ | |
767 | /* xurss : u-subscript-r mass */ | |
768 | /* xl1ss : l-subscript-1 mass */ | |
769 | /* xerss : e-subscript-1 mass */ | |
770 | /* */ | |
771 | /* MSSM second generation : */ | |
772 | /* xq2ss : q-subscript-2 mass */ | |
773 | /* xsrss : s-subscript-r mass */ | |
774 | /* xcrss : c-subscript-r mass */ | |
775 | /* xl2ss : l-subscript-2 mass */ | |
776 | /* xmrss : mu-subscript-r mass */ | |
777 | /* */ | |
778 | /* MSSM third generation : */ | |
779 | /* xq3ss : q-subscript-3 mass */ | |
780 | /* xbrss : b-subscript-r mass */ | |
781 | /* xtrss : t-subscript-r mass */ | |
782 | /* xl3ss : l-subscript-3 mass */ | |
783 | /* xtarss : tau-subscript-r mass */ | |
784 | /* xatss, xabss, xatass : A-subscript-t, -b, -tau mixings. */ | |
785 | /* */ | |
786 | /* MSSM gaugino masses */ | |
787 | /* xm1ss, xm2ss : M-subscript-1, -2 */ | |
788 | /* */ | |
789 | /* Anomaly-mediated SUSY breaking / Minimal supergravity parameters : */ | |
790 | /* xm0su : scalar mass (m-subscript-0) */ | |
791 | /* xmhsu : gravitino mass (m-subscript-three halves) */ | |
792 | /* xa0su : trilinear breaking term (A-subscript-0) */ | |
793 | /* xtgbsu : VEV ratio (tan beta) */ | |
794 | /* xsmusu : sign (sgn mu) */ | |
795 | /* */ | |
796 | /* GMSB messinger SUSY breaking */ | |
797 | /* xlamgm : mass (LAMBDA-subscript-m) */ | |
798 | /* xmesgm : */ | |
799 | /* xn5gm : number of 5 + 5-bar (M-subscript-m) */ | |
800 | /* xcmgv : gravitino scale (C-subscript-gr) */ | |
801 | /* */ | |
802 | /* Non-minimal GMSB parameters */ | |
803 | /* xrslgm : gaugino mass multiplier (R-slash) */ | |
804 | /* xdhdgm : Higgs mass shift (delta M-squared-subscript-Hd) */ | |
805 | /* xdhugm : Higgs mass shift (delta M-squared-subscript-Hu) */ | |
806 | /* xdygm : D-term mass-squared (D-subscript-Y of M) */ | |
807 | /* xn51gm, xn52gm, xn53gm : independent gauge group messengers */ | |
808 | /* (N-subscript-5-subscript-1, -2, -3) */ | |
809 | /* SUGRA see-saw nu-effect */ | |
810 | /* xmn3nr : nu-mass (m-subscript-nu-subscript-tau) */ | |
811 | /* xmajnr : int. scale (M-subscript-N) */ | |
812 | /* xanss : GUT scale (A-subscript-n) */ | |
813 | /* xnrss : nu SSB terms (m-subscript-nu-tilde-subscript-R) */ | |
814 | /* */ | |
815 | /* xsbcs */ | |
816 | /* */ | |
817 | /* Gravitino mass */ | |
818 | /* xmgvto : gravitino mass (M-subscript-gravitino) */ | |
819 | /**************************************************************************/ | |
820 | ||
821 | ||
822 | ||
823 | /*========================================================================*/ | |
824 | /* COMMON/XTYPES/PARTYP(40),TITLE(10),JETYP(30,MXTYPE),WWTYP(30,2), */ | |
825 | /* & WMODES(30,3) */ | |
826 | /*------------------------------------------------------------------------*/ | |
827 | typedef struct { | |
828 | static const Int_t mxtype = 8; | |
829 | Char_t* partyp[40]; | |
830 | Char_t* title; | |
831 | Char_t* jetyp[mxtype][30]; | |
832 | Char_t* wwtyp[2][30]; | |
833 | Char_t* wmodes[3][30]; | |
834 | } XtypesCommon; | |
835 | ||
836 | #define XTYPES COMMON_BLOCK(XTYPES, xtypes) | |
837 | COMMON_BLOCK_DEF(XtypesCommon,XTYPES); | |
838 | ||
839 | /**************************************************************************/ | |
840 | /* D E S C R I P T I O N : */ | |
841 | /*------------------------------------------------------------------------*/ | |
842 | /* Note : Any change in mxtype should be copied in types. */ | |
843 | /* partyp */ | |
844 | /* title */ | |
845 | /* jetyp */ | |
846 | /* wwtyp : Decay modes for WPAIR */ | |
847 | /* wmodes : Decay modes for weak force carriers */ | |
848 | /**************************************************************************/ | |
849 | ||
850 | ||
851 | ||
852 | /*========================================================================*/ | |
853 | /* COMMON/WCON/SIN2W,WMASS(4),WGAM(4),AQ(12,4),BQ(12,4),COUT(4), */ | |
854 | /* & MATCH(25,4),WCBR(25,4),CUTOFF,CUTPOW,TBRWW(4,2), */ | |
855 | /* & RBRWW(12,4,2),EZ,AQDP(12,4),BQDP(12,4),EZDP,WFUDGE */ | |
856 | /*------------------------------------------------------------------------*/ | |
857 | typedef struct { | |
858 | ||
859 | Float_t sin2w; | |
860 | Float_t wmass[4]; | |
861 | Float_t wgam[4]; | |
862 | Float_t aq[4][12]; | |
863 | Float_t bq[4][12]; | |
864 | Float_t cout[4]; | |
865 | Int_t match; | |
866 | Float_t wcbr[4][25]; | |
867 | Float_t cutoff; | |
868 | Float_t cutpow; | |
869 | Float_t tbrww[2][4]; | |
870 | Float_t rbrww[2][4][12]; | |
871 | Float_t ez; | |
872 | Float_t aqdp[4][12]; | |
873 | Float_t bqdp[4][12]; | |
874 | Float_t ezdp; | |
875 | Float_t wfudge; | |
876 | } WconCommon; | |
877 | ||
878 | #define WCON COMMON_BLOCK(WCON, wcon) | |
879 | COMMON_BLOCK_DEF(WconCommon, WCON); | |
880 | ||
881 | /**************************************************************************/ | |
882 | /* D E S C R I P T I O N : */ | |
883 | /*------------------------------------------------------------------------*/ | |
884 | /* sin2w : Weinberg angle (sin-squared(theta-subscript-W)) */ | |
885 | /* wmass : W and Z masses */ | |
886 | /* wgam : */ | |
887 | /* aq : */ | |
888 | /* bq : */ | |
889 | /* cout : */ | |
890 | /* match */ | |
891 | /* wcbr */ | |
892 | /* cutoff, cutpow : mu-square and nu, respectively, in formula */ | |
893 | /* cutoff q*t-square = mu-square*Q-power-nu */ | |
894 | /* for DRELLYAN events. */ | |
895 | /* tbrww */ | |
896 | /* rbrww */ | |
897 | /* ez */ | |
898 | /* aqdp */ | |
899 | /* bqdp */ | |
900 | /* ezdp */ | |
901 | /* wfudge : Fudge factor for DRELLYAN evolution scale */ | |
902 | /**************************************************************************/ | |
903 | } | |
904 | ||
905 | #endif | |
906 | ||
907 | // Endfile. | |
908 | ||
909 | ||
910 | ||
911 | ||
912 | ||
913 | ||
914 | ||
915 |