~alifson/chiralityflow/trunk

« back to all changes in this revision

Viewing changes to tests/input_files/IOTestsComparison/IOExportFKSTest/test_pptt_fks_loonly/%SubProcesses%P0_gg_ttx%b_sf_006.f

  • Committer: andrew.lifson at lu
  • Date: 2021-09-01 15:34:39 UTC
  • Revision ID: andrew.lifson@thep.lu.se-20210901153439-7fasjhav4cp4m88r
testing a new repository of a madgraph folder

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
      SUBROUTINE SB_SF_006(P,ANS_SUMMED)
 
2
C     
 
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
 
6
C     
 
7
C     
 
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
 
12
C     
 
13
C     
 
14
C     Process: g g > t t~ [ LOonly = QCD QED ] QCD^2<=6 QED^2<=0
 
15
C     spectators: 3 3 
 
16
 
 
17
C     
 
18
C     
 
19
C     CONSTANTS
 
20
C     
 
21
      IMPLICIT NONE
 
22
      INCLUDE 'nexternal.inc'
 
23
      INTEGER NSQAMPSO
 
24
      PARAMETER (NSQAMPSO=1)
 
25
C     
 
26
C     ARGUMENTS 
 
27
C     
 
28
      REAL*8 P(0:3,NEXTERNAL), ANS_SUMMED
 
29
C     
 
30
C     VARIABLES
 
31
C     
 
32
      INTEGER I,J
 
33
      INCLUDE 'orders.inc'
 
34
      REAL*8 ANS(0:NSQAMPSO)
 
35
      LOGICAL KEEP_ORDER_CNT(NSPLITORDERS, NSQAMPSO)
 
36
      COMMON /C_KEEP_ORDER_CNT/ KEEP_ORDER_CNT
 
37
      INTEGER AMP_ORDERS(NSPLITORDERS)
 
38
      DOUBLE PRECISION TINY
 
39
      PARAMETER (TINY = 1D-12)
 
40
      DOUBLE PRECISION MAX_VAL
 
41
C     
 
42
C     FUNCTIONS
 
43
C     
 
44
      INTEGER GETORDPOWFROMINDEX_B
 
45
      INTEGER ORDERS_TO_AMP_SPLIT_POS
 
46
C     
 
47
C     BEGIN CODE
 
48
C     
 
49
      CALL SB_SF_006_SPLITORDERS(P,ANS)
 
50
C     color-linked borns are called for QCD-type emissions
 
51
      ANS_SUMMED = 0D0
 
52
      MAX_VAL = 0D0
 
53
 
 
54
C     reset the amp_split_cnt array
 
55
      AMP_SPLIT_CNT(1:AMP_SPLIT_SIZE,1:2,1:NSPLITORDERS) = DCMPLX(0D0
 
56
     $ ,0D0)
 
57
 
 
58
 
 
59
      DO I = 1, NSQAMPSO
 
60
        MAX_VAL = MAX(MAX_VAL, ABS(ANS(I)))
 
61
      ENDDO
 
62
 
 
63
      DO I = 1, NSQAMPSO
 
64
        IF (KEEP_ORDER_CNT(QCD_POS, I)) THEN
 
65
          ANS_SUMMED = ANS_SUMMED + ANS(I)
 
66
          DO J = 1, NSPLITORDERS
 
67
            AMP_ORDERS(J) = GETORDPOWFROMINDEX_B(J, I)
 
68
C           take into account the fact that this is for QCD
 
69
            IF (J.EQ.QCD_POS) AMP_ORDERS(J) = AMP_ORDERS(J) + 2
 
70
          ENDDO
 
71
            !amp_split_cnt(orders_to_amp_split_pos(amp_orders),1,qcd_pos) = ans(I)
 
72
          IF(ABS(ANS(I)).GT.MAX_VAL*TINY)
 
73
     $      AMP_SPLIT_CNT(ORDERS_TO_AMP_SPLIT_POS(AMP_ORDERS),1
 
74
     $     ,QCD_POS) = ANS(I)
 
75
        ENDIF
 
76
      ENDDO
 
77
 
 
78
C     this is to avoid fake non-zero contributions 
 
79
      IF (ABS(ANS_SUMMED).LT.MAX_VAL*TINY) ANS_SUMMED=0D0
 
80
 
 
81
      RETURN
 
82
      END
 
83
 
 
84
 
 
85
      SUBROUTINE SB_SF_006_SPLITORDERS(P1,ANS)
 
86
C     
 
87
C     Generated by MadGraph5_aMC@NLO v. %(version)s, %(date)s
 
88
C     By the MadGraph5_aMC@NLO Development Team
 
89
C     Visit launchpad.net/madgraph5 and amcatnlo.web.cern.ch
 
90
C     
 
91
C     RETURNS AMPLITUDE SQUARED SUMMED/AVG OVER COLORS
 
92
C     AND HELICITIES
 
93
C     FOR THE POINT IN PHASE SPACE P(0:3,NEXTERNAL-1)
 
94
C     
 
95
C     Process: g g > t t~ [ LOonly = QCD QED ] QCD^2<=6 QED^2<=0
 
96
C     spectators: 3 3 
 
97
 
 
98
C     
 
99
      IMPLICIT NONE
 
100
C     
 
101
C     CONSTANTS
 
102
C     
 
103
      INCLUDE 'nexternal.inc'
 
104
      INTEGER     NCOMB
 
105
      PARAMETER ( NCOMB=  16 )
 
106
      INTEGER NSQAMPSO
 
107
      PARAMETER (NSQAMPSO=1)
 
108
      INTEGER    THEL
 
109
      PARAMETER (THEL=NCOMB*0)
 
110
      INTEGER NGRAPHS
 
111
      PARAMETER (NGRAPHS=   3)
 
112
C     
 
113
C     ARGUMENTS 
 
114
C     
 
115
      REAL*8 P1(0:3,NEXTERNAL-1),ANS(0:NSQAMPSO)
 
116
C     
 
117
C     LOCAL VARIABLES 
 
118
C     
 
119
      INTEGER IHEL,IDEN,I,J
 
120
      DOUBLE PRECISION T(NSQAMPSO)
 
121
      INTEGER IDEN_VALUES(1)
 
122
      DATA IDEN_VALUES / 256 /
 
123
C     
 
124
C     GLOBAL VARIABLES
 
125
C     
 
126
      LOGICAL GOODHEL(NCOMB,0)
 
127
      COMMON /C_GOODHEL/ GOODHEL
 
128
      DOUBLE PRECISION SAVEMOM(NEXTERNAL-1,2)
 
129
      COMMON/TO_SAVEMOM/SAVEMOM
 
130
      LOGICAL CALCULATEDBORN
 
131
      COMMON/CCALCULATEDBORN/CALCULATEDBORN
 
132
      INTEGER NFKSPROCESS
 
133
      COMMON/C_NFKSPROCESS/NFKSPROCESS
 
134
C     ----------
 
135
C     BEGIN CODE
 
136
C     ----------
 
137
      IDEN=IDEN_VALUES(NFKSPROCESS)
 
138
      IF (CALCULATEDBORN) THEN
 
139
        DO J=1,NEXTERNAL-1
 
140
          IF (SAVEMOM(J,1).NE.P1(0,J) .OR. SAVEMOM(J,2).NE.P1(3,J))
 
141
     $      THEN
 
142
            CALCULATEDBORN=.FALSE.
 
143
            WRITE(*,*) 'Error in sb_sf: momenta not the same in the'
 
144
     $       //' born'
 
145
            STOP
 
146
          ENDIF
 
147
        ENDDO
 
148
      ELSE
 
149
        WRITE(*,*) 'Error in sb_sf: color_linked borns should be'
 
150
     $   //' called only with calculatedborn = true'
 
151
        STOP
 
152
      ENDIF
 
153
      DO I=0,NSQAMPSO
 
154
        ANS(I) = 0D0
 
155
      ENDDO
 
156
      DO IHEL=1,NCOMB
 
157
        IF (GOODHEL(IHEL,NFKSPROCESS)) THEN
 
158
          CALL B_SF_006(IHEL,T)
 
159
          DO I=1,NSQAMPSO
 
160
            ANS(I)=ANS(I)+T(I)
 
161
          ENDDO
 
162
        ENDIF
 
163
      ENDDO
 
164
      DO I=1,NSQAMPSO
 
165
        ANS(I)=ANS(I)/DBLE(IDEN)
 
166
        ANS(0)=ANS(0)+ANS(I)
 
167
      ENDDO
 
168
      END
 
169
 
 
170
 
 
171
      SUBROUTINE B_SF_006(HELL,ANS)
 
172
C     
 
173
C     Generated by MadGraph5_aMC@NLO v. %(version)s, %(date)s
 
174
C     By the MadGraph5_aMC@NLO Development Team
 
175
C     Visit launchpad.net/madgraph5 and amcatnlo.web.cern.ch
 
176
C     RETURNS AMPLITUDE SQUARED SUMMED/AVG OVER COLORS
 
177
C     FOR THE POINT WITH EXTERNAL LINES W(0:6,NEXTERNAL-1)
 
178
 
 
179
C     Process: g g > t t~ [ LOonly = QCD QED ] QCD^2<=6 QED^2<=0
 
180
C     spectators: 3 3 
 
181
 
 
182
C     
 
183
      IMPLICIT NONE
 
184
C     
 
185
C     CONSTANTS
 
186
C     
 
187
      INTEGER NAMPSO, NSQAMPSO
 
188
      PARAMETER (NAMPSO=1, NSQAMPSO=1)
 
189
      INTEGER     NGRAPHS
 
190
      PARAMETER ( NGRAPHS = 3 )
 
191
      INTEGER NCOLOR1, NCOLOR2
 
192
      PARAMETER (NCOLOR1=2, NCOLOR2=2)
 
193
      REAL*8     ZERO
 
194
      PARAMETER (ZERO=0D0)
 
195
      COMPLEX*16 IMAG1
 
196
      PARAMETER (IMAG1 = (0D0,1D0))
 
197
      INCLUDE 'nexternal.inc'
 
198
      INCLUDE 'born_nhel.inc'
 
199
C     
 
200
C     ARGUMENTS 
 
201
C     
 
202
      INTEGER HELL
 
203
      REAL*8 ANS(NSQAMPSO)
 
204
C     
 
205
C     LOCAL VARIABLES 
 
206
C     
 
207
      INTEGER I,J,M,N
 
208
      REAL*8 CF(NCOLOR2,NCOLOR1)
 
209
      COMPLEX*16 ZTEMP, AMP(NGRAPHS), JAMP1(NCOLOR1,NAMPSO),
 
210
     $  JAMP2(NCOLOR2,NAMPSO)
 
211
      COMPLEX*16 TMP_JAMP(0)
 
212
C     
 
213
C     GLOBAL VARIABLES
 
214
C     
 
215
      DOUBLE COMPLEX SAVEAMP(NGRAPHS,MAX_BHEL)
 
216
      COMMON/TO_SAVEAMP/SAVEAMP
 
217
      LOGICAL CALCULATEDBORN
 
218
      COMMON/CCALCULATEDBORN/CALCULATEDBORN
 
219
C     
 
220
C     FUNCTION
 
221
C     
 
222
      INTEGER SQSOINDEXB
 
223
C     
 
224
C     COLOR DATA
 
225
C     
 
226
      DATA (CF(I,  1),I=  1,  2) /5.333333333333333D+00,
 
227
     $ -6.666666666666666D-01/
 
228
      DATA (CF(I,  2),I=  1,  2) /-6.666666666666666D-01
 
229
     $ ,5.333333333333333D+00/
 
230
C     ----------
 
231
C     BEGIN CODE
 
232
C     ----------
 
233
      IF (.NOT. CALCULATEDBORN) THEN
 
234
        WRITE(*,*) 'Error in b_sf: color_linked borns should be called'
 
235
     $   //' only with calculatedborn = true'
 
236
        STOP
 
237
      ELSEIF (CALCULATEDBORN) THEN
 
238
        DO I=1,NGRAPHS
 
239
          AMP(I)=SAVEAMP(I,HELL)
 
240
        ENDDO
 
241
      ENDIF
 
242
C     JAMPs contributing to orders QCD=2 QED=0
 
243
      JAMP1(1,1) = ((0.000000000000000D+00,1.000000000000000D+00))
 
244
     $ *AMP(1)+(-1.000000000000000D+00)*AMP(2)
 
245
      JAMP1(2,1) = ((0.000000000000000D+00,-1.000000000000000D+00))
 
246
     $ *AMP(1)+(-1.000000000000000D+00)*AMP(3)
 
247
C     JAMPs contributing to orders QCD=2 QED=0
 
248
      JAMP2(1,1) = ((0.000000000000000D+00,6.666666666666666D-01))
 
249
     $ *AMP(1)+(-6.666666666666666D-01)*AMP(2)
 
250
      JAMP2(2,1) = ((0.000000000000000D+00,-6.666666666666666D-01))
 
251
     $ *AMP(1)+(-6.666666666666666D-01)*AMP(3)
 
252
      DO I = 1, NSQAMPSO
 
253
        ANS(I) = 0D0
 
254
      ENDDO
 
255
      DO M = 1, NAMPSO
 
256
        DO I = 1, NCOLOR1
 
257
          ZTEMP = (0.D0,0.D0)
 
258
          DO J = 1, NCOLOR2
 
259
            ZTEMP = ZTEMP + CF(J,I)*JAMP2(J,M)
 
260
          ENDDO
 
261
          DO N = 1, NAMPSO
 
262
            ANS(SQSOINDEXB(M,N))=ANS(SQSOINDEXB(M,N))+ZTEMP
 
263
     $       *DCONJG(JAMP1(I,N))
 
264
          ENDDO
 
265
        ENDDO
 
266
      ENDDO
 
267
      END
 
268
 
 
269
 
 
270