Print removed
[u/mrichter/AliRoot.git] / THerwig / Herwig6Calls.h
CommitLineData
2d8d4543 1#ifndef ROOT_Herwig6Calls
2#define ROOT_Herwig6Calls
3
4// Translation of Fortran commons from the Herwig6
5// f77 program into c++ structures to be used in ROOT
6// and declaration of Fortran functions as extern
7// C functions to be called from the class Herwig6
8// author: j. g. contreras jgcn@moni.mda.cinvestav.mx
9// date: december 22, 2000
10
11int const NMXHEP = 2000;
12
13struct Hepevt_t {
14 int NEVHEP;
15 int NHEP;
16 int ISTHEP[NMXHEP];
17 int IDHEP[NMXHEP];
18 int JMOHEP[NMXHEP][2];
19 int JDAHEP[NMXHEP][2];
20 double PHEP[NMXHEP][5];
21 double VHEP[NMXHEP][4];
22};
23
24struct Hwbeam_t {
25 int IPART1;
26 int IPART2;
27};
28
29struct Hwbmch_t {
30 char PART1[8];
31 char PART2[8];
32};
33
34struct Hwproc_t {
35 double EBEAM1;
36 double EBEAM2;
37 double PBEAM1;
38 double PBEAM2;
39 int IPROC;
40 int MAXEV;
41};
42
43struct Hwpram_t {
44 double AFCH[2][16];
45 double ALPHEM;
46 double B1LIM;
47 double BETAF;
48 double BTCLM;
49 double CAFAC;
50 double CFFAC;
51 double CLMAX;
52 double CLPOW;
53 double CLSMR[2];
54 double CSPEED;
55 double ENSOF;
56 double ETAMIX;
57 double F0MIX;
58 double F1MIX;
59 double F2MIX;
60 double GAMH;
61 double GAMW;
62 double GAMZ;
63 double GAMZP;
64 double GEV2NB;
65 double H1MIX;
66 double PDIQK;
67 double PGSMX;
68 double PGSPL[4];
69 double PHIMIX;
70 double PIFAC;
71 double PRSOF;
72 double PSPLT[2];
73 double PTRMS;
74 double PXRMS;
75 double QCDL3;
76 double QCDL5;
77 double QCDLAM;
78 double QDIQK;
79 double QFCH[16];
80 double QG;
81 double QSPAC;
82 double QV;
83 double SCABI;
84 double SWEIN;
85 double TMTOP;
86 double VFCH[2][16];
87 double VCKM[3][3];
88 double VGCUT;
89 double VQCUT;
90 double VPCUT;
91 double ZBINM;
92 double EFFMIN;
93 double OMHMIX;
94 double ET2MIX;
95 double PH3MIX;
96 double GCUTME;
97 int IOPREM;
98 int IPRINT;
99 int ISPAC;
100 int LRSUD;
101 int LWSUD;
102 int MODPDF[2];
103 int NBTRY;
104 int NCOLO;
105 int NCTRY;
106 int NDTRY;
107 int NETRY;
108 int NFLAV;
109 int NGSPL;
110 int NSTRU;
111 int NSTRY;
112 int NZBIN;
113 int IOP4JT[2];
114 int NPRFMT;
115 int AZSOFT;
116 int AZSPIN;
117 int CLDIR[2];
118 int HARDME;
119 int NOSPAC;
120 int PRNDEC;
121 int PRVTX;
122 int SOFTME;
123 int ZPRIME;
124 int PRNDEF;
125 int PRNTEX;
126 int PRNWEB;
127};
128
129struct Hwprch_t {
130 char AUTPDF[2][20];
131 char BDECAY[4];
132};
133
134int const NMXPAR = 500;
135
136struct Hwpart_t {
137 int NEVPAR;
138 int NPAR;
139 int ISTPAR[NMXPAR];
140 int IDPAR[NMXPAR];
141 int JMOPAR[NMXPAR][2];
142 int JDAPAR[NMXPAR][2];
143 double PPAR[NMXPAR][5];
144 double VPAR[NMXPAR][4];
145};
146
147struct Hwparp_t {
148 double DECPAR[NMXPAR][2];
149 double PHIPAR[NMXPAR][2];
150 double RHOPAR[NMXPAR][2];
151 int TMPAR[NMXPAR];
152};
153
154int const MODMAX = 5;
155
156struct Hwbosc_t {
157 double ALPFAC;
158 double BRHIG[12];
159 double ENHANC[12];
160 double GAMMAX;
161 double RHOHEP[NMXHEP][3];
162 int IOPHIG;
163 int MODBOS[MODMAX];
164};
165
166struct Hwparc_t {
167 int JCOPAR[NMXPAR][4];
168};
169
170struct Hwbrch_t {
171 double ANOMSC[2][2];
172 double HARDST;
173 double PTINT[2][3];
174 double XFACT;
175 int INHAD;
176 int JNHAD;
177 int NSPAC[7];
178 int ISLENT;
179 int BREIT;
180 int FROST;
181 int USECMF;
182};
183
184struct Hwevnt_t {
185 double AVWGT;
186 double EVWGT;
187 double GAMWT;
188 double TLOUT;
189 double WBIGST;
190 double WGTMAX;
191 double WGTSUM;
192 double WSQSUM;
193 int IDHW[NMXHEP];
194 int IERROR;
195 int ISTAT;
196 int LWEVT;
197 int MAXER;
198 int MAXPR;
199 int NOWGT;
200 int NRN[2];
201 int NUMER;
202 int NUMERU;
203 int NWGTS;
204 int GENSOF;
205};
206
207struct Hwhard_t {
208 double ASFIXD;
209 double CLQ[6][7];
210 double COSS;
211 double COSTH;
212 double CTMAX;
213 double DISF[2][13];
214 double EMLST;
215 double EMMAX;
216 double EMMIN;
217 double EMPOW;
218 double EMSCA;
219 double EPOLN[3];
220 double GCOEF[7];
221 double GPOLN;
222 double OMEGA0;
223 double PHOMAS;
224 double PPOLN[3];
225 double PTMAX;
226 double PTMIN;
227 double PTPOW;
228 double Q2MAX;
229 double Q2MIN;
230 double Q2POW;
231 double Q2WWMN;
232 double Q2WWMX;
233 double QLIM;
234 double SINS;
235 double THMAX;
236 double Y4JT;
237 double TMNISR;
238 double TQWT;
239 double XX[2];
240 double XLMIN;
241 double XXMIN;
242 double YBMAX;
243 double YBMIN;
244 double YJMAX;
245 double YJMIN;
246 double YWWMAX;
247 double YWWMIN;
248 double WHMIN;
249 double ZJMAX;
250 double ZMXISR;
251 int IAPHIG;
252 int IBRN[2];
253 int IBSH;
254 int ICO[10];
255 int IDCMF;
256 int IDN[10];
257 int IFLMAX;
258 int IFLMIN;
259 int IHPRO;
260 int IPRO;
261 int MAPQ[10];
262 int MAXFL;
263 int BGSHAT;
264 int COLISR;
265 int FSTEVT;
266 int FSTWGT;
267 int GENEV;
268 int HVFCEN;
269 int TPOL;
270 int DURHAM;
271};
272
273int const NMXRES = 500;
274
275struct Hwprop_t {
276 double RLTIM[NMXRES+1];
277 double RMASS[NMXRES+1];
278 double RSPIN[NMXRES+1];
279 int ICHRG[NMXRES+1];
280 int IDPDG[NMXRES+1];
281 int IFLAV[NMXRES+1];
282 int NRES;
283 int VTOCDK[NMXRES+1];
284 int VTORDK[NMXRES+1];
285 int QORQQB[NMXRES+1];
286 int QBORQQ[NMXRES+1];
287};
288
289struct Hwunam_t {
290 char RNAME[NMXRES+1][8];
291 char TXNAME[NMXRES+1][2][37];
292};
293
294int const NMXDKS = 4000;
295int const NMXMOD = 200;
296
297struct Hwupdt_t {
298 double BRFRAC[NMXDKS];
299 double CMMOM[NMXDKS];
300 double DKLTM[NMXRES];
301 int IDK[NMXDKS];
302 int IDKPRD[NMXDKS][5];
303 int LNEXT[NMXDKS];
304 int LSTRT[NMXRES];
305 int NDKYS;
306 int NME[NMXDKS];
307 int NMODES[NMXRES];
308 int NPRODS[NMXDKS];
309 int DKPSET;
310 int RSTAB[NMXRES+1];
311};
312
313struct Hwuwts_t {
314 double REPWT[5][4][4];
315 double SNGWT;
316 double DECWT;
317 double QWT[3];
318 double PWT[12];
319 double SWTEF[NMXRES];
320};
321
322int const NMXCDK = 4000;
323
324struct Hwuclu_t {
325 double CLDKWT[NMXCDK];
326 double CTHRPW[12][12];
327 double PRECO;
328 double RESN[12][12];
329 double RMIN[12][12];
330 int LOCN[12][12];
331 int NCLDK[NMXCDK];
332 int NRECO;
333 int CLRECO;
334};
335
336struct Hwdist_t {
337 double EXAG;
338 double GEV2MM;
339 double HBAR;
340 double PLTCUT;
341 double VMIN2;
342 double VTXPIP[4];
343 double XMIX[2];
344 double XMRCT[2];
345 double YMIX[2];
346 double YMRCT[2];
347 int IOPDKL;
348 int MAXDKL;
349 int MIXING;
350 int PIPSMR;
351};
352
353int const NMXQDK=20;
354
355struct Hwqdks_t {
356 double VTXQDK[NMXQDK][4];
357 int IMQDK[NMXQDK];
358 int LOCQ[NMXQDK];
359 int NQDK;
360};
361
362int const NMXSUD = 1024;
363
364struct Hwusud_t {
365 double ACCUR;
366 double QEV[6][NMXSUD];
367 double SUD[6][NMXSUD];
368 int INTER;
369 int NQEV;
370 int NSUD;
371 int SUDORD;
372};
373
374struct Hwsusy_t {
375 double TANB;
376 double ALPHAH;
377 double COSBPA;
378 double SINBPA;
379 double COSBMA;
380 double SINBMA;
381 double COSA;
382 double SINA;
383 double COSB;
384 double SINB;
385 double COTB;
386 double ZMIXSS[4][4];
387 double ZMXNSS[4][4];
388 double ZSGNSS[4];
389 double LFCH[16];
390 double RFCH[16];
391 double SLFCH[4][16];
392 double SRFCH[4][16];
393 double WMXUSS[2][2];
394 double WMXVSS[2][2];
395 double WSGNSS[2];
396 double QMIXSS[2][2][6];
397 double LMIXSS[2][2][6];
398 double THETAT;
399 double THETAB;
400 double THETAL;
401 double ATSS;
402 double ABSS;
403 double ALSS;
404 double MUSS;
405 double FACTSS;
406 double GHWWSS[3];
407 double GHZZSS[3];
408 double GHDDSS[4];
409 double GHUUSS[4];
410 double GHWHSS[3];
411 double GHSQSS[2][2][6][4];
412 double XLMNSS;
413 double RMMNSS;
414 double IMSSM;
415 double SENHNC[24];
416 double SSPARITY;
417 int SUSYIN;
418};
419
420struct Hwrpar_t {
421 double LAMDA1[3][3][3];
422 double LAMDA2[3][3][3];
423 double LAMDA3[3][3][3];
424 int HRDCOL[5][2];
425 int RPARTY;
426 int COLUPD;
427};
428
429struct Hwminb_t {
430 double PMBN1;
431 double PMBN2;
432 double PMBN3;
433 double PMBK1;
434 double PMBK2;
435 double PMBM1;
436 double PMBM2;
437 double PMBP1;
438 double PMBP2;
439 double PMBP3;
440};
441
442int const NMXCL = 500;
443
444struct Hwclus_t {
445 double PPCL[NMXCL][5];
446 int IDCL[NMXCL];
447 int NCL;
448};
449
450
451extern "C" {
452 void hwigin_();
453 void hwuinc_();
454 void hwusta_(char * name, int);
455 void hweini_();
456 void hwuine_();
457 void hwepro_();
458 void hwbgen_();
459 void hwdhob_();
460 void hwcfor_();
461 void hwcdec_();
462 void hwdhad_();
463 void hwdhvy_();
464 void hwmevt_();
465 void hwufne_();
466 void hwefin_();
467}
468
469
470#endif
471
472
473