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: d~ u > w+ WEIGHTED<=2 [ all = QCD ]
12
C Process: s~ c > w+ WEIGHTED<=2 [ all = QCD ]
18
INCLUDE 'nexternal.inc'
19
INCLUDE 'born_nhel.inc'
22
PARAMETER ( NCOMB= 12 )
24
PARAMETER (THEL=NCOMB*4)
26
PARAMETER (NGRAPHS= 1)
30
REAL*8 P1(0:3,NEXTERNAL-1)
35
INTEGER IHEL,IDEN,I,J,JJ,GLU_IJ
40
INTEGER NHEL(NEXTERNAL-1,NCOMB)
41
DATA (NHEL(I, 1),I=1,3) /-1, 1,-1/
42
DATA (NHEL(I, 2),I=1,3) /-1, 1, 0/
43
DATA (NHEL(I, 3),I=1,3) /-1, 1, 1/
44
DATA (NHEL(I, 4),I=1,3) /-1,-1,-1/
45
DATA (NHEL(I, 5),I=1,3) /-1,-1, 0/
46
DATA (NHEL(I, 6),I=1,3) /-1,-1, 1/
47
DATA (NHEL(I, 7),I=1,3) / 1, 1,-1/
48
DATA (NHEL(I, 8),I=1,3) / 1, 1, 0/
49
DATA (NHEL(I, 9),I=1,3) / 1, 1, 1/
50
DATA (NHEL(I, 10),I=1,3) / 1,-1,-1/
51
DATA (NHEL(I, 11),I=1,3) / 1,-1, 0/
52
DATA (NHEL(I, 12),I=1,3) / 1,-1, 1/
53
INTEGER IDEN_VALUES(4)
54
DATA IDEN_VALUES /36, 36, 36, 36/
56
DATA IJ_VALUES /1, 2, 1, 2/
60
DOUBLE PRECISION AMP2(MAXAMPS), JAMP2(0:MAXAMPS)
61
COMMON/TO_AMPS/ AMP2, JAMP2
63
LOGICAL GOODHEL(NCOMB,4)
64
COMMON /C_GOODHEL/GOODHEL
65
DOUBLE COMPLEX SAVEAMP(NGRAPHS,MAX_BHEL)
66
COMMON/TO_SAVEAMP/SAVEAMP
67
DOUBLE PRECISION SAVEMOM(NEXTERNAL-1,2)
68
COMMON/TO_SAVEMOM/SAVEMOM
69
DOUBLE PRECISION HEL_FAC
70
INTEGER GET_HEL,SKIP(4)
71
COMMON/CBORN/HEL_FAC,GET_HEL,SKIP
72
LOGICAL CALCULATEDBORN
73
COMMON/CCALCULATEDBORN/CALCULATEDBORN
75
COMMON/C_NFKSPROCESS/NFKSPROCESS
76
DOUBLE PRECISION WGT_ME_BORN,WGT_ME_REAL
77
COMMON /C_WGT_ME_TREE/ WGT_ME_BORN,WGT_ME_REAL
81
IDEN=IDEN_VALUES(NFKSPROCESS)
82
GLU_IJ = IJ_VALUES(NFKSPROCESS)
83
NTRY(NFKSPROCESS)=NTRY(NFKSPROCESS)+1
84
IF (NTRY(NFKSPROCESS).LT.2) THEN
86
DO WHILE(NHEL(GLU_IJ ,SKIP(NFKSPROCESS)).NE.-NHEL(GLU_IJ ,1))
87
SKIP(NFKSPROCESS)=SKIP(NFKSPROCESS)+1
89
SKIP(NFKSPROCESS)=SKIP(NFKSPROCESS)-1
97
IF (CALCULATEDBORN) THEN
99
IF (SAVEMOM(J,1).NE.P1(0,J) .OR. SAVEMOM(J,2).NE.P1(3,J))
101
CALCULATEDBORN=.FALSE.
102
WRITE (*,*) 'momenta not the same in Born'
107
IF (.NOT.CALCULATEDBORN) THEN
114
SAVEAMP(JJ,J)=(0D0,0D0)
122
IF (NHEL(GLU_IJ,IHEL).EQ.NHEL(GLU_IJ,1)) THEN
123
IF ((GOODHEL(IHEL,NFKSPROCESS) .OR. GOODHEL(IHEL
124
$ +SKIP(NFKSPROCESS),NFKSPROCESS) .OR. NTRY(NFKSPROCESS) .LT.
126
ANS(1)=ANS(1)+BORN(P1,NHEL(1,IHEL),IHEL,BORNTILDE,BORNS)
127
ANS(2)=ANS(2)+BORNTILDE
128
IF ( BORNS(1).NE.0D0 .AND. .NOT. GOODHEL(IHEL,NFKSPROCESS)
130
GOODHEL(IHEL,NFKSPROCESS)=.TRUE.
132
IF ( BORNS(2).NE.0D0 .AND. .NOT. GOODHEL(IHEL
133
$ +SKIP(NFKSPROCESS),NFKSPROCESS) ) THEN
134
GOODHEL(IHEL+SKIP(NFKSPROCESS),NFKSPROCESS)=.TRUE.
139
ANS(1)=ANS(1)/DBLE(IDEN)
140
ANS(2)=ANS(2)/DBLE(IDEN)
141
WGT_ME_BORN=DBLE(ANS(1))
142
CALCULATEDBORN=.TRUE.
146
REAL*8 FUNCTION BORN(P,NHEL,HELL,BORNTILDE,BORNS)
148
C Generated by MadGraph5_aMC@NLO v. %(version)s, %(date)s
149
C By the MadGraph5_aMC@NLO Development Team
150
C Visit launchpad.net/madgraph5 and amcatnlo.web.cern.ch
151
C RETURNS AMPLITUDE SQUARED SUMMED/AVG OVER COLORS
152
C FOR THE POINT WITH EXTERNAL LINES W(0:6,NEXTERNAL-1)
154
C Process: d~ u > w+ WEIGHTED<=2 [ all = QCD ]
155
C Process: s~ c > w+ WEIGHTED<=2 [ all = QCD ]
161
INTEGER NGRAPHS, NEIGEN
162
PARAMETER (NGRAPHS= 1,NEIGEN= 1)
163
INTEGER NWAVEFUNCS, NCOLOR
164
PARAMETER (NWAVEFUNCS=3, NCOLOR=1)
168
PARAMETER (IMAG1 = (0D0,1D0))
169
INCLUDE 'nexternal.inc'
170
INCLUDE 'born_nhel.inc'
176
REAL*8 P(0:3,NEXTERNAL-1),BORNS(2)
177
INTEGER NHEL(NEXTERNAL-1), HELL
182
INTEGER I,J,IHEL,BACK_HEL,GLU_IJ
183
INTEGER IC(NEXTERNAL-1),NMO
184
PARAMETER (NMO=NEXTERNAL-1)
186
REAL*8 DENOM(NCOLOR), CF(NCOLOR,NCOLOR)
187
COMPLEX*16 ZTEMP, AMP(NGRAPHS), JAMP(NCOLOR), W(8,NWAVEFUNCS),
192
DOUBLE PRECISION AMP2(MAXAMPS), JAMP2(0:MAXAMPS)
193
COMMON/TO_AMPS/ AMP2, JAMP2
194
DOUBLE COMPLEX SAVEAMP(NGRAPHS,MAX_BHEL)
195
COMMON/TO_SAVEAMP/SAVEAMP
196
DOUBLE PRECISION HEL_FAC
197
INTEGER GET_HEL,SKIP(4)
198
COMMON/CBORN/HEL_FAC,GET_HEL,SKIP
199
LOGICAL CALCULATEDBORN
200
COMMON/CCALCULATEDBORN/CALCULATEDBORN
202
COMMON/C_NFKSPROCESS/NFKSPROCESS
205
DATA IJ_VALUES /1, 2, 1, 2/
210
DATA (CF(I, 1),I= 1, 1) / 3/
215
GLU_IJ = IJ_VALUES(NFKSPROCESS)
217
BORNTILDE = (0D0,0D0)
218
BACK_HEL = NHEL(GLU_IJ)
221
IF (BACK_HEL.NE.0) THEN
226
DO IHEL=BACK_HEL,-BACK_HEL,STEP_HEL
227
IF (IHEL.EQ.BACK_HEL.OR.NHEL(GLU_IJ).NE.0) THEN
228
IF (NHEL(GLU_IJ).NE.0) NHEL(GLU_IJ) = IHEL
229
IF (.NOT. CALCULATEDBORN) THEN
230
CALL OXXXXX(P(0,1),ZERO,NHEL(1),-1*IC(1),W(1,1))
231
CALL IXXXXX(P(0,2),ZERO,NHEL(2),+1*IC(2),W(1,2))
232
CALL VXXXXX(P(0,3),MDL_MW,NHEL(3),+1*IC(3),W(1,3))
233
C Amplitude(s) for diagram number 1
234
CALL FFV2_0(W(1,2),W(1,1),W(1,3),GC_47,AMP(1))
236
IF(IHEL.EQ.BACK_HEL)THEN
237
SAVEAMP(I,HELL)=AMP(I)
238
ELSEIF(IHEL.EQ.-BACK_HEL)THEN
239
SAVEAMP(I,HELL+SKIP(NFKSPROCESS))=AMP(I)
241
WRITE(*,*) 'ERROR #1 in born.f'
245
ELSEIF (CALCULATEDBORN) THEN
247
IF(IHEL.EQ.BACK_HEL)THEN
248
AMP(I)=SAVEAMP(I,HELL)
249
ELSEIF(IHEL.EQ.-BACK_HEL)THEN
250
AMP(I)=SAVEAMP(I,HELL+SKIP(NFKSPROCESS))
252
WRITE(*,*) 'ERROR #1 in born.f'
261
ZTEMP = ZTEMP + CF(J,I)*JAMP(J)
263
BORNS(2-(1+BACK_HEL*IHEL)/2)=BORNS(2-(1+BACK_HEL*IHEL)/2)
264
$ +ZTEMP*DCONJG(JAMP(I))/DENOM(I)
267
AMP2(I)=AMP2(I)+AMP(I)*DCONJG(AMP(I))
270
JAMP2(I)=JAMP2(I)+JAMP(I)*DCONJG(JAMP(I))
271
JAMPH(2-(1+BACK_HEL*IHEL)/2,I)=JAMP(I)
275
BORN=BORNS(1)+BORNS(2)
279
ZTEMP = ZTEMP + CF(J,I)*JAMPH(2,J)
281
BORNTILDE = BORNTILDE + ZTEMP*DCONJG(JAMPH(1,I))/DENOM(I)
283
NHEL(GLU_IJ) = BACK_HEL
289
PARAMETER ( NCOMB= 12 )
291
PARAMETER (THEL=NCOMB*4)
292
LOGICAL GOODHEL(NCOMB,4)
293
COMMON /C_GOODHEL/GOODHEL
294
DATA GOODHEL/THEL*.FALSE./