35 real(8),
intent(in):: tgA
36 real(8),
intent(in):: tgZ
37 real(8),
intent(out):: xs
44 real(8):: Ekt, Ekpn, Etot, EktMeV
46 real(8),
parameter:: Enorm=5.
49 real(8):: impactp, impactp5
51 integer:: tcode, tsubcode, tcharge
55 if(pj%code /=
kgnuc )
then 56 write(0, *)
' cAAxsec2 is for heavy ion while ' 57 write(0, *)
' projectile =',pj%code, pj%subcode, pj%charge
68 call cinelx(pj, tga, tgz, xs)
79 elseif( aaxsec == 1 )
then 80 if( ekpn < enorm )
then 82 call shen(pja, pjz, ektmev, tga, tgz, xs, elxs, impactp)
86 ektmev= enorm*pj%subcode*1000.
87 call shen(pja, pjz, ektmev,
88 * tga, tgz, xs5s, elxs5, impactp5)
93 elseif( aaxsec == 0 )
then 94 if( ekpn > enorm )
then 98 call shen(pja, pjz, ektmev, tga, tgz, xs, elxs, impactp)
100 ektmev= enorm*pj%subcode*1000.
101 call shen(pja, pjz, ektmev,
102 * tga, tgz, xs5s, elxs5, impactp5)
104 call caaxsec0(pja, enorm, tga, xs5c)
108 write(0,*)
'AAXsec =',aaxsec,
' not usable' 113 subroutine caaxsec0(pjA, Ekpn, tgA, xs)
115 real(8),
intent(in):: pjA
116 real(8),
intent(in):: Ekpn
117 real(8),
intent(in):: tgA
118 real(8),
intent(out):: xs
121 real(8),
parameter:: Ekb(5) = (/5., 10., 100., 700., 3000./)
124 real(8),
parameter:: delta(5)=(/-0.05,-0.01, 0.02, 0.05, 0.083/)
132 * 1.189 * exp(- 0.055*min( pja, tga)))**2
135 if(ekpn > ekb(i))
then 139 pw = pw * (ekb(j+1)/ekb(j))**(2.5* d/(p+t+p*t/2.))
142 pw = pw *(ekpn/ekb(i))**(2.5* d/(p+t+p*t/2.))
subroutine cinelx(pj, A, Z, xs)
max ptcl codes in the kgnuc
subroutine caaxsec2(pj, tgA, tgZ, xs)
subroutine caaxsec0(pjA, Ekpn, tgA, xs)