1
SUBROUTINE SB_SF_001(P,ANS_SUMMED)
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
8
C Return the sum of the split orders which are required in
9
C orders.inc (BORN_ORDERS)
10
C Also the values needed for the counterterms are stored in the
11
C C_BORN_CNT common block
14
C Process: u~ u > t t~ [ LOonly = QCD QED ] QCD^2<=6 QED^2<=0
15
C Process: c~ c > t t~ [ LOonly = QCD QED ] QCD^2<=6 QED^2<=0
16
C Process: d~ d > t t~ [ LOonly = QCD QED ] QCD^2<=6 QED^2<=0
17
C Process: s~ s > t t~ [ LOonly = QCD QED ] QCD^2<=6 QED^2<=0
25
INCLUDE 'nexternal.inc'
27
PARAMETER (NSQAMPSO=1)
31
REAL*8 P(0:3,NEXTERNAL), ANS_SUMMED
37
REAL*8 ANS(0:NSQAMPSO)
38
LOGICAL KEEP_ORDER_CNT(NSPLITORDERS, NSQAMPSO)
39
COMMON /C_KEEP_ORDER_CNT/ KEEP_ORDER_CNT
40
INTEGER AMP_ORDERS(NSPLITORDERS)
42
PARAMETER (TINY = 1D-12)
43
DOUBLE PRECISION MAX_VAL
47
INTEGER GETORDPOWFROMINDEX_B
48
INTEGER ORDERS_TO_AMP_SPLIT_POS
52
CALL SB_SF_001_SPLITORDERS(P,ANS)
53
C color-linked borns are called for QCD-type emissions
57
C reset the amp_split_cnt array
58
AMP_SPLIT_CNT(1:AMP_SPLIT_SIZE,1:2,1:NSPLITORDERS) = DCMPLX(0D0
63
MAX_VAL = MAX(MAX_VAL, ABS(ANS(I)))
67
IF (KEEP_ORDER_CNT(QCD_POS, I)) THEN
68
ANS_SUMMED = ANS_SUMMED + ANS(I)
69
DO J = 1, NSPLITORDERS
70
AMP_ORDERS(J) = GETORDPOWFROMINDEX_B(J, I)
71
C take into account the fact that this is for QCD
72
IF (J.EQ.QCD_POS) AMP_ORDERS(J) = AMP_ORDERS(J) + 2
74
!amp_split_cnt(orders_to_amp_split_pos(amp_orders),1,qcd_pos) = ans(I)
75
IF(ABS(ANS(I)).GT.MAX_VAL*TINY)
76
$ AMP_SPLIT_CNT(ORDERS_TO_AMP_SPLIT_POS(AMP_ORDERS),1
81
C this is to avoid fake non-zero contributions
82
IF (ABS(ANS_SUMMED).LT.MAX_VAL*TINY) ANS_SUMMED=0D0
88
SUBROUTINE SB_SF_001_SPLITORDERS(P1,ANS)
90
C Generated by MadGraph5_aMC@NLO v. %(version)s, %(date)s
91
C By the MadGraph5_aMC@NLO Development Team
92
C Visit launchpad.net/madgraph5 and amcatnlo.web.cern.ch
94
C RETURNS AMPLITUDE SQUARED SUMMED/AVG OVER COLORS
96
C FOR THE POINT IN PHASE SPACE P(0:3,NEXTERNAL-1)
98
C Process: u~ u > t t~ [ LOonly = QCD QED ] QCD^2<=6 QED^2<=0
99
C Process: c~ c > t t~ [ LOonly = QCD QED ] QCD^2<=6 QED^2<=0
100
C Process: d~ d > t t~ [ LOonly = QCD QED ] QCD^2<=6 QED^2<=0
101
C Process: s~ s > t t~ [ LOonly = QCD QED ] QCD^2<=6 QED^2<=0
109
INCLUDE 'nexternal.inc'
111
PARAMETER ( NCOMB= 16 )
113
PARAMETER (NSQAMPSO=1)
115
PARAMETER (THEL=NCOMB*0)
117
PARAMETER (NGRAPHS= 1)
121
REAL*8 P1(0:3,NEXTERNAL-1),ANS(0:NSQAMPSO)
125
INTEGER IHEL,IDEN,I,J
126
DOUBLE PRECISION T(NSQAMPSO)
127
INTEGER IDEN_VALUES(1)
128
DATA IDEN_VALUES / 36 /
132
LOGICAL GOODHEL(NCOMB,0)
133
COMMON /C_GOODHEL/ GOODHEL
134
DOUBLE PRECISION SAVEMOM(NEXTERNAL-1,2)
135
COMMON/TO_SAVEMOM/SAVEMOM
136
LOGICAL CALCULATEDBORN
137
COMMON/CCALCULATEDBORN/CALCULATEDBORN
139
COMMON/C_NFKSPROCESS/NFKSPROCESS
143
IDEN=IDEN_VALUES(NFKSPROCESS)
144
IF (CALCULATEDBORN) THEN
146
IF (SAVEMOM(J,1).NE.P1(0,J) .OR. SAVEMOM(J,2).NE.P1(3,J))
148
CALCULATEDBORN=.FALSE.
149
WRITE(*,*) 'Error in sb_sf: momenta not the same in the'
155
WRITE(*,*) 'Error in sb_sf: color_linked borns should be'
156
$ //' called only with calculatedborn = true'
163
IF (GOODHEL(IHEL,NFKSPROCESS)) THEN
164
CALL B_SF_001(IHEL,T)
171
ANS(I)=ANS(I)/DBLE(IDEN)
177
SUBROUTINE B_SF_001(HELL,ANS)
179
C Generated by MadGraph5_aMC@NLO v. %(version)s, %(date)s
180
C By the MadGraph5_aMC@NLO Development Team
181
C Visit launchpad.net/madgraph5 and amcatnlo.web.cern.ch
182
C RETURNS AMPLITUDE SQUARED SUMMED/AVG OVER COLORS
183
C FOR THE POINT WITH EXTERNAL LINES W(0:6,NEXTERNAL-1)
185
C Process: u~ u > t t~ [ LOonly = QCD QED ] QCD^2<=6 QED^2<=0
186
C Process: c~ c > t t~ [ LOonly = QCD QED ] QCD^2<=6 QED^2<=0
187
C Process: d~ d > t t~ [ LOonly = QCD QED ] QCD^2<=6 QED^2<=0
188
C Process: s~ s > t t~ [ LOonly = QCD QED ] QCD^2<=6 QED^2<=0
196
INTEGER NAMPSO, NSQAMPSO
197
PARAMETER (NAMPSO=1, NSQAMPSO=1)
199
PARAMETER ( NGRAPHS = 1 )
200
INTEGER NCOLOR1, NCOLOR2
201
PARAMETER (NCOLOR1=2, NCOLOR2=2)
205
PARAMETER (IMAG1 = (0D0,1D0))
206
INCLUDE 'nexternal.inc'
207
INCLUDE 'born_nhel.inc'
217
REAL*8 CF(NCOLOR2,NCOLOR1)
218
COMPLEX*16 ZTEMP, AMP(NGRAPHS), JAMP1(NCOLOR1,NAMPSO),
219
$ JAMP2(NCOLOR2,NAMPSO)
220
COMPLEX*16 TMP_JAMP(0)
224
DOUBLE COMPLEX SAVEAMP(NGRAPHS,MAX_BHEL)
225
COMMON/TO_SAVEAMP/SAVEAMP
226
LOGICAL CALCULATEDBORN
227
COMMON/CCALCULATEDBORN/CALCULATEDBORN
235
DATA (CF(I, 1),I= 1, 2) /9.000000000000000D+00
236
$ ,3.000000000000000D+00/
237
DATA (CF(I, 2),I= 1, 2) /3.000000000000000D+00
238
$ ,9.000000000000000D+00/
242
IF (.NOT. CALCULATEDBORN) THEN
243
WRITE(*,*) 'Error in b_sf: color_linked borns should be called'
244
$ //' only with calculatedborn = true'
246
ELSEIF (CALCULATEDBORN) THEN
248
AMP(I)=SAVEAMP(I,HELL)
251
C JAMPs contributing to orders QCD=2 QED=0
252
JAMP1(1,1) = (-1.666666666666667D-01)*AMP(1)
253
JAMP1(2,1) = (5.000000000000000D-01)*AMP(1)
254
C JAMPs contributing to orders QCD=2 QED=0
255
JAMP2(1,1) = (-2.777777777777778D-02)*AMP(1)
256
JAMP2(2,1) = (8.333333333333333D-02)*AMP(1)
264
ZTEMP = ZTEMP + CF(J,I)*JAMP2(J,M)
267
ANS(SQSOINDEXB(M,N))=ANS(SQSOINDEXB(M,N))+ZTEMP
268
$ *DCONJG(JAMP1(I,N))