]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ISAJET/code/zjj1.F
Using AliLog (F.Carminati)
[u/mrichter/AliRoot.git] / ISAJET / code / zjj1.F
1 #include "isajet/pilot.h"
2       REAL*8 FUNCTION ZJJ1(P1, P2, P3, P4, P5,NHEL,IM1,IM2)
3 C  
4 C Function generated by Madgraph + hand coding
5 C Returns amplitude squared summed/avg over colors
6 C for the point in phase space P1,P2,P3,P4,...
7 C and helicity NHEL(1),NHEL(2),....
8 C for process : q(im1) q~(im1)  -> z q(im2) q~(im2)
9 C with Madgraph codes IM1 != IM2  
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=  4,NEIGEN=  1,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)                                                    
26       INTEGER IM1,IM2
27 C  
28 C LOCAL VARIABLES 
29 C  
30       INTEGER I,J
31       REAL*8 EIGEN_VAL(NEIGEN), EIGEN_VEC(NGRAPHS,NEIGEN)
32       COMPLEX*16 ZTEMP
33       COMPLEX*16 AMP(NGRAPHS)
34       COMPLEX*16 W1(6)  , W2(6)  , W3(6)  , W4(6)  , W5(6)        
35       COMPLEX*16 W6(6)  , W7(6)  , W8(6)  , W9(6)  , W10(6)       
36       COMPLEX*16 W11(6) , W12(6) 
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  )/       8.8888888888888884D-01 /                  
45       DATA EIGEN_VEC(1  ,1  )/  -5.0000000000000000D-01 /                  
46       DATA EIGEN_VEC(2  ,1  )/  -5.0000000000000000D-01 /                  
47       DATA EIGEN_VEC(3  ,1  )/  -5.0000000000000000D-01 /                  
48       DATA EIGEN_VEC(4  ,1  )/  -5.0000000000000000D-01 /                  
49 C ----------
50 C BEGIN CODE
51 C ----------
52       CALL IXXXXX(P1  ,FMASS(IM1),NHEL(1  ), 1,W1  )                       
53       CALL OXXXXX(P2  ,FMASS(IM1),NHEL(2  ),-1,W2  )                       
54       CALL VXXXXX(P3  ,ZMASS,NHEL(3  ), 1,W3  )                            
55       CALL OXXXXX(P4  ,FMASS(IM2),NHEL(4  ), 1,W4  )                       
56       CALL IXXXXX(P5  ,FMASS(IM2),NHEL(5  ),-1,W5  )                       
57       IF(IM1.EQ.3.OR.IM1.EQ.7.OR.IM1.EQ.11) THEN
58         CALL FVOXXX(W2  ,W3  ,GZD,FMASS(IM1),FWIDTH(IM1),W6  )               
59       ELSE
60         CALL FVOXXX(W2  ,W3  ,GZU,FMASS(IM1),FWIDTH(IM1),W6  )               
61       ENDIF
62       CALL JIOXXX(W1  ,W6  ,GG,ZERO,ZERO,W7  )                             
63       CALL IOVXXX(W5  ,W4  ,W7  ,GG,AMP(1  ))                              
64       CALL FVIXXX(W1  ,W3  ,GZD,FMASS(IM1),FWIDTH(IM2),W8  )               
65       CALL JIOXXX(W8  ,W2  ,GG,ZERO,ZERO,W9  )                             
66       CALL IOVXXX(W5  ,W4  ,W9  ,GG,AMP(2  ))                              
67       CALL JIOXXX(W1  ,W2  ,GG,ZERO,ZERO,W10 )                             
68       CALL FVOXXX(W4  ,W10 ,GG,FMASS(IM2),FWIDTH(IM2),W11 )                
69       CALL IOVXXX(W5  ,W11 ,W3  ,GZD,AMP(3  ))                             
70       IF(IM2.EQ.3.OR.IM2.EQ.7.OR.IM2.EQ.11) THEN
71         CALL FVOXXX(W4  ,W3  ,GZD,FMASS(IM2),FWIDTH(IM2),W12 )               
72       ELSE
73         CALL FVOXXX(W4  ,W3  ,GZU,FMASS(IM2),FWIDTH(IM2),W12 )
74       ENDIF
75       CALL IOVXXX(W5  ,W12 ,W10 ,GG,AMP(4  ))                              
76       ZJJ1 = 0.D0 
77       DO I = 1, NEIGEN
78           ZTEMP = (0.D0,0.D0)
79           DO J = 1, NGRAPHS
80               ZTEMP = ZTEMP + EIGEN_VEC(J,I)*AMP(J)
81           ENDDO
82           ZJJ1 =ZJJ1+ZTEMP*EIGEN_VAL(I)*CONJG(ZTEMP) 
83       ENDDO
84 C      CALL GAUGECHECK(AMP,ZTEMP,EIGEN_VEC,EIGEN_VAL,NGRAPHS,NEIGEN)
85       END