]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HERWIG/src/hwhiga.f
splitting of simulation and reconstruction code (T.Kuhr)
[u/mrichter/AliRoot.git] / HERWIG / src / hwhiga.f
CommitLineData
3820ca8e 1
2CDECK ID>, HWHIGA.
3
4*CMZ :- -23/08/94 13.22.29 by Mike Seymour
5
6*-- Author : Ulrich Baur & Nigel Glover, adapted by Ian Knowles
7
8C-----------------------------------------------------------------------
9
10 SUBROUTINE HWHIGA(S,T,U,EMH2,WTQQ,WTQG,WTGQ,WTGG)
11
12C-----------------------------------------------------------------------
13
14C Gives amplitudes squared for q-qbar, q(bar)-g and gg -> Higgs +jet
15
16C IAPHIG (set in HWIGIN)=0: zero mass approximation =1: exact result
17
18C =2: infinite mass limit.
19
20C Only top loop included. A factor (alpha_s**3*alpha_W) is extracted
21
22C-----------------------------------------------------------------------
23
24 INCLUDE 'HERWIG61.INC'
25
26 DOUBLE COMPLEX HWHIGB,HWHIGC,HWHIGD,HWHIG5,HWHIG1,HWHIG2,BI(4),
27
28 & CI(7),DI(3),EPSI,TAMP(7)
29
30 DOUBLE PRECISION S,T,U,EMH2,WTQQ,WTQG,WTGQ,WTGG,EMW2,RNGLU,RNQRK,
31
32 & FLUXGG,FLUXGQ,FLUXQQ,EMQ2,TAMPI(7),TAMPR(7)
33
34 INTEGER I
35
36 LOGICAL NOMASS
37
38 EXTERNAL HWHIGB,HWHIGC,HWHIGD,HWHIG5,HWHIG1,HWHIG2
39
40 COMMON/SMALL/EPSI
41
42 COMMON/CINTS/BI,CI,DI
43
44 EPSI=CMPLX(ZERO,-1.D-10)
45
46 EMW2=RMASS(198)**2
47
48C Spin and colour flux factors plus enhancement factor
49
50 RNGLU=1./FLOAT(NCOLO**2-1)
51
52 RNQRK=1./FLOAT(NCOLO)
53
54 FLUXGG=.25*RNGLU**2*ENHANC(6)**2
55
56 FLUXGQ=.25*RNGLU*RNQRK*ENHANC(6)**2
57
58 FLUXQQ=.25*RNQRK**2*ENHANC(6)**2
59
60 IF (IAPHIG.EQ.2) THEN
61
62C Infinite mass limit in loops
63
64 WTGG=2./3.*FLOAT(NCOLO*(NCOLO**2-1))
65
66 & *(EMH2**4+S**4+T**4+U**4)/(S*T*U*EMW2)*FLUXGG
67
68 WTQQ= 16./9.*(U**2+T**2)/(S*EMW2)*FLUXQQ
69
70 WTQG=-16./9.*(U**2+S**2)/(T*EMW2)*FLUXGQ
71
72 WTGQ=-16./9.*(S**2+T**2)/(U*EMW2)*FLUXGQ
73
74 RETURN
75
76 ELSEIF (IAPHIG.EQ.1) THEN
77
78C Exact result for loops
79
80 NOMASS=.FALSE.
81
82 ELSEIF (IAPHIG.EQ.0) THEN
83
84C Small mass approximation in loops
85
86 NOMASS=.TRUE.
87
88 ELSE
89
90 CALL HWWARN('HWHIGA',500,*999)
91
92 ENDIF
93
94C Include only top quark contribution
95
96 EMQ2=RMASS(6)**2
97
98 BI(1)=HWHIGB(NOMASS,S,ZERO,ZERO,EMQ2)
99
100 BI(2)=HWHIGB(NOMASS,T,ZERO,ZERO,EMQ2)
101
102 BI(3)=HWHIGB(NOMASS,U,ZERO,ZERO,EMQ2)
103
104 BI(4)=HWHIGB(NOMASS,EMH2,ZERO,ZERO,EMQ2)
105
106 BI(1)=BI(1)-BI(4)
107
108 BI(2)=BI(2)-BI(4)
109
110 BI(3)=BI(3)-BI(4)
111
112 CI(1)=HWHIGC(NOMASS,S,ZERO,ZERO,EMQ2)
113
114 CI(2)=HWHIGC(NOMASS,T,ZERO,ZERO,EMQ2)
115
116 CI(3)=HWHIGC(NOMASS,U,ZERO,ZERO,EMQ2)
117
118 CI(7)=HWHIGC(NOMASS,EMH2,ZERO,ZERO,EMQ2)
119
120 CI(4)=(S*CI(1)-EMH2*CI(7))/(S-EMH2)
121
122 CI(5)=(T*CI(2)-EMH2*CI(7))/(T-EMH2)
123
124 CI(6)=(U*CI(3)-EMH2*CI(7))/(U-EMH2)
125
126 DI(1)=HWHIGD(NOMASS,U,T,EMH2,EMQ2)
127
128 DI(2)=HWHIGD(NOMASS,S,U,EMH2,EMQ2)
129
130 DI(3)=HWHIGD(NOMASS,S,T,EMH2,EMQ2)
131
132C Compute complex amplitudes
133
134 TAMP(1)=HWHIG1(S,T,U,EMH2,EMQ2,1,2,3,4,5,6)
135
136 TAMP(2)=HWHIG2(S,T,U,EMH2,EMQ2,1,2,3,0,0,0)
137
138 TAMP(3)=HWHIG1(T,S,U,EMH2,EMQ2,2,1,3,5,4,6)
139
140 TAMP(4)=HWHIG1(U,T,S,EMH2,EMQ2,3,2,1,6,5,4)
141
142 TAMP(5)=HWHIG5(S,T,U,EMH2,EMQ2,1,0,4,0,0,0)
143
144 TAMP(6)=HWHIG5(T,S,U,EMH2,EMQ2,2,0,5,0,0,0)
145
146 TAMP(7)=HWHIG5(U,T,S,EMH2,EMQ2,3,0,6,0,0,0)
147
148 DO 20 I=1,7
149
150 TAMPI(I)= DBLE(TAMP(I))
151
152 20 TAMPR(I)=-IMAG(TAMP(I))
153
154C Square and add prefactors
155
156 WTGG=0.03125*FLOAT(NCOLO*(NCOLO**2-1))
157
158 & *(TAMPR(1)**2+TAMPI(1)**2+TAMPR(2)**2+TAMPI(2)**2
159
160 & +TAMPR(3)**2+TAMPI(3)**2+TAMPR(4)**2+TAMPI(4)**2)*FLUXGG
161
162 WTQQ= 16.*(U**2+T**2)/(U+T)**2*EMQ2**2/(S*EMW2)
163
164 & *(TAMPR(5)**2+TAMPI(5)**2)*FLUXQQ
165
166 WTQG=-16.*(U**2+S**2)/(U+S)**2*EMQ2**2/(T*EMW2)
167
168 & *(TAMPR(6)**2+TAMPI(6)**2)*FLUXGQ
169
170 WTGQ=-16.*(S**2+T**2)/(S+T)**2*EMQ2**2/(U*EMW2)
171
172 & *(TAMPR(7)**2+TAMPI(7)**2)*FLUXGQ
173
174 999 RETURN
175
176 END