]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HERWIG/src/hwbsul.f
Coding rule violations corrected.
[u/mrichter/AliRoot.git] / HERWIG / src / hwbsul.f
1
2 CDECK  ID>, HWBSUL.
3
4 *CMZ :-        -13/07/92  20.15.54  by  Mike Seymour
5
6 *-- Author :    Mike Seymour
7
8 C-----------------------------------------------------------------------
9
10       FUNCTION HWBSUL(Z)
11
12 C-----------------------------------------------------------------------
13
14 C     LOGARITHMIC PART OF INTEGRAND IN EXPONENT OF SUDAKOV FORM FACTOR.
15
16 C     THE SECOND ORDER ALPHAS CASE COMES FROM CONVERTING INTEGRAL OVER
17
18 C     Q^2 INTO ONE OVER ALPHAS, WITH FLAVOUR THRESHOLDS.
19
20 C-----------------------------------------------------------------------
21
22       INCLUDE 'HERWIG61.INC'
23
24       DOUBLE PRECISION HWBSUL,HWUALF,Z,QRAT,QLAM,U,AL,BL,QNOW,QMIN,
25
26      & BET(6),BEP(6),MUMI(6),MUMA(6),ALMI(6),ALMA(6),FINT(6),ALFINT,
27
28      & MUMIN,MUMAX,ALMIN,ALMAX
29
30       INTEGER NF
31
32       LOGICAL FIRST
33
34       EXTERNAL HWUALF
35
36       SAVE FIRST,BET,BEP,MUMI,MUMA
37
38       COMMON/HWSINT/QRAT,QLAM
39
40       DATA FIRST/.TRUE./
41
42       ALFINT(AL,BL)=1/BET(NF)*
43
44      &        LOG(BL/(AL*(1+BEP(NF)*BL))*(1+BEP(NF)*AL))
45
46       HWBSUL=0
47
48       U=1.-Z
49
50       IF (SUDORD.EQ.1) THEN
51
52         AL=LOG(QRAT*Z)
53
54         BL=LOG(QLAM*U*Z)
55
56         HWBSUL=LOG(1.-AL/BL)
57
58       ELSE
59
60         IF (FIRST) THEN
61
62           DO 10 NF=3,6
63
64             BET(NF)=(11*CAFAC-2*NF)/(12*PIFAC)
65
66             BEP(NF)=(17*CAFAC**2-(5*CAFAC+3*CFFAC)*NF)/(24*PIFAC**2)
67
68      &              /BET(NF)
69
70             IF (NF.EQ.3) THEN
71
72               MUMI(3)=0
73
74               ALMI(3)=1D30
75
76             ELSE
77
78               MUMI(NF)=RMASS(NF)
79
80               ALMI(NF)=HWUALF(1,MUMI(NF))
81
82             ENDIF
83
84             IF (NF.EQ.6) THEN
85
86               MUMA(NF)=1D30
87
88               ALMA(NF)=0
89
90             ELSE
91
92               MUMA(NF)=RMASS(NF+1)
93
94               ALMA(NF)=HWUALF(1,MUMA(NF))
95
96             ENDIF
97
98             IF (NF.NE.3.AND.NF.NE.6) FINT(NF)=ALFINT(ALMI(NF),ALMA(NF))
99
100  10       CONTINUE
101
102           FIRST=.FALSE.
103
104         ENDIF
105
106         QNOW=QLAM*QCDL3
107
108         QMIN=QNOW/QRAT
109
110         MUMIN=  U*QMIN
111
112         MUMAX=Z*U*QNOW
113
114         IF (MUMAX.LE.MUMIN) RETURN
115
116         ALMIN=HWUALF(1,MUMIN)
117
118         ALMAX=HWUALF(1,MUMAX)
119
120         NF=3
121
122  20     IF (MUMIN.GT.MUMA(NF)) THEN
123
124           NF=NF+1
125
126           GOTO 20
127
128         ENDIF
129
130         IF (MUMAX.LT.MUMA(NF)) THEN
131
132           HWBSUL=ALFINT(ALMIN,ALMAX)
133
134         ELSE
135
136           HWBSUL=ALFINT(ALMIN,ALMA(NF))
137
138           NF=NF+1
139
140  30       IF (MUMAX.GT.MUMA(NF)) THEN
141
142             HWBSUL=HWBSUL+FINT(NF)
143
144             NF=NF+1
145
146             GOTO 30
147
148           ENDIF
149
150           HWBSUL=HWBSUL+ALFINT(ALMI(NF),ALMAX)
151
152         ENDIF
153
154         HWBSUL=HWBSUL*BET(5)
155
156       ENDIF
157
158       END