1
SUBROUTINE SBORN(P1,ANS)
3
C Generated by MadGraph5_aMC@NLO v. %(version)s, %(date)s
4
C By the MadGraph5_aMC@NLO Development Team
5
C Visit launchpad.net/madgraph5 and amcatnlo.web.cern.ch
7
C RETURNS AMPLITUDE SQUARED SUMMED/AVG OVER COLORS
9
C FOR THE POINT IN PHASE SPACE P1(0:3,NEXTERNAL-1)
11
C Process: u u~ > t t~ WEIGHTED<=2 [ real = QCD ]
12
C Process: c c~ > t t~ WEIGHTED<=2 [ real = QCD ]
13
C Process: d d~ > t t~ WEIGHTED<=2 [ real = QCD ]
14
C Process: s s~ > t t~ WEIGHTED<=2 [ real = QCD ]
20
INCLUDE 'nexternal.inc'
21
INCLUDE 'born_nhel.inc'
24
PARAMETER ( NCOMB= 16 )
26
PARAMETER (THEL=NCOMB*6)
28
PARAMETER (NGRAPHS= 1)
32
REAL*8 P1(0:3,NEXTERNAL-1)
37
INTEGER IHEL,IDEN,I,J,JJ,GLU_IJ
42
INTEGER NHEL(NEXTERNAL-1,NCOMB)
43
DATA (NHEL(I, 1),I=1,4) / 1,-1,-1, 1/
44
DATA (NHEL(I, 2),I=1,4) / 1,-1,-1,-1/
45
DATA (NHEL(I, 3),I=1,4) / 1,-1, 1, 1/
46
DATA (NHEL(I, 4),I=1,4) / 1,-1, 1,-1/
47
DATA (NHEL(I, 5),I=1,4) / 1, 1,-1, 1/
48
DATA (NHEL(I, 6),I=1,4) / 1, 1,-1,-1/
49
DATA (NHEL(I, 7),I=1,4) / 1, 1, 1, 1/
50
DATA (NHEL(I, 8),I=1,4) / 1, 1, 1,-1/
51
DATA (NHEL(I, 9),I=1,4) /-1,-1,-1, 1/
52
DATA (NHEL(I, 10),I=1,4) /-1,-1,-1,-1/
53
DATA (NHEL(I, 11),I=1,4) /-1,-1, 1, 1/
54
DATA (NHEL(I, 12),I=1,4) /-1,-1, 1,-1/
55
DATA (NHEL(I, 13),I=1,4) /-1, 1,-1, 1/
56
DATA (NHEL(I, 14),I=1,4) /-1, 1,-1,-1/
57
DATA (NHEL(I, 15),I=1,4) /-1, 1, 1, 1/
58
DATA (NHEL(I, 16),I=1,4) /-1, 1, 1,-1/
59
INTEGER IDEN_VALUES(6)
60
DATA IDEN_VALUES /36, 36, 36, 36, 36, 36/
62
DATA IJ_VALUES /1, 2, 3, 4, 1, 2/
66
DOUBLE PRECISION AMP2(MAXAMPS), JAMP2(0:MAXAMPS)
67
COMMON/TO_AMPS/ AMP2, JAMP2
69
LOGICAL GOODHEL(NCOMB,6)
70
COMMON /C_GOODHEL/GOODHEL
71
DOUBLE COMPLEX SAVEAMP(NGRAPHS,MAX_BHEL)
72
COMMON/TO_SAVEAMP/SAVEAMP
73
DOUBLE PRECISION SAVEMOM(NEXTERNAL-1,2)
74
COMMON/TO_SAVEMOM/SAVEMOM
75
DOUBLE PRECISION HEL_FAC
76
INTEGER GET_HEL,SKIP(6)
77
COMMON/CBORN/HEL_FAC,GET_HEL,SKIP
78
LOGICAL CALCULATEDBORN
79
COMMON/CCALCULATEDBORN/CALCULATEDBORN
81
COMMON/C_NFKSPROCESS/NFKSPROCESS
82
DOUBLE PRECISION WGT_ME_BORN,WGT_ME_REAL
83
COMMON /C_WGT_ME_TREE/ WGT_ME_BORN,WGT_ME_REAL
87
IDEN=IDEN_VALUES(NFKSPROCESS)
88
GLU_IJ = IJ_VALUES(NFKSPROCESS)
89
NTRY(NFKSPROCESS)=NTRY(NFKSPROCESS)+1
90
IF (NTRY(NFKSPROCESS).LT.2) THEN
92
DO WHILE(NHEL(GLU_IJ ,SKIP(NFKSPROCESS)).NE.-NHEL(GLU_IJ ,1))
93
SKIP(NFKSPROCESS)=SKIP(NFKSPROCESS)+1
95
SKIP(NFKSPROCESS)=SKIP(NFKSPROCESS)-1
100
DO JJ=1,INT(JAMP2(0))
103
IF (CALCULATEDBORN) THEN
105
IF (SAVEMOM(J,1).NE.P1(0,J) .OR. SAVEMOM(J,2).NE.P1(3,J))
107
CALCULATEDBORN=.FALSE.
108
WRITE (*,*) 'momenta not the same in Born'
113
IF (.NOT.CALCULATEDBORN) THEN
120
SAVEAMP(JJ,J)=(0D0,0D0)
128
IF (NHEL(GLU_IJ,IHEL).EQ.NHEL(GLU_IJ,1)) THEN
129
IF ((GOODHEL(IHEL,NFKSPROCESS) .OR. GOODHEL(IHEL
130
$ +SKIP(NFKSPROCESS),NFKSPROCESS) .OR. NTRY(NFKSPROCESS) .LT.
132
ANS(1)=ANS(1)+BORN(P1,NHEL(1,IHEL),IHEL,BORNTILDE,BORNS)
133
ANS(2)=ANS(2)+BORNTILDE
134
IF ( BORNS(1).NE.0D0 .AND. .NOT. GOODHEL(IHEL,NFKSPROCESS)
136
GOODHEL(IHEL,NFKSPROCESS)=.TRUE.
138
IF ( BORNS(2).NE.0D0 .AND. .NOT. GOODHEL(IHEL
139
$ +SKIP(NFKSPROCESS),NFKSPROCESS) ) THEN
140
GOODHEL(IHEL+SKIP(NFKSPROCESS),NFKSPROCESS)=.TRUE.
145
ANS(1)=ANS(1)/DBLE(IDEN)
146
ANS(2)=ANS(2)/DBLE(IDEN)
147
WGT_ME_BORN=DBLE(ANS(1))
148
CALCULATEDBORN=.TRUE.
152
REAL*8 FUNCTION BORN(P,NHEL,HELL,BORNTILDE,BORNS)
154
C Generated by MadGraph5_aMC@NLO v. %(version)s, %(date)s
155
C By the MadGraph5_aMC@NLO Development Team
156
C Visit launchpad.net/madgraph5 and amcatnlo.web.cern.ch
157
C RETURNS AMPLITUDE SQUARED SUMMED/AVG OVER COLORS
158
C FOR THE POINT WITH EXTERNAL LINES W(0:6,NEXTERNAL-1)
160
C Process: u u~ > t t~ WEIGHTED<=2 [ real = QCD ]
161
C Process: c c~ > t t~ WEIGHTED<=2 [ real = QCD ]
162
C Process: d d~ > t t~ WEIGHTED<=2 [ real = QCD ]
163
C Process: s s~ > t t~ WEIGHTED<=2 [ real = QCD ]
169
INTEGER NGRAPHS, NEIGEN
170
PARAMETER (NGRAPHS= 1,NEIGEN= 1)
171
INTEGER NWAVEFUNCS, NCOLOR
172
PARAMETER (NWAVEFUNCS=5, NCOLOR=2)
176
PARAMETER (IMAG1 = (0D0,1D0))
177
INCLUDE 'nexternal.inc'
178
INCLUDE 'born_nhel.inc'
184
REAL*8 P(0:3,NEXTERNAL-1),BORNS(2)
185
INTEGER NHEL(NEXTERNAL-1), HELL
190
INTEGER I,J,IHEL,BACK_HEL,GLU_IJ
191
INTEGER IC(NEXTERNAL-1),NMO
192
PARAMETER (NMO=NEXTERNAL-1)
194
REAL*8 DENOM(NCOLOR), CF(NCOLOR,NCOLOR)
195
COMPLEX*16 ZTEMP, AMP(NGRAPHS), JAMP(NCOLOR), W(8,NWAVEFUNCS),
200
DOUBLE PRECISION AMP2(MAXAMPS), JAMP2(0:MAXAMPS)
201
COMMON/TO_AMPS/ AMP2, JAMP2
202
DOUBLE COMPLEX SAVEAMP(NGRAPHS,MAX_BHEL)
203
COMMON/TO_SAVEAMP/SAVEAMP
204
DOUBLE PRECISION HEL_FAC
205
INTEGER GET_HEL,SKIP(6)
206
COMMON/CBORN/HEL_FAC,GET_HEL,SKIP
207
LOGICAL CALCULATEDBORN
208
COMMON/CCALCULATEDBORN/CALCULATEDBORN
210
COMMON/C_NFKSPROCESS/NFKSPROCESS
213
DATA IJ_VALUES /1, 2, 3, 4, 1, 2/
218
DATA (CF(I, 1),I= 1, 2) / 9, 3/
221
DATA (CF(I, 2),I= 1, 2) / 3, 9/
226
GLU_IJ = IJ_VALUES(NFKSPROCESS)
228
BORNTILDE = (0D0,0D0)
229
BACK_HEL = NHEL(GLU_IJ)
232
IF (BACK_HEL.NE.0) THEN
237
DO IHEL=BACK_HEL,-BACK_HEL,STEP_HEL
238
IF (IHEL.EQ.BACK_HEL.OR.NHEL(GLU_IJ).NE.0) THEN
239
IF (NHEL(GLU_IJ).NE.0) NHEL(GLU_IJ) = IHEL
240
IF (.NOT. CALCULATEDBORN) THEN
241
CALL IXXXXX(P(0,1),ZERO,NHEL(1),+1*IC(1),W(1,1))
242
CALL OXXXXX(P(0,2),ZERO,NHEL(2),-1*IC(2),W(1,2))
243
CALL OXXXXX(P(0,3),MDL_MT,NHEL(3),+1*IC(3),W(1,3))
244
CALL IXXXXX(P(0,4),MDL_MT,NHEL(4),-1*IC(4),W(1,4))
245
CALL FFV1P0_3(W(1,1),W(1,2),GC_11,ZERO,ZERO,W(1,5))
246
C Amplitude(s) for diagram number 1
247
CALL FFV1_0(W(1,4),W(1,3),W(1,5),GC_11,AMP(1))
249
IF(IHEL.EQ.BACK_HEL)THEN
250
SAVEAMP(I,HELL)=AMP(I)
251
ELSEIF(IHEL.EQ.-BACK_HEL)THEN
252
SAVEAMP(I,HELL+SKIP(NFKSPROCESS))=AMP(I)
254
WRITE(*,*) 'ERROR #1 in born.f'
258
ELSEIF (CALCULATEDBORN) THEN
260
IF(IHEL.EQ.BACK_HEL)THEN
261
AMP(I)=SAVEAMP(I,HELL)
262
ELSEIF(IHEL.EQ.-BACK_HEL)THEN
263
AMP(I)=SAVEAMP(I,HELL+SKIP(NFKSPROCESS))
265
WRITE(*,*) 'ERROR #1 in born.f'
270
JAMP(1)=+1D0/2D0*(+1D0/3D0*AMP(1))
271
JAMP(2)=+1D0/2D0*(-AMP(1))
275
ZTEMP = ZTEMP + CF(J,I)*JAMP(J)
277
BORNS(2-(1+BACK_HEL*IHEL)/2)=BORNS(2-(1+BACK_HEL*IHEL)/2)
278
$ +ZTEMP*DCONJG(JAMP(I))/DENOM(I)
281
AMP2(I)=AMP2(I)+AMP(I)*DCONJG(AMP(I))
284
JAMP2(I)=JAMP2(I)+JAMP(I)*DCONJG(JAMP(I))
285
JAMPH(2-(1+BACK_HEL*IHEL)/2,I)=JAMP(I)
289
BORN=BORNS(1)+BORNS(2)
293
ZTEMP = ZTEMP + CF(J,I)*JAMPH(2,J)
295
BORNTILDE = BORNTILDE + ZTEMP*DCONJG(JAMPH(1,I))/DENOM(I)
297
NHEL(GLU_IJ) = BACK_HEL
303
PARAMETER ( NCOMB= 16 )
305
PARAMETER (THEL=NCOMB*6)
306
LOGICAL GOODHEL(NCOMB,6)
307
COMMON /C_GOODHEL/GOODHEL
308
DATA GOODHEL/THEL*.FALSE./