~chirality-flow/chiralityflow/ChiralityFlowMG

« back to all changes in this revision

Viewing changes to tests/input_files/IOTestsComparison/IOExportFKSTest/test_pptt_fksrealew/%SubProcesses%P0_uxu_ttx%b_sf_002.f

  • Committer: andrew.lifson at lu
  • Date: 2021-09-02 13:57:34 UTC
  • Revision ID: andrew.lifson@thep.lu.se-20210902135734-4eybgli0iljkax9b
added fresh copy of MG5_aMC_v3.2.0

Show diffs side-by-side

added added

removed removed

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