1
SUBROUTINE ML5_0_LOOP_CT_CALLS_1(P,NHEL,H,IC)
5
USE ML5_0_POLYNOMIAL_CONSTANTS
12
PARAMETER (NEXTERNAL=5)
16
PARAMETER (NBORNAMPS=2)
17
INTEGER NLOOPS, NLOOPGROUPS, NCTAMPS
18
PARAMETER (NLOOPS=11, NLOOPGROUPS=9, NCTAMPS=28)
20
PARAMETER (NLOOPAMPS=39)
21
INTEGER NWAVEFUNCS,NLOOPWAVEFUNCS
22
PARAMETER (NWAVEFUNCS=10,NLOOPWAVEFUNCS=27)
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=0, NSQUAREDSO=0, NAMPSO=0)
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/ML5_0_FILTERS/GOODAMP,GOODHEL,HELOFFSET
56
LOGICAL HELDOUBLECHECKED
57
COMMON/ML5_0_INIT/CHECKPHASE, HELDOUBLECHECKED
60
COMMON/ML5_0_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/ML5_0_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
70
COMMON/ML5_0_I_SO/I_SO
72
COMMON/ML5_0_I_LIB/I_LIB
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,0:NLOOPWAVEFUNCS)
84
COMPLEX*16 AMPL(3,NCTAMPS)
85
COMMON/ML5_0_AMPL/AMPL
92
C The target squared split order contribution is already reached
94
IF (FILTER_SO.AND.CTCALL_REQ_SO_DONE) THEN
98
C CutTools call for loop numbers 1
99
CALL ML5_0_LOOP_2(6,9,DCMPLX(ZERO),DCMPLX(ZERO),1,I_SO,1)
100
C CutTools call for loop numbers 2
101
CALL ML5_0_LOOP_3(2,7,6,DCMPLX(ZERO),DCMPLX(ZERO),DCMPLX(ZERO),2
103
C CutTools call for loop numbers 3
104
CALL ML5_0_LOOP_3(1,7,8,DCMPLX(ZERO),DCMPLX(ZERO),DCMPLX(ZERO),2
106
C CutTools call for loop numbers 4
107
CALL ML5_0_LOOP_4(1,2,5,7,DCMPLX(ZERO),DCMPLX(ZERO),DCMPLX(ZERO)
108
$ ,DCMPLX(ZERO),3,I_SO,4)
109
C CutTools call for loop numbers 5,8
110
CALL ML5_0_LOOP_3(1,5,9,DCMPLX(ZERO),DCMPLX(ZERO),DCMPLX(ZERO),2
112
C CutTools call for loop numbers 6
113
CALL ML5_0_LOOP_4(1,5,2,7,DCMPLX(ZERO),DCMPLX(ZERO),DCMPLX(ZERO)
114
$ ,DCMPLX(ZERO),3,I_SO,6)
115
C CutTools call for loop numbers 7
116
CALL ML5_0_LOOP_4(1,2,7,5,DCMPLX(ZERO),DCMPLX(ZERO),DCMPLX(ZERO)
117
$ ,DCMPLX(ZERO),3,I_SO,7)
118
C CutTools call for loop numbers 9
119
CALL ML5_0_LOOP_2(8,10,DCMPLX(ZERO),DCMPLX(ZERO),1,I_SO,8)
120
C CutTools call for loop numbers 10,11
121
CALL ML5_0_LOOP_3(2,5,10,DCMPLX(ZERO),DCMPLX(ZERO),DCMPLX(ZERO)
126
CTCALL_REQ_SO_DONE=.TRUE.