]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ISAJET/code/prtevt.F
changes for proper protection against failed retrieval of CDB Reco object (moved...
[u/mrichter/AliRoot.git] / ISAJET / code / prtevt.F
1 #include "isajet/pilot.h"
2       SUBROUTINE PRTEVT(IPRT)
3 C
4 C          PRINT THE EVENT STORED IN /PJETS/, /JETSET/, AND /PARTCL/
5 C          IF IPRT IS SELECTED BY NEVPRT AND NJUMP.
6 C          IPRT=0 ALWAYS PRINTS EVENT
7 C          IPRT<0 PRINTS ONLY JET PARAMETERS
8 C
9 #include "isajet/itapes.inc"
10 #include "isajet/mbgen.inc"
11 #include "isajet/pjets.inc"
12 #include "isajet/pinits.inc"
13 #include "isajet/jetset.inc"
14 #include "isajet/idrun.inc"
15 #include "isajet/jetsig.inc"
16 #include "isajet/keys.inc"
17 #include "isajet/jetpar.inc"
18 #include "isajet/lstprt.inc"
19 #include "isajet/partcl.inc"
20 #include "isajet/primar.inc"
21 #include "isajet/prtout.inc"
22 #include "isajet/wsig.inc"
23 #include "isajet/seed.inc"
24 C
25 C          LABELS ARE CHARACTER*8
26       CHARACTER*8 LABEL,LW,LJET,LPTCL
27       INTEGER N0J
28 C
29 C          DECIDE WHETHER TO PRINT
30       IF(IPRT.GT.NJUMP*NEVPRT) THEN
31         IF(NJUMP.GT.0) THEN
32           IF(MOD(IPRT,NJUMP).EQ.0) WRITE(ITLIS,5) IDG,IEVT,XSEED
33 5         FORMAT(/6X,'RUN ID',2I10,5X,'EVENT NO',I8,5X,'SEED',2X,A24)
34         ENDIF
35         RETURN
36       ENDIF
37       IF(IPRT.GT.1.AND.MOD(IPRT,NJUMP).NE.0) RETURN
38       IF(IEVT.EQ.LSTPRT) RETURN
39       PI=4.*ATAN(1.)
40       LSTPRT=IEVT
41 C          PRINT EVENT NUMBER
42       WRITE(ITLIS,10) IDG,IEVT,XSEED
43 10    FORMAT('1',5X,'RUN ID',2I10.6,5X,'EVENT NO',I8,5X,'SEED',2X,A24)
44 C
45 C          PRINT JET PARAMETERS
46       IF(NJET.EQ.0) GO TO 300
47       WRITE(ITLIS,20)
48 20    FORMAT(//20X,'JET PARAMETERS'//3X,'JET',4X,'TYPE ',
49      18X,'PX',8X,'PY',8X,'PZ',8X,'P0',8X,'PT',
50      25X,'THETA',7X,'PHI',9X,'X',9X,'Y')
51       IF(KEYS(3).OR.KEYS(7).OR.KEYS(11)) THEN
52         LW=LABEL(IDENTW)
53         WRITE(ITLIS,31) LW,(QWJET(K),K=1,4),QTW,THW,PHIW,XW,YW
54 31      FORMAT(5X,'-',4X,A5,5F10.2,4F10.4)
55       ENDIF
56       IF(KEYS(11)) THEN
57         N0J=3
58       ELSE
59         N0J=1
60       ENDIF
61       DO 100 I=N0J,NJET
62       LJET=LABEL(IDJETS(I))
63       WRITE(ITLIS,30) I,LJET,(PJETS(K,I),K=1,4),PT(I),TH(I),PHI(I),
64      $XJ(I),YJ(I)
65 30    FORMAT(1X,I5,4X,A5,5F10.2,4F10.4)
66 100   CONTINUE
67 C          PRINT WPAIR DECAY PARAMETERS
68       IF(KEYS(6).OR.KEYS(7).OR.KEYS(10)) THEN
69         IF(NPAIR.NE.0) THEN
70           WRITE(ITLIS,101)
71 101       FORMAT(//20X,'WPAIR DECAY PARAMETERS'//3X,'JET',4X,'TYPE ',
72      $    8X,'PX',8X,'PY',8X,'PZ',8X,'P0',8X,'PT',
73      $    5X,'THETA',7X,'PHI',9X,'X',9X,'Y')
74           DO 102 I=1,NPAIR
75           JET=JPAIR(I)
76           LJET=LABEL(IDPAIR(I))
77           PTPRT=SQRT(PPAIR(1,I)**2+PPAIR(2,I)**2)
78           THPRT=ACOS(PPAIR(3,I)/SQRT(PTPRT**2+PPAIR(3,I)**2))
79           PHIPRT=ATAN2(PPAIR(2,I),PPAIR(1,I))
80           XPRT=2*PPAIR(3,I)/ECM
81           YPRT=-ALOG(TAN(THPRT/2.))
82           WRITE(ITLIS,30) JET,LJET,(PPAIR(K,I),K=1,4),
83      $    PTPRT,THPRT,PHIPRT,XPRT,YPRT
84 102       CONTINUE
85         ENDIF
86       ENDIF
87       IF(IPRT.LT.0) RETURN
88 C
89 C          PRINT JET CROSS SECTIONS
90 201   CONTINUE
91       IF(KEYS(1).OR.KEYS(5).OR.KEYS(6).OR.KEYS(10)) THEN
92         WRITE(ITLIS,39) SIGEVT
93 39      FORMAT(//5X,'D(SIGMA)/D(PT**2)D(Y1)D(Y2) = ',E12.4)
94       ENDIF
95       IF(KEYS(3).OR.KEYS(7).OR.KEYS(11)) THEN
96         IF(NJET.EQ.3) THEN
97           WRITE(ITLIS,38) LW,QMW,SIGEVT,SIGLLQ
98 38      FORMAT(//5X,'MASS OF ',A8,' = ',F10.3//
99      C    5X,'D(SIGMA)/D(Q**2)D(QT**2)D(YW)D(YJ) = ',E12.4/
100      C    5X,'D(SIGMA)/D(Q**2)D(QT**2)D(YW)D(YJ)D(OMEGA) = ',E12.4)
101         ELSE
102           WRITE(ITLIS,37) LW,QMW,SIGEVT,SIGLLQ
103 37      FORMAT(//5X,'MASS OF ',A8,' = ',F10.3//
104      1    5X,'D(SIGMA)/D(Q**2)D(YW) =',E12.4/
105      2    5X,'D(SIGMA)/D(Q**2)D(YW)D(OMEGA) =',E12.4)
106         ENDIF
107       ENDIF
108       IF(KEYS(2)) THEN
109         WRITE(ITLIS,32) SIGEVT
110 32      FORMAT(//5X,'D(SIGMA)/D(COS THETA) = ',E12.4)
111       ENDIF
112 C
113 C          PRINT /JETSET/ PARAMETERS
114       IF(KEYS(4)) GO TO 300
115       IF(NJSET.EQ.0) GO TO 300
116       WRITE(ITLIS,70)
117 70    FORMAT(//20X,'PARTON CASCADE PARAMETERS'//
118      C  6X,'I',3X,'JET',4X,'ORIG',4X,'TYPE',9X,'DECAY',
119      C  8X,'PX',8X,'PY',8X,'PZ',8X,'P0',6X,'MASS')
120       DO 310 I=1,NJSET
121       JET=JORIG(I)/JPACK
122       I1=MOD(JORIG(I),JPACK)
123       JTLV1=JTYPE(I)
124       LJET=LABEL(JTLV1)
125       J1=JDCAY(I)/JPACK
126       J2=MOD(JDCAY(I),JPACK)
127       IF(JDCAY(I).EQ.0) THEN
128         WRITE(ITLIS,71) I,JET,I1,LJET,(PJSET(K,I),K=1,5)
129 71      FORMAT(1X,I6,I6,I8,4X,A5,8X,'FINAL',5F10.2)
130       ELSEIF(J1.NE.J2) THEN
131         WRITE(ITLIS,72) I,JET,I1,LJET,J1,J2,(PJSET(K,I),K=1,5)
132 72      FORMAT(1X,I6,I6,I8,4X,A5,4X,I4,'-',I4,5F10.2)
133       ELSE
134         WRITE(ITLIS,73) I,JET,I1,LJET,(PJSET(K,I),K=1,5)
135 73      FORMAT(1X,I6,I6,I8,4X,A5,6X,'INITIAL',5F10.2)
136       ENDIF
137 310   CONTINUE
138 C
139 C          PRINT HADRON PARAMETERS
140 300   IF(NPTCL.EQ.0) RETURN
141       IF(.NOT.KEYS(2)) WRITE(ITLIS,45) NPOM
142 45    FORMAT(//' NUMBER OF POMERONS =',I5)
143       WRITE(ITLIS,40)
144 40    FORMAT(//20X,'HADRON PARAMETERS'//7X,'I',3X,'JET',5X,'ORIG'
145      C  ,4X,'TYPE',11X,'DECAY',8X,'PX',8X,'PY',8X,'PZ',8X,'P0'
146      C  ,8X,'PT',5X,'THETA',7X,'PHI')
147       DO 200 I=1,NPTCL
148       I1=IABS(IORIG(I))
149       JET=I1/IPACK
150       I1=I1-IPACK*JET
151       I1=ISIGN(I1,IORIG(I))
152       IDLV1=IDENT(I)
153       LPTCL=LABEL(IDLV1)
154       J1=IDCAY(I)/IPACK
155       J2=MOD(IDCAY(I),IPACK)
156       PTHAD=SQRT(PPTCL(1,I)**2+PPTCL(2,I)**2)
157       PHAD=SQRT(PPTCL(3,I)**2+PTHAD**2)
158       PHIHAD=ATAN2(PPTCL(2,I),PPTCL(1,I))
159       IF(PHIHAD.LT.0.) PHIHAD=2.*PI+PHIHAD
160       THHAD=ACOS(PPTCL(3,I)/PHAD)
161       IF(IDCAY(I).EQ.0) THEN
162         WRITE(ITLIS,50) I,JET,I1,LPTCL,(PPTCL(K,I),K=1,4),PTHAD,THHAD,
163      $  PHIHAD
164 50      FORMAT(1X,I7,I6,I9,4X,A5,9X,'STABLE',5F10.2,2F10.4)
165       ELSE
166         WRITE(ITLIS,60) I,JET,I1,LPTCL,J1,J2,(PPTCL(K,I),K=1,4),
167      $  PTHAD,THHAD,PHIHAD
168 60      FORMAT(1X,I7,I6,I9,4X,A5,4X,I5,'-',I5,5F10.2,2F10.4)
169       ENDIF
170 200   CONTINUE
171       RETURN
172       END