]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ISAJET/code/zjj3.F
Separated TOF libraries (base,rec,sim)
[u/mrichter/AliRoot.git] / ISAJET / code / zjj3.F
1 #include "isajet/pilot.h"
2       REAL*8 FUNCTION ZJJ3(P1, P2, P3, P4, P5,NHEL,IM)
3 C
4 C Function generated by Madgraph + hand coding
5 C Returns amplitude squared summed/ave over colors
6 C for the point in phase space P1,P2,P3,P4,P5
7 C and helicity NHEL(1)...
8 C for the process: q(im) qb(im) -> z g g
9 C with Madgraph code IM
10 C
11 #if defined(CERNLIB_IMPNONE)
12       IMPLICIT NONE
13 #endif
14 C  
15 C CONSTANTS
16 C  
17       INTEGER    NGRAPHS,    NEIGEN,    NEXTERNAL       
18       PARAMETER (NGRAPHS=  8,NEIGEN=  2,NEXTERNAL=5)    
19       REAL*8     ZERO
20       PARAMETER (ZERO=0D0)
21 C  
22 C ARGUMENTS 
23 C  
24       REAL*8 P1(0:3),P2(0:3),P3(0:3),P4(0:3),P5(0:3)                             
25       INTEGER NHEL(NEXTERNAL),IM
26 C  
27 C LOCAL VARIABLES 
28 C  
29       INTEGER I,J
30       REAL*8 EIGEN_VAL(NEIGEN), EIGEN_VEC(NGRAPHS,NEIGEN)
31       COMPLEX*16 ZTEMP
32       COMPLEX*16 AMP(NGRAPHS)
33       COMPLEX*16 W1(6)  , W2(6)  , W3(6)  , W4(6)  , W5(6)        
34       COMPLEX*16 W6(6)  , W7(6)  , W8(6)  , W9(6)  , W10(6)       
35       COMPLEX*16 W11(6) , W12(6) , W13(6) , W14(6) , W15(6) 
36       REAL*8 GZUD(2)
37 C  
38 C GLOBAL VARIABLES
39 C  
40 #include "isajet/mgcoms.inc"
41 C  
42 C COLOR DATA
43 C  
44       DATA EIGEN_VAL(1  )/       7.7777777777777746D-01 /                  
45       DATA EIGEN_VEC(1  ,1  )/  -4.0824829046386302D-01 /                  
46       DATA EIGEN_VEC(2  ,1  )/  -4.0824829046386307D-01 /                  
47       DATA EIGEN_VEC(3  ,1  )/   0.0000000000000000D+00 /                  
48       DATA EIGEN_VEC(4  ,1  )/  -4.0824829046386307D-01 /                  
49       DATA EIGEN_VEC(5  ,1  )/  -4.0824829046386302D-01 /                  
50       DATA EIGEN_VEC(6  ,1  )/  -4.0824829046386307D-01 /                  
51       DATA EIGEN_VEC(7  ,1  )/   0.0000000000000000D+00 /                  
52       DATA EIGEN_VEC(8  ,1  )/  -4.0824829046386302D-01 /                  
53       DATA EIGEN_VAL(2  )/       2.3333333333333321D+00 /                  
54       DATA EIGEN_VEC(1  ,2  )/   2.6726124191242445D-01 /                  
55       DATA EIGEN_VEC(2  ,2  )/  -2.6726124191242440D-01 /                  
56       DATA EIGEN_VEC(3  ,2  )/  -5.3452248382484879D-01 /                  
57       DATA EIGEN_VEC(4  ,2  )/  -2.6726124191242440D-01 /                  
58       DATA EIGEN_VEC(5  ,2  )/   2.6726124191242445D-01 /                  
59       DATA EIGEN_VEC(6  ,2  )/  -2.6726124191242440D-01 /                  
60       DATA EIGEN_VEC(7  ,2  )/  -5.3452248382484879D-01 /                  
61       DATA EIGEN_VEC(8  ,2  )/   2.6726124191242445D-01 /                  
62 C ----------
63 C BEGIN CODE
64 C ----------
65       IF(IM.EQ.4.OR.IM.EQ.8.OR.IM.EQ.12) THEN
66         GZUD(1)=GZD(1)
67         GZUD(2)=GZD(2)
68       ELSE
69         GZUD(1)=GZU(1)
70         GZUD(2)=GZU(2)
71       ENDIF
72 C
73       CALL IXXXXX(P1  ,FMASS(IM),NHEL(1  ), 1,W1  )                       
74       CALL OXXXXX(P2  ,FMASS(IM),NHEL(2  ),-1,W2  )                       
75       CALL VXXXXX(P3  ,ZMASS,NHEL(3  ), 1,W3  )                            
76       CALL VXXXXX(P4  , ZERO,NHEL(4  ), 1,W4  )                            
77       CALL VXXXXX(P5  , ZERO,NHEL(5  ), 1,W5  )                            
78       CALL FVOXXX(W2  ,W3  ,GZUD,FMASS(IM),FWIDTH(IM),W6  )               
79       CALL FVOXXX(W6  ,W4  ,GG,FMASS(IM),FWIDTH(IM),W7  )                
80       CALL IOVXXX(W1  ,W7  ,W5  ,GG,AMP(1  ))                              
81       CALL FVIXXX(W1  ,W4  ,GG,FMASS(IM),FWIDTH(IM),W8  )                
82       CALL FVOXXX(W2  ,W5  ,GG,FMASS(IM),FWIDTH(IM),W9  )                
83       CALL IOVXXX(W8  ,W9  ,W3  ,GZUD,AMP(2  ))                             
84       CALL JIOXXX(W1  ,W6  ,GG,ZERO,ZERO,W10 )                             
85       CALL GGGXXX(W5  ,W4  ,W10 ,G,AMP(3  ))                               
86       CALL IOVXXX(W8  ,W6  ,W5  ,GG,AMP(4  ))                              
87       CALL FVOXXX(W2  ,W4  ,GG,FMASS(IM),FWIDTH(IM),W11 )                
88       CALL FVIXXX(W1  ,W5  ,GG,FMASS(IM),FWIDTH(IM),W12 )                
89       CALL IOVXXX(W12 ,W11 ,W3  ,GZUD,AMP(5  ))                             
90       CALL FVIXXX(W1  ,W3  ,GZUD,FMASS(IM),FWIDTH(IM),W13 )               
91       CALL FVIXXX(W13 ,W4  ,GG,FMASS(IM),FWIDTH(IM),W14 )                
92       CALL IOVXXX(W14 ,W2  ,W5  ,GG,AMP(6  ))                              
93       CALL JIOXXX(W13 ,W2  ,GG,ZERO,ZERO,W15 )                             
94       CALL GGGXXX(W5  ,W4  ,W15 ,G,AMP(7  ))                               
95       CALL IOVXXX(W13 ,W11 ,W5  ,GG,AMP(8  ))                              
96       ZJJ3 = 0.D0 
97       DO I = 1, NEIGEN
98           ZTEMP = (0.D0,0.D0)
99           DO J = 1, NGRAPHS
100               ZTEMP = ZTEMP + EIGEN_VEC(J,I)*AMP(J)
101           ENDDO
102           ZJJ3 =ZJJ3+ZTEMP*EIGEN_VAL(I)*CONJG(ZTEMP) 
103       ENDDO
104       END