21 real*8 g, csc, g2m, srg2m
30 real*8 geqv1/1.00000001d0/
34 if( g .ge. geqv1)
then 35 if(g .gt. 2.5 .and. g .lt. 25.)
then 37 csc=(((((0.9382535
e-07*g-.8791180
e-05)*g+0.3338919
e-03)*g
39 * +0.7308900
e-01)*g-.4516664)*g+ 1.534200
40 elseif(g .lt. 2.5)
then 43 csc=( ((g+4.)*g+1.)/g2m * log(g+srg2m) - (g+3.)/srg2m)
59 subroutine canihiea(ein, eg1, eg2, cos1, cos2)
69 real*8 g, gc, bc, sints, sint2
71 real*8 u, egs, x, x1, x2, a, aq, c2, a22
72 real*8 geqv1/1.00000001d0/
83 x1 =1./(a + sqrt(g**2 -1.))
89 x = x1 * exp(log( (1.0d0-x1)/x1 )*u)
92 if( count .gt. 100 )
then 93 write(0,*)
'****** loop in canihiea' 94 write(0,*)
'****** ein=',ein
95 write(0,*)
' ein=Me forced ' 101 if(u .le. (aq -a**2*x -1./x)/a22)
goto 100
105 eg2 = x * ( ein +
masele )
111 bc=sqrt((g-1.)/(g+1.))
113 if(g .gt. geqv1)
then 115 u =max(min( (eg1/gc/egs -1.0)/bc, 1.0d0), 0.d0)
122 sint2= (egs/eg1)**2 *sints
123 if(sint2 .gt. 1.d0)
then 126 cos1 = sqrt(1.d0 - sint2)
129 sint2= (egs/eg2)**2 * sints
130 if( sint2 .gt. 1.d0)
then 133 cos2=sqrt(1.d0 - sint2)
139 if(bc-u .lt. 0.)
then dE dx *! Nuc Int sampling table e
block data cblkElemag data *AnihiE ! Eposi< 1 TeV, anihilation considered *X0/365.667/, ! radiation length of air in kg/m2 *Ecrit/81.e-3/, ! critical energy of air in GeV *MaxComptonE/1./, ! compton is considered below 1 GeV *MaxPhotoE/1.e-3/, ! above this, PhotoElectric effect neg. *MinPhotoProdE/153.e-3/, ! below 153 MeV, no gp --> hadrons ! scattering const not MeV *Knockon true
subroutine canihiea(ein, eg1, eg2, cos1, cos2)
subroutine canihipath(ein, prob, path)