1
SUBROUTINE HELAS_CALLS_AMPB_1(P,NHEL,H,IC)
5
USE POLYNOMIAL_CONSTANTS
12
PARAMETER (NEXTERNAL=4)
16
PARAMETER (NBORNAMPS=1)
17
INTEGER NLOOPS, NLOOPGROUPS, NCTAMPS
18
PARAMETER (NLOOPS=35, NLOOPGROUPS=25, NCTAMPS=15)
20
PARAMETER (NLOOPAMPS=50)
21
INTEGER NWAVEFUNCS,NLOOPWAVEFUNCS
22
PARAMETER (NWAVEFUNCS=6,NLOOPWAVEFUNCS=73)
26
PARAMETER (MP__ZERO=0.0E0_16)
27
C These are constants related to the split orders
28
INTEGER NSO, NSQUAREDSO, NAMPSO
29
PARAMETER (NSO=2, NSQUAREDSO=1, NAMPSO=2)
33
REAL*8 P(0:3,NEXTERNAL)
34
INTEGER NHEL(NEXTERNAL), IC(NEXTERNAL)
40
COMPLEX*16 COEFS(MAXLWFSIZE,0:VERTEXMAXCOEFS-1,MAXLWFSIZE)
43
DATA DUMMYFALSE/.FALSE./
48
INCLUDE 'mp_coupl.inc'
51
INTEGER GOODHEL(NCOMB)
52
LOGICAL GOODAMP(NSQUAREDSO,NLOOPGROUPS)
53
COMMON/FILTERS/GOODAMP,GOODHEL,HELOFFSET
56
LOGICAL HELDOUBLECHECKED
57
COMMON/INIT/CHECKPHASE, HELDOUBLECHECKED
60
COMMON/SOCHOICE/SQSO_TARGET
62
LOGICAL UVCT_REQ_SO_DONE,MP_UVCT_REQ_SO_DONE,CT_REQ_SO_DONE
63
$ ,MP_CT_REQ_SO_DONE,LOOP_REQ_SO_DONE,MP_LOOP_REQ_SO_DONE
64
$ ,CTCALL_REQ_SO_DONE,FILTER_SO
65
COMMON/SO_REQS/UVCT_REQ_SO_DONE,MP_UVCT_REQ_SO_DONE
66
$ ,CT_REQ_SO_DONE,MP_CT_REQ_SO_DONE,LOOP_REQ_SO_DONE
67
$ ,MP_LOOP_REQ_SO_DONE,CTCALL_REQ_SO_DONE,FILTER_SO
74
COMPLEX*16 AMP(NBORNAMPS)
76
COMPLEX*16 W(20,NWAVEFUNCS)
79
COMPLEX*16 WL(MAXLWFSIZE,0:LOOPMAXCOEFS-1,MAXLWFSIZE,
81
COMPLEX*16 PL(0:3,-1:NLOOPWAVEFUNCS)
84
COMPLEX*16 AMPL(3,NCTAMPS)
92
C The target squared split order contribution is already reached
94
IF (FILTER_SO.AND.CT_REQ_SO_DONE) THEN
98
CALL OXXXXX(P(0,1),ZERO,NHEL(1),-1*IC(1),W(1,1))
99
CALL IXXXXX(P(0,2),ZERO,NHEL(2),+1*IC(2),W(1,2))
100
CALL OXXXXX(P(0,3),ZERO,NHEL(3),+1*IC(3),W(1,3))
101
CALL IXXXXX(P(0,4),ZERO,NHEL(4),-1*IC(4),W(1,4))
102
CALL FFV2P0_3(W(1,2),W(1,1),GC_124,DCMPLX(CMASS_MDL_MW),W(1,5))
103
C Amplitude(s) for born diagram with ID 1
104
CALL FFV2_0(W(1,4),W(1,3),W(1,5),GC_124,AMP(1))
105
CALL FFV2P0_3(W(1,4),W(1,3),GC_124,DCMPLX(CMASS_MDL_MW),W(1,6))
106
C Counter-term amplitude(s) for loop diagram number 2
107
CALL L_WMWPMASS2_L_WMWPMASS4_0(W(1,6),W(1,5)
108
$ ,C_UVWMWPMASS2EW_1EPS,C_UVWMWPMASS1EW_1EPS,AMPL(2,1))
109
CALL L_WMWPMASS2_L_WMWPMASS4_0(W(1,6),W(1,5),C_UVWMWPMASS2EW
110
$ ,C_UVWMWPMASS1EW,AMPL(1,2))
111
C Counter-term amplitude(s) for loop diagram number 4
112
CALL L_VEXVEA21_0(W(1,4),W(1,3),W(1,5),C_UVEPVEWM1EW_1EPS,AMPL(2
114
CALL L_VEXVEA21_0(W(1,4),W(1,3),W(1,5),C_UVEPVEWM1EW,AMPL(1,4))
115
C Counter-term amplitude(s) for loop diagram number 5
116
CALL L_VEXVEA21_0(W(1,2),W(1,1),W(1,6),C_UVCXSWP1EW_1EPS,AMPL(2
118
CALL L_VEXVEA21_0(W(1,2),W(1,1),W(1,6),C_UVCXSWP1EW,AMPL(1,6))
119
C Counter-term amplitude(s) for loop diagram number 14
120
CALL FFV2_0(W(1,4),W(1,3),W(1,5),R2_VLW,AMPL(1,7))
121
C Counter-term amplitude(s) for loop diagram number 16
122
CALL FFV2_0(W(1,2),W(1,1),W(1,6),R2_BXTW2CP,AMPL(1,8))
123
C Counter-term amplitude(s) for loop diagram number 23
124
CALL R2_GG_1_R2_GG_2_R2_GG_3_0(W(1,5),W(1,6),R2_WWBOSON1
125
$ ,R2_WWBOSON2,R2_WWBOSON3,AMPL(1,9))
126
C Counter-term amplitude(s) for loop diagram number 34
127
CALL R2_GG_1_0(W(1,5),W(1,6),R2_WWCS1,AMPL(1,10))
128
CALL R2_GG_1_0(W(1,5),W(1,6),R2_WWCS1,AMPL(1,11))
129
C Counter-term amplitude(s) for loop diagram number 35
130
CALL R2_GG_1_R2_GG_3_0(W(1,5),W(1,6),R2_WWCS1,R2_WWTB3,AMPL(1,12)
132
C Counter-term amplitude(s) for loop diagram number 36
133
CALL R2_GG_1_0(W(1,5),W(1,6),R2_WWL,AMPL(1,13))
134
CALL R2_GG_1_0(W(1,5),W(1,6),R2_WWL,AMPL(1,14))
135
CALL R2_GG_1_0(W(1,5),W(1,6),R2_WWL,AMPL(1,15))
136
C At this point, all CT amps needed for (QCD=0 QED=6), i.e. of
137
C split order ID=1, are computed.
138
IF(FILTER_SO.AND.SQSO_TARGET.EQ.1) GOTO 2000
142
CT_REQ_SO_DONE=.TRUE.