| 1 | SUBROUTINE SMATRIX(P1,ANS)
|
|---|
| 2 | C
|
|---|
| 3 | C Generated by MadGraph II
|
|---|
| 4 | C RETURNS AMPLITUDE SQUARED SUMMED/AVG OVER COLORS
|
|---|
| 5 | C AND HELICITIES
|
|---|
| 6 | C FOR THE POINT IN PHASE SPACE P(0:3,NEXTERNAL)
|
|---|
| 7 | C
|
|---|
| 8 | C FOR PROCESS : g g -> t t~
|
|---|
| 9 | C
|
|---|
| 10 | C Crossing 1 is g g -> t t~
|
|---|
| 11 | IMPLICIT NONE
|
|---|
| 12 | C
|
|---|
| 13 | C CONSTANTS
|
|---|
| 14 | C
|
|---|
| 15 | Include "genps.inc"
|
|---|
| 16 | INTEGER NCOMB, NCROSS
|
|---|
| 17 | PARAMETER ( NCOMB= 16, NCROSS= 1)
|
|---|
| 18 | INTEGER THEL
|
|---|
| 19 | PARAMETER (THEL=NCOMB*NCROSS)
|
|---|
| 20 | C
|
|---|
| 21 | C ARGUMENTS
|
|---|
| 22 | C
|
|---|
| 23 | REAL*8 P1(0:3,NEXTERNAL),ANS(NCROSS)
|
|---|
| 24 | C
|
|---|
| 25 | C LOCAL VARIABLES
|
|---|
| 26 | C
|
|---|
| 27 | INTEGER NHEL(NEXTERNAL,NCOMB),NTRY
|
|---|
| 28 | REAL*8 T, P(0:3,NEXTERNAL)
|
|---|
| 29 | REAL*8 MATRIX
|
|---|
| 30 | INTEGER IHEL,IDEN(NCROSS),IC(NEXTERNAL,NCROSS)
|
|---|
| 31 | INTEGER IPROC,JC(NEXTERNAL), I
|
|---|
| 32 | LOGICAL GOODHEL(NCOMB,NCROSS)
|
|---|
| 33 | INTEGER NGRAPHS
|
|---|
| 34 | REAL*8 hwgt, xtot, xtry, xrej, xr, yfrac(0:ncomb)
|
|---|
| 35 | INTEGER idum, ngood, igood(ncomb), jhel, j, jj
|
|---|
| 36 | LOGICAL warned
|
|---|
| 37 | REAL xran1
|
|---|
| 38 | EXTERNAL xran1
|
|---|
| 39 | C
|
|---|
| 40 | C GLOBAL VARIABLES
|
|---|
| 41 | C
|
|---|
| 42 | Double Precision amp2(maxamps), jamp2(0:maxamps)
|
|---|
| 43 | common/to_amps/ amp2, jamp2
|
|---|
| 44 |
|
|---|
| 45 | character*79 hel_buff
|
|---|
| 46 | common/to_helicity/ hel_buff
|
|---|
| 47 |
|
|---|
| 48 | REAL*8 POL(2)
|
|---|
| 49 | common/to_polarization/ POL
|
|---|
| 50 |
|
|---|
| 51 | integer isum_hel
|
|---|
| 52 | logical multi_channel
|
|---|
| 53 | common/to_matrix/isum_hel, multi_channel
|
|---|
| 54 | INTEGER MAPCONFIG(0:LMAXCONFIGS), ICONFIG
|
|---|
| 55 | common/to_mconfigs/mapconfig, iconfig
|
|---|
| 56 | DATA NTRY,IDUM /0,-1/
|
|---|
| 57 | DATA xtry, xrej, ngood /0,0,0/
|
|---|
| 58 | DATA warned, isum_hel/.false.,0/
|
|---|
| 59 | DATA multi_channel/.true./
|
|---|
| 60 | SAVE yfrac, igood, jhel
|
|---|
| 61 | DATA NGRAPHS / 4/
|
|---|
| 62 | DATA jamp2(0) / 3/
|
|---|
| 63 | DATA GOODHEL/THEL*.FALSE./
|
|---|
| 64 | DATA (NHEL(IHEL, 1),IHEL=1,4) /-1,-1,-1,-1/
|
|---|
| 65 | DATA (NHEL(IHEL, 2),IHEL=1,4) /-1,-1,-1, 1/
|
|---|
| 66 | DATA (NHEL(IHEL, 3),IHEL=1,4) /-1,-1, 1,-1/
|
|---|
| 67 | DATA (NHEL(IHEL, 4),IHEL=1,4) /-1,-1, 1, 1/
|
|---|
| 68 | DATA (NHEL(IHEL, 5),IHEL=1,4) /-1, 1,-1,-1/
|
|---|
| 69 | DATA (NHEL(IHEL, 6),IHEL=1,4) /-1, 1,-1, 1/
|
|---|
| 70 | DATA (NHEL(IHEL, 7),IHEL=1,4) /-1, 1, 1,-1/
|
|---|
| 71 | DATA (NHEL(IHEL, 8),IHEL=1,4) /-1, 1, 1, 1/
|
|---|
| 72 | DATA (NHEL(IHEL, 9),IHEL=1,4) / 1,-1,-1,-1/
|
|---|
| 73 | DATA (NHEL(IHEL, 10),IHEL=1,4) / 1,-1,-1, 1/
|
|---|
| 74 | DATA (NHEL(IHEL, 11),IHEL=1,4) / 1,-1, 1,-1/
|
|---|
| 75 | DATA (NHEL(IHEL, 12),IHEL=1,4) / 1,-1, 1, 1/
|
|---|
| 76 | DATA (NHEL(IHEL, 13),IHEL=1,4) / 1, 1,-1,-1/
|
|---|
| 77 | DATA (NHEL(IHEL, 14),IHEL=1,4) / 1, 1,-1, 1/
|
|---|
| 78 | DATA (NHEL(IHEL, 15),IHEL=1,4) / 1, 1, 1,-1/
|
|---|
| 79 | DATA (NHEL(IHEL, 16),IHEL=1,4) / 1, 1, 1, 1/
|
|---|
| 80 | DATA ( IC(IHEL, 1),IHEL=1,4) / 1, 2, 3, 4/
|
|---|
| 81 | DATA (IDEN(IHEL),IHEL= 1, 1) / 256/
|
|---|
| 82 | C ----------
|
|---|
| 83 | C BEGIN CODE
|
|---|
| 84 | C ----------
|
|---|
| 85 | NTRY=NTRY+1
|
|---|
| 86 | DO IPROC=1,NCROSS
|
|---|
| 87 | CALL SWITCHMOM(P1,P,IC(1,IPROC),JC,NEXTERNAL)
|
|---|
| 88 | DO IHEL=1,NEXTERNAL
|
|---|
| 89 | JC(IHEL) = +1
|
|---|
| 90 | ENDDO
|
|---|
| 91 |
|
|---|
| 92 | IF (multi_channel) THEN
|
|---|
| 93 | DO IHEL=1,NGRAPHS
|
|---|
| 94 | amp2(ihel)=0d0
|
|---|
| 95 | jamp2(ihel)=0d0
|
|---|
| 96 | ENDDO
|
|---|
| 97 | DO IHEL=1,int(jamp2(0))
|
|---|
| 98 | jamp2(ihel)=0d0
|
|---|
| 99 | ENDDO
|
|---|
| 100 | ENDIF
|
|---|
| 101 | ANS(IPROC) = 0D0
|
|---|
| 102 | write(hel_buff,'(16i5)') (0,i=1,nexternal)
|
|---|
| 103 | IF (ISUM_HEL .EQ. 0 .OR. NTRY .LT. 10) THEN
|
|---|
| 104 | DO IHEL=1,NCOMB
|
|---|
| 105 | IF (GOODHEL(IHEL,IPROC) .OR. NTRY .LT. 2) THEN
|
|---|
| 106 | T=MATRIX(P ,NHEL(1,IHEL),JC(1))
|
|---|
| 107 | DO JJ=1,2
|
|---|
| 108 | IF(POL(JJ).NE.1d0.AND.
|
|---|
| 109 | $ NHEL(JJ,IHEL).EQ.SIGN(1,POL(JJ))) THEN
|
|---|
| 110 | T=T*ABS(POL(JJ))
|
|---|
| 111 | ELSE IF(POL(JJ).NE.1d0)THEN
|
|---|
| 112 | T=T*(2d0-ABS(POL(JJ)))
|
|---|
| 113 | ENDIF
|
|---|
| 114 | ENDDO
|
|---|
| 115 | ANS(IPROC)=ANS(IPROC)+T
|
|---|
| 116 | IF (T .GT. 0D0 .AND. .NOT. GOODHEL(IHEL,IPROC)) THEN
|
|---|
| 117 | GOODHEL(IHEL,IPROC)=.TRUE.
|
|---|
| 118 | NGOOD = NGOOD +1
|
|---|
| 119 | IGOOD(NGOOD) = IHEL
|
|---|
| 120 | C WRITE(*,*) ngood,IHEL,T
|
|---|
| 121 | ENDIF
|
|---|
| 122 | ENDIF
|
|---|
| 123 | ENDDO
|
|---|
| 124 | JHEL = 1
|
|---|
| 125 | ISUM_HEL=MIN(ISUM_HEL,NGOOD)
|
|---|
| 126 | ELSE !RANDOM HELICITY
|
|---|
| 127 | DO J=1,ISUM_HEL
|
|---|
| 128 | JHEL=JHEL+1
|
|---|
| 129 | IF (JHEL .GT. NGOOD) JHEL=1
|
|---|
| 130 | HWGT = REAL(NGOOD)/REAL(ISUM_HEL)
|
|---|
| 131 | IHEL = IGOOD(JHEL)
|
|---|
| 132 | T=MATRIX(P ,NHEL(1,IHEL),JC(1))
|
|---|
| 133 | DO JJ=1,2
|
|---|
| 134 | IF(POL(JJ).NE.1d0.AND.
|
|---|
| 135 | $ NHEL(JJ,IHEL).EQ.SIGN(1,POL(JJ))) THEN
|
|---|
| 136 | T=T*ABS(POL(JJ))
|
|---|
| 137 | ELSE IF(POL(JJ).NE.1d0)THEN
|
|---|
| 138 | T=T*(2d0-ABS(POL(JJ)))
|
|---|
| 139 | ENDIF
|
|---|
| 140 | ENDDO
|
|---|
| 141 | ANS(IPROC)=ANS(IPROC)+T*HWGT
|
|---|
| 142 | ENDDO
|
|---|
| 143 | IF (ISUM_HEL .EQ. 1) THEN
|
|---|
| 144 | WRITE(HEL_BUFF,'(16i5)')(NHEL(i,IHEL),i=1,nexternal)
|
|---|
| 145 | ENDIF
|
|---|
| 146 | ENDIF
|
|---|
| 147 | IF (MULTI_CHANNEL) THEN
|
|---|
| 148 | XTOT=0D0
|
|---|
| 149 | DO IHEL=1,MAPCONFIG(0)
|
|---|
| 150 | XTOT=XTOT+AMP2(MAPCONFIG(IHEL))
|
|---|
| 151 | ENDDO
|
|---|
| 152 | IF (XTOT.NE.0D0) THEN
|
|---|
| 153 | ANS(IPROC)=ANS(IPROC)*AMP2(MAPCONFIG(ICONFIG))/XTOT
|
|---|
| 154 | ELSE
|
|---|
| 155 | ANS(IPROC)=0D0
|
|---|
| 156 | ENDIF
|
|---|
| 157 | ENDIF
|
|---|
| 158 | ANS(IPROC)=ANS(IPROC)/DBLE(IDEN(IPROC))
|
|---|
| 159 | ENDDO
|
|---|
| 160 | END
|
|---|
| 161 |
|
|---|
| 162 |
|
|---|
| 163 | REAL*8 FUNCTION MATRIX(P,NHEL,IC)
|
|---|
| 164 | C
|
|---|
| 165 | C Generated by MadGraph II
|
|---|
| 166 | C RETURNS AMPLITUDE SQUARED SUMMED/AVG OVER COLORS
|
|---|
| 167 | C FOR THE POINT WITH EXTERNAL LINES W(0:6,NEXTERNAL)
|
|---|
| 168 | C
|
|---|
| 169 | C FOR PROCESS : g g -> t t~
|
|---|
| 170 | C
|
|---|
| 171 | IMPLICIT NONE
|
|---|
| 172 | C
|
|---|
| 173 | C CONSTANTS
|
|---|
| 174 | C
|
|---|
| 175 | INTEGER NGRAPHS, NEIGEN
|
|---|
| 176 | PARAMETER (NGRAPHS= 4,NEIGEN= 3)
|
|---|
| 177 | include "genps.inc"
|
|---|
| 178 | INTEGER NWAVEFUNCS , NCOLOR
|
|---|
| 179 | PARAMETER (NWAVEFUNCS= 8, NCOLOR= 3)
|
|---|
| 180 | REAL*8 ZERO
|
|---|
| 181 | PARAMETER (ZERO=0D0)
|
|---|
| 182 | C
|
|---|
| 183 | C ARGUMENTS
|
|---|
| 184 | C
|
|---|
| 185 | REAL*8 P(0:3,NEXTERNAL)
|
|---|
| 186 | INTEGER NHEL(NEXTERNAL), IC(NEXTERNAL)
|
|---|
| 187 | C
|
|---|
| 188 | C LOCAL VARIABLES
|
|---|
| 189 | C
|
|---|
| 190 | INTEGER I,J
|
|---|
| 191 | COMPLEX*16 ZTEMP
|
|---|
| 192 | REAL*8 DENOM(NCOLOR), CF(NCOLOR,NCOLOR)
|
|---|
| 193 | COMPLEX*16 AMP(NGRAPHS), JAMP(NCOLOR)
|
|---|
| 194 | COMPLEX*16 W(18,NWAVEFUNCS)
|
|---|
| 195 | C
|
|---|
| 196 | C GLOBAL VARIABLES
|
|---|
| 197 | C
|
|---|
| 198 | Double Precision amp2(maxamps), jamp2(0:maxamps)
|
|---|
| 199 | common/to_amps/ amp2, jamp2
|
|---|
| 200 | include "coupl.inc"
|
|---|
| 201 | C
|
|---|
| 202 | C COLOR DATA
|
|---|
| 203 | C
|
|---|
| 204 | DATA Denom(1 )/ 3/
|
|---|
| 205 | DATA (CF(i,1 ),i=1 ,3 ) / 16, -2, -4/
|
|---|
| 206 | C T[3,4,2,1]
|
|---|
| 207 | DATA Denom(2 )/ 3/
|
|---|
| 208 | DATA (CF(i,2 ),i=1 ,3 ) / -2, 16, -4/
|
|---|
| 209 | C T[3,4,1,2]
|
|---|
| 210 | DATA Denom(3 )/ 3/
|
|---|
| 211 | DATA (CF(i,3 ),i=1 ,3 ) / -4, -4, 8/
|
|---|
| 212 | C F[1,2]T[3,4]
|
|---|
| 213 | C ----------
|
|---|
| 214 | C BEGIN CODE
|
|---|
| 215 | C ----------
|
|---|
| 216 | CALL VXXXXX(P(0,1 ),ZERO ,NHEL(1 ),-1*IC(1 ),W(1,1 ))
|
|---|
| 217 | CALL VXXXXX(P(0,2 ),ZERO ,NHEL(2 ),-1*IC(2 ),W(1,2 ))
|
|---|
| 218 | CALL OXXXXX(P(0,3 ),TMASS ,NHEL(3 ),+1*IC(3 ),W(1,3 ))
|
|---|
| 219 | CALL IXXXXX(P(0,4 ),TMASS ,NHEL(4 ),-1*IC(4 ),W(1,4 ))
|
|---|
| 220 | CALL FVOXXX(W(1,3 ),W(1,2 ),GG ,TMASS ,TWIDTH ,W(1,5 ))
|
|---|
| 221 | CALL IOVXXX(W(1,4 ),W(1,5 ),W(1,1 ),GG ,AMP(1 ))
|
|---|
| 222 | CALL FVOXXX(W(1,3 ),W(1,1 ),GG ,TMASS ,TWIDTH ,W(1,6 ))
|
|---|
| 223 | CALL IOVXXX(W(1,4 ),W(1,6 ),W(1,2 ),GG ,AMP(2 ))
|
|---|
| 224 | CALL JVVXXX(W(1,1 ),W(1,2 ),G ,ZERO ,ZERO ,W(1,7 ))
|
|---|
| 225 | CALL IOVXXX(W(1,4 ),W(1,3 ),W(1,7 ),GG ,AMP(3 ))
|
|---|
| 226 | CALL HVVhXX(W(1,1 ),W(1,2 ),Gs0g ,S0MASS ,S0WIDTH ,W(1,
|
|---|
| 227 | & 8 ))
|
|---|
| 228 | CALL IOSXXX(W(1,4 ),W(1,3 ),W(1,8 ),Gs0t ,AMP(4 ))
|
|---|
| 229 | JAMP( 1) = -AMP(1)+AMP(3)-AMP(4)/2d0
|
|---|
| 230 | JAMP( 2) = -AMP(2)-AMP(3)-AMP(4)/2d0
|
|---|
| 231 | JAMP( 3) = -AMP(4)/2d0
|
|---|
| 232 | MATRIX = 0.D0
|
|---|
| 233 | DO I = 1, NCOLOR
|
|---|
| 234 | ZTEMP = (0.D0,0.D0)
|
|---|
| 235 | DO J = 1, NCOLOR
|
|---|
| 236 | ZTEMP = ZTEMP + CF(J,I)*JAMP(J)
|
|---|
| 237 | ENDDO
|
|---|
| 238 | MATRIX =MATRIX+ZTEMP*DCONJG(JAMP(I))/DENOM(I)
|
|---|
| 239 | ENDDO
|
|---|
| 240 | Do I = 1, NGRAPHS
|
|---|
| 241 | amp2(i)=amp2(i)+amp(i)*dconjg(amp(i))
|
|---|
| 242 | Enddo
|
|---|
| 243 | Do I = 1, NCOLOR
|
|---|
| 244 | Jamp2(i)=Jamp2(i)+Jamp(i)*dconjg(Jamp(i))
|
|---|
| 245 | Enddo
|
|---|
| 246 | C CALL GAUGECHECK(JAMP,ZTEMP,EIGEN_VEC,EIGEN_VAL,NCOLOR,NEIGEN)
|
|---|
| 247 | END
|
|---|
| 248 |
|
|---|
| 249 |
|
|---|