8 IMPLICIT DOUBLE PRECISION(d)
9 dimension psc1(5),psc2(5)
17 bb=0.5*(3.0+rr+sqrt(9.0+10.0*rr+rr**2))
18 ep=sqrt((psc1(1)-psc2(1))**2+(psc1(2)-psc2(2))**2
19 & +(psc1(3)-psc2(3))**2)
21 els0=98.0/ep+52.0*(1.0+rr)**2
28 amm=ecm**2-pcm1**2-pcm2**2-pcm3**2
29 IF(amm.LE.psc1(5)+psc2(5))
RETURN
32 pmax=(amm**2+am1**2+am2**2-2.0*amm*am1-2.0*amm*am2
33 & -2.0*am1*am2)/4.0/amm
36 els=98.0*exp(-2.8*tt)/ep
37 & +52.0*exp(-9.2*tt)*(1.0+rr*exp(-4.6*(bb-1.0)*tt))**2
44 db=sqrt(dbx**2+dby**2+dbz**2)
45 IF(db.GT.0.99999999d0)
THEN
46 dbx=dbx*(0.99999999d0/db)
47 dby=dby*(0.99999999d0/db)
48 dbz=dbz*(0.99999999d0/db)
50 WRITE(6,*)
' (HIJELS) boost vector too large'
53 dga=1d0/sqrt(1d0-db**2)
59 dbp=dbx*dp1+dby*dp2+dbz*dp3
60 dgabp=dga*(dga*dbp/(1d0+dga)+dp4)
66 dp1=-sqrt(tt)*sin(
phi)
67 dp2=-sqrt(tt)*cos(
phi)
70 dbp=dbx*dp1+dby*dp2+dbz*dp3
71 dgabp=dga*(dga*dbp/(1d0+dga)+dp4)