]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HIJING/hipyset1_35/pysigh_hijing.F
Coding convention rules obeyed
[u/mrichter/AliRoot.git] / HIJING / hipyset1_35 / pysigh_hijing.F
CommitLineData
e74335a4 1* $Id$
2
3C***********************************************************************
4
5 SUBROUTINE PYSIGH_HIJING(NCHN,SIGS)
6
7C...Differential matrix elements for all included subprocesses.
8C...Note that what is coded is (disregarding the COMFAC factor)
9C...1) for 2 -> 1 processes: s-hat/pi*d(sigma-hat), where,
10C...when d(sigma-hat) is given in the zero-width limit, the delta
11C...function in tau is replaced by a Breit-Wigner:
12C...1/pi*(s*m_res*Gamma_res)/((s*tau-m_res^2)^2+(m_res*Gamma_res)^2);
13C...2) for 2 -> 2 processes: (s-hat)**2/pi*d(sigma-hat)/d(t-hat);
14C...i.e., dimensionless quantities. COMFAC contains the factor
15C...pi/s and the conversion factor from GeV^-2 to mb.
16#include "ludat1_hijing.inc"
17#include "ludat2_hijing.inc"
18#include "ludat3_hijing.inc"
19#include "pysubs_hijing.inc"
20#include "pypars_hijing.inc"
21#include "pyint1_hijing.inc"
22#include "pyint2_hijing.inc"
23#include "pyint3_hijing.inc"
24#include "pyint4_hijing.inc"
25#include "pyint5_hijing.inc"
26 DIMENSION X(2),XPQ(-6:6),KFAC(2,-40:40),WDTP(0:40),WDTE(0:40,0:5)
27
28C...Reset number of channels and cross-section.
29 NCHN=0
30 SIGS=0.
31
32C...Read kinematical variables and limits.
33 ISUB=MINT(1)
34 TAUMIN=VINT(11)
35 YSTMIN=VINT(12)
36 CTNMIN=VINT(13)
37 CTPMIN=VINT(14)
38 XT2MIN=VINT(15)
39 TAUPMN=VINT(16)
40 TAU=VINT(21)
41 YST=VINT(22)
42 CTH=VINT(23)
43 XT2=VINT(25)
44 TAUP=VINT(26)
45 TAUMAX=VINT(31)
46 YSTMAX=VINT(32)
47 CTNMAX=VINT(33)
48 CTPMAX=VINT(34)
49 XT2MAX=VINT(35)
50 TAUPMX=VINT(36)
51
52C...Derive kinematical quantities.
53 IF(ISET(ISUB).LE.2.OR.ISET(ISUB).EQ.5) THEN
54 X(1)=SQRT(TAU)*EXP(YST)
55 X(2)=SQRT(TAU)*EXP(-YST)
56 ELSE
57 X(1)=SQRT(TAUP)*EXP(YST)
58 X(2)=SQRT(TAUP)*EXP(-YST)
59 ENDIF
60 IF(MINT(43).EQ.4.AND.ISET(ISUB).GE.1.AND.
61 &(X(1).GT.0.999.OR.X(2).GT.0.999)) RETURN
62 SH=TAU*VINT(2)
63 SQM3=VINT(63)
64 SQM4=VINT(64)
65 RM3=SQM3/SH
66 RM4=SQM4/SH
67 BE34=SQRT((1.-RM3-RM4)**2-4.*RM3*RM4)
68 RPTS=4.*VINT(71)**2/SH
69 BE34L=SQRT(MAX(0.,(1.-RM3-RM4)**2-4.*RM3*RM4-RPTS))
70 RM34=2.*RM3*RM4
71 RSQM=1.+RM34
72 RTHM=(4.*RM3*RM4+RPTS)/(1.-RM3-RM4+BE34L)
73 TH=-0.5*SH*MAX(RTHM,1.-RM3-RM4-BE34*CTH)
74 UH=-0.5*SH*MAX(RTHM,1.-RM3-RM4+BE34*CTH)
75 SQPTH=0.25*SH*BE34**2*(1.-CTH**2)
76 SH2=SH**2
77 TH2=TH**2
78 UH2=UH**2
79
80C...Choice of Q2 scale.
81 IF(ISET(ISUB).EQ.1.OR.ISET(ISUB).EQ.3) THEN
82 Q2=SH
83 ELSEIF(MOD(ISET(ISUB),2).EQ.0.OR.ISET(ISUB).EQ.5) THEN
84 IF(MSTP(32).EQ.1) THEN
85 Q2=2.*SH*TH*UH/(SH**2+TH**2+UH**2)
86 ELSEIF(MSTP(32).EQ.2) THEN
87 Q2=SQPTH+0.5*(SQM3+SQM4)
88 ELSEIF(MSTP(32).EQ.3) THEN
89 Q2=MIN(-TH,-UH)
90 ELSEIF(MSTP(32).EQ.4) THEN
91 Q2=SH
92 ENDIF
93 IF(ISET(ISUB).EQ.5.AND.MSTP(82).GE.2) Q2=Q2+PARP(82)**2
94 ENDIF
95
96C...Store derived kinematical quantities.
97 VINT(41)=X(1)
98 VINT(42)=X(2)
99 VINT(44)=SH
100 VINT(43)=SQRT(SH)
101 VINT(45)=TH
102 VINT(46)=UH
103 VINT(48)=SQPTH
104 VINT(47)=SQRT(SQPTH)
105 VINT(50)=TAUP*VINT(2)
106 VINT(49)=SQRT(MAX(0.,VINT(50)))
107 VINT(52)=Q2
108 VINT(51)=SQRT(Q2)
109
110C...Calculate parton structure functions.
111 IF(ISET(ISUB).LE.0) GOTO 145
112 IF(MINT(43).GE.2) THEN
113 Q2SF=Q2
114 IF(ISET(ISUB).EQ.3.OR.ISET(ISUB).EQ.4) THEN
115 Q2SF=PMAS(23,1)**2
116 IF(ISUB.EQ.8.OR.ISUB.EQ.76.OR.ISUB.EQ.77) Q2SF=PMAS(24,1)**2
117 ENDIF
118 DO 100 I=3-MINT(41),MINT(42)
119 XSF=X(I)
120 IF(ISET(ISUB).EQ.5) XSF=X(I)/VINT(142+I)
121 CALL PYSTFU_HIJING(MINT(10+I),XSF,Q2SF,XPQ,I)
122 DO 100 KFL=-6,6
123 100 XSFX(I,KFL)=XPQ(KFL)
124 ENDIF
125
126C...Calculate alpha_strong and K-factor.
127 IF(MSTP(33).NE.3) AS=ULALPS_HIJING(Q2)
128 FACK=1.
129 FACA=1.
130 IF(MSTP(33).EQ.1) THEN
131 FACK=PARP(31)
132 ELSEIF(MSTP(33).EQ.2) THEN
133 FACK=PARP(31)
134 FACA=PARP(32)/PARP(31)
135 ELSEIF(MSTP(33).EQ.3) THEN
136 Q2AS=PARP(33)*Q2
137 IF(ISET(ISUB).EQ.5.AND.MSTP(82).GE.2) Q2AS=Q2AS+
138 & PARU(112)*PARP(82)
139 AS=ULALPS_HIJING(Q2AS)
140 ENDIF
141 RADC=1.+AS/PARU(1)
142
143C...Set flags for allowed reacting partons/leptons.
144 DO 130 I=1,2
145 DO 110 J=-40,40
146 110 KFAC(I,J)=0
147 IF(MINT(40+I).EQ.1) THEN
148 KFAC(I,MINT(10+I))=1
149 ELSE
150 DO 120 J=-40,40
151 KFAC(I,J)=KFIN(I,J)
152 IF(ABS(J).GT.MSTP(54).AND.J.NE.21) KFAC(I,J)=0
153 IF(ABS(J).LE.6) THEN
154 IF(XSFX(I,J).LT.1.E-10) KFAC(I,J)=0
155 ELSEIF(J.EQ.21) THEN
156 IF(XSFX(I,0).LT.1.E-10) KFAC(I,21)=0
157 ENDIF
158 120 CONTINUE
159 ENDIF
160 130 CONTINUE
161
162C...Lower and upper limit for flavour loops.
163 MIN1=0
164 MAX1=0
165 MIN2=0
166 MAX2=0
167 DO 140 J=-20,20
168 IF(KFAC(1,-J).EQ.1) MIN1=-J
169 IF(KFAC(1,J).EQ.1) MAX1=J
170 IF(KFAC(2,-J).EQ.1) MIN2=-J
171 IF(KFAC(2,J).EQ.1) MAX2=J
172 140 CONTINUE
173 MINA=MIN(MIN1,MIN2)
174 MAXA=MAX(MAX1,MAX2)
175
176C...Common conversion factors (including Jacobian) for subprocesses.
177 SQMZ=PMAS(23,1)**2
178 GMMZ=PMAS(23,1)*PMAS(23,2)
179 SQMW=PMAS(24,1)**2
180 GMMW=PMAS(24,1)*PMAS(24,2)
181 SQMH=PMAS(25,1)**2
182 GMMH=PMAS(25,1)*PMAS(25,2)
183 SQMZP=PMAS(32,1)**2
184 GMMZP=PMAS(32,1)*PMAS(32,2)
185 SQMHC=PMAS(37,1)**2
186 GMMHC=PMAS(37,1)*PMAS(37,2)
187 SQMR=PMAS(40,1)**2
188 GMMR=PMAS(40,1)*PMAS(40,2)
189 AEM=PARU(101)
190 XW=PARU(102)
191
192C...Phase space integral in tau and y*.
193 COMFAC=PARU(1)*PARU(5)/VINT(2)
194 IF(MINT(43).EQ.4) COMFAC=COMFAC*FACK
195 IF((MINT(43).GE.2.OR.ISET(ISUB).EQ.3.OR.ISET(ISUB).EQ.4).AND.
196 &ISET(ISUB).NE.5) THEN
197 ATAU0=LOG(TAUMAX/TAUMIN)
198 ATAU1=(TAUMAX-TAUMIN)/(TAUMAX*TAUMIN)
199 H1=COEF(ISUB,1)+(ATAU0/ATAU1)*COEF(ISUB,2)/TAU
200 IF(MINT(72).GE.1) THEN
201 TAUR1=VINT(73)
202 GAMR1=VINT(74)
203 ATAU2=LOG(TAUMAX/TAUMIN*(TAUMIN+TAUR1)/(TAUMAX+TAUR1))/TAUR1
204 ATAU3=(ATAN((TAUMAX-TAUR1)/GAMR1)-ATAN((TAUMIN-TAUR1)/GAMR1))/
205 & GAMR1
206 H1=H1+(ATAU0/ATAU2)*COEF(ISUB,3)/(TAU+TAUR1)+
207 & (ATAU0/ATAU3)*COEF(ISUB,4)*TAU/((TAU-TAUR1)**2+GAMR1**2)
208 ENDIF
209 IF(MINT(72).EQ.2) THEN
210 TAUR2=VINT(75)
211 GAMR2=VINT(76)
212 ATAU4=LOG(TAUMAX/TAUMIN*(TAUMIN+TAUR2)/(TAUMAX+TAUR2))/TAUR2
213 ATAU5=(ATAN((TAUMAX-TAUR2)/GAMR2)-ATAN((TAUMIN-TAUR2)/GAMR2))/
214 & GAMR2
215 H1=H1+(ATAU0/ATAU4)*COEF(ISUB,5)/(TAU+TAUR2)+
216 & (ATAU0/ATAU5)*COEF(ISUB,6)*TAU/((TAU-TAUR2)**2+GAMR2**2)
217 ENDIF
218 COMFAC=COMFAC*ATAU0/(TAU*H1)
219 ENDIF
220 IF(MINT(43).EQ.4.AND.ISET(ISUB).NE.5) THEN
221 AYST0=YSTMAX-YSTMIN
222 AYST1=0.5*(YSTMAX-YSTMIN)**2
223 AYST2=AYST1
224 AYST3=2.*(ATAN(EXP(YSTMAX))-ATAN(EXP(YSTMIN)))
225 H2=(AYST0/AYST1)*COEF(ISUB,7)*(YST-YSTMIN)+(AYST0/AYST2)*
226 & COEF(ISUB,8)*(YSTMAX-YST)+(AYST0/AYST3)*COEF(ISUB,9)/COSH(YST)
227 COMFAC=COMFAC*AYST0/H2
228 ENDIF
229
230C...2 -> 1 processes: reduction in angular part of phase space integral
231C...for case of decaying resonance.
232 ACTH0=CTNMAX-CTNMIN+CTPMAX-CTPMIN
233 IF((ISET(ISUB).EQ.1.OR.ISET(ISUB).EQ.3).AND.
234 &MDCY(KFPR(ISUB,1),1).EQ.1) THEN
235 IF(KFPR(ISUB,1).EQ.25.OR.KFPR(ISUB,1).EQ.37) THEN
236 COMFAC=COMFAC*0.5*ACTH0
237 ELSE
238 COMFAC=COMFAC*0.125*(3.*ACTH0+CTNMAX**3-CTNMIN**3+
239 & CTPMAX**3-CTPMIN**3)
240 ENDIF
241
242C...2 -> 2 processes: angular part of phase space integral.
243 ELSEIF(ISET(ISUB).EQ.2.OR.ISET(ISUB).EQ.4) THEN
244 ACTH1=LOG((MAX(RM34,RSQM-CTNMIN)*MAX(RM34,RSQM-CTPMIN))/
245 & (MAX(RM34,RSQM-CTNMAX)*MAX(RM34,RSQM-CTPMAX)))
246 ACTH2=LOG((MAX(RM34,RSQM+CTNMAX)*MAX(RM34,RSQM+CTPMAX))/
247 & (MAX(RM34,RSQM+CTNMIN)*MAX(RM34,RSQM+CTPMIN)))
248 ACTH3=1./MAX(RM34,RSQM-CTNMAX)-1./MAX(RM34,RSQM-CTNMIN)+
249 & 1./MAX(RM34,RSQM-CTPMAX)-1./MAX(RM34,RSQM-CTPMIN)
250 ACTH4=1./MAX(RM34,RSQM+CTNMIN)-1./MAX(RM34,RSQM+CTNMAX)+
251 & 1./MAX(RM34,RSQM+CTPMIN)-1./MAX(RM34,RSQM+CTPMAX)
252 H3=COEF(ISUB,10)+
253 & (ACTH0/ACTH1)*COEF(ISUB,11)/MAX(RM34,RSQM-CTH)+
254 & (ACTH0/ACTH2)*COEF(ISUB,12)/MAX(RM34,RSQM+CTH)+
255 & (ACTH0/ACTH3)*COEF(ISUB,13)/MAX(RM34,RSQM-CTH)**2+
256 & (ACTH0/ACTH4)*COEF(ISUB,14)/MAX(RM34,RSQM+CTH)**2
257 COMFAC=COMFAC*ACTH0*0.5*BE34/H3
258 ENDIF
259
260C...2 -> 3, 4 processes: phace space integral in tau'.
261 IF(MINT(43).GE.2.AND.(ISET(ISUB).EQ.3.OR.ISET(ISUB).EQ.4)) THEN
262 ATAUP0=LOG(TAUPMX/TAUPMN)
263 ATAUP1=((1.-TAU/TAUPMX)**4-(1.-TAU/TAUPMN)**4)/(4.*TAU)
264 H4=COEF(ISUB,15)+
265 & ATAUP0/ATAUP1*COEF(ISUB,16)/TAUP*(1.-TAU/TAUP)**3
266 IF(1.-TAU/TAUP.GT.1.E-4) THEN
267 FZW=(1.+TAU/TAUP)*LOG(TAUP/TAU)-2.*(1.-TAU/TAUP)
268 ELSE
269 FZW=1./6.*(1.-TAU/TAUP)**3*TAU/TAUP
270 ENDIF
271 COMFAC=COMFAC*ATAUP0*FZW/H4
272 ENDIF
273
274C...Phase space integral for low-pT and multiple interactions.
275 IF(ISET(ISUB).EQ.5) THEN
276 COMFAC=PARU(1)*PARU(5)*FACK*0.5*VINT(2)/SH2
277 ATAU0=LOG(2.*(1.+SQRT(1.-XT2))/XT2-1.)
278 ATAU1=2.*ATAN(1./XT2-1.)/SQRT(XT2)
279 H1=COEF(ISUB,1)+(ATAU0/ATAU1)*COEF(ISUB,2)/SQRT(TAU)
280 COMFAC=COMFAC*ATAU0/H1
281 AYST0=YSTMAX-YSTMIN
282 AYST1=0.5*(YSTMAX-YSTMIN)**2
283 AYST3=2.*(ATAN(EXP(YSTMAX))-ATAN(EXP(YSTMIN)))
284 H2=(AYST0/AYST1)*COEF(ISUB,7)*(YST-YSTMIN)+(AYST0/AYST1)*
285 & COEF(ISUB,8)*(YSTMAX-YST)+(AYST0/AYST3)*COEF(ISUB,9)/COSH(YST)
286 COMFAC=COMFAC*AYST0/H2
287 IF(MSTP(82).LE.1) COMFAC=COMFAC*XT2**2*(1./VINT(149)-1.)
288C...For MSTP(82)>=2 an additional factor (xT2/(xT2+VINT(149))**2 is
289C...introduced to make cross-section finite for xT2 -> 0.
290 IF(MSTP(82).GE.2) COMFAC=COMFAC*XT2**2/(VINT(149)*
291 & (1.+VINT(149)))
292 ENDIF
293
294C...A: 2 -> 1, tree diagrams.
295
296 145 IF(ISUB.LE.10) THEN
297 IF(ISUB.EQ.1) THEN
298C...f + fb -> gamma*/Z0.
299 MINT(61)=2
300 CALL PYWIDT_HIJING(23,SQRT(SH),WDTP,WDTE)
301 FACZ=COMFAC*AEM**2*4./3.
302 DO 150 I=MINA,MAXA
303 IF(I.EQ.0.OR.KFAC(1,I)*KFAC(2,-I).EQ.0) GOTO 150
304 EI=KCHG(IABS(I),1)/3.
305 AI=SIGN(1.,EI)
306 VI=AI-4.*EI*XW
307 FACF=1.
308 IF(IABS(I).LE.10) FACF=FACA/3.
309 NCHN=NCHN+1
310 ISIG(NCHN,1)=I
311 ISIG(NCHN,2)=-I
312 ISIG(NCHN,3)=1
313 SIGH(NCHN)=FACF*FACZ*(EI**2*VINT(111)+EI*VI/(8.*XW*(1.-XW))*
314 & SH*(SH-SQMZ)/((SH-SQMZ)**2+GMMZ**2)*VINT(112)+(VI**2+AI**2)/
315 & (16.*XW*(1.-XW))**2*SH2/((SH-SQMZ)**2+GMMZ**2)*VINT(114))
316 150 CONTINUE
317
318 ELSEIF(ISUB.EQ.2) THEN
319C...f + fb' -> W+/-.
320 CALL PYWIDT_HIJING(24,SQRT(SH),WDTP,WDTE)
321 FACW=COMFAC*(AEM/XW)**2*1./24*SH2/((SH-SQMW)**2+GMMW**2)
322 DO 170 I=MIN1,MAX1
323 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 170
324 IA=IABS(I)
325 DO 160 J=MIN2,MAX2
326 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 160
327 JA=IABS(J)
328 IF(I*J.GT.0.OR.MOD(IA+JA,2).EQ.0) GOTO 160
329 IF((IA.LE.10.AND.JA.GT.10).OR.(IA.GT.10.AND.JA.LE.10)) GOTO 160
330 KCHW=(KCHG(IA,1)*ISIGN(1,I)+KCHG(JA,1)*ISIGN(1,J))/3
331 FACF=1.
332 IF(IA.LE.10) FACF=VCKM((IA+1)/2,(JA+1)/2)*FACA/3.
333 NCHN=NCHN+1
334 ISIG(NCHN,1)=I
335 ISIG(NCHN,2)=J
336 ISIG(NCHN,3)=1
337 SIGH(NCHN)=FACF*FACW*(WDTE(0,1)+WDTE(0,(5-KCHW)/2)+WDTE(0,4))
338 160 CONTINUE
339 170 CONTINUE
340
341 ELSEIF(ISUB.EQ.3) THEN
342C...f + fb -> H0.
343 CALL PYWIDT_HIJING(25,SQRT(SH),WDTP,WDTE)
344 FACH=COMFAC*(AEM/XW)**2*1./48.*(SH/SQMW)**2*
345 & SH2/((SH-SQMH)**2+GMMH**2)*(WDTE(0,1)+WDTE(0,2)+WDTE(0,4))
346 DO 180 I=MINA,MAXA
347 IF(I.EQ.0.OR.KFAC(1,I)*KFAC(2,-I).EQ.0) GOTO 180
348 RMQ=PMAS(IABS(I),1)**2/SH
349 NCHN=NCHN+1
350 ISIG(NCHN,1)=I
351 ISIG(NCHN,2)=-I
352 ISIG(NCHN,3)=1
353 SIGH(NCHN)=FACH*RMQ*SQRT(MAX(0.,1.-4.*RMQ))
354 180 CONTINUE
355
356 ELSEIF(ISUB.EQ.4) THEN
357C...gamma + W+/- -> W+/-.
358
359 ELSEIF(ISUB.EQ.5) THEN
360C...Z0 + Z0 -> H0.
361 CALL PYWIDT_HIJING(25,SQRT(SH),WDTP,WDTE)
362 FACH=COMFAC*1./(128.*PARU(1)**2*16.*(1.-XW)**3)*(AEM/XW)**4*
363 & (SH/SQMW)**2*SH2/((SH-SQMH)**2+GMMH**2)*
364 & (WDTE(0,1)+WDTE(0,2)+WDTE(0,4))
365 DO 200 I=MIN1,MAX1
366 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 200
367 DO 190 J=MIN2,MAX2
368 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 190
369 EI=KCHG(IABS(I),1)/3.
370 AI=SIGN(1.,EI)
371 VI=AI-4.*EI*XW
372 EJ=KCHG(IABS(J),1)/3.
373 AJ=SIGN(1.,EJ)
374 VJ=AJ-4.*EJ*XW
375 NCHN=NCHN+1
376 ISIG(NCHN,1)=I
377 ISIG(NCHN,2)=J
378 ISIG(NCHN,3)=1
379 SIGH(NCHN)=FACH*(VI**2+AI**2)*(VJ**2+AJ**2)
380 190 CONTINUE
381 200 CONTINUE
382
383 ELSEIF(ISUB.EQ.6) THEN
384C...Z0 + W+/- -> W+/-.
385
386 ELSEIF(ISUB.EQ.7) THEN
387C...W+ + W- -> Z0.
388
389 ELSEIF(ISUB.EQ.8) THEN
390C...W+ + W- -> H0.
391 CALL PYWIDT_HIJING(25,SQRT(SH),WDTP,WDTE)
392 FACH=COMFAC*1./(128*PARU(1)**2)*(AEM/XW)**4*(SH/SQMW)**2*
393 & SH2/((SH-SQMH)**2+GMMH**2)*(WDTE(0,1)+WDTE(0,2)+WDTE(0,4))
394 DO 220 I=MIN1,MAX1
395 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 220
396 EI=SIGN(1.,FLOAT(I))*KCHG(IABS(I),1)
397 DO 210 J=MIN2,MAX2
398 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 210
399 EJ=SIGN(1.,FLOAT(J))*KCHG(IABS(J),1)
400 IF(EI*EJ.GT.0.) GOTO 210
401 NCHN=NCHN+1
402 ISIG(NCHN,1)=I
403 ISIG(NCHN,2)=J
404 ISIG(NCHN,3)=1
405 SIGH(NCHN)=FACH*VINT(180+I)*VINT(180+J)
406 210 CONTINUE
407 220 CONTINUE
408 ENDIF
409
410C...B: 2 -> 2, tree diagrams.
411
412 ELSEIF(ISUB.LE.20) THEN
413 IF(ISUB.EQ.11) THEN
414C...f + f' -> f + f'.
415 FACQQ1=COMFAC*AS**2*4./9.*(SH2+UH2)/TH2
416 FACQQB=COMFAC*AS**2*4./9.*((SH2+UH2)/TH2*FACA-
417 & MSTP(34)*2./3.*UH2/(SH*TH))
418 FACQQ2=COMFAC*AS**2*4./9.*((SH2+TH2)/UH2-
419 & MSTP(34)*2./3.*SH2/(TH*UH))
420 DO 240 I=MIN1,MAX1
421 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 240
422 DO 230 J=MIN2,MAX2
423 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 230
424 NCHN=NCHN+1
425 ISIG(NCHN,1)=I
426 ISIG(NCHN,2)=J
427 ISIG(NCHN,3)=1
428 SIGH(NCHN)=FACQQ1
429 IF(I.EQ.-J) SIGH(NCHN)=FACQQB
430 IF(I.EQ.J) THEN
431 SIGH(NCHN)=0.5*SIGH(NCHN)
432 NCHN=NCHN+1
433 ISIG(NCHN,1)=I
434 ISIG(NCHN,2)=J
435 ISIG(NCHN,3)=2
436 SIGH(NCHN)=0.5*FACQQ2
437 ENDIF
438 230 CONTINUE
439 240 CONTINUE
440
441 ELSEIF(ISUB.EQ.12) THEN
442C...f + fb -> f' + fb' (q + qb -> q' + qb' only).
443 CALL PYWIDT_HIJING(21,SQRT(SH),WDTP,WDTE)
444 FACQQB=COMFAC*AS**2*4./9.*(TH2+UH2)/SH2*(WDTE(0,1)+WDTE(0,2)+
445 & WDTE(0,3)+WDTE(0,4))
446 DO 250 I=MINA,MAXA
447 IF(I.EQ.0.OR.KFAC(1,I)*KFAC(2,-I).EQ.0) GOTO 250
448 NCHN=NCHN+1
449 ISIG(NCHN,1)=I
450 ISIG(NCHN,2)=-I
451 ISIG(NCHN,3)=1
452 SIGH(NCHN)=FACQQB
453 250 CONTINUE
454
455 ELSEIF(ISUB.EQ.13) THEN
456C...f + fb -> g + g (q + qb -> g + g only).
457 FACGG1=COMFAC*AS**2*32./27.*(UH/TH-(2.+MSTP(34)*1./4.)*UH2/SH2)
458 FACGG2=COMFAC*AS**2*32./27.*(TH/UH-(2.+MSTP(34)*1./4.)*TH2/SH2)
459 DO 260 I=MINA,MAXA
460 IF(I.EQ.0.OR.KFAC(1,I)*KFAC(2,-I).EQ.0) GOTO 260
461 NCHN=NCHN+1
462 ISIG(NCHN,1)=I
463 ISIG(NCHN,2)=-I
464 ISIG(NCHN,3)=1
465 SIGH(NCHN)=0.5*FACGG1
466 NCHN=NCHN+1
467 ISIG(NCHN,1)=I
468 ISIG(NCHN,2)=-I
469 ISIG(NCHN,3)=2
470 SIGH(NCHN)=0.5*FACGG2
471 260 CONTINUE
472
473 ELSEIF(ISUB.EQ.14) THEN
474C...f + fb -> g + gamma (q + qb -> g + gamma only).
475 FACGG=COMFAC*AS*AEM*8./9.*(TH2+UH2)/(TH*UH)
476 DO 270 I=MINA,MAXA
477 IF(I.EQ.0.OR.KFAC(1,I)*KFAC(2,-I).EQ.0) GOTO 270
478 EI=KCHG(IABS(I),1)/3.
479 NCHN=NCHN+1
480 ISIG(NCHN,1)=I
481 ISIG(NCHN,2)=-I
482 ISIG(NCHN,3)=1
483 SIGH(NCHN)=FACGG*EI**2
484 270 CONTINUE
485
486 ELSEIF(ISUB.EQ.15) THEN
487C...f + fb -> g + Z0 (q + qb -> g + Z0 only).
488 FACZG=COMFAC*AS*AEM/(XW*(1.-XW))*1./18.*
489 & (TH2+UH2+2.*SQM4*SH)/(TH*UH)
490 FACZG=FACZG*WIDS(23,2)
491 DO 280 I=MINA,MAXA
492 IF(I.EQ.0.OR.KFAC(1,I)*KFAC(2,-I).EQ.0) GOTO 280
493 EI=KCHG(IABS(I),1)/3.
494 AI=SIGN(1.,EI)
495 VI=AI-4.*EI*XW
496 NCHN=NCHN+1
497 ISIG(NCHN,1)=I
498 ISIG(NCHN,2)=-I
499 ISIG(NCHN,3)=1
500 SIGH(NCHN)=FACZG*(VI**2+AI**2)
501 280 CONTINUE
502
503 ELSEIF(ISUB.EQ.16) THEN
504C...f + fb' -> g + W+/- (q + qb' -> g + W+/- only).
505 FACWG=COMFAC*AS*AEM/XW*2./9.*(TH2+UH2+2.*SQM4*SH)/(TH*UH)
506 DO 300 I=MIN1,MAX1
507 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 300
508 IA=IABS(I)
509 DO 290 J=MIN2,MAX2
510 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 290
511 JA=IABS(J)
512 IF(I*J.GT.0.OR.MOD(IA+JA,2).EQ.0) GOTO 290
513 KCHW=(KCHG(IA,1)*ISIGN(1,I)+KCHG(JA,1)*ISIGN(1,J))/3
514 FCKM=1.
515 IF(MINT(43).EQ.4) FCKM=VCKM((IA+1)/2,(JA+1)/2)
516 NCHN=NCHN+1
517 ISIG(NCHN,1)=I
518 ISIG(NCHN,2)=J
519 ISIG(NCHN,3)=1
520 SIGH(NCHN)=FACWG*FCKM*WIDS(24,(5-KCHW)/2)
521 290 CONTINUE
522 300 CONTINUE
523
524 ELSEIF(ISUB.EQ.17) THEN
525C...f + fb -> g + H0 (q + qb -> g + H0 only).
526
527 ELSEIF(ISUB.EQ.18) THEN
528C...f + fb -> gamma + gamma.
529 FACGG=COMFAC*FACA*AEM**2*1./3.*(TH2+UH2)/(TH*UH)
530 DO 310 I=MINA,MAXA
531 IF(I.EQ.0.OR.KFAC(1,I)*KFAC(2,-I).EQ.0) GOTO 310
532 EI=KCHG(IABS(I),1)/3.
533 NCHN=NCHN+1
534 ISIG(NCHN,1)=I
535 ISIG(NCHN,2)=-I
536 ISIG(NCHN,3)=1
537 SIGH(NCHN)=FACGG*EI**4
538 310 CONTINUE
539
540 ELSEIF(ISUB.EQ.19) THEN
541C...f + fb -> gamma + Z0.
542 FACGZ=COMFAC*FACA*AEM**2/(XW*(1.-XW))*1./24.*
543 & (TH2+UH2+2.*SQM4*SH)/(TH*UH)
544 FACGZ=FACGZ*WIDS(23,2)
545 DO 320 I=MINA,MAXA
546 IF(I.EQ.0.OR.KFAC(1,I)*KFAC(2,-I).EQ.0) GOTO 320
547 EI=KCHG(IABS(I),1)/3.
548 AI=SIGN(1.,EI)
549 VI=AI-4.*EI*XW
550 NCHN=NCHN+1
551 ISIG(NCHN,1)=I
552 ISIG(NCHN,2)=-I
553 ISIG(NCHN,3)=1
554 SIGH(NCHN)=FACGZ*EI**2*(VI**2+AI**2)
555 320 CONTINUE
556
557 ELSEIF(ISUB.EQ.20) THEN
558C...f + fb' -> gamma + W+/-.
559 FACGW=COMFAC*FACA*AEM**2/XW*1./6.*
560 & ((2.*UH-TH)/(3.*(SH-SQM4)))**2*(TH2+UH2+2.*SQM4*SH)/(TH*UH)
561 DO 340 I=MIN1,MAX1
562 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 340
563 IA=IABS(I)
564 DO 330 J=MIN2,MAX2
565 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 330
566 JA=IABS(J)
567 IF(I*J.GT.0.OR.MOD(IA+JA,2).EQ.0) GOTO 330
568 KCHW=(KCHG(IA,1)*ISIGN(1,I)+KCHG(JA,1)*ISIGN(1,J))/3
569 FCKM=1.
570 IF(MINT(43).EQ.4) FCKM=VCKM((IA+1)/2,(JA+1)/2)
571 NCHN=NCHN+1
572 ISIG(NCHN,1)=I
573 ISIG(NCHN,2)=J
574 ISIG(NCHN,3)=1
575 SIGH(NCHN)=FACGW*FCKM*WIDS(24,(5-KCHW)/2)
576 330 CONTINUE
577 340 CONTINUE
578 ENDIF
579
580 ELSEIF(ISUB.LE.30) THEN
581 IF(ISUB.EQ.21) THEN
582C...f + fb -> gamma + H0.
583
584 ELSEIF(ISUB.EQ.22) THEN
585C...f + fb -> Z0 + Z0.
586 FACZZ=COMFAC*FACA*(AEM/(XW*(1.-XW)))**2*1./768.*
587 & (UH/TH+TH/UH+2.*(SQM3+SQM4)*SH/(TH*UH)-
588 & SQM3*SQM4*(1./TH2+1./UH2))
589 FACZZ=FACZZ*WIDS(23,1)
590 DO 350 I=MINA,MAXA
591 IF(I.EQ.0.OR.KFAC(1,I)*KFAC(2,-I).EQ.0) GOTO 350
592 EI=KCHG(IABS(I),1)/3.
593 AI=SIGN(1.,EI)
594 VI=AI-4.*EI*XW
595 NCHN=NCHN+1
596 ISIG(NCHN,1)=I
597 ISIG(NCHN,2)=-I
598 ISIG(NCHN,3)=1
599 SIGH(NCHN)=FACZZ*(VI**4+6.*VI**2*AI**2+AI**4)
600 350 CONTINUE
601
602 ELSEIF(ISUB.EQ.23) THEN
603C...f + fb' -> Z0 + W+/-.
604 FACZW=COMFAC*FACA*(AEM/XW)**2*1./6.
605 FACZW=FACZW*WIDS(23,2)
606 THUH=MAX(TH*UH-SQM3*SQM4,SH*CKIN(3)**2)
607 DO 370 I=MIN1,MAX1
608 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 370
609 IA=IABS(I)
610 DO 360 J=MIN2,MAX2
611 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 360
612 JA=IABS(J)
613 IF(I*J.GT.0.OR.MOD(IA+JA,2).EQ.0) GOTO 360
614 KCHW=(KCHG(IA,1)*ISIGN(1,I)+KCHG(JA,1)*ISIGN(1,J))/3
615 EI=KCHG(IA,1)/3.
616 AI=SIGN(1.,EI)
617 VI=AI-4.*EI*XW
618 EJ=KCHG(JA,1)/3.
619 AJ=SIGN(1.,EJ)
620 VJ=AJ-4.*EJ*XW
621 IF(VI+AI.GT.0) THEN
622 VISAV=VI
623 AISAV=AI
624 VI=VJ
625 AI=AJ
626 VJ=VISAV
627 AJ=AISAV
628 ENDIF
629 FCKM=1.
630 IF(MINT(43).EQ.4) FCKM=VCKM((IA+1)/2,(JA+1)/2)
631 NCHN=NCHN+1
632 ISIG(NCHN,1)=I
633 ISIG(NCHN,2)=J
634 ISIG(NCHN,3)=1
635 SIGH(NCHN)=FACZW*FCKM*(1./(SH-SQMW)**2*
636 & ((9.-8.*XW)/4.*THUH+(8.*XW-6.)/4.*SH*(SQM3+SQM4))+
637 & (THUH-SH*(SQM3+SQM4))/(2.*(SH-SQMW))*((VJ+AJ)/TH-(VI+AI)/UH)+
638 & THUH/(16.*(1.-XW))*((VJ+AJ)**2/TH2+(VI+AI)**2/UH2)+
639 & SH*(SQM3+SQM4)/(8.*(1.-XW))*(VI+AI)*(VJ+AJ)/(TH*UH))*
640 & WIDS(24,(5-KCHW)/2)
641 360 CONTINUE
642 370 CONTINUE
643
644 ELSEIF(ISUB.EQ.24) THEN
645C...f + fb -> Z0 + H0.
646 THUH=MAX(TH*UH-SQM3*SQM4,SH*CKIN(3)**2)
647 FACHZ=COMFAC*FACA*(AEM/(XW*(1.-XW)))**2*1./96.*
648 & (THUH+2.*SH*SQMZ)/(SH-SQMZ)**2
649 FACHZ=FACHZ*WIDS(23,2)*WIDS(25,2)
650 DO 380 I=MINA,MAXA
651 IF(I.EQ.0.OR.KFAC(1,I)*KFAC(2,-I).EQ.0) GOTO 380
652 EI=KCHG(IABS(I),1)/3.
653 AI=SIGN(1.,EI)
654 VI=AI-4.*EI*XW
655 NCHN=NCHN+1
656 ISIG(NCHN,1)=I
657 ISIG(NCHN,2)=-I
658 ISIG(NCHN,3)=1
659 SIGH(NCHN)=FACHZ*(VI**2+AI**2)
660 380 CONTINUE
661
662 ELSEIF(ISUB.EQ.25) THEN
663C...f + fb -> W+ + W-.
664 FACWW=COMFAC*FACA*(AEM/XW)**2*1./12.
665 FACWW=FACWW*WIDS(24,1)
666 THUH=MAX(TH*UH-SQM3*SQM4,SH*CKIN(3)**2)
667 DO 390 I=MINA,MAXA
668 IF(I.EQ.0.OR.KFAC(1,I)*KFAC(2,-I).EQ.0) GOTO 390
669 EI=KCHG(IABS(I),1)/3.
670 AI=SIGN(1.,EI)
671 VI=AI-4.*EI*XW
672 DSIGWW=THUH/SH2*(3.-(SH-3.*(SQM3+SQM4))/(SH-SQMZ)*
673 & (VI+AI)/(2.*AI*(1.-XW))+(SH/(SH-SQMZ))**2*
674 & (1.-2.*(SQM3+SQM4)/SH+12.*SQM3*SQM4/SH2)*(VI**2+AI**2)/
675 & (8.*(1.-XW)**2))-2.*SQMZ/(SH-SQMZ)*(VI+AI)/AI+
676 & SQMZ*SH/(SH-SQMZ)**2*(1.-2.*(SQM3+SQM4)/SH)*(VI**2+AI**2)/
677 & (2.*(1.-XW))
678 IF(KCHG(IABS(I),1).LT.0) THEN
679 DSIGWW=DSIGWW+2.*(1.+SQMZ/(SH-SQMZ)*(VI+AI)/(2.*AI))*
680 & (THUH/(SH*TH)-(SQM3+SQM4)/TH)+THUH/TH2
681 ELSE
682 DSIGWW=DSIGWW+2.*(1.+SQMZ/(SH-SQMZ)*(VI+AI)/(2.*AI))*
683 & (THUH/(SH*UH)-(SQM3+SQM4)/UH)+THUH/UH2
684 ENDIF
685 NCHN=NCHN+1
686 ISIG(NCHN,1)=I
687 ISIG(NCHN,2)=-I
688 ISIG(NCHN,3)=1
689 SIGH(NCHN)=FACWW*DSIGWW
690 390 CONTINUE
691
692 ELSEIF(ISUB.EQ.26) THEN
693C...f + fb' -> W+/- + H0.
694 THUH=MAX(TH*UH-SQM3*SQM4,SH*CKIN(3)**2)
695 FACHW=COMFAC*FACA*(AEM/XW)**2*1./24.*(THUH+2.*SH*SQMW)/
696 & (SH-SQMW)**2
697 FACHW=FACHW*WIDS(25,2)
698 DO 410 I=MIN1,MAX1
699 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 410
700 IA=IABS(I)
701 DO 400 J=MIN2,MAX2
702 IF(J.EQ.0.OR.KFAC(1,J).EQ.0) GOTO 400
703 JA=IABS(J)
704 IF(I*J.GT.0.OR.MOD(IA+JA,2).EQ.0) GOTO 400
705 KCHW=(KCHG(IA,1)*ISIGN(1,I)+KCHG(JA,1)*ISIGN(1,J))/3
706 FCKM=1.
707 IF(MINT(43).EQ.4) FCKM=VCKM((IA+1)/2,(JA+1)/2)
708 NCHN=NCHN+1
709 ISIG(NCHN,1)=I
710 ISIG(NCHN,2)=J
711 ISIG(NCHN,3)=1
712 SIGH(NCHN)=FACHW*FCKM*WIDS(24,(5-KCHW)/2)
713 400 CONTINUE
714 410 CONTINUE
715
716 ELSEIF(ISUB.EQ.27) THEN
717C...f + fb -> H0 + H0.
718
719 ELSEIF(ISUB.EQ.28) THEN
720C...f + g -> f + g (q + g -> q + g only).
721 FACQG1=COMFAC*AS**2*4./9.*((2.+MSTP(34)*1./4.)*UH2/TH2-UH/SH)*
722 & FACA
723 FACQG2=COMFAC*AS**2*4./9.*((2.+MSTP(34)*1./4.)*SH2/TH2-SH/UH)
724 DO 430 I=MINA,MAXA
725 IF(I.EQ.0) GOTO 430
726 DO 420 ISDE=1,2
727 IF(ISDE.EQ.1.AND.KFAC(1,I)*KFAC(2,21).EQ.0) GOTO 420
728 IF(ISDE.EQ.2.AND.KFAC(1,21)*KFAC(2,I).EQ.0) GOTO 420
729 NCHN=NCHN+1
730 ISIG(NCHN,ISDE)=I
731 ISIG(NCHN,3-ISDE)=21
732 ISIG(NCHN,3)=1
733 SIGH(NCHN)=FACQG1
734 NCHN=NCHN+1
735 ISIG(NCHN,ISDE)=I
736 ISIG(NCHN,3-ISDE)=21
737 ISIG(NCHN,3)=2
738 SIGH(NCHN)=FACQG2
739 420 CONTINUE
740 430 CONTINUE
741
742 ELSEIF(ISUB.EQ.29) THEN
743C...f + g -> f + gamma (q + g -> q + gamma only).
744 FGQ=COMFAC*FACA*AS*AEM*1./3.*(SH2+UH2)/(-SH*UH)
745 DO 450 I=MINA,MAXA
746 IF(I.EQ.0) GOTO 450
747 EI=KCHG(IABS(I),1)/3.
748 FACGQ=FGQ*EI**2
749 DO 440 ISDE=1,2
750 IF(ISDE.EQ.1.AND.KFAC(1,I)*KFAC(2,21).EQ.0) GOTO 440
751 IF(ISDE.EQ.2.AND.KFAC(1,21)*KFAC(2,I).EQ.0) GOTO 440
752 NCHN=NCHN+1
753 ISIG(NCHN,ISDE)=I
754 ISIG(NCHN,3-ISDE)=21
755 ISIG(NCHN,3)=1
756 SIGH(NCHN)=FACGQ
757 440 CONTINUE
758 450 CONTINUE
759
760 ELSEIF(ISUB.EQ.30) THEN
761C...f + g -> f + Z0 (q + g -> q + Z0 only).
762 FZQ=COMFAC*FACA*AS*AEM/(XW*(1.-XW))*1./48.*
763 & (SH2+UH2+2.*SQM4*TH)/(-SH*UH)
764 FZQ=FZQ*WIDS(23,2)
765 DO 470 I=MINA,MAXA
766 IF(I.EQ.0) GOTO 470
767 EI=KCHG(IABS(I),1)/3.
768 AI=SIGN(1.,EI)
769 VI=AI-4.*EI*XW
770 FACZQ=FZQ*(VI**2+AI**2)
771 DO 460 ISDE=1,2
772 IF(ISDE.EQ.1.AND.KFAC(1,I)*KFAC(2,21).EQ.0) GOTO 460
773 IF(ISDE.EQ.2.AND.KFAC(1,21)*KFAC(2,I).EQ.0) GOTO 460
774 NCHN=NCHN+1
775 ISIG(NCHN,ISDE)=I
776 ISIG(NCHN,3-ISDE)=21
777 ISIG(NCHN,3)=1
778 SIGH(NCHN)=FACZQ
779 460 CONTINUE
780 470 CONTINUE
781 ENDIF
782
783 ELSEIF(ISUB.LE.40) THEN
784 IF(ISUB.EQ.31) THEN
785C...f + g -> f' + W+/- (q + g -> q' + W+/- only).
786 FACWQ=COMFAC*FACA*AS*AEM/XW*1./12.*
787 & (SH2+UH2+2.*SQM4*TH)/(-SH*UH)
788 DO 490 I=MINA,MAXA
789 IF(I.EQ.0) GOTO 490
790 IA=IABS(I)
791 KCHW=ISIGN(1,KCHG(IA,1)*ISIGN(1,I))
792 DO 480 ISDE=1,2
793 IF(ISDE.EQ.1.AND.KFAC(1,I)*KFAC(2,21).EQ.0) GOTO 480
794 IF(ISDE.EQ.2.AND.KFAC(1,21)*KFAC(2,I).EQ.0) GOTO 480
795 NCHN=NCHN+1
796 ISIG(NCHN,ISDE)=I
797 ISIG(NCHN,3-ISDE)=21
798 ISIG(NCHN,3)=1
799 SIGH(NCHN)=FACWQ*VINT(180+I)*WIDS(24,(5-KCHW)/2)
800 480 CONTINUE
801 490 CONTINUE
802
803 ELSEIF(ISUB.EQ.32) THEN
804C...f + g -> f + H0 (q + g -> q + H0 only).
805
806 ELSEIF(ISUB.EQ.33) THEN
807C...f + gamma -> f + g (q + gamma -> q + g only).
808
809 ELSEIF(ISUB.EQ.34) THEN
810C...f + gamma -> f + gamma.
811
812 ELSEIF(ISUB.EQ.35) THEN
813C...f + gamma -> f + Z0.
814
815 ELSEIF(ISUB.EQ.36) THEN
816C...f + gamma -> f' + W+/-.
817
818 ELSEIF(ISUB.EQ.37) THEN
819C...f + gamma -> f + H0.
820
821 ELSEIF(ISUB.EQ.38) THEN
822C...f + Z0 -> f + g (q + Z0 -> q + g only).
823
824 ELSEIF(ISUB.EQ.39) THEN
825C...f + Z0 -> f + gamma.
826
827 ELSEIF(ISUB.EQ.40) THEN
828C...f + Z0 -> f + Z0.
829 ENDIF
830
831 ELSEIF(ISUB.LE.50) THEN
832 IF(ISUB.EQ.41) THEN
833C...f + Z0 -> f' + W+/-.
834
835 ELSEIF(ISUB.EQ.42) THEN
836C...f + Z0 -> f + H0.
837
838 ELSEIF(ISUB.EQ.43) THEN
839C...f + W+/- -> f' + g (q + W+/- -> q' + g only).
840
841 ELSEIF(ISUB.EQ.44) THEN
842C...f + W+/- -> f' + gamma.
843
844 ELSEIF(ISUB.EQ.45) THEN
845C...f + W+/- -> f' + Z0.
846
847 ELSEIF(ISUB.EQ.46) THEN
848C...f + W+/- -> f' + W+/-.
849
850 ELSEIF(ISUB.EQ.47) THEN
851C...f + W+/- -> f' + H0.
852
853 ELSEIF(ISUB.EQ.48) THEN
854C...f + H0 -> f + g (q + H0 -> q + g only).
855
856 ELSEIF(ISUB.EQ.49) THEN
857C...f + H0 -> f + gamma.
858
859 ELSEIF(ISUB.EQ.50) THEN
860C...f + H0 -> f + Z0.
861 ENDIF
862
863 ELSEIF(ISUB.LE.60) THEN
864 IF(ISUB.EQ.51) THEN
865C...f + H0 -> f' + W+/-.
866
867 ELSEIF(ISUB.EQ.52) THEN
868C...f + H0 -> f + H0.
869
870 ELSEIF(ISUB.EQ.53) THEN
871C...g + g -> f + fb (g + g -> q + qb only).
872 CALL PYWIDT_HIJING(21,SQRT(SH),WDTP,WDTE)
873 FACQQ1=COMFAC*AS**2*1./6.*(UH/TH-(2.+MSTP(34)*1./4.)*UH2/SH2)*
874 & (WDTE(0,1)+WDTE(0,2)+WDTE(0,3)+WDTE(0,4))*FACA
875 FACQQ2=COMFAC*AS**2*1./6.*(TH/UH-(2.+MSTP(34)*1./4.)*TH2/SH2)*
876 & (WDTE(0,1)+WDTE(0,2)+WDTE(0,3)+WDTE(0,4))*FACA
877 IF(KFAC(1,21)*KFAC(2,21).EQ.0) GOTO 500
878 NCHN=NCHN+1
879 ISIG(NCHN,1)=21
880 ISIG(NCHN,2)=21
881 ISIG(NCHN,3)=1
882 SIGH(NCHN)=FACQQ1
883 NCHN=NCHN+1
884 ISIG(NCHN,1)=21
885 ISIG(NCHN,2)=21
886 ISIG(NCHN,3)=2
887 SIGH(NCHN)=FACQQ2
888 500 CONTINUE
889
890 ELSEIF(ISUB.EQ.54) THEN
891C...g + gamma -> f + fb (g + gamma -> q + qb only).
892
893 ELSEIF(ISUB.EQ.55) THEN
894C...g + gamma -> f + fb (g + gamma -> q + qb only).
895
896 ELSEIF(ISUB.EQ.56) THEN
897C...g + gamma -> f + fb (g + gamma -> q + qb only).
898
899 ELSEIF(ISUB.EQ.57) THEN
900C...g + gamma -> f + fb (g + gamma -> q + qb only).
901
902 ELSEIF(ISUB.EQ.58) THEN
903C...gamma + gamma -> f + fb.
904
905 ELSEIF(ISUB.EQ.59) THEN
906C...gamma + Z0 -> f + fb.
907
908 ELSEIF(ISUB.EQ.60) THEN
909C...gamma + W+/- -> f + fb'.
910 ENDIF
911
912 ELSEIF(ISUB.LE.70) THEN
913 IF(ISUB.EQ.61) THEN
914C...gamma + H0 -> f + fb.
915
916 ELSEIF(ISUB.EQ.62) THEN
917C...Z0 + Z0 -> f + fb.
918
919 ELSEIF(ISUB.EQ.63) THEN
920C...Z0 + W+/- -> f + fb'.
921
922 ELSEIF(ISUB.EQ.64) THEN
923C...Z0 + H0 -> f + fb.
924
925 ELSEIF(ISUB.EQ.65) THEN
926C...W+ + W- -> f + fb.
927
928 ELSEIF(ISUB.EQ.66) THEN
929C...W+/- + H0 -> f + fb'.
930
931 ELSEIF(ISUB.EQ.67) THEN
932C...H0 + H0 -> f + fb.
933
934 ELSEIF(ISUB.EQ.68) THEN
935C...g + g -> g + g.
936 FACGG1=COMFAC*AS**2*9./4.*(SH2/TH2+2.*SH/TH+3.+2.*TH/SH+
937 & TH2/SH2)*FACA
938 FACGG2=COMFAC*AS**2*9./4.*(UH2/SH2+2.*UH/SH+3.+2.*SH/UH+
939 & SH2/UH2)*FACA
940 FACGG3=COMFAC*AS**2*9./4.*(TH2/UH2+2.*TH/UH+3+2.*UH/TH+UH2/TH2)
941 IF(KFAC(1,21)*KFAC(2,21).EQ.0) GOTO 510
942 NCHN=NCHN+1
943 ISIG(NCHN,1)=21
944 ISIG(NCHN,2)=21
945 ISIG(NCHN,3)=1
946 SIGH(NCHN)=0.5*FACGG1
947 NCHN=NCHN+1
948 ISIG(NCHN,1)=21
949 ISIG(NCHN,2)=21
950 ISIG(NCHN,3)=2
951 SIGH(NCHN)=0.5*FACGG2
952 NCHN=NCHN+1
953 ISIG(NCHN,1)=21
954 ISIG(NCHN,2)=21
955 ISIG(NCHN,3)=3
956 SIGH(NCHN)=0.5*FACGG3
957 510 CONTINUE
958
959 ELSEIF(ISUB.EQ.69) THEN
960C...gamma + gamma -> W+ + W-.
961
962 ELSEIF(ISUB.EQ.70) THEN
963C...gamma + W+/- -> gamma + W+/-.
964 ENDIF
965
966 ELSEIF(ISUB.LE.80) THEN
967 IF(ISUB.EQ.71) THEN
968C...Z0 + Z0 -> Z0 + Z0.
969 BE2=1.-4.*SQMZ/SH
970 TH=-0.5*SH*BE2*(1.-CTH)
971 UH=-0.5*SH*BE2*(1.+CTH)
972 SHANG=1./(1.-XW)*SQMW/SQMZ*(1.+BE2)**2
973 ASHRE=(SH-SQMH)/((SH-SQMH)**2+GMMH**2)*SHANG
974 ASHIM=-GMMH/((SH-SQMH)**2+GMMH**2)*SHANG
975 THANG=1./(1.-XW)*SQMW/SQMZ*(BE2-CTH)**2
976 ATHRE=(TH-SQMH)/((TH-SQMH)**2+GMMH**2)*THANG
977 ATHIM=-GMMH/((TH-SQMH)**2+GMMH**2)*THANG
978 UHANG=1./(1.-XW)*SQMW/SQMZ*(BE2+CTH)**2
979 AUHRE=(UH-SQMH)/((UH-SQMH)**2+GMMH**2)*UHANG
980 AUHIM=-GMMH/((UH-SQMH)**2+GMMH**2)*UHANG
981 FACH=0.5*COMFAC*1./(4096.*PARU(1)**2*16.*(1.-XW)**2)*
982 & (AEM/XW)**4*(SH/SQMW)**2*((ASHRE+ATHRE+AUHRE)**2+
983 & (ASHIM+ATHIM+AUHIM)**2)*SQMZ/SQMW
984 DO 530 I=MIN1,MAX1
985 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 530
986 EI=KCHG(IABS(I),1)/3.
987 AI=SIGN(1.,EI)
988 VI=AI-4.*EI*XW
989 AVI=AI**2+VI**2
990 DO 520 J=MIN2,MAX2
991 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 520
992 EJ=KCHG(IABS(J),1)/3.
993 AJ=SIGN(1.,EJ)
994 VJ=AJ-4.*EJ*XW
995 AVJ=AJ**2+VJ**2
996 NCHN=NCHN+1
997 ISIG(NCHN,1)=I
998 ISIG(NCHN,2)=J
999 ISIG(NCHN,3)=1
1000 SIGH(NCHN)=FACH*AVI*AVJ
1001 520 CONTINUE
1002 530 CONTINUE
1003
1004 ELSEIF(ISUB.EQ.72) THEN
1005C...Z0 + Z0 -> W+ + W-.
1006 BE2=SQRT((1.-4.*SQMW/SH)*(1.-4.*SQMZ/SH))
1007 CTH2=CTH**2
1008 TH=-0.5*SH*(1.-2.*(SQMW+SQMZ)/SH-BE2*CTH)
1009 UH=-0.5*SH*(1.-2.*(SQMW+SQMZ)/SH+BE2*CTH)
1010 SHANG=4.*SQRT(SQMW/(SQMZ*(1.-XW)))*(1.-2.*SQMW/SH)*
1011 & (1.-2.*SQMZ/SH)
1012 ASHRE=(SH-SQMH)/((SH-SQMH)**2+GMMH**2)*SHANG
1013 ASHIM=-GMMH/((SH-SQMH)**2+GMMH**2)*SHANG
1014 ATWRE=(1.-XW)/SQMZ*SH/(TH-SQMW)*((CTH-BE2)**2*(3./2.+BE2/2.*CTH-
1015 & (SQMW+SQMZ)/SH+(SQMW-SQMZ)**2/(SH*SQMW))+4.*((SQMW+SQMZ)/SH*
1016 & (1.-3.*CTH2)+8.*SQMW*SQMZ/SH2*(2.*CTH2-1.)+
1017 & 4.*(SQMW**2+SQMZ**2)/SH2*CTH2+2.*(SQMW+SQMZ)/SH*BE2*CTH))
1018 ATWIM=0.
1019 AUWRE=(1.-XW)/SQMZ*SH/(UH-SQMW)*((CTH+BE2)**2*(3./2.-BE2/2.*CTH-
1020 & (SQMW+SQMZ)/SH+(SQMW-SQMZ)**2/(SH*SQMW))+4.*((SQMW+SQMZ)/SH*
1021 & (1.-3.*CTH2)+8.*SQMW*SQMZ/SH2*(2.*CTH2-1.)+
1022 & 4.*(SQMW**2+SQMZ**2)/SH2*CTH2-2.*(SQMW+SQMZ)/SH*BE2*CTH))
1023 AUWIM=0.
1024 A4RE=2.*(1.-XW)/SQMZ*(3.-CTH2-4.*(SQMW+SQMZ)/SH)
1025 A4IM=0.
1026 FACH=COMFAC*1./(4096.*PARU(1)**2*16.*(1.-XW)**2)*(AEM/XW)**4*
1027 & (SH/SQMW)**2*((ASHRE+ATWRE+AUWRE+A4RE)**2+
1028 & (ASHIM+ATWIM+AUWIM+A4IM)**2)*SQMZ/SQMW
1029 DO 550 I=MIN1,MAX1
1030 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 550
1031 EI=KCHG(IABS(I),1)/3.
1032 AI=SIGN(1.,EI)
1033 VI=AI-4.*EI*XW
1034 AVI=AI**2+VI**2
1035 DO 540 J=MIN2,MAX2
1036 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 540
1037 EJ=KCHG(IABS(J),1)/3.
1038 AJ=SIGN(1.,EJ)
1039 VJ=AJ-4.*EJ*XW
1040 AVJ=AJ**2+VJ**2
1041 NCHN=NCHN+1
1042 ISIG(NCHN,1)=I
1043 ISIG(NCHN,2)=J
1044 ISIG(NCHN,3)=1
1045 SIGH(NCHN)=FACH*AVI*AVJ
1046 540 CONTINUE
1047 550 CONTINUE
1048
1049 ELSEIF(ISUB.EQ.73) THEN
1050C...Z0 + W+/- -> Z0 + W+/-.
1051 BE2=1.-2.*(SQMZ+SQMW)/SH+((SQMZ-SQMW)/SH)**2
1052 EP1=1.+(SQMZ-SQMW)/SH
1053 EP2=1.-(SQMZ-SQMW)/SH
1054 TH=-0.5*SH*BE2*(1.-CTH)
1055 UH=(SQMZ-SQMW)**2/SH-0.5*SH*BE2*(1.+CTH)
1056 THANG=SQRT(SQMW/(SQMZ*(1.-XW)))*(BE2-EP1*CTH)*(BE2-EP2*CTH)
1057 ATHRE=(TH-SQMH)/((TH-SQMH)**2+GMMH**2)*THANG
1058 ATHIM=-GMMH/((TH-SQMH)**2+GMMH**2)*THANG
1059 ASWRE=(1.-XW)/SQMZ*SH/(SH-SQMW)*(-BE2*(EP1+EP2)**4*CTH+
1060 & 1./4.*(BE2+EP1*EP2)**2*((EP1-EP2)**2-4.*BE2*CTH)+
1061 & 2.*BE2*(BE2+EP1*EP2)*(EP1+EP2)**2*CTH-
1062 & 1./16.*SH/SQMW*(EP1**2-EP2**2)**2*(BE2+EP1*EP2)**2)
1063 ASWIM=0.
1064 AUWRE=(1.-XW)/SQMZ*SH/(UH-SQMW)*(-BE2*(EP2+EP1*CTH)*
1065 & (EP1+EP2*CTH)*(BE2+EP1*EP2)+BE2*(EP2+EP1*CTH)*
1066 & (BE2+EP1*EP2*CTH)*(2.*EP2-EP2*CTH+EP1)-BE2*(EP2+EP1*CTH)**2*
1067 & (BE2-EP2**2*CTH)-1./8.*(BE2+EP1*EP2*CTH)**2*((EP1+EP2)**2+
1068 & 2.*BE2*(1.-CTH))+1./32.*SH/SQMW*(BE2+EP1*EP2*CTH)**2*
1069 & (EP1**2-EP2**2)**2-BE2*(EP1+EP2*CTH)*(EP2+EP1*CTH)*
1070 & (BE2+EP1*EP2)+BE2*(EP1+EP2*CTH)*(BE2+EP1*EP2*CTH)*
1071 & (2.*EP1-EP1*CTH+EP2)-BE2*(EP1+EP2*CTH)**2*(BE2-EP1**2*CTH)-
1072 & 1./8.*(BE2+EP1*EP2*CTH)**2*((EP1+EP2)**2+2.*BE2*(1.-CTH))+
1073 & 1./32.*SH/SQMW*(BE2+EP1*EP2*CTH)**2*(EP1**2-EP2**2)**2)
1074 AUWIM=0.
1075 A4RE=(1.-XW)/SQMZ*(EP1**2*EP2**2*(CTH**2-1.)-
1076 & 2.*BE2*(EP1**2+EP2**2+EP1*EP2)*CTH-2.*BE2*EP1*EP2)
1077 A4IM=0.
1078 FACH=COMFAC*1./(4096.*PARU(1)**2*4.*(1.-XW))*(AEM/XW)**4*
1079 & (SH/SQMW)**2*((ATHRE+ASWRE+AUWRE+A4RE)**2+
1080 & (ATHIM+ASWIM+AUWIM+A4IM)**2)*SQRT(SQMZ/SQMW)
1081 DO 570 I=MIN1,MAX1
1082 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 570
1083 EI=KCHG(IABS(I),1)/3.
1084 AI=SIGN(1.,EI)
1085 VI=AI-4.*EI*XW
1086 AVI=AI**2+VI**2
1087 DO 560 J=MIN2,MAX2
1088 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 560
1089 EJ=KCHG(IABS(J),1)/3.
1090 AJ=SIGN(1.,EJ)
1091 VJ=AI-4.*EJ*XW
1092 AVJ=AJ**2+VJ**2
1093 NCHN=NCHN+1
1094 ISIG(NCHN,1)=I
1095 ISIG(NCHN,2)=J
1096 ISIG(NCHN,3)=1
1097 SIGH(NCHN)=FACH*(AVI*VINT(180+J)+VINT(180+I)*AVJ)
1098 560 CONTINUE
1099 570 CONTINUE
1100
1101 ELSEIF(ISUB.EQ.75) THEN
1102C...W+ + W- -> gamma + gamma.
1103
1104 ELSEIF(ISUB.EQ.76) THEN
1105C...W+ + W- -> Z0 + Z0.
1106 BE2=SQRT((1.-4.*SQMW/SH)*(1.-4.*SQMZ/SH))
1107 CTH2=CTH**2
1108 TH=-0.5*SH*(1.-2.*(SQMW+SQMZ)/SH-BE2*CTH)
1109 UH=-0.5*SH*(1.-2.*(SQMW+SQMZ)/SH+BE2*CTH)
1110 SHANG=4.*SQRT(SQMW/(SQMZ*(1.-XW)))*(1.-2.*SQMW/SH)*
1111 & (1.-2.*SQMZ/SH)
1112 ASHRE=(SH-SQMH)/((SH-SQMH)**2+GMMH**2)*SHANG
1113 ASHIM=-GMMH/((SH-SQMH)**2+GMMH**2)*SHANG
1114 ATWRE=(1.-XW)/SQMZ*SH/(TH-SQMW)*((CTH-BE2)**2*(3./2.+BE2/2.*CTH-
1115 & (SQMW+SQMZ)/SH+(SQMW-SQMZ)**2/(SH*SQMW))+4.*((SQMW+SQMZ)/SH*
1116 & (1.-3.*CTH2)+8.*SQMW*SQMZ/SH2*(2.*CTH2-1.)+
1117 & 4.*(SQMW**2+SQMZ**2)/SH2*CTH2+2.*(SQMW+SQMZ)/SH*BE2*CTH))
1118 ATWIM=0.
1119 AUWRE=(1.-XW)/SQMZ*SH/(UH-SQMW)*((CTH+BE2)**2*(3./2.-BE2/2.*CTH-
1120 & (SQMW+SQMZ)/SH+(SQMW-SQMZ)**2/(SH*SQMW))+4.*((SQMW+SQMZ)/SH*
1121 & (1.-3.*CTH2)+8.*SQMW*SQMZ/SH2*(2.*CTH2-1.)+
1122 & 4.*(SQMW**2+SQMZ**2)/SH2*CTH2-2.*(SQMW+SQMZ)/SH*BE2*CTH))
1123 AUWIM=0.
1124 A4RE=2.*(1.-XW)/SQMZ*(3.-CTH2-4.*(SQMW+SQMZ)/SH)
1125 A4IM=0.
1126 FACH=0.5*COMFAC*1./(4096.*PARU(1)**2)*(AEM/XW)**4*(SH/SQMW)**2*
1127 & ((ASHRE+ATWRE+AUWRE+A4RE)**2+(ASHIM+ATWIM+AUWIM+A4IM)**2)
1128 DO 590 I=MIN1,MAX1
1129 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 590
1130 EI=SIGN(1.,FLOAT(I))*KCHG(IABS(I),1)
1131 DO 580 J=MIN2,MAX2
1132 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 580
1133 EJ=SIGN(1.,FLOAT(J))*KCHG(IABS(J),1)
1134 IF(EI*EJ.GT.0.) GOTO 580
1135 NCHN=NCHN+1
1136 ISIG(NCHN,1)=I
1137 ISIG(NCHN,2)=J
1138 ISIG(NCHN,3)=1
1139 SIGH(NCHN)=FACH*VINT(180+I)*VINT(180+J)
1140 580 CONTINUE
1141 590 CONTINUE
1142
1143 ELSEIF(ISUB.EQ.77) THEN
1144C...W+/- + W+/- -> W+/- + W+/-.
1145 BE2=1.-4.*SQMW/SH
1146 BE4=BE2**2
1147 CTH2=CTH**2
1148 CTH3=CTH**3
1149 TH=-0.5*SH*BE2*(1.-CTH)
1150 UH=-0.5*SH*BE2*(1.+CTH)
1151 SHANG=(1.+BE2)**2
1152 ASHRE=(SH-SQMH)/((SH-SQMH)**2+GMMH**2)*SHANG
1153 ASHIM=-GMMH/((SH-SQMH)**2+GMMH**2)*SHANG
1154 THANG=(BE2-CTH)**2
1155 ATHRE=(TH-SQMH)/((TH-SQMH)**2+GMMH**2)*THANG
1156 ATHIM=-GMMH/((TH-SQMH)**2+GMMH**2)*THANG
1157 SGZANG=1./SQMW*BE2*(3.-BE2)**2*CTH
1158 ASGRE=XW*SGZANG
1159 ASGIM=0.
1160 ASZRE=(1.-XW)*SH/(SH-SQMZ)*SGZANG
1161 ASZIM=0.
1162 TGZANG=1./SQMW*(BE2*(4.-2.*BE2+BE4)+BE2*(4.-10.*BE2+BE4)*CTH+
1163 & (2.-11.*BE2+10.*BE4)*CTH2+BE2*CTH3)
1164 ATGRE=0.5*XW*SH/TH*TGZANG
1165 ATGIM=0.
1166 ATZRE=0.5*(1.-XW)*SH/(TH-SQMZ)*TGZANG
1167 ATZIM=0.
1168 A4RE=1./SQMW*(1.+2.*BE2-6.*BE2*CTH-CTH2)
1169 A4IM=0.
1170 FACH=COMFAC*1./(4096.*PARU(1)**2)*(AEM/XW)**4*(SH/SQMW)**2*
1171 & ((ASHRE+ATHRE+ASGRE+ASZRE+ATGRE+ATZRE+A4RE)**2+
1172 & (ASHIM+ATHIM+ASGIM+ASZIM+ATGIM+ATZIM+A4IM)**2)
1173 DO 610 I=MIN1,MAX1
1174 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 610
1175 EI=SIGN(1.,FLOAT(I))*KCHG(IABS(I),1)
1176 DO 600 J=MIN2,MAX2
1177 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 600
1178 EJ=SIGN(1.,FLOAT(J))*KCHG(IABS(J),1)
1179 IF(EI*EJ.GT.0.) GOTO 600
1180 NCHN=NCHN+1
1181 ISIG(NCHN,1)=I
1182 ISIG(NCHN,2)=J
1183 ISIG(NCHN,3)=1
1184 SIGH(NCHN)=FACH*VINT(180+I)*VINT(180+J)
1185 600 CONTINUE
1186 610 CONTINUE
1187
1188 ELSEIF(ISUB.EQ.78) THEN
1189C...W+/- + H0 -> W+/- + H0.
1190
1191 ELSEIF(ISUB.EQ.79) THEN
1192C...H0 + H0 -> H0 + H0.
1193
1194 ENDIF
1195
1196C...C: 2 -> 2, tree diagrams with masses.
1197
1198 ELSEIF(ISUB.LE.90) THEN
1199 IF(ISUB.EQ.81) THEN
1200C...q + qb -> Q + QB.
1201 FACQQB=COMFAC*AS**2*4./9.*(((TH-SQM3)**2+
1202 & (UH-SQM3)**2)/SH2+2.*SQM3/SH)
1203 IF(MSTP(35).GE.1) THEN
1204 IF(MSTP(35).EQ.1) THEN
1205 ALSSG=PARP(35)
1206 ELSE
1207 MST115=MSTU(115)
1208 MSTU(115)=MSTP(36)
1209 Q2BN=SQRT(SQM3*((SQRT(SH)-2.*SQRT(SQM3))**2+PARP(36)**2))
1210 ALSSG=ULALPS_HIJING(Q2BN)
1211 MSTU(115)=MST115
1212 ENDIF
1213 XREPU=PARU(1)*ALSSG/(6.*SQRT(MAX(1E-20,1.-4.*SQM3/SH)))
1214 FREPU=XREPU/(EXP(MIN(100.,XREPU))-1.)
1215 PARI(81)=FREPU
1216 FACQQB=FACQQB*FREPU
1217 ENDIF
1218 DO 620 I=MINA,MAXA
1219 IF(I.EQ.0.OR.KFAC(1,I)*KFAC(2,-I).EQ.0) GOTO 620
1220 NCHN=NCHN+1
1221 ISIG(NCHN,1)=I
1222 ISIG(NCHN,2)=-I
1223 ISIG(NCHN,3)=1
1224 SIGH(NCHN)=FACQQB
1225 620 CONTINUE
1226
1227 ELSEIF(ISUB.EQ.82) THEN
1228C...g + g -> Q + QB.
1229 FACQQ1=COMFAC*FACA*AS**2*1./6.*((UH-SQM3)/(TH-SQM3)-
1230 & 2.*(UH-SQM3)**2/SH2+4.*SQM3/SH*(TH*UH-SQM3**2)/(TH-SQM3)**2)
1231 FACQQ2=COMFAC*FACA*AS**2*1./6.*((TH-SQM3)/(UH-SQM3)-
1232 & 2.*(TH-SQM3)**2/SH2+4.*SQM3/SH*(TH*UH-SQM3**2)/(UH-SQM3)**2)
1233 IF(MSTP(35).GE.1) THEN
1234 IF(MSTP(35).EQ.1) THEN
1235 ALSSG=PARP(35)
1236 ELSE
1237 MST115=MSTU(115)
1238 MSTU(115)=MSTP(36)
1239 Q2BN=SQRT(SQM3*((SQRT(SH)-2.*SQRT(SQM3))**2+PARP(36)**2))
1240 ALSSG=ULALPS_HIJING(Q2BN)
1241 MSTU(115)=MST115
1242 ENDIF
1243 XATTR=4.*PARU(1)*ALSSG/(3.*SQRT(MAX(1E-20,1.-4.*SQM3/SH)))
1244 FATTR=XATTR/(1.-EXP(-MIN(100.,XATTR)))
1245 XREPU=PARU(1)*ALSSG/(6.*SQRT(MAX(1E-20,1.-4.*SQM3/SH)))
1246 FREPU=XREPU/(EXP(MIN(100.,XREPU))-1.)
1247 FATRE=(2.*FATTR+5.*FREPU)/7.
1248 PARI(81)=FATRE
1249 FACQQ1=FACQQ1*FATRE
1250 FACQQ2=FACQQ2*FATRE
1251 ENDIF
1252 IF(KFAC(1,21)*KFAC(2,21).EQ.0) GOTO 630
1253 NCHN=NCHN+1
1254 ISIG(NCHN,1)=21
1255 ISIG(NCHN,2)=21
1256 ISIG(NCHN,3)=1
1257 SIGH(NCHN)=FACQQ1
1258 NCHN=NCHN+1
1259 ISIG(NCHN,1)=21
1260 ISIG(NCHN,2)=21
1261 ISIG(NCHN,3)=2
1262 SIGH(NCHN)=FACQQ2
1263 630 CONTINUE
1264
1265 ENDIF
1266
1267C...D: Mimimum bias processes.
1268
1269 ELSEIF(ISUB.LE.100) THEN
1270 IF(ISUB.EQ.91) THEN
1271C...Elastic scattering.
1272 SIGS=XSEC(ISUB,1)
1273
1274 ELSEIF(ISUB.EQ.92) THEN
1275C...Single diffractive scattering.
1276 SIGS=XSEC(ISUB,1)
1277
1278 ELSEIF(ISUB.EQ.93) THEN
1279C...Double diffractive scattering.
1280 SIGS=XSEC(ISUB,1)
1281
1282 ELSEIF(ISUB.EQ.94) THEN
1283C...Central diffractive scattering.
1284 SIGS=XSEC(ISUB,1)
1285
1286 ELSEIF(ISUB.EQ.95) THEN
1287C...Low-pT scattering.
1288 SIGS=XSEC(ISUB,1)
1289
1290 ELSEIF(ISUB.EQ.96) THEN
1291C...Multiple interactions: sum of QCD processes.
1292 CALL PYWIDT_HIJING(21,SQRT(SH),WDTP,WDTE)
1293
1294C...q + q' -> q + q'.
1295 FACQQ1=COMFAC*AS**2*4./9.*(SH2+UH2)/TH2
1296 FACQQB=COMFAC*AS**2*4./9.*((SH2+UH2)/TH2*FACA-
1297 & MSTP(34)*2./3.*UH2/(SH*TH))
1298 FACQQ2=COMFAC*AS**2*4./9.*((SH2+TH2)/UH2-
1299 & MSTP(34)*2./3.*SH2/(TH*UH))
1300 DO 650 I=-3,3
1301 IF(I.EQ.0) GOTO 650
1302 DO 640 J=-3,3
1303 IF(J.EQ.0) GOTO 640
1304 NCHN=NCHN+1
1305 ISIG(NCHN,1)=I
1306 ISIG(NCHN,2)=J
1307 ISIG(NCHN,3)=111
1308 SIGH(NCHN)=FACQQ1
1309 IF(I.EQ.-J) SIGH(NCHN)=FACQQB
1310 IF(I.EQ.J) THEN
1311 SIGH(NCHN)=0.5*SIGH(NCHN)
1312 NCHN=NCHN+1
1313 ISIG(NCHN,1)=I
1314 ISIG(NCHN,2)=J
1315 ISIG(NCHN,3)=112
1316 SIGH(NCHN)=0.5*FACQQ2
1317 ENDIF
1318 640 CONTINUE
1319 650 CONTINUE
1320
1321C...q + qb -> q' + qb' or g + g.
1322 FACQQB=COMFAC*AS**2*4./9.*(TH2+UH2)/SH2*(WDTE(0,1)+WDTE(0,2)+
1323 & WDTE(0,3)+WDTE(0,4))
1324 FACGG1=COMFAC*AS**2*32./27.*(UH/TH-(2.+MSTP(34)*1./4.)*UH2/SH2)
1325 FACGG2=COMFAC*AS**2*32./27.*(TH/UH-(2.+MSTP(34)*1./4.)*TH2/SH2)
1326 DO 660 I=-3,3
1327 IF(I.EQ.0) GOTO 660
1328 NCHN=NCHN+1
1329 ISIG(NCHN,1)=I
1330 ISIG(NCHN,2)=-I
1331 ISIG(NCHN,3)=121
1332 SIGH(NCHN)=FACQQB
1333 NCHN=NCHN+1
1334 ISIG(NCHN,1)=I
1335 ISIG(NCHN,2)=-I
1336 ISIG(NCHN,3)=131
1337 SIGH(NCHN)=0.5*FACGG1
1338 NCHN=NCHN+1
1339 ISIG(NCHN,1)=I
1340 ISIG(NCHN,2)=-I
1341 ISIG(NCHN,3)=132
1342 SIGH(NCHN)=0.5*FACGG2
1343 660 CONTINUE
1344
1345C...q + g -> q + g.
1346 FACQG1=COMFAC*AS**2*4./9.*((2.+MSTP(34)*1./4.)*UH2/TH2-UH/SH)*
1347 & FACA
1348 FACQG2=COMFAC*AS**2*4./9.*((2.+MSTP(34)*1./4.)*SH2/TH2-SH/UH)
1349 DO 680 I=-3,3
1350 IF(I.EQ.0) GOTO 680
1351 DO 670 ISDE=1,2
1352 NCHN=NCHN+1
1353 ISIG(NCHN,ISDE)=I
1354 ISIG(NCHN,3-ISDE)=21
1355 ISIG(NCHN,3)=281
1356 SIGH(NCHN)=FACQG1
1357 NCHN=NCHN+1
1358 ISIG(NCHN,ISDE)=I
1359 ISIG(NCHN,3-ISDE)=21
1360 ISIG(NCHN,3)=282
1361 SIGH(NCHN)=FACQG2
1362 670 CONTINUE
1363 680 CONTINUE
1364
1365C...g + g -> q + qb or g + g.
1366 FACQQ1=COMFAC*AS**2*1./6.*(UH/TH-(2.+MSTP(34)*1./4.)*UH2/SH2)*
1367 & (WDTE(0,1)+WDTE(0,2)+WDTE(0,3)+WDTE(0,4))*FACA
1368 FACQQ2=COMFAC*AS**2*1./6.*(TH/UH-(2.+MSTP(34)*1./4.)*TH2/SH2)*
1369 & (WDTE(0,1)+WDTE(0,2)+WDTE(0,3)+WDTE(0,4))*FACA
1370 FACGG1=COMFAC*AS**2*9./4.*(SH2/TH2+2.*SH/TH+3.+2.*TH/SH+
1371 & TH2/SH2)*FACA
1372 FACGG2=COMFAC*AS**2*9./4.*(UH2/SH2+2.*UH/SH+3.+2.*SH/UH+
1373 & SH2/UH2)*FACA
1374 FACGG3=COMFAC*AS**2*9./4.*(TH2/UH2+2.*TH/UH+3+2.*UH/TH+UH2/TH2)
1375 NCHN=NCHN+1
1376 ISIG(NCHN,1)=21
1377 ISIG(NCHN,2)=21
1378 ISIG(NCHN,3)=531
1379 SIGH(NCHN)=FACQQ1
1380 NCHN=NCHN+1
1381 ISIG(NCHN,1)=21
1382 ISIG(NCHN,2)=21
1383 ISIG(NCHN,3)=532
1384 SIGH(NCHN)=FACQQ2
1385 NCHN=NCHN+1
1386 ISIG(NCHN,1)=21
1387 ISIG(NCHN,2)=21
1388 ISIG(NCHN,3)=681
1389 SIGH(NCHN)=0.5*FACGG1
1390 NCHN=NCHN+1
1391 ISIG(NCHN,1)=21
1392 ISIG(NCHN,2)=21
1393 ISIG(NCHN,3)=682
1394 SIGH(NCHN)=0.5*FACGG2
1395 NCHN=NCHN+1
1396 ISIG(NCHN,1)=21
1397 ISIG(NCHN,2)=21
1398 ISIG(NCHN,3)=683
1399 SIGH(NCHN)=0.5*FACGG3
1400 ENDIF
1401
1402C...E: 2 -> 1, loop diagrams.
1403
1404 ELSEIF(ISUB.LE.110) THEN
1405 IF(ISUB.EQ.101) THEN
1406C...g + g -> gamma*/Z0.
1407
1408 ELSEIF(ISUB.EQ.102) THEN
1409C...g + g -> H0.
1410 CALL PYWIDT_HIJING(25,SQRT(SH),WDTP,WDTE)
1411 ETARE=0.
1412 ETAIM=0.
1413 DO 690 I=1,2*MSTP(1)
1414 EPS=4.*PMAS(I,1)**2/SH
1415 IF(EPS.LE.1.) THEN
1416 IF(EPS.GT.1.E-4) THEN
1417 ROOT=SQRT(1.-EPS)
1418 RLN=LOG((1.+ROOT)/(1.-ROOT))
1419 ELSE
1420 RLN=LOG(4./EPS-2.)
1421 ENDIF
1422 PHIRE=0.25*(RLN**2-PARU(1)**2)
1423 PHIIM=0.5*PARU(1)*RLN
1424 ELSE
1425 PHIRE=-(ASIN(1./SQRT(EPS)))**2
1426 PHIIM=0.
1427 ENDIF
1428 ETARE=ETARE+0.5*EPS*(1.+(EPS-1.)*PHIRE)
1429 ETAIM=ETAIM+0.5*EPS*(EPS-1.)*PHIIM
1430 690 CONTINUE
1431 ETA2=ETARE**2+ETAIM**2
1432 FACH=COMFAC*FACA*(AS/PARU(1)*AEM/XW)**2*1./512.*
1433 & (SH/SQMW)**2*ETA2*SH2/((SH-SQMH)**2+GMMH**2)*
1434 & (WDTE(0,1)+WDTE(0,2)+WDTE(0,4))
1435 IF(KFAC(1,21)*KFAC(2,21).EQ.0) GOTO 700
1436 NCHN=NCHN+1
1437 ISIG(NCHN,1)=21
1438 ISIG(NCHN,2)=21
1439 ISIG(NCHN,3)=1
1440 SIGH(NCHN)=FACH
1441 700 CONTINUE
1442
1443 ENDIF
1444
1445C...F: 2 -> 2, box diagrams.
1446
1447 ELSEIF(ISUB.LE.120) THEN
1448 IF(ISUB.EQ.111) THEN
1449C...f + fb -> g + H0 (q + qb -> g + H0 only).
1450 A5STUR=0.
1451 A5STUI=0.
1452 DO 710 I=1,2*MSTP(1)
1453 SQMQ=PMAS(I,1)**2
1454 EPSS=4.*SQMQ/SH
1455 EPSH=4.*SQMQ/SQMH
1456 A5STUR=A5STUR+SQMQ/SQMH*(4.+4.*SH/(TH+UH)*(PYW1AU_HIJING(EPSS,1)
1457 $ -PYW1AU_HIJING(EPSH,1))+(1.-4.*SQMQ/(TH+UH))
1458 $ *(PYW2AU_HIJING(EPSS,1)-PYW2AU_HIJING(EPSH,1)))
1459 A5STUI=A5STUI+SQMQ/SQMH*(4.*SH/(TH+UH)*(PYW1AU_HIJING(EPSS,2)-
1460 & PYW1AU_HIJING(EPSH,2))+(1.-4.*SQMQ/(TH+UH))
1461 $ *(PYW2AU_HIJING(EPSS,2)-PYW2AU_HIJING(EPSH,2)))
1462 710 CONTINUE
1463 FACGH=COMFAC*FACA/(144.*PARU(1)**2)*AEM/XW*AS**3*SQMH/SQMW*
1464 & SQMH/SH*(UH**2+TH**2)/(UH+TH)**2*(A5STUR**2+A5STUI**2)
1465 FACGH=FACGH*WIDS(25,2)
1466 DO 720 I=MINA,MAXA
1467 IF(I.EQ.0.OR.KFAC(1,I)*KFAC(2,-I).EQ.0) GOTO 720
1468 NCHN=NCHN+1
1469 ISIG(NCHN,1)=I
1470 ISIG(NCHN,2)=-I
1471 ISIG(NCHN,3)=1
1472 SIGH(NCHN)=FACGH
1473 720 CONTINUE
1474
1475 ELSEIF(ISUB.EQ.112) THEN
1476C...f + g -> f + H0 (q + g -> q + H0 only).
1477 A5TSUR=0.
1478 A5TSUI=0.
1479 DO 730 I=1,2*MSTP(1)
1480 SQMQ=PMAS(I,1)**2
1481 EPST=4.*SQMQ/TH
1482 EPSH=4.*SQMQ/SQMH
1483 A5TSUR=A5TSUR+SQMQ/SQMH*(4.+4.*TH/(SH+UH)*(PYW1AU_HIJING(EPST,1)
1484 $ -PYW1AU_HIJING(EPSH,1))+(1.-4.*SQMQ/(SH+UH))
1485 $ *(PYW2AU_HIJING(EPST,1)-PYW2AU_HIJING(EPSH,1)))
1486 A5TSUI=A5TSUI+SQMQ/SQMH*(4.*TH/(SH+UH)*(PYW1AU_HIJING(EPST,2)-
1487 & PYW1AU_HIJING(EPSH,2))+(1.-4.*SQMQ/(SH+UH))
1488 $ *(PYW2AU_HIJING(EPST,2)-PYW2AU_HIJING(EPSH,2)))
1489 730 CONTINUE
1490 FACQH=COMFAC*FACA/(384.*PARU(1)**2)*AEM/XW*AS**3*SQMH/SQMW*
1491 & SQMH/(-TH)*(UH**2+SH**2)/(UH+SH)**2*(A5TSUR**2+A5TSUI**2)
1492 FACQH=FACQH*WIDS(25,2)
1493 DO 750 I=MINA,MAXA
1494 IF(I.EQ.0) GOTO 750
1495 DO 740 ISDE=1,2
1496 IF(ISDE.EQ.1.AND.KFAC(1,I)*KFAC(2,21).EQ.0) GOTO 740
1497 IF(ISDE.EQ.2.AND.KFAC(1,21)*KFAC(2,I).EQ.0) GOTO 740
1498 NCHN=NCHN+1
1499 ISIG(NCHN,ISDE)=I
1500 ISIG(NCHN,3-ISDE)=21
1501 ISIG(NCHN,3)=1
1502 SIGH(NCHN)=FACQH
1503 740 CONTINUE
1504 750 CONTINUE
1505
1506 ELSEIF(ISUB.EQ.113) THEN
1507C...g + g -> g + H0.
1508 A2STUR=0.
1509 A2STUI=0.
1510 A2USTR=0.
1511 A2USTI=0.
1512 A2TUSR=0.
1513 A2TUSI=0.
1514 A4STUR=0.
1515 A4STUI=0.
1516 DO 760 I=6,2*MSTP(1)
1517C'''Only t-quarks yet included
1518 SQMQ=PMAS(I,1)**2
1519 EPSS=4.*SQMQ/SH
1520 EPST=4.*SQMQ/TH
1521 EPSU=4.*SQMQ/UH
1522 EPSH=4.*SQMQ/SQMH
1523 IF(EPSH.LT.1.E-6) GOTO 760
1524 BESTU=0.5*(1.+SQRT(1.+EPSS*TH/UH))
1525 BEUST=0.5*(1.+SQRT(1.+EPSU*SH/TH))
1526 BETUS=0.5*(1.+SQRT(1.+EPST*UH/SH))
1527 BEUTS=BESTU
1528 BETSU=BEUST
1529 BESUT=BETUS
1530 W3STUR=PYI3AU_HIJING(BESTU,EPSH,1)-PYI3AU_HIJING(BESTU,EPSS,1)-
1531 & PYI3AU_HIJING(BESTU,EPSU,1)
1532 W3STUI=PYI3AU_HIJING(BESTU,EPSH,2)-PYI3AU_HIJING(BESTU,EPSS,2)-
1533 & PYI3AU_HIJING(BESTU,EPSU,2)
1534 W3SUTR=PYI3AU_HIJING(BESUT,EPSH,1)-PYI3AU_HIJING(BESUT,EPSS,1)-
1535 & PYI3AU_HIJING(BESUT,EPST,1)
1536 W3SUTI=PYI3AU_HIJING(BESUT,EPSH,2)-PYI3AU_HIJING(BESUT,EPSS,2)-
1537 & PYI3AU_HIJING(BESUT,EPST,2)
1538 W3TSUR=PYI3AU_HIJING(BETSU,EPSH,1)-PYI3AU_HIJING(BETSU,EPST,1)-
1539 & PYI3AU_HIJING(BETSU,EPSU,1)
1540 W3TSUI=PYI3AU_HIJING(BETSU,EPSH,2)-PYI3AU_HIJING(BETSU,EPST,2)-
1541 & PYI3AU_HIJING(BETSU,EPSU,2)
1542 W3TUSR=PYI3AU_HIJING(BETUS,EPSH,1)-PYI3AU_HIJING(BETUS,EPST,1)-
1543 & PYI3AU_HIJING(BETUS,EPSS,1)
1544 W3TUSI=PYI3AU_HIJING(BETUS,EPSH,2)-PYI3AU_HIJING(BETUS,EPST,2)-
1545 & PYI3AU_HIJING(BETUS,EPSS,2)
1546 W3USTR=PYI3AU_HIJING(BEUST,EPSH,1)-PYI3AU_HIJING(BEUST,EPSU,1)-
1547 & PYI3AU_HIJING(BEUST,EPST,1)
1548 W3USTI=PYI3AU_HIJING(BEUST,EPSH,2)-PYI3AU_HIJING(BEUST,EPSU,2)-
1549 & PYI3AU_HIJING(BEUST,EPST,2)
1550 W3UTSR=PYI3AU_HIJING(BEUTS,EPSH,1)-PYI3AU_HIJING(BEUTS,EPSU,1)-
1551 & PYI3AU_HIJING(BEUTS,EPSS,1)
1552 W3UTSI=PYI3AU_HIJING(BEUTS,EPSH,2)-PYI3AU_HIJING(BEUTS,EPSU,2)-
1553 & PYI3AU_HIJING(BEUTS,EPSS,2)
1554 B2STUR=SQMQ/SQMH**2*(SH*(UH-SH)/(SH+UH)+2.*TH*UH*(UH+2.*SH)/
1555 & (SH+UH)**2*(PYW1AU_HIJING(EPST,1)-PYW1AU_HIJING(EPSH,1))
1556 $ +(SQMQ-SH/4.)*(0.5*PYW2AU_HIJING(EPSS,1)+0.5
1557 $ *PYW2AU_HIJING(EPSH,1)-PYW2AU_HIJING(EPST,1)+W3STUR)+SH**2
1558 $ *(2.*SQMQ/(SH+UH)**2-0.5/(SH+UH))*(PYW2AU_HIJING(EPST,1)
1559 $ -PYW2AU_HIJING(EPSH,1))+0.5*TH*UH/SH*(PYW2AU_HIJING(EPSH,1)
1560 $ -2.*PYW2AU_HIJING(EPST,1))+0.125*(SH-12.*SQMQ-4.*TH*UH/SH)
1561 $ *W3TSUR)
1562 B2STUI=SQMQ/SQMH**2*(2.*TH*UH*(UH+2.*SH)/(SH+UH)**2*
1563 & (PYW1AU_HIJING(EPST,2)-PYW1AU_HIJING(EPSH,2))+(SQMQ-SH/4.)*
1564 & (0.5*PYW2AU_HIJING(EPSS,2)+0.5*PYW2AU_HIJING(EPSH,2)
1565 $ -PYW2AU_HIJING(EPST,2)+W3STUI)+SH**2*(2.*SQMQ/(SH+UH)**2-0
1566 $ .5/(SH+UH))*(PYW2AU_HIJING(EPST,2)-PYW2AU_HIJING(EPSH,2))+0
1567 $ .5*TH*UH/SH*(PYW2AU_HIJING(EPSH,2)-2.*PYW2AU_HIJING(EPST,2)
1568 $ )+0.125*(SH-12.*SQMQ-4.*TH*UH/SH)*W3TSUI)
1569 B2SUTR=SQMQ/SQMH**2*(SH*(TH-SH)/(SH+TH)+2.*UH*TH*(TH+2.*SH)/
1570 & (SH+TH)**2*(PYW1AU_HIJING(EPSU,1)-PYW1AU_HIJING(EPSH,1))
1571 $ +(SQMQ-SH/4.)*(0.5*PYW2AU_HIJING(EPSS,1)+0.5
1572 $ *PYW2AU_HIJING(EPSH,1)-PYW2AU_HIJING(EPSU,1)+W3SUTR)+SH**2
1573 $ *(2.*SQMQ/(SH+TH)**2-0.5/(SH+TH))*(PYW2AU_HIJING(EPSU,1)
1574 $ -PYW2AU_HIJING(EPSH,1))+0.5*UH*TH/SH*(PYW2AU_HIJING(EPSH,1)
1575 $ -2.*PYW2AU_HIJING(EPSU,1))+0.125*(SH-12.*SQMQ-4.*UH*TH/SH)
1576 $ *W3USTR)
1577 B2SUTI=SQMQ/SQMH**2*(2.*UH*TH*(TH+2.*SH)/(SH+TH)**2*
1578 & (PYW1AU_HIJING(EPSU,2)-PYW1AU_HIJING(EPSH,2))+(SQMQ-SH/4.)*
1579 & (0.5*PYW2AU_HIJING(EPSS,2)+0.5*PYW2AU_HIJING(EPSH,2)
1580 $ -PYW2AU_HIJING(EPSU,2)+W3SUTI)+SH**2*(2.*SQMQ/(SH+TH)**2-0
1581 $ .5/(SH+TH))*(PYW2AU_HIJING(EPSU,2)-PYW2AU_HIJING(EPSH,2))+0
1582 $ .5*UH*TH/SH*(PYW2AU_HIJING(EPSH,2)-2.*PYW2AU_HIJING(EPSU,2)
1583 $ )+0.125*(SH-12.*SQMQ-4.*UH*TH/SH)*W3USTI)
1584 B2TSUR=SQMQ/SQMH**2*(TH*(UH-TH)/(TH+UH)+2.*SH*UH*(UH+2.*TH)/
1585 & (TH+UH)**2*(PYW1AU_HIJING(EPSS,1)-PYW1AU_HIJING(EPSH,1))
1586 $ +(SQMQ-TH/4.)*(0.5*PYW2AU_HIJING(EPST,1)+0.5
1587 $ *PYW2AU_HIJING(EPSH,1)-PYW2AU_HIJING(EPSS,1)+W3TSUR)+TH**2
1588 $ *(2.*SQMQ/(TH+UH)**2-0.5/(TH+UH))*(PYW2AU_HIJING(EPSS,1)
1589 $ -PYW2AU_HIJING(EPSH,1))+0.5*SH*UH/TH*(PYW2AU_HIJING(EPSH,1)
1590 $ -2.*PYW2AU_HIJING(EPSS,1))+0.125*(TH-12.*SQMQ-4.*SH*UH/TH)
1591 $ *W3STUR)
1592 B2TSUI=SQMQ/SQMH**2*(2.*SH*UH*(UH+2.*TH)/(TH+UH)**2*
1593 & (PYW1AU_HIJING(EPSS,2)-PYW1AU_HIJING(EPSH,2))+(SQMQ-TH/4.)*
1594 & (0.5*PYW2AU_HIJING(EPST,2)+0.5*PYW2AU_HIJING(EPSH,2)
1595 $ -PYW2AU_HIJING(EPSS,2)+W3TSUI)+TH**2*(2.*SQMQ/(TH+UH)**2-0
1596 $ .5/(TH+UH))*(PYW2AU_HIJING(EPSS,2)-PYW2AU_HIJING(EPSH,2))+0
1597 $ .5*SH*UH/TH*(PYW2AU_HIJING(EPSH,2)-2.*PYW2AU_HIJING(EPSS,2)
1598 $ )+0.125*(TH-12.*SQMQ-4.*SH*UH/TH)*W3STUI)
1599 B2TUSR=SQMQ/SQMH**2*(TH*(SH-TH)/(TH+SH)+2.*UH*SH*(SH+2.*TH)/
1600 & (TH+SH)**2*(PYW1AU_HIJING(EPSU,1)-PYW1AU_HIJING(EPSH,1))
1601 $ +(SQMQ-TH/4.)*(0.5*PYW2AU_HIJING(EPST,1)+0.5
1602 $ *PYW2AU_HIJING(EPSH,1)-PYW2AU_HIJING(EPSU,1)+W3TUSR)+TH**2
1603 $ *(2.*SQMQ/(TH+SH)**2-0.5/(TH+SH))*(PYW2AU_HIJING(EPSU,1)
1604 $ -PYW2AU_HIJING(EPSH,1))+0.5*UH*SH/TH*(PYW2AU_HIJING(EPSH,1)
1605 $ -2.*PYW2AU_HIJING(EPSU,1))+0.125*(TH-12.*SQMQ-4.*UH*SH/TH)
1606 $ *W3UTSR)
1607 B2TUSI=SQMQ/SQMH**2*(2.*UH*SH*(SH+2.*TH)/(TH+SH)**2*
1608 & (PYW1AU_HIJING(EPSU,2)-PYW1AU_HIJING(EPSH,2))+(SQMQ-TH/4.)*
1609 & (0.5*PYW2AU_HIJING(EPST,2)+0.5*PYW2AU_HIJING(EPSH,2)
1610 $ -PYW2AU_HIJING(EPSU,2)+W3TUSI)+TH**2*(2.*SQMQ/(TH+SH)**2-0
1611 $ .5/(TH+SH))*(PYW2AU_HIJING(EPSU,2)-PYW2AU_HIJING(EPSH,2))+0
1612 $ .5*UH*SH/TH*(PYW2AU_HIJING(EPSH,2)-2.*PYW2AU_HIJING(EPSU,2)
1613 $ )+0.125*(TH-12.*SQMQ-4.*UH*SH/TH)*W3UTSI)
1614 B2USTR=SQMQ/SQMH**2*(UH*(TH-UH)/(UH+TH)+2.*SH*TH*(TH+2.*UH)/
1615 & (UH+TH)**2*(PYW1AU_HIJING(EPSS,1)-PYW1AU_HIJING(EPSH,1))
1616 $ +(SQMQ-UH/4.)*(0.5*PYW2AU_HIJING(EPSU,1)+0.5
1617 $ *PYW2AU_HIJING(EPSH,1)-PYW2AU_HIJING(EPSS,1)+W3USTR)+UH**2
1618 $ *(2.*SQMQ/(UH+TH)**2-0.5/(UH+TH))*(PYW2AU_HIJING(EPSS,1)
1619 $ -PYW2AU_HIJING(EPSH,1))+0.5*SH*TH/UH*(PYW2AU_HIJING(EPSH,1)
1620 $ -2.*PYW2AU_HIJING(EPSS,1))+0.125*(UH-12.*SQMQ-4.*SH*TH/UH)
1621 $ *W3SUTR)
1622 B2USTI=SQMQ/SQMH**2*(2.*SH*TH*(TH+2.*UH)/(UH+TH)**2*
1623 & (PYW1AU_HIJING(EPSS,2)-PYW1AU_HIJING(EPSH,2))+(SQMQ-UH/4.)*
1624 & (0.5*PYW2AU_HIJING(EPSU,2)+0.5*PYW2AU_HIJING(EPSH,2)
1625 $ -PYW2AU_HIJING(EPSS,2)+W3USTI)+UH**2*(2.*SQMQ/(UH+TH)**2-0
1626 $ .5/(UH+TH))*(PYW2AU_HIJING(EPSS,2)-PYW2AU_HIJING(EPSH,2))+0
1627 $ .5*SH*TH/UH*(PYW2AU_HIJING(EPSH,2)-2.*PYW2AU_HIJING(EPSS,2)
1628 $ )+0.125*(UH-12.*SQMQ-4.*SH*TH/UH)*W3SUTI)
1629 B2UTSR=SQMQ/SQMH**2*(UH*(SH-UH)/(UH+SH)+2.*TH*SH*(SH+2.*UH)/
1630 & (UH+SH)**2*(PYW1AU_HIJING(EPST,1)-PYW1AU_HIJING(EPSH,1))
1631 $ +(SQMQ-UH/4.)*(0.5*PYW2AU_HIJING(EPSU,1)+0.5
1632 $ *PYW2AU_HIJING(EPSH,1)-PYW2AU_HIJING(EPST,1)+W3UTSR)+UH**2
1633 $ *(2.*SQMQ/(UH+SH)**2-0.5/(UH+SH))*(PYW2AU_HIJING(EPST,1)
1634 $ -PYW2AU_HIJING(EPSH,1))+0.5*TH*SH/UH*(PYW2AU_HIJING(EPSH,1)
1635 $ -2.*PYW2AU_HIJING(EPST,1))+0.125*(UH-12.*SQMQ-4.*TH*SH/UH)
1636 $ *W3TUSR)
1637 B2UTSI=SQMQ/SQMH**2*(2.*TH*SH*(SH+2.*UH)/(UH+SH)**2*
1638 & (PYW1AU_HIJING(EPST,2)-PYW1AU_HIJING(EPSH,2))+(SQMQ-UH/4.)*
1639 & (0.5*PYW2AU_HIJING(EPSU,2)+0.5*PYW2AU_HIJING(EPSH,2)
1640 $ -PYW2AU_HIJING(EPST,2)+W3UTSI)+UH**2*(2.*SQMQ/(UH+SH)**2-0
1641 $ .5/(UH+SH))*(PYW2AU_HIJING(EPST,2)-PYW2AU_HIJING(EPSH,2))+0
1642 $ .5*TH*SH/UH*(PYW2AU_HIJING(EPSH,2)-2.*PYW2AU_HIJING(EPST,2)
1643 $ )+0.125*(UH-12.*SQMQ-4.*TH*SH/UH)*W3TUSI)
1644 B4STUR=SQMQ/SQMH*(-2./3.+(SQMQ/SQMH-1./4.)*(PYW2AU_HIJING(EPSS,1
1645 $ )-PYW2AU_HIJING(EPSH,1)+W3STUR))
1646 B4STUI=SQMQ/SQMH*(SQMQ/SQMH-1./4.)*(PYW2AU_HIJING(EPSS,2)-
1647 & PYW2AU_HIJING(EPSH,2)+W3STUI)
1648 B4TUSR=SQMQ/SQMH*(-2./3.+(SQMQ/SQMH-1./4.)*(PYW2AU_HIJING(EPST,1
1649 $ )-PYW2AU_HIJING(EPSH,1)+W3TUSR))
1650 B4TUSI=SQMQ/SQMH*(SQMQ/SQMH-1./4.)*(PYW2AU_HIJING(EPST,2)-
1651 & PYW2AU_HIJING(EPSH,2)+W3TUSI)
1652 B4USTR=SQMQ/SQMH*(-2./3.+(SQMQ/SQMH-1./4.)*(PYW2AU_HIJING(EPSU,1
1653 $ )-PYW2AU_HIJING(EPSH,1)+W3USTR))
1654 B4USTI=SQMQ/SQMH*(SQMQ/SQMH-1./4.)*(PYW2AU_HIJING(EPSU,2)-
1655 & PYW2AU_HIJING(EPSH,2)+W3USTI)
1656 A2STUR=A2STUR+B2STUR+B2SUTR
1657 A2STUI=A2STUI+B2STUI+B2SUTI
1658 A2USTR=A2USTR+B2USTR+B2UTSR
1659 A2USTI=A2USTI+B2USTI+B2UTSI
1660 A2TUSR=A2TUSR+B2TUSR+B2TSUR
1661 A2TUSI=A2TUSI+B2TUSI+B2TSUI
1662 A4STUR=A4STUR+B4STUR+B4USTR+B4TUSR
1663 A4STUI=A4STUI+B4STUI+B4USTI+B4TUSI
1664 760 CONTINUE
1665 FACGH=COMFAC*FACA*3./(128.*PARU(1)**2)*AEM/XW*AS**3*
1666 & SQMH/SQMW*SQMH**3/(SH*TH*UH)*(A2STUR**2+A2STUI**2+A2USTR**2+
1667 & A2USTI**2+A2TUSR**2+A2TUSI**2+A4STUR**2+A4STUI**2)
1668 FACGH=FACGH*WIDS(25,2)
1669 IF(KFAC(1,21)*KFAC(2,21).EQ.0) GOTO 770
1670 NCHN=NCHN+1
1671 ISIG(NCHN,1)=21
1672 ISIG(NCHN,2)=21
1673 ISIG(NCHN,3)=1
1674 SIGH(NCHN)=FACGH
1675 770 CONTINUE
1676
1677 ELSEIF(ISUB.EQ.114) THEN
1678C...g + g -> gamma + gamma.
1679 ASRE=0.
1680 ASIM=0.
1681 DO 780 I=1,2*MSTP(1)
1682 EI=KCHG(IABS(I),1)/3.
1683 SQMQ=PMAS(I,1)**2
1684 EPSS=4.*SQMQ/SH
1685 EPST=4.*SQMQ/TH
1686 EPSU=4.*SQMQ/UH
1687 IF(EPSS+ABS(EPST)+ABS(EPSU).LT.3.E-6) THEN
1688 A0STUR=1.+(TH-UH)/SH*LOG(TH/UH)+0.5*(TH2+UH2)/SH2*
1689 & (LOG(TH/UH)**2+PARU(1)**2)
1690 A0STUI=0.
1691 A0TSUR=1.+(SH-UH)/TH*LOG(-SH/UH)+0.5*(SH2+UH2)/TH2*
1692 & LOG(-SH/UH)**2
1693 A0TSUI=-PARU(1)*((SH-UH)/TH+(SH2+UH2)/TH2*LOG(-SH/UH))
1694 A0UTSR=1.+(TH-SH)/UH*LOG(-TH/SH)+0.5*(TH2+SH2)/UH2*
1695 & LOG(-TH/SH)**2
1696 A0UTSI=PARU(1)*((TH-SH)/UH+(TH2+SH2)/UH2*LOG(-TH/SH))
1697 A1STUR=-1.
1698 A1STUI=0.
1699 A2STUR=-1.
1700 A2STUI=0.
1701 ELSE
1702 BESTU=0.5*(1.+SQRT(1.+EPSS*TH/UH))
1703 BEUST=0.5*(1.+SQRT(1.+EPSU*SH/TH))
1704 BETUS=0.5*(1.+SQRT(1.+EPST*UH/SH))
1705 BEUTS=BESTU
1706 BETSU=BEUST
1707 BESUT=BETUS
1708 A0STUR=1.+(1.+2.*TH/SH)*PYW1AU_HIJING(EPST,1)+(1.+2.*UH/SH)*
1709 & PYW1AU_HIJING(EPSU,1)+0.5*((TH2+UH2)/SH2-EPSS)
1710 $ *(PYW2AU_HIJING(EPST,1)+PYW2AU_HIJING(EPSU,1))-0.25*EPST
1711 $ *(1.-0.5*EPSS)*(PYI3AU_HIJING(BESUT,EPSS,1)
1712 $ +PYI3AU_HIJING(BESUT,EPST,1))-0.25*EPSU*(1.-0.5*EPSS)
1713 $ *(PYI3AU_HIJING(BESTU,EPSS,1)+PYI3AU_HIJING(BESTU,EPSU,1)
1714 $ )+0.25*(-2.*(TH2+UH2)/SH2+4.*EPSS+EPST+EPSU+0.5*EPST*EPSU
1715 $ )*(PYI3AU_HIJING(BETSU,EPST,1)+PYI3AU_HIJING(BETSU,EPSU,1
1716 $ ))
1717 A0STUI=(1.+2.*TH/SH)*PYW1AU_HIJING(EPST,2)+(1.+2.*UH/SH)*
1718 & PYW1AU_HIJING(EPSU,2)+0.5*((TH2+UH2)/SH2-EPSS)
1719 $ *(PYW2AU_HIJING(EPST,2)+PYW2AU_HIJING(EPSU,2))-0.25*EPST
1720 $ *(1.-0.5*EPSS)*(PYI3AU_HIJING(BESUT,EPSS,2)
1721 $ +PYI3AU_HIJING(BESUT,EPST,2))-0.25*EPSU*(1.-0.5*EPSS)
1722 $ *(PYI3AU_HIJING(BESTU,EPSS,2)+PYI3AU_HIJING(BESTU,EPSU,2)
1723 $ )+0.25*(-2.*(TH2+UH2)/SH2+4.*EPSS+EPST+EPSU+0.5*EPST*EPSU
1724 $ )*(PYI3AU_HIJING(BETSU,EPST,2)+PYI3AU_HIJING(BETSU,EPSU,2
1725 $ ))
1726 A0TSUR=1.+(1.+2.*SH/TH)*PYW1AU_HIJING(EPSS,1)+(1.+2.*UH/TH)*
1727 & PYW1AU_HIJING(EPSU,1)+0.5*((SH2+UH2)/TH2-EPST)
1728 $ *(PYW2AU_HIJING(EPSS,1)+PYW2AU_HIJING(EPSU,1))-0.25*EPSS
1729 $ *(1.-0.5*EPST)*(PYI3AU_HIJING(BETUS,EPST,1)
1730 $ +PYI3AU_HIJING(BETUS,EPSS,1))-0.25*EPSU*(1.-0.5*EPST)
1731 $ *(PYI3AU_HIJING(BETSU,EPST,1)+PYI3AU_HIJING(BETSU,EPSU,1)
1732 $ )+0.25*(-2.*(SH2+UH2)/TH2+4.*EPST+EPSS+EPSU+0.5*EPSS*EPSU
1733 $ )*(PYI3AU_HIJING(BESTU,EPSS,1)+PYI3AU_HIJING(BESTU,EPSU,1
1734 $ ))
1735 A0TSUI=(1.+2.*SH/TH)*PYW1AU_HIJING(EPSS,2)+(1.+2.*UH/TH)*
1736 & PYW1AU_HIJING(EPSU,2)+0.5*((SH2+UH2)/TH2-EPST)
1737 $ *(PYW2AU_HIJING(EPSS,2)+PYW2AU_HIJING(EPSU,2))-0.25*EPSS
1738 $ *(1.-0.5*EPST)*(PYI3AU_HIJING(BETUS,EPST,2)
1739 $ +PYI3AU_HIJING(BETUS,EPSS,2))-0.25*EPSU*(1.-0.5*EPST)
1740 $ *(PYI3AU_HIJING(BETSU,EPST,2)+PYI3AU_HIJING(BETSU,EPSU,2)
1741 $ )+0.25*(-2.*(SH2+UH2)/TH2+4.*EPST+EPSS+EPSU+0.5*EPSS*EPSU
1742 $ )*(PYI3AU_HIJING(BESTU,EPSS,2)+PYI3AU_HIJING(BESTU,EPSU,2
1743 $ ))
1744 A0UTSR=1.+(1.+2.*TH/UH)*PYW1AU_HIJING(EPST,1)+(1.+2.*SH/UH)*
1745 & PYW1AU_HIJING(EPSS,1)+0.5*((TH2+SH2)/UH2-EPSU)
1746 $ *(PYW2AU_HIJING(EPST,1)+PYW2AU_HIJING(EPSS,1))-0.25*EPST
1747 $ *(1.-0.5*EPSU)*(PYI3AU_HIJING(BEUST,EPSU,1)
1748 $ +PYI3AU_HIJING(BEUST,EPST,1))-0.25*EPSS*(1.-0.5*EPSU)
1749 $ *(PYI3AU_HIJING(BEUTS,EPSU,1)+PYI3AU_HIJING(BEUTS,EPSS,1)
1750 $ )+0.25*(-2.*(TH2+SH2)/UH2+4.*EPSU+EPST+EPSS+0.5*EPST*EPSS
1751 $ )*(PYI3AU_HIJING(BETUS,EPST,1)+PYI3AU_HIJING(BETUS,EPSS,1
1752 $ ))
1753 A0UTSI=(1.+2.*TH/UH)*PYW1AU_HIJING(EPST,2)+(1.+2.*SH/UH)*
1754 & PYW1AU_HIJING(EPSS,2)+0.5*((TH2+SH2)/UH2-EPSU)
1755 $ *(PYW2AU_HIJING(EPST,2)+PYW2AU_HIJING(EPSS,2))-0.25*EPST
1756 $ *(1.-0.5*EPSU)*(PYI3AU_HIJING(BEUST,EPSU,2)
1757 $ +PYI3AU_HIJING(BEUST,EPST,2))-0.25*EPSS*(1.-0.5*EPSU)
1758 $ *(PYI3AU_HIJING(BEUTS,EPSU,2)+PYI3AU_HIJING(BEUTS,EPSS,2)
1759 $ )+0.25*(-2.*(TH2+SH2)/UH2+4.*EPSU+EPST+EPSS+0.5*EPST*EPSS
1760 $ )*(PYI3AU_HIJING(BETUS,EPST,2)+PYI3AU_HIJING(BETUS,EPSS,2
1761 $ ))
1762 A1STUR=-1.-0.25*(EPSS+EPST+EPSU)*(PYW2AU_HIJING(EPSS,1)+
1763 & PYW2AU_HIJING(EPST,1)+PYW2AU_HIJING(EPSU,1))+0.25*(EPSU+0
1764 $ .5*EPSS*EPST)*(PYI3AU_HIJING(BESUT,EPSS,1)
1765 $ +PYI3AU_HIJING(BESUT,EPST,1))+0.25*(EPST+0.5*EPSS*EPSU)
1766 $ *(PYI3AU_HIJING(BESTU,EPSS,1)+PYI3AU_HIJING(BESTU,EPSU,1)
1767 $ )+0.25*(EPSS+0.5*EPST*EPSU)*(PYI3AU_HIJING(BETSU,EPST,1)
1768 $ +PYI3AU_HIJING(BETSU,EPSU,1))
1769 A1STUI=-0.25*(EPSS+EPST+EPSU)*(PYW2AU_HIJING(EPSS,2)
1770 $ +PYW2AU_HIJING(EPST,2)+PYW2AU_HIJING(EPSU,2))+0.25*(EPSU
1771 $ +0.5*EPSS*EPST)*(PYI3AU_HIJING(BESUT,EPSS,2)
1772 $ +PYI3AU_HIJING(BESUT,EPST,2))+0.25*(EPST+0.5*EPSS*EPSU)
1773 $ *(PYI3AU_HIJING(BESTU,EPSS,2)+PYI3AU_HIJING(BESTU,EPSU,2)
1774 $ )+0.25*(EPSS+0.5*EPST*EPSU)*(PYI3AU_HIJING(BETSU,EPST,2)
1775 $ +PYI3AU_HIJING(BETSU,EPSU,2))
1776 A2STUR=-1.+0.125*EPSS*EPST*(PYI3AU_HIJING(BESUT,EPSS,1)+
1777 & PYI3AU_HIJING(BESUT,EPST,1))+0.125*EPSS*EPSU
1778 $ *(PYI3AU_HIJING(BESTU,EPSS,1)+PYI3AU_HIJING(BESTU,EPSU,1)
1779 $ )+0.125*EPST*EPSU*(PYI3AU_HIJING(BETSU,EPST,1)
1780 $ +PYI3AU_HIJING(BETSU,EPSU,1))
1781 A2STUI=0.125*EPSS*EPST*(PYI3AU_HIJING(BESUT,EPSS,2)+
1782 & PYI3AU_HIJING(BESUT,EPST,2))+0.125*EPSS*EPSU
1783 $ *(PYI3AU_HIJING(BESTU,EPSS,2)+PYI3AU_HIJING(BESTU,EPSU,2)
1784 $ )+0.125*EPST*EPSU*(PYI3AU_HIJING(BETSU,EPST,2)
1785 $ +PYI3AU_HIJING(BETSU,EPSU,2))
1786 ENDIF
1787 ASRE=ASRE+EI**2*(A0STUR+A0TSUR+A0UTSR+4.*A1STUR+A2STUR)
1788 ASIM=ASIM+EI**2*(A0STUI+A0TSUI+A0UTSI+4.*A1STUI+A2STUI)
1789 780 CONTINUE
1790 FACGG=COMFAC*FACA/(8.*PARU(1)**2)*AS**2*AEM**2*(ASRE**2+ASIM**2)
1791 IF(KFAC(1,21)*KFAC(2,21).EQ.0) GOTO 790
1792 NCHN=NCHN+1
1793 ISIG(NCHN,1)=21
1794 ISIG(NCHN,2)=21
1795 ISIG(NCHN,3)=1
1796 SIGH(NCHN)=FACGG
1797 790 CONTINUE
1798
1799 ELSEIF(ISUB.EQ.115) THEN
1800C...g + g -> gamma + Z0.
1801
1802 ELSEIF(ISUB.EQ.116) THEN
1803C...g + g -> Z0 + Z0.
1804
1805 ELSEIF(ISUB.EQ.117) THEN
1806C...g + g -> W+ + W-.
1807
1808 ENDIF
1809
1810C...G: 2 -> 3, tree diagrams.
1811
1812 ELSEIF(ISUB.LE.140) THEN
1813 IF(ISUB.EQ.121) THEN
1814C...g + g -> f + fb + H0.
1815
1816 ENDIF
1817
1818C...H: 2 -> 1, tree diagrams, non-standard model processes.
1819
1820 ELSEIF(ISUB.LE.160) THEN
1821 IF(ISUB.EQ.141) THEN
1822C...f + fb -> gamma*/Z0/Z'0.
1823 MINT(61)=2
1824 CALL PYWIDT_HIJING(32,SQRT(SH),WDTP,WDTE)
1825 FACZP=COMFAC*AEM**2*4./9.
1826 DO 800 I=MINA,MAXA
1827 IF(I.EQ.0.OR.KFAC(1,I)*KFAC(2,-I).EQ.0) GOTO 800
1828 EI=KCHG(IABS(I),1)/3.
1829 AI=SIGN(1.,EI)
1830 VI=AI-4.*EI*XW
1831 API=SIGN(1.,EI)
1832 VPI=API-4.*EI*XW
1833 NCHN=NCHN+1
1834 ISIG(NCHN,1)=I
1835 ISIG(NCHN,2)=-I
1836 ISIG(NCHN,3)=1
1837 SIGH(NCHN)=FACZP*(EI**2*VINT(111)+EI*VI/(8.*XW*(1.-XW))*
1838 & SH*(SH-SQMZ)/((SH-SQMZ)**2+GMMZ**2)*VINT(112)+EI*VPI/(8.*XW*
1839 & (1.-XW))*SH*(SH-SQMZP)/((SH-SQMZP)**2+GMMZP**2)*VINT(113)+
1840 & (VI**2+AI**2)/(16.*XW*(1.-XW))**2*SH2/((SH-SQMZ)**2+GMMZ**2)*
1841 & VINT(114)+2.*(VI*VPI+AI*API)/(16.*XW*(1.-XW))**2*SH2*
1842 & ((SH-SQMZ)*(SH-SQMZP)+GMMZ*GMMZP)/(((SH-SQMZ)**2+GMMZ**2)*
1843 & ((SH-SQMZP)**2+GMMZP**2))*VINT(115)+(VPI**2+API**2)/
1844 & (16.*XW*(1.-XW))**2*SH2/((SH-SQMZP)**2+GMMZP**2)*VINT(116))
1845 800 CONTINUE
1846
1847 ELSEIF(ISUB.EQ.142) THEN
1848C...f + fb' -> H+/-.
1849 CALL PYWIDT_HIJING(37,SQRT(SH),WDTP,WDTE)
1850 FHC=COMFAC*(AEM/XW)**2*1./48.*(SH/SQMW)**2*SH2/
1851 & ((SH-SQMHC)**2+GMMHC**2)
1852C'''No construction yet for leptons
1853 DO 840 I=1,MSTP(54)/2
1854 IL=2*I-1
1855 IU=2*I
1856 RMQL=PMAS(IL,1)**2/SH
1857 RMQU=PMAS(IU,1)**2/SH
1858 FACHC=FHC*((RMQL*PARU(121)+RMQU/PARU(121))*(1.-RMQL-RMQU)-
1859 & 4.*RMQL*RMQU)/SQRT(MAX(0.,(1.-RMQL-RMQU)**2-4.*RMQL*RMQU))
1860 IF(KFAC(1,IL)*KFAC(2,-IU).EQ.0) GOTO 810
1861 KCHHC=(KCHG(IL,1)-KCHG(IU,1))/3
1862 NCHN=NCHN+1
1863 ISIG(NCHN,1)=IL
1864 ISIG(NCHN,2)=-IU
1865 ISIG(NCHN,3)=1
1866 SIGH(NCHN)=FACHC*(WDTE(0,1)+WDTE(0,(5-KCHHC)/2)+WDTE(0,4))
1867 810 IF(KFAC(1,-IL)*KFAC(2,IU).EQ.0) GOTO 820
1868 KCHHC=(-KCHG(IL,1)+KCHG(IU,1))/3
1869 NCHN=NCHN+1
1870 ISIG(NCHN,1)=-IL
1871 ISIG(NCHN,2)=IU
1872 ISIG(NCHN,3)=1
1873 SIGH(NCHN)=FACHC*(WDTE(0,1)+WDTE(0,(5-KCHHC)/2)+WDTE(0,4))
1874 820 IF(KFAC(1,IU)*KFAC(2,-IL).EQ.0) GOTO 830
1875 KCHHC=(KCHG(IU,1)-KCHG(IL,1))/3
1876 NCHN=NCHN+1
1877 ISIG(NCHN,1)=IU
1878 ISIG(NCHN,2)=-IL
1879 ISIG(NCHN,3)=1
1880 SIGH(NCHN)=FACHC*(WDTE(0,1)+WDTE(0,(5-KCHHC)/2)+WDTE(0,4))
1881 830 IF(KFAC(1,-IU)*KFAC(2,IL).EQ.0) GOTO 840
1882 KCHHC=(-KCHG(IU,1)+KCHG(IL,1))/3
1883 NCHN=NCHN+1
1884 ISIG(NCHN,1)=-IU
1885 ISIG(NCHN,2)=IL
1886 ISIG(NCHN,3)=1
1887 SIGH(NCHN)=FACHC*(WDTE(0,1)+WDTE(0,(5-KCHHC)/2)+WDTE(0,4))
1888 840 CONTINUE
1889
1890 ELSEIF(ISUB.EQ.143) THEN
1891C...f + fb -> R.
1892 CALL PYWIDT_HIJING(40,SQRT(SH),WDTP,WDTE)
1893 FACR=COMFAC*(AEM/XW)**2*1./9.*SH2/((SH-SQMR)**2+GMMR**2)
1894 DO 860 I=MIN1,MAX1
1895 IF(I.EQ.0.OR.KFAC(1,I).EQ.0) GOTO 860
1896 IA=IABS(I)
1897 DO 850 J=MIN2,MAX2
1898 IF(J.EQ.0.OR.KFAC(2,J).EQ.0) GOTO 850
1899 JA=IABS(J)
1900 IF(I*J.GT.0.OR.IABS(IA-JA).NE.2) GOTO 850
1901 NCHN=NCHN+1
1902 ISIG(NCHN,1)=I
1903 ISIG(NCHN,2)=J
1904 ISIG(NCHN,3)=1
1905 SIGH(NCHN)=FACR*(WDTE(0,1)+WDTE(0,(10-(I+J))/4)+WDTE(0,4))
1906 850 CONTINUE
1907 860 CONTINUE
1908
1909 ENDIF
1910
1911C...I: 2 -> 2, tree diagrams, non-standard model processes.
1912
1913 ELSE
1914 IF(ISUB.EQ.161) THEN
1915C...f + g -> f' + H+/- (q + g -> q' + H+/- only).
1916 FHCQ=COMFAC*FACA*AS*AEM/XW*1./24
1917 DO 900 I=1,MSTP(54)
1918 IU=I+MOD(I,2)
1919 SQMQ=PMAS(IU,1)**2
1920 FACHCQ=FHCQ/PARU(121)*SQMQ/SQMW*(SH/(SQMQ-UH)+
1921 & 2.*SQMQ*(SQMHC-UH)/(SQMQ-UH)**2+(SQMQ-UH)/SH+
1922 & 2.*SQMQ/(SQMQ-UH)+2.*(SQMHC-UH)/(SQMQ-UH)*(SQMHC-SQMQ-SH)/SH)
1923 IF(KFAC(1,-I)*KFAC(2,21).EQ.0) GOTO 870
1924 KCHHC=ISIGN(1,-KCHG(I,1))
1925 NCHN=NCHN+1
1926 ISIG(NCHN,1)=-I
1927 ISIG(NCHN,2)=21
1928 ISIG(NCHN,3)=1
1929 SIGH(NCHN)=FACHCQ*(WDTE(0,1)+WDTE(0,(5-KCHHC)/2)+WDTE(0,4))
1930 870 IF(KFAC(1,I)*KFAC(2,21).EQ.0) GOTO 880
1931 KCHHC=ISIGN(1,KCHG(I,1))
1932 NCHN=NCHN+1
1933 ISIG(NCHN,1)=I
1934 ISIG(NCHN,2)=21
1935 ISIG(NCHN,3)=1
1936 SIGH(NCHN)=FACHCQ*(WDTE(0,1)+WDTE(0,(5-KCHHC)/2)+WDTE(0,4))
1937 880 IF(KFAC(1,21)*KFAC(2,-I).EQ.0) GOTO 890
1938 KCHHC=ISIGN(1,-KCHG(I,1))
1939 NCHN=NCHN+1
1940 ISIG(NCHN,1)=21
1941 ISIG(NCHN,2)=-I
1942 ISIG(NCHN,3)=1
1943 SIGH(NCHN)=FACHCQ*(WDTE(0,1)+WDTE(0,(5-KCHHC)/2)+WDTE(0,4))
1944 890 IF(KFAC(1,21)*KFAC(2,I).EQ.0) GOTO 900
1945 KCHHC=ISIGN(1,KCHG(I,1))
1946 NCHN=NCHN+1
1947 ISIG(NCHN,1)=21
1948 ISIG(NCHN,2)=I
1949 ISIG(NCHN,3)=1
1950 SIGH(NCHN)=FACHCQ*(WDTE(0,1)+WDTE(0,(5-KCHHC)/2)+WDTE(0,4))
1951 900 CONTINUE
1952
1953 ENDIF
1954 ENDIF
1955
1956C...Multiply with structure functions.
1957 IF(ISUB.LE.90.OR.ISUB.GE.96) THEN
1958 DO 910 ICHN=1,NCHN
1959 IF(MINT(41).EQ.2) THEN
1960 KFL1=ISIG(ICHN,1)
1961 IF(KFL1.EQ.21) KFL1=0
1962 SIGH(ICHN)=SIGH(ICHN)*XSFX(1,KFL1)
1963 ENDIF
1964 IF(MINT(42).EQ.2) THEN
1965 KFL2=ISIG(ICHN,2)
1966 IF(KFL2.EQ.21) KFL2=0
1967 SIGH(ICHN)=SIGH(ICHN)*XSFX(2,KFL2)
1968 ENDIF
1969 910 SIGS=SIGS+SIGH(ICHN)
1970 ENDIF
1971
1972 RETURN
1973 END