1
SUBROUTINE SMATRIX2(P,ANS)
3
C Generated by MadGraph 5 v. 2.0.0.beta3, 2013-02-14
4
C By the MadGraph Development Team
5
C Please visit us at https://launchpad.net/madgraph5
7
C MadGraph for Madevent Version
9
C Returns amplitude squared summed/avg over colors
11
C for the point in phase space P(0:3,NEXTERNAL)
13
C Process: g d~ > g d~ WEIGHTED=2
14
C Process: g u~ > g u~ WEIGHTED=2
15
C Process: g s~ > g s~ WEIGHTED=2
22
INCLUDE 'maxconfigs.inc'
23
INCLUDE 'nexternal.inc'
32
PARAMETER (THEL=2*NCOMB)
36
REAL*8 P(0:3,NEXTERNAL),ANS
40
INTEGER NHEL(NEXTERNAL,NCOMB),NTRY(2)
43
REAL*8 R,SUMHEL,TS(NCOMB)
45
INTEGER JC(NEXTERNAL),II
46
LOGICAL GOODHEL(NCOMB,2)
47
REAL*8 HWGT, XTOT, XTRY, XREJ, XR, YFRAC(0:NCOMB)
48
INTEGER NGOOD(2), IGOOD(NCOMB,2)
49
INTEGER JHEL(2), J, JJ
53
DOUBLE PRECISION AMP2(MAXAMPS), JAMP2(0:MAXFLOW)
54
COMMON/TO_AMPS/ AMP2, JAMP2
56
CHARACTER*101 HEL_BUFF
57
COMMON/TO_HELICITY/ HEL_BUFF
60
COMMON/TO_MIRROR/ IMIRROR
63
COMMON/TO_POLARIZATION/ POL
67
COMMON/TO_MATRIX/ISUM_HEL, MULTI_CHANNEL
68
INTEGER MAPCONFIG(0:LMAXCONFIGS), ICONFIG
69
COMMON/TO_MCONFIGS/MAPCONFIG, ICONFIG
70
INTEGER SUBDIAG(MAXSPROC),IB(2)
71
COMMON/TO_SUB_DIAG/SUBDIAG,IB
76
SAVE YFRAC, IGOOD, JHEL
77
DATA GOODHEL/THEL*.FALSE./
78
DATA (NHEL(I, 1),I=1,4) /-1,-1,-1,-1/
79
DATA (NHEL(I, 2),I=1,4) /-1,-1,-1, 1/
80
DATA (NHEL(I, 3),I=1,4) /-1,-1, 1,-1/
81
DATA (NHEL(I, 4),I=1,4) /-1,-1, 1, 1/
82
DATA (NHEL(I, 5),I=1,4) /-1, 1,-1,-1/
83
DATA (NHEL(I, 6),I=1,4) /-1, 1,-1, 1/
84
DATA (NHEL(I, 7),I=1,4) /-1, 1, 1,-1/
85
DATA (NHEL(I, 8),I=1,4) /-1, 1, 1, 1/
86
DATA (NHEL(I, 9),I=1,4) / 1,-1,-1,-1/
87
DATA (NHEL(I, 10),I=1,4) / 1,-1,-1, 1/
88
DATA (NHEL(I, 11),I=1,4) / 1,-1, 1,-1/
89
DATA (NHEL(I, 12),I=1,4) / 1,-1, 1, 1/
90
DATA (NHEL(I, 13),I=1,4) / 1, 1,-1,-1/
91
DATA (NHEL(I, 14),I=1,4) / 1, 1,-1, 1/
92
DATA (NHEL(I, 15),I=1,4) / 1, 1, 1,-1/
93
DATA (NHEL(I, 16),I=1,4) / 1, 1, 1, 1/
98
NTRY(IMIRROR)=NTRY(IMIRROR)+1
103
IF (MULTI_CHANNEL) THEN
113
WRITE(HEL_BUFF,'(20I5)') (0,I=1,NEXTERNAL)
117
IF (ISHEL(IMIRROR) .EQ. 0 .OR. NTRY(IMIRROR) .LE. MAXTRIES) THEN
119
IF (GOODHEL(I,IMIRROR) .OR. NTRY(IMIRROR).LE.MAXTRIES) THEN
120
T=MATRIX2(P ,NHEL(1,I),JC(1))
122
IF(POL(JJ).NE.1D0.AND.NHEL(JJ,I).EQ.INT(SIGN(1D0
125
ELSE IF(POL(JJ).NE.1D0)THEN
126
T=T*(2D0-ABS(POL(JJ)))
134
IF(NTRY(IMIRROR).LE.MAXTRIES)THEN
136
IF (.NOT.GOODHEL(I,IMIRROR) .AND. (DABS(TS(I)).GT.ANS
137
$ *LIMHEL/NCOMB)) THEN
138
GOODHEL(I,IMIRROR)=.TRUE.
139
NGOOD(IMIRROR) = NGOOD(IMIRROR) +1
140
IGOOD(NGOOD(IMIRROR),IMIRROR) = I
141
PRINT *,'Added good helicity ',I,TS(I)*NCOMB/ANS
142
$ ,' in event ',NTRY(IMIRROR)
146
IF(NTRY(IMIRROR).EQ.MAXTRIES)THEN
147
ISHEL(IMIRROR)=MIN(ISUM_HEL,NGOOD(IMIRROR))
149
ELSE !LOOP OVER GOOD HELICITIES
150
DO J=1,ISHEL(IMIRROR)
151
JHEL(IMIRROR)=JHEL(IMIRROR)+1
152
IF (JHEL(IMIRROR) .GT. NGOOD(IMIRROR)) JHEL(IMIRROR)=1
153
HWGT = REAL(NGOOD(IMIRROR))/REAL(ISHEL(IMIRROR))
154
I = IGOOD(JHEL(IMIRROR),IMIRROR)
155
T=MATRIX2(P ,NHEL(1,I),JC(1))
157
IF(POL(JJ).NE.1D0.AND.NHEL(JJ,I).EQ.INT(SIGN(1D0,POL(JJ)))
160
ELSE IF(POL(JJ).NE.1D0)THEN
161
T=T*(2D0-ABS(POL(JJ)))
167
IF (ISHEL(IMIRROR) .EQ. 1) THEN
168
WRITE(HEL_BUFF,'(20i5)')(NHEL(II,I),II=1,NEXTERNAL)
169
C Set right sign for ANS, based on sign of chosen helicity
173
IF (ISHEL(IMIRROR) .NE. 1) THEN
177
SUMHEL=SUMHEL+DABS(TS(I))/ANS
179
WRITE(HEL_BUFF,'(20i5)')(NHEL(II,I),II=1,NEXTERNAL)
180
C Set right sign for ANS, based on sign of chosen helicity
187
IF (MULTI_CHANNEL) THEN
192
IF (XTOT.NE.0D0) THEN
193
ANS=ANS*AMP2(SUBDIAG(2))/XTOT
202
REAL*8 FUNCTION MATRIX2(P,NHEL,IC)
204
C Generated by MadGraph 5 v. 2.0.0.beta3, 2013-02-14
205
C By the MadGraph Development Team
206
C Please visit us at https://launchpad.net/madgraph5
208
C Returns amplitude squared summed/avg over colors
209
C for the point with external lines W(0:6,NEXTERNAL)
211
C Process: g d~ > g d~ WEIGHTED=2
212
C Process: g u~ > g u~ WEIGHTED=2
213
C Process: g s~ > g s~ WEIGHTED=2
220
PARAMETER (NGRAPHS=3)
222
INCLUDE 'nexternal.inc'
223
INCLUDE 'maxamps.inc'
224
INTEGER NWAVEFUNCS, NCOLOR
225
PARAMETER (NWAVEFUNCS=5, NCOLOR=2)
229
PARAMETER (IMAG1=(0D0,1D0))
233
REAL*8 P(0:3,NEXTERNAL)
234
INTEGER NHEL(NEXTERNAL), IC(NEXTERNAL)
240
REAL*8 DENOM(NCOLOR), CF(NCOLOR,NCOLOR)
241
COMPLEX*16 AMP(NGRAPHS), JAMP(NCOLOR)
242
COMPLEX*16 W(6,NWAVEFUNCS)
243
C Needed for v4 models
245
DATA DUM0, DUM1/(0D0, 0D0), (1D0, 0D0)/
249
DOUBLE PRECISION AMP2(MAXAMPS), JAMP2(0:MAXFLOW)
250
COMMON/TO_AMPS/ AMP2, JAMP2
256
DATA (CF(I, 1),I= 1, 2) / 16, -2/
259
DATA (CF(I, 2),I= 1, 2) / -2, 16/
264
CALL VXXXXX(P(0,1),ZERO,NHEL(1),-1*IC(1),W(1,1))
265
CALL OXXXXX(P(0,2),ZERO,NHEL(2),-1*IC(2),W(1,2))
266
CALL VXXXXX(P(0,3),ZERO,NHEL(3),+1*IC(3),W(1,3))
267
CALL IXXXXX(P(0,4),ZERO,NHEL(4),-1*IC(4),W(1,4))
268
CALL FFV1_1(W(1,2),W(1,1),GC_11,ZERO,ZERO,W(1,5))
269
C Amplitude(s) for diagram number 1
270
CALL FFV1_0(W(1,4),W(1,5),W(1,3),GC_11,AMP(1))
271
CALL VVV1_1(W(1,1),W(1,3),GC_10,ZERO,ZERO,W(1,5))
272
C Amplitude(s) for diagram number 2
273
CALL FFV1_0(W(1,4),W(1,2),W(1,5),GC_11,AMP(2))
274
CALL FFV1_2(W(1,4),W(1,1),GC_11,ZERO,ZERO,W(1,5))
275
C Amplitude(s) for diagram number 3
276
CALL FFV1_0(W(1,5),W(1,2),W(1,3),GC_11,AMP(3))
277
JAMP(1)=-AMP(1)+IMAG1*AMP(2)
278
JAMP(2)=-IMAG1*AMP(2)-AMP(3)
283
ZTEMP = ZTEMP + CF(J,I)*JAMP(J)
285
MATRIX2=MATRIX2+ZTEMP*DCONJG(JAMP(I))/DENOM(I)
287
AMP2(2)=AMP2(2)+AMP(2)*DCONJG(AMP(2))
288
AMP2(3)=AMP2(3)+AMP(3)*DCONJG(AMP(3))
289
AMP2(1)=AMP2(1)+AMP(1)*DCONJG(AMP(1))
291
JAMP2(I)=JAMP2(I)+JAMP(I)*DCONJG(JAMP(I))