1
C----------------------------------------------------------------------
3
C DUMMY IF HBOOK IS USED
4
C----------------------------------------------------------------------
8
C----------------------------------------------------------------------
10
C USER'S ROUTINE FOR INITIALIZATION
11
C----------------------------------------------------------------------
13
include 'reweight0.inc'
17
integer nwgt,max_weight,nwgt_analysis
19
common/c_analysis/nwgt_analysis
20
parameter (max_weight=maxscales*maxscales+maxpdfs+1)
21
character*15 weights_info(max_weight)
22
common/cwgtsinfo/weights_info
25
ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
28
weights_info(nwgt)="central value "
29
ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
34
call mbook(l+ 1,'total rate '//weights_info(kk)//cc(i)
39
C----------------------------------------------------------------------
40
SUBROUTINE PYAEND(IEVTTOT)
41
C USER'S ROUTINE FOR TERMINAL CALCULATIONS, HISTOGRAM OUTPUT, ETC
42
C----------------------------------------------------------------------
45
INTEGER I,KK,l,nwgt_analysis
48
common/c_analysis/nwgt_analysis
49
OPEN(UNIT=99,FILE='PYTHIA.TOP',STATUS='UNKNOWN')
50
C XNORM IS SUCH THAT THE CROSS SECTION PER BIN IS IN PB, SINCE THE HERWIG
51
C WEIGHT IS IN NB, AND CORRESPONDS TO THE AVERAGE CROSS SECTION
52
XNORM=IEVTTOT/DFLOAT(NEVHEP)
56
CALL MOPERA(I+NPL,'F',I+NPL,I+NPL,(XNORM),0.D0)
63
call multitop(NPL+l+ 1,NPL-1,3,2,'total rate ',' ','LIN')
69
C----------------------------------------------------------------------
71
C USER'S ROUTINE TO ANALYSE DATA FROM EVENT
72
C----------------------------------------------------------------------
74
include 'reweight0.inc'
78
integer nwgt_analysis,max_weight
79
common/c_analysis/nwgt_analysis
80
parameter (max_weight=maxscales*maxscales+maxpdfs+1)
81
double precision ww(max_weight),www(max_weight)
84
IF(MOD(NEVHEP,10000).EQ.0)RETURN
85
ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
88
ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
89
IF (WW(1).EQ.0D0) THEN
90
WRITE(*,*)'WW(1) = 0. Stopping'
94
C INCOMING PARTONS MAY TRAVEL IN THE SAME DIRECTION: IT'S A POWER-SUPPRESSED
95
C EFFECT, SO THROW THE EVENT AWAY
96
IF(SIGN(1.D0,PHEP(3,1)).EQ.SIGN(1.D0,PHEP(3,2)))THEN
97
CALL HWWARN('PYANAL',111)
101
WWW(I)=EVWGT*ww(i)/ww(1)
105
do kk=1,nwgt_analysis
107
call mfill(l+1,tot,WWW(kk))
113
C-----------------------------------------------------------------------
114
SUBROUTINE HWWARN(SUBRTN,ICODE)
115
C-----------------------------------------------------------------------
116
C DEALS WITH ERRORS DURING EXECUTION
117
C SUBRTN = NAME OF CALLING SUBROUTINE
118
C ICODE = ERROR CODE: - -1 NONFATAL, KILL EVENT & PRINT NOTHING
119
C 0- 49 NONFATAL, PRINT WARNING & CONTINUE
120
C 50- 99 NONFATAL, PRINT WARNING & JUMP
121
C 100-199 NONFATAL, DUMP & KILL EVENT
122
C 200-299 FATAL, TERMINATE RUN
123
C 300-399 FATAL, DUMP EVENT & TERMINATE RUN
124
C 400-499 FATAL, DUMP EVENT & STOP DEAD
125
C 500- FATAL, STOP DEAD WITH NO DUMP
126
C-----------------------------------------------------------------------
128
INTEGER ICODE,NRN,IERROR
130
IF (ICODE.GE.0) WRITE (6,10) SUBRTN,ICODE
131
10 FORMAT(/' HWWARN CALLED FROM SUBPROGRAM ',A6,': CODE =',I4)
135
ELSEIF (ICODE.LT.100) THEN
136
WRITE (6,20) NEVHEP,NRN,EVWGT
137
20 FORMAT(' EVENT',I8,': SEEDS =',I11,' &',I11,
138
&' WEIGHT =',E11.4/' EVENT SURVIVES. EXECUTION CONTINUES')
139
IF (ICODE.GT.49) RETURN
140
ELSEIF (ICODE.LT.200) THEN
141
WRITE (6,30) NEVHEP,NRN,EVWGT
142
30 FORMAT(' EVENT',I8,': SEEDS =',I11,' &',I11,
143
&' WEIGHT =',E11.4/' EVENT KILLED. EXECUTION CONTINUES')
146
ELSEIF (ICODE.LT.300) THEN
148
40 FORMAT(' EVENT SURVIVES. RUN ENDS GRACEFULLY')
152
ELSEIF (ICODE.LT.400) THEN
154
50 FORMAT(' EVENT KILLED: DUMP FOLLOWS. RUN ENDS GRACEFULLY')
161
ELSEIF (ICODE.LT.500) THEN
163
60 FORMAT(' EVENT KILLED: DUMP FOLLOWS. RUN STOPS DEAD')
170
70 FORMAT(' RUN CANNOT CONTINUE')
179
PRINT *,' EVENT ',NEVHEP
181
PRINT '(I4,I8,I4,4I4,1P,5D11.3)',IP,IDHEP(IP),ISTHEP(IP),
182
& JMOHEP(1,IP),JMOHEP(2,IP),JDAHEP(1,IP),JDAHEP(2,IP),