~madteam/mg5amcnlo/series2.0

« back to all changes in this revision

Viewing changes to tests/input_files/IOTestsComparison/long_ML_SMQCD_optimized/dux_mumvmxg/loop_CT_calls_1.f

  • Committer: olivier Mattelaer
  • Date: 2016-05-12 11:00:18 UTC
  • mfrom: (262.1.150 2.3.4)
  • Revision ID: olivier.mattelaer@uclouvain.be-20160512110018-sevb79f0wm4g8mpp
pass to 2.4.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
      SUBROUTINE ML5_0_LOOP_CT_CALLS_1(P,NHEL,H,IC)
 
2
C     
 
3
C     Modules
 
4
C     
 
5
      USE ML5_0_POLYNOMIAL_CONSTANTS
 
6
C     
 
7
      IMPLICIT NONE
 
8
C     
 
9
C     CONSTANTS
 
10
C     
 
11
      INTEGER    NEXTERNAL
 
12
      PARAMETER (NEXTERNAL=5)
 
13
      INTEGER    NCOMB
 
14
      PARAMETER (NCOMB=32)
 
15
      INTEGER NBORNAMPS
 
16
      PARAMETER (NBORNAMPS=2)
 
17
      INTEGER    NLOOPS, NLOOPGROUPS, NCTAMPS
 
18
      PARAMETER (NLOOPS=11, NLOOPGROUPS=9, NCTAMPS=28)
 
19
      INTEGER    NLOOPAMPS
 
20
      PARAMETER (NLOOPAMPS=39)
 
21
      INTEGER    NWAVEFUNCS,NLOOPWAVEFUNCS
 
22
      PARAMETER (NWAVEFUNCS=10,NLOOPWAVEFUNCS=27)
 
23
      REAL*8     ZERO
 
24
      PARAMETER (ZERO=0D0)
 
25
      REAL*16     MP__ZERO
 
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)
 
30
C     
 
31
C     ARGUMENTS
 
32
C     
 
33
      REAL*8 P(0:3,NEXTERNAL)
 
34
      INTEGER NHEL(NEXTERNAL), IC(NEXTERNAL)
 
35
      INTEGER H
 
36
C     
 
37
C     LOCAL VARIABLES
 
38
C     
 
39
      INTEGER I,J,K
 
40
      COMPLEX*16 COEFS(MAXLWFSIZE,0:VERTEXMAXCOEFS-1,MAXLWFSIZE)
 
41
 
 
42
      LOGICAL DUMMYFALSE
 
43
      DATA DUMMYFALSE/.FALSE./
 
44
C     
 
45
C     GLOBAL VARIABLES
 
46
C     
 
47
      INCLUDE 'coupl.inc'
 
48
      INCLUDE 'mp_coupl.inc'
 
49
 
 
50
      INTEGER HELOFFSET
 
51
      INTEGER GOODHEL(NCOMB)
 
52
      LOGICAL GOODAMP(NSQUAREDSO,NLOOPGROUPS)
 
53
      COMMON/ML5_0_FILTERS/GOODAMP,GOODHEL,HELOFFSET
 
54
 
 
55
      LOGICAL CHECKPHASE
 
56
      LOGICAL HELDOUBLECHECKED
 
57
      COMMON/ML5_0_INIT/CHECKPHASE, HELDOUBLECHECKED
 
58
 
 
59
      INTEGER SQSO_TARGET
 
60
      COMMON/ML5_0_SOCHOICE/SQSO_TARGET
 
61
 
 
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
 
68
 
 
69
      INTEGER I_SO
 
70
      COMMON/ML5_0_I_SO/I_SO
 
71
      INTEGER I_LIB
 
72
      COMMON/ML5_0_I_LIB/I_LIB
 
73
 
 
74
      COMPLEX*16 AMP(NBORNAMPS)
 
75
      COMMON/ML5_0_AMPS/AMP
 
76
      COMPLEX*16 W(20,NWAVEFUNCS)
 
77
      COMMON/ML5_0_W/W
 
78
 
 
79
      COMPLEX*16 WL(MAXLWFSIZE,0:LOOPMAXCOEFS-1,MAXLWFSIZE
 
80
     $ ,0:NLOOPWAVEFUNCS)
 
81
      COMPLEX*16 PL(0:3,0:NLOOPWAVEFUNCS)
 
82
      COMMON/ML5_0_WL/WL,PL
 
83
 
 
84
      COMPLEX*16 AMPL(3,NCTAMPS)
 
85
      COMMON/ML5_0_AMPL/AMPL
 
86
 
 
87
C     
 
88
C     ----------
 
89
C     BEGIN CODE
 
90
C     ----------
 
91
 
 
92
C     The target squared split order contribution is already reached
 
93
C      if true.
 
94
      IF (FILTER_SO.AND.CTCALL_REQ_SO_DONE) THEN
 
95
        GOTO 1001
 
96
      ENDIF
 
97
 
 
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
 
102
     $ ,I_SO,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
 
105
     $ ,I_SO,3)
 
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
 
111
     $ ,I_SO,5)
 
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)
 
122
     $ ,2,I_SO,9)
 
123
 
 
124
      GOTO 1001
 
125
 5000 CONTINUE
 
126
      CTCALL_REQ_SO_DONE=.TRUE.
 
127
 1001 CONTINUE
 
128
      END
 
129