]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ISAJET/code/prtlim.F
New versions of GDC and CDH raw data headers. Some CDH getters are added
[u/mrichter/AliRoot.git] / ISAJET / code / prtlim.F
1 #include "isajet/pilot.h"
2       SUBROUTINE PRTLIM
3 C
4 C          Print initial conditions and limits for generating jets
5 C
6 #if defined(CERNLIB_IMPNONE)
7       IMPLICIT NONE
8 #endif
9 #include "isajet/itapes.inc"
10 #include "isajet/force.inc"
11 #include "isajet/mbgen.inc"
12 #include "isajet/qcdpar.inc"
13 #include "isajet/qlmass.inc"
14 #include "isajet/wcon.inc"
15 #include "isajet/jetpar.inc"
16 #include "isajet/keys.inc"
17 #include "isajet/kkgrav.inc"
18 #include "isajet/frgpar.inc"
19 #include "isajet/nodcay.inc"
20 #include "isajet/prtout.inc"
21 #include "isajet/seed.inc"
22 #include "isajet/types.inc"
23 #include "isajet/q1q2.inc"
24 #include "isajet/jetlim.inc"
25 #include "isajet/primar.inc"
26 #include "isajet/ptpar.inc"
27 #include "isajet/idrun.inc"
28 #include "isajet/dylim.inc"
29 #include "isajet/hcon.inc"
30 #include "isajet/isloop.inc"
31 #include "isajet/xmssm.inc"
32 C
33       INTEGER I,II,K,NPRT,I1,I2,I3,J1,INDEX,IQ,KK,KKK,NN,N0J
34       REAL AMASS
35       CHARACTER*8 LSTRUC(6),LMODE(5),STUF(6),IDFMT(2)
36       CHARACTER*8 WTITL(4)
37       CHARACTER*8 LABEL,L0
38       CHARACTER*8 BLANK
39       CHARACTER*40 V,VISAJE
40       REAL AM(6),AML(6)
41       INTEGER NPRSS
42       PARAMETER (NPRSS=32)
43       INTEGER IDPRSS(NPRSS)
44       REAL AMPRSS(NPRSS)
45       CHARACTER*8 LPRSS(NPRSS)
46       DATA LSTRUC/'OWENS','BAIER','EICHTEN','DUKE','CTEQ2L','CTEQ3L'/
47       DATA WTITL/'GM','W+','W-','Z0'/
48       DATA BLANK/' '/
49       DATA IDPRSS/21,22,23,24,25,26,41,42,43,44,45,46,
50      $31,32,33,34,35,36,52,54,56,
51      $29,30,40,50,60,39,49,82,83,84,86/
52 C
53 C          Print version
54       V=VISAJE()
55       WRITE(ITLIS,1000) V
56 1000  FORMAT('1',44('*')/' *',42X,'*'/
57      C  ' * ',A40,' *'/
58      C  ' *',42X,'*'/' ',44('*')/)
59 C
60 C          Print title, reaction, energy, number, run id
61       WRITE(ITLIS,1010) TITLE
62 1010  FORMAT(/11X,10A8)
63       WRITE(ITLIS,1020) NJET
64 1020  FORMAT(/2X,'NUMBER OF JETS TO BE GENERATED PER EVENT',I3)
65       DO 100 I=1,2
66         IDFMT(I)=LABEL(IDIN(I))
67 100   CONTINUE
68       WRITE(ITLIS,1030) IDFMT(1),IDFMT(2),ECM
69 1030  FORMAT(/2X,A8,' ON ',A8,' AT COM ENERGY',E15.4)
70       WRITE(ITLIS,1040) REAC,NEVENT
71 1040  FORMAT(/2X,'NUMBER OF ',A8,' EVENTS TO BE GENERATED',I10)
72       IF(NEVPRT.GT.0) WRITE(ITLIS,1050) NEVPRT,NJUMP
73 1050  FORMAT(/2X,'PRINT A MAXIMUM OF ',I6,
74      C  ' EVENTS SKIPPING ',I6,' EVENTS AT A TIME')
75       WRITE(ITLIS,1060) IDG
76 1060  FORMAT(/2X,'RUN ID   ',2I10.6)
77 C
78 C          Print W/Higgs parameters
79 C
80       IF(KEYS(3).OR.KEYS(7).OR.KEYS(11)) THEN
81         IF(KEYS(3)) THEN
82           II=0
83           DO 200 I=1,4
84             IF(.NOT.GODY(I)) GOTO 200
85             II=II+1
86             STUF(II)=WTITL(I)
87 200       CONTINUE
88         ELSEIF(KEYS(11)) THEN
89           II=1
90           STUF(II)='GRAV'
91         ELSE
92           II=1
93           STUF(II)='HIGGS'
94           IF(IHTYPE.EQ.82) STUF(II)='HL0'
95           IF(IHTYPE.EQ.83) STUF(II)='HH0'
96           IF(IHTYPE.EQ.84) STUF(II)='HA0'
97         ENDIF
98         WRITE(ITLIS,2000) (STUF(K),K=1,II)
99 2000    FORMAT(//10X,'PARAMETERS FOR',4(2X,A8))
100         WRITE(ITLIS,2010) QMIN,QMAX
101 2010    FORMAT(' MASS LIMITS',15X,2E15.4)
102         WRITE(ITLIS,3020) QTMIN,QTMAX
103         WRITE(ITLIS,3030) THWMIN,THWMAX
104         WRITE(ITLIS,3040) PHWMIN,PHWMAX
105         WRITE(ITLIS,3050) YWMIN,YWMAX
106         WRITE(ITLIS,3060) XWMIN,XWMAX
107         NPRT=0
108         IF(FIXQT) THEN
109           NPRT=NPRT+1
110           STUF(NPRT)='QTW     '
111         ENDIF
112         IF(FIXQM) THEN
113           NPRT=NPRT+1
114           STUF(NPRT)='QMW     '
115         ENDIF
116         IF(FIXYW) THEN
117           NPRT=NPRT+1
118           STUF(NPRT)='YW      '
119         ENDIF
120         IF(FIXXW) THEN
121           NPRT=NPRT+1
122           STUF(NPRT)='XW      '
123         ENDIF
124         IF(FIXPHW) THEN
125           NPRT=NPRT+1
126           STUF(NPRT)='PHW     '
127         ENDIF
128         IF(NPRT.NE.0) WRITE(ITLIS,2070) (STUF(K),K=1,NPRT)
129       ENDIF
130 C
131 C          Print jet parameters
132 C
133       DO 300 I=1,6
134 300   STUF(I)=BLANK
135       IF(KEYS(11)) THEN
136         N0J=3
137       ELSE
138         N0J=1
139       ENDIF
140       DO 310 I=N0J,NJET
141         NPRT=0
142         WRITE(ITLIS,3000) I
143 3000    FORMAT(//10X,'JET NO.',I3,/)
144         WRITE(ITLIS,3010) PMIN(I),PMAX(I)
145 3010    FORMAT(' MOMENTUM LIMITS',11X,2E15.4)
146         WRITE(ITLIS,3020) PTMIN(I),PTMAX(I)
147 3020    FORMAT(' TRANSVERSE MOMENTUM LIMITS',2E15.4)
148         WRITE(ITLIS,3030) THMIN(I),THMAX(I)
149 3030    FORMAT(' THETA LIMITS',14X,2E15.4)
150         WRITE(ITLIS,3040) PHIMIN(I),PHIMAX(I)
151 3040    FORMAT(' PHI LIMITS',16X,2E15.4)
152         WRITE(ITLIS,3050) YJMIN(I),YJMAX(I)
153 3050    FORMAT(' RAPIDITY (Y) LIMITS',7X,2E15.4)
154         WRITE(ITLIS,3060) XJMIN(I),XJMAX(I)
155 3060    FORMAT(' FEYNMAN X LIMITS',10X,2E15.4)
156         IF(.NOT.GOALL(I)) WRITE(ITLIS,3070) (JETYP(K,I),K=1,NJTTYP(I))
157 3070    FORMAT(' JET TYPE',23X,A8,1X,A8,1X,A8,1X,A8,1X,A8)
158         IF((KEYS(6).OR.KEYS(7)).AND..NOT.ALLWW(I))
159      $  WRITE(ITLIS,3080) (WWTYP(K,I),K=1,NWWTYP(I))
160 3080    FORMAT(' DECAY MODES',20X,A8,1X,A8,1X,A8,1X,A8,1X,A8)
161         IF(FIXP(I)) THEN
162           NPRT=NPRT+1
163           STUF(NPRT)='P       '
164         ENDIF
165         IF(FIXPT(I)) THEN
166           NPRT=NPRT+1
167           STUF(NPRT)='PT      '
168         ENDIF
169         IF(FIXYJ(I)) THEN
170           NPRT=NPRT+1
171           STUF(NPRT)='TH      '
172           NPRT=NPRT+1
173           STUF(NPRT)='Y      '
174         ENDIF
175         IF(FIXPHI(I)) THEN
176           NPRT=NPRT+1
177           STUF(NPRT)='PHI     '
178         ENDIF
179         IF(FIXXJ(I)) THEN
180           NPRT=NPRT+1
181           STUF(NPRT)='X       '
182         ENDIF
183         IF(NPRT.EQ.0) GOTO 310
184         WRITE(ITLIS,2070) (STUF(K),K=1,NPRT)
185 2070    FORMAT(/5X,'FOLLOWING PARAMETERS HAVE BEEN FIXED ',6A8)
186 310   CONTINUE
187 C
188 C          Print structure functions, QCD parameters, W parameters,
189 C          and other parameters changed from their default values.
190 C
191       IF(KEYS(1).OR.KEYS(3).OR.KEYS(5).OR.KEYS(6).OR.KEYS(7)
192      $.OR.KEYS(8).OR.KEYS(9).OR.KEYS(11).OR.KEYS(12)) THEN
193         IF(ISTRUC.GT.0) THEN
194           WRITE(ITLIS,4000) LSTRUC(ISTRUC)
195 4000      FORMAT(//1X,A8,' STRUCTURE FUNCTIONS')
196         ELSEIF(ISTRUC.EQ.-999) THEN
197           WRITE(ITLIS,4001)
198 4001      FORMAT(//1X,' PDFLIB STRUCTURE FUNCTIONS')
199         ENDIF
200       ENDIF
201       WRITE(ITLIS,4010) ALAM,CUTJET
202 4010  FORMAT(//' QCD LAMBDA =',F10.4,10X,'JET CUTOFF MASS =',F10.3)
203       WRITE(ITLIS,4020) AMLEP(6),AMLEP(7),AMLEP(8)
204 4020  FORMAT(/' HEAVY QUARK MASSES =',3F8.2)
205       IF(LOC(36).NE.0) THEN
206         CALL FLAVOR(80,I1,I2,I3,J1,INDEX)
207         WRITE(ITLIS,4030) (AMLEP(INDEX+K),K=1,9)
208 4030    FORMAT(/' HIGGS MASSES =',6F8.2/15X,3F8.2)
209       ENDIF
210 C          Supersymmetry
211       IF(KEYS(5).AND..NOT.GOMSSM) THEN
212         DO 410 IQ=1,6
213           AM(IQ)=AMASS(20+IQ)
214           AML(IQ)=AMASS(30+IQ)
215 410     CONTINUE
216         WRITE(ITLIS,4040) (AM(KK),KK=1,6)
217 4040    FORMAT(//' SQUARK  MASSES ',7F9.2)
218         WRITE(ITLIS,4050) (AML(KK),KK=1,6)
219 4050    FORMAT(' SLEPTON MASSES ',7F9.2)
220         AM(1)=AMASS(29)
221         AM(2)=AMASS(30)
222         AM(3)=AMASS(39)
223         AM(4)=AMASS(40)
224         WRITE(ITLIS,4060) (AM(KK),KK=1,4)
225 4060    FORMAT(' GAUGINO MASSES (WITH SIGNS) ',7F9.2)
226         IF(LOC(44).NE.0) WRITE(ITLIS,4070) XGENSS(9),
227      $  (XGENSS(KK),KK=1,8) 
228 4070    FORMAT(/' FRAG. PARAM. XGENSS = ',9F8.3)
229       ENDIF
230 C          MSSM model
231       IF(GOMSSM) THEN
232         DO 420 I=1,NPRSS
233           LPRSS(I)=LABEL(IDPRSS(I))
234           AMPRSS(I)=AMASS(IDPRSS(I))
235 420     CONTINUE
236         WRITE(ITLIS,4100) (LPRSS(I),AMPRSS(I),I=1,NPRSS)
237 4100    FORMAT(/' MSSM MASSES (WITHOUT SIGNS):'/
238      $  10(' M(',A5,') = ',F10.3,5X,'M(',A5,') = ',F10.3,
239      $  5X,'M(',A5,') = ',F10.3/),
240      $  ' M(',A5,') = ',F10.3,5X,'M(',A5,') = ',F10.3)
241         IF(.NOT.GOSUG) THEN
242           WRITE(ITLIS,4110) XTBSS,XMUSS,XATSS
243 4110      FORMAT(/' OTHER MSSM PARAMETERS:'/
244      $    ' TAN(BETA) = ',F10.3,5X,'MU = ',F10.3,5X,'A_t = ',F10.3)
245         ENDIF
246         IF(GOSUG) THEN
247           WRITE(ITLIS,4120) XM0SU,XMHSU,XA0SU,XTGBSU,XSMUSU
248 4120      FORMAT(/' DETERMINED FROM SUGRA INPUT:'/
249      $    ' M_0       =',F10.3,'   M_(1/2) =',F10.3,'   A_0 =',F10.3/
250      $    ' TAN(BETA) =',F10.4,'   SGN(MU) =',F6.1)
251         ENDIF
252       ENDIF
253 C
254 C          Other parameters
255 C
256       IF(LOC(30).NE.0) WRITE(ITLIS,4200) XGEN
257 4200  FORMAT(/' FRAGMENTATION PARAMETER XGEN =',6F8.3)
258       IF(LOC(31).NE.0) WRITE(ITLIS,4210) SIGQT
259 4210  FORMAT(/' FRAGMENTATION PARAMETER SIGQT =',F8.3)
260       IF(KEYS(2).OR.KEYS(3).OR.KEYS(6).OR.KEYS(7)) THEN
261         WRITE(ITLIS,4220) SIN2W,WMASS(2),WMASS(4),WGAM(2),WGAM(4)
262 4220    FORMAT(//' WEINBERG MODEL',5X,'SIN**2(THETA-W)=',F8.4/
263      $  ' MASSES = ',F8.2,',',F8.2,'   WIDTHS = ',F8.3,',',F8.3)
264       ENDIF
265       IF(KEYS(3)) THEN
266         IF(.NOT.STDDY) WRITE(ITLIS,4230) CUTOFF,CUTPOW
267 4230    FORMAT(/' CUTOFF FUNCTION IS QT**2=',E11.4,'*Q**',E11.4)
268         IF(LOC(50).NE.0) WRITE(ITLIS,4240) WFUDGE
269 4240    FORMAT(/' W fudge factor (WFUDGE) = ',F8.3)
270       ENDIF
271       IF(KEYS(7)) THEN
272         WRITE(ITLIS,4250) HMASS,HGAM
273 4250    FORMAT(/' HIGGS MASS = ',F8.2,'  WIDTH = ',F8.3)
274       ENDIF
275       WRITE(ITLIS,4260) XSEED
276 4260  FORMAT(/' SEED FOR RANDOM NUMBER GENERATOR = ',A24)
277       IF(LOC(13).NE.0) WRITE(ITLIS,4270) FRPAR
278 4270  FORMAT(//'  FRAGMENTATION PARAMETERS ',8E11.3,2(/,26X,8E11.3))
279       IF(LOC(34).NE.0) WRITE(ITLIS,4280) MNPOM,MXPOM
280 4280  FORMAT(//'  NUMBER OF POMERONS =',I4,' TO',I4)
281 C
282 C          Print KKG parameters
283       IF(KEYS(11)) THEN
284         WRITE(ITLIS,4291) NEXTRAD
285         WRITE(ITLIS,4292) MASSD
286         WRITE(ITLIS,4296) SURFD
287         WRITE(ITLIS,4295) KKGSD
288         WRITE(ITLIS,4297) UVCUT
289 4291    FORMAT(//' NB EXTRA-DIMENSIONS',7X,I4)
290 4292    FORMAT(' SCALE M_D',15X,E15.4)
291 4295    FORMAT(' KKGSD FACTOR',12X,E15.4)
292 4296    FORMAT(' SD SURFACE',14X,E15.4)
293 4297    FORMAT(' UV CUTOFF',17X,I4)
294       ENDIF
295 C
296 C          Decay switches
297 C
298       IF(LOC(46).NE.0) THEN
299         WRITE(ITLIS,4300)
300 4300    FORMAT(//'  SECONDARY W DECAY MODES:')
301         NN=MAX0(NWMODE(1),1)
302         WRITE(ITLIS,4310) (WMODES(KKK,1),KKK=1,NN)
303 4310    FORMAT('  W+ --> '
304      $  ,A8,1X,A8,1X,A8,1X,A8,1X,A8,1X,A8,1X,A8,1X,A8)
305         NN=MAX0(NWMODE(2),1)
306         WRITE(ITLIS,4320) (WMODES(KKK,2),KKK=1,NN)
307 4320    FORMAT('  W- --> '
308      $  ,A8,1X,A8,1X,A8,1X,A8,1X,A8,1X,A8,1X,A8,1X,A8)
309         WRITE(ITLIS,4330) (WMODES(KKK,3),KKK=1,NN)
310 4330    FORMAT('  Z0 --> '
311      $  ,A8,1X,A8,1X,A8,1X,A8,1X,A8,1X,A8,1X,A8,1X,A8)
312       ENDIF
313 C
314       IF(NODCAY) WRITE(ITLIS,4400)
315 4400  FORMAT(//'  NO DECAYS OF HADRONS WILL BE GENERATED')
316       IF(NOETA) WRITE(ITLIS,4410)
317 4410  FORMAT(//'  NO DECAYS OF ETAS WILL BE GENERATED')
318       IF(NOPI0) WRITE(ITLIS,4420)
319 4420  FORMAT(//'  NO DECAYS OF PI0S WILL BE GENERATED')
320       IF(NONUNU) WRITE(ITLIS,4430)
321 4430  FORMAT(//'  NO DECAYS Z0---->NU+NU WILL BE GENERATED')
322       IF(NOEVOL) WRITE(ITLIS,4440)
323 4440  FORMAT(//'  NO QCD JET EVOLUTION WILL BE DONE')
324       IF(NOHADR) WRITE(ITLIS,4450)
325 4450  FORMAT(//'  NO JET HADRONIZATION WILL BE DONE')
326       IF(GOGMSB.AND.NOGRAV) WRITE(ITLIS,4460)
327 4460  FORMAT(//'  NO GRAVITINO DECAYS WILL BE GENERATED')
328 C
329 C          Print forced decay modes and M.E. flag
330 C
331       IF(NFORCE.NE.0) THEN
332         WRITE(ITLIS,4500)
333 4500    FORMAT(//7X,'FORCED DECAY MODES (MATRIX ELEMENT FLAGS)'/
334      $  2X,'PART',6X,'DECAY MODE')
335         DO 450 I=1,NFORCE
336           IF(IFORCE(I).EQ.0) GOTO 450
337           L0=LABEL(IFORCE(I))
338           DO 451 K=1,5
339             LMODE(K)=BLANK
340             IF(MFORCE(K,I).EQ.0) GO TO 451
341             LMODE(K)=LABEL(MFORCE(K,I))
342 451       CONTINUE
343           WRITE(ITLIS,4510) L0,(LMODE(K),K=1,5),MEFORC(I)
344 4510      FORMAT(2X,6A10,'(M.E. =',I5,')')
345 450     CONTINUE
346       ENDIF
347 C
348 C          Print multiple evolution/fragmentation information
349 C
350       IF(NEVOLV.NE.1.OR.NFRGMN.NE.1) THEN
351         WRITE(ITLIS,4600) NEVOLV,NFRGMN
352 4600    FORMAT(//,
353      $  '  MULTIPLE EVOLUTION AND FRAGMENTATION VERSION'/
354      $  '  EVENTS WILL BE EVOLVED',I6,' TIMES'/
355      $  '  AND FRAGMENTED        ',I6,' TIMES'/)
356       ENDIF
357 C
358       RETURN
359       END