1
SUBROUTINE SBORN_HEL(P1,ANS)
5
C RETURNS AMPLITUDE SQUARED SUMMED/AVG OVER COLORS
7
C FOR THE POINT IN PHASE SPACE P1(0:3,NEXTERNAL-1)
15
include "nexternal.inc"
16
include "born_nhel.inc"
18
PARAMETER ( NCOMB= %(ncomb)d )
20
PARAMETER (THEL=NCOMB*%(nconfs)d)
22
PARAMETER (NGRAPHS = %(ngraphs)d)
26
REAL*8 P1(0:3,NEXTERNAL-1),ANS
36
LOGICAL GOODHEL(NCOMB,%(nconfs)d)
37
common /c_goodhel/ goodhel
38
double precision savemom(nexternal-1,2)
39
common/to_savemom/savemom
40
logical calculatedBorn
41
common/ccalculatedBorn/calculatedBorn
43
common/c_nfksprocess/nfksprocess
44
double precision wgt_hel(max_bhel)
45
common/c_born_hel/wgt_hel
50
iden=iden_values(nfksprocess)
51
if (calculatedBorn) then
53
if (savemom(j,1).ne.p1(0,j) .or. savemom(j,2).ne.p1(3,j)) then
54
calculatedBorn=.false.
55
write (*,*) "momenta not the same in Born_hel"
60
write(*,*) 'Error in born_hel: should be called only with calculatedborn = true'
66
IF (GOODHEL(IHEL,nFKSprocess)) THEN
67
wgt_hel(ihel)=BORN_HEL(P1,IHEL)/DBLE(IDEN)
74
REAL*8 FUNCTION born_hel(P,HELL)
77
C RETURNS AMPLITUDE SQUARED SUMMED/AVG OVER COLORS
78
C FOR THE POINT WITH EXTERNAL LINES W(0:6,NEXTERNAL-1)
87
PARAMETER ( NGRAPHS = %(ngraphs)d )
89
PARAMETER (NCOLOR=%(ncolor)d)
93
parameter (imag1 = (0d0,1d0))
94
include "nexternal.inc"
95
include "born_nhel.inc"
99
REAL*8 P(0:3,NEXTERNAL-1)
105
REAL*8 DENOM(NCOLOR), CF(NCOLOR,NCOLOR)
106
COMPLEX*16 ZTEMP, AMP(NGRAPHS), JAMP(NCOLOR)
110
double complex saveamp(ngraphs,max_bhel)
111
common/to_saveamp/saveamp
112
logical calculatedBorn
113
common/ccalculatedBorn/calculatedBorn
121
if (.not. calculatedBorn) then
122
write(*,*) 'Error in born_hel.f: this should be called only with calculatedborn = true'
124
elseif (calculatedBorn) then
126
amp(i)=saveamp(i,hell)
134
ZTEMP = ZTEMP + CF(j,i)*JAMP(J)
136
born_hel =born_hel+ZTEMP*DCONJG(JAMP(I))/DENOM(I)