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: u u~ > u u~ WEIGHTED=2
14
C Process: s s~ > s s~ WEIGHTED=2
21
INCLUDE 'maxconfigs.inc'
22
INCLUDE 'nexternal.inc'
31
PARAMETER (THEL=2*NCOMB)
35
REAL*8 P(0:3,NEXTERNAL),ANS
39
INTEGER NHEL(NEXTERNAL,NCOMB),NTRY(2)
42
REAL*8 R,SUMHEL,TS(NCOMB)
44
INTEGER JC(NEXTERNAL),II
45
LOGICAL GOODHEL(NCOMB,2)
46
REAL*8 HWGT, XTOT, XTRY, XREJ, XR, YFRAC(0:NCOMB)
47
INTEGER NGOOD(2), IGOOD(NCOMB,2)
48
INTEGER JHEL(2), J, JJ
52
DOUBLE PRECISION AMP2(MAXAMPS), JAMP2(0:MAXFLOW)
53
COMMON/TO_AMPS/ AMP2, JAMP2
55
CHARACTER*101 HEL_BUFF
56
COMMON/TO_HELICITY/ HEL_BUFF
59
COMMON/TO_MIRROR/ IMIRROR
62
COMMON/TO_POLARIZATION/ POL
66
COMMON/TO_MATRIX/ISUM_HEL, MULTI_CHANNEL
67
INTEGER MAPCONFIG(0:LMAXCONFIGS), ICONFIG
68
COMMON/TO_MCONFIGS/MAPCONFIG, ICONFIG
69
INTEGER SUBDIAG(MAXSPROC),IB(2)
70
COMMON/TO_SUB_DIAG/SUBDIAG,IB
75
SAVE YFRAC, IGOOD, JHEL
76
DATA GOODHEL/THEL*.FALSE./
77
DATA (NHEL(I, 1),I=1,4) /-1,-1,-1,-1/
78
DATA (NHEL(I, 2),I=1,4) /-1,-1,-1, 1/
79
DATA (NHEL(I, 3),I=1,4) /-1,-1, 1,-1/
80
DATA (NHEL(I, 4),I=1,4) /-1,-1, 1, 1/
81
DATA (NHEL(I, 5),I=1,4) /-1, 1,-1,-1/
82
DATA (NHEL(I, 6),I=1,4) /-1, 1,-1, 1/
83
DATA (NHEL(I, 7),I=1,4) /-1, 1, 1,-1/
84
DATA (NHEL(I, 8),I=1,4) /-1, 1, 1, 1/
85
DATA (NHEL(I, 9),I=1,4) / 1,-1,-1,-1/
86
DATA (NHEL(I, 10),I=1,4) / 1,-1,-1, 1/
87
DATA (NHEL(I, 11),I=1,4) / 1,-1, 1,-1/
88
DATA (NHEL(I, 12),I=1,4) / 1,-1, 1, 1/
89
DATA (NHEL(I, 13),I=1,4) / 1, 1,-1,-1/
90
DATA (NHEL(I, 14),I=1,4) / 1, 1,-1, 1/
91
DATA (NHEL(I, 15),I=1,4) / 1, 1, 1,-1/
92
DATA (NHEL(I, 16),I=1,4) / 1, 1, 1, 1/
97
NTRY(IMIRROR)=NTRY(IMIRROR)+1
102
IF (MULTI_CHANNEL) THEN
112
WRITE(HEL_BUFF,'(20I5)') (0,I=1,NEXTERNAL)
116
IF (ISHEL(IMIRROR) .EQ. 0 .OR. NTRY(IMIRROR) .LE. MAXTRIES) THEN
118
IF (GOODHEL(I,IMIRROR) .OR. NTRY(IMIRROR).LE.MAXTRIES) THEN
119
T=MATRIX2(P ,NHEL(1,I),JC(1))
121
IF(POL(JJ).NE.1D0.AND.NHEL(JJ,I).EQ.INT(SIGN(1D0
124
ELSE IF(POL(JJ).NE.1D0)THEN
125
T=T*(2D0-ABS(POL(JJ)))
133
IF(NTRY(IMIRROR).LE.MAXTRIES)THEN
135
IF (.NOT.GOODHEL(I,IMIRROR) .AND. (DABS(TS(I)).GT.ANS
136
$ *LIMHEL/NCOMB)) THEN
137
GOODHEL(I,IMIRROR)=.TRUE.
138
NGOOD(IMIRROR) = NGOOD(IMIRROR) +1
139
IGOOD(NGOOD(IMIRROR),IMIRROR) = I
140
PRINT *,'Added good helicity ',I,TS(I)*NCOMB/ANS
141
$ ,' in event ',NTRY(IMIRROR)
145
IF(NTRY(IMIRROR).EQ.MAXTRIES)THEN
146
ISHEL(IMIRROR)=MIN(ISUM_HEL,NGOOD(IMIRROR))
148
ELSE !LOOP OVER GOOD HELICITIES
149
DO J=1,ISHEL(IMIRROR)
150
JHEL(IMIRROR)=JHEL(IMIRROR)+1
151
IF (JHEL(IMIRROR) .GT. NGOOD(IMIRROR)) JHEL(IMIRROR)=1
152
HWGT = REAL(NGOOD(IMIRROR))/REAL(ISHEL(IMIRROR))
153
I = IGOOD(JHEL(IMIRROR),IMIRROR)
154
T=MATRIX2(P ,NHEL(1,I),JC(1))
156
IF(POL(JJ).NE.1D0.AND.NHEL(JJ,I).EQ.INT(SIGN(1D0,POL(JJ)))
159
ELSE IF(POL(JJ).NE.1D0)THEN
160
T=T*(2D0-ABS(POL(JJ)))
166
IF (ISHEL(IMIRROR) .EQ. 1) THEN
167
WRITE(HEL_BUFF,'(20i5)')(NHEL(II,I),II=1,NEXTERNAL)
168
C Set right sign for ANS, based on sign of chosen helicity
172
IF (ISHEL(IMIRROR) .NE. 1) THEN
176
SUMHEL=SUMHEL+DABS(TS(I))/ANS
178
WRITE(HEL_BUFF,'(20i5)')(NHEL(II,I),II=1,NEXTERNAL)
179
C Set right sign for ANS, based on sign of chosen helicity
186
IF (MULTI_CHANNEL) THEN
191
IF (XTOT.NE.0D0) THEN
192
ANS=ANS*AMP2(SUBDIAG(2))/XTOT
201
REAL*8 FUNCTION MATRIX2(P,NHEL,IC)
203
C Generated by MadGraph 5 v. 2.0.0.beta3, 2013-02-14
204
C By the MadGraph Development Team
205
C Please visit us at https://launchpad.net/madgraph5
207
C Returns amplitude squared summed/avg over colors
208
C for the point with external lines W(0:6,NEXTERNAL)
210
C Process: u u~ > u u~ WEIGHTED=2
211
C Process: s s~ > s s~ WEIGHTED=2
218
PARAMETER (NGRAPHS=2)
220
INCLUDE 'nexternal.inc'
221
INCLUDE 'maxamps.inc'
222
INTEGER NWAVEFUNCS, NCOLOR
223
PARAMETER (NWAVEFUNCS=5, NCOLOR=2)
227
PARAMETER (IMAG1=(0D0,1D0))
231
REAL*8 P(0:3,NEXTERNAL)
232
INTEGER NHEL(NEXTERNAL), IC(NEXTERNAL)
238
REAL*8 DENOM(NCOLOR), CF(NCOLOR,NCOLOR)
239
COMPLEX*16 AMP(NGRAPHS), JAMP(NCOLOR)
240
COMPLEX*16 W(6,NWAVEFUNCS)
241
C Needed for v4 models
243
DATA DUM0, DUM1/(0D0, 0D0), (1D0, 0D0)/
247
DOUBLE PRECISION AMP2(MAXAMPS), JAMP2(0:MAXFLOW)
248
COMMON/TO_AMPS/ AMP2, JAMP2
254
DATA (CF(I, 1),I= 1, 2) / 9, 3/
257
DATA (CF(I, 2),I= 1, 2) / 3, 9/
262
CALL IXXXXX(P(0,1),ZERO,NHEL(1),+1*IC(1),W(1,1))
263
CALL OXXXXX(P(0,2),ZERO,NHEL(2),-1*IC(2),W(1,2))
264
CALL OXXXXX(P(0,3),ZERO,NHEL(3),+1*IC(3),W(1,3))
265
CALL IXXXXX(P(0,4),ZERO,NHEL(4),-1*IC(4),W(1,4))
266
CALL FFV1_3(W(1,1),W(1,2),GC_11,ZERO,ZERO,W(1,5))
267
C Amplitude(s) for diagram number 1
268
CALL FFV1_0(W(1,4),W(1,3),W(1,5),GC_11,AMP(1))
269
CALL FFV1_3(W(1,1),W(1,3),GC_11,ZERO,ZERO,W(1,5))
270
C Amplitude(s) for diagram number 2
271
CALL FFV1_0(W(1,4),W(1,2),W(1,5),GC_11,AMP(2))
272
JAMP(1)=+1D0/2D0*(+1D0/3D0*AMP(1)+AMP(2))
273
JAMP(2)=+1D0/2D0*(-AMP(1)-1D0/3D0*AMP(2))
278
ZTEMP = ZTEMP + CF(J,I)*JAMP(J)
280
MATRIX2=MATRIX2+ZTEMP*DCONJG(JAMP(I))/DENOM(I)
282
AMP2(2)=AMP2(2)+AMP(2)*DCONJG(AMP(2))
283
AMP2(1)=AMP2(1)+AMP(1)*DCONJG(AMP(1))
285
JAMP2(I)=JAMP2(I)+JAMP(I)*DCONJG(JAMP(I))