COSMOS v7.655  COSMOSv7655
(AirShowerMC)
cAAXsec.f
Go to the documentation of this file.
1 !
2  subroutine caaxsec(pjmassn, tgmassn, ek, xs)
3 ! this is now obsolute
4 ! pjmassn: input. integer. incident heavy mass number.
5 ! tgmassn: input. real*8. average target mass number.
6 ! ek: input. real*8. incident heavy kinetic energy in GeV.
7 ! xs: output. real*8. collision x-section in mb.
8 !
9 ! formula: xs = pi(r1 + r2 - d)**2
10 ! r = r0 A**(1/3)
11 ! d = 1.189 r0 exp(-0.055min(A1,A2))
12 ! r0 = (1.29f to 1.41f)
13 ! Therefore
14 ! xs = pi r0^2 (A1^0.333 + A2^0.333 - 1.189exp(-0.055min(A1,A2)))**2
15 ! This is by Frier et al in ICRC Paris conf. (from Uchu Hosha Sen Edited
16 ! by Nishimura, p.170)
17 !
18 ! At high energies (sqrt(s) > 80 GeV for E/A), we include energy dependence
19 ! of cross-section as follows.
20 ! Let the pp cross-section increases as E**delta, then
21 ! AB crosssection is well fitted by the dependence of E**alfa with
22 !
23 ! alfa = 2.5* delta/(p + t + p*t/2)
24 !
25 ! where p = A**(1/3) and t = B**(1/3)
26 !
27 !
28 !
29 
30  implicit none
31 #include "Zxsectionp.h"
32  integer pjmassn
33  real*8 tgmassn, ek, xs
34 ! character*70 msg
35 ! ------------------------old ------(main frame age)
36 ! if(abs(tgmassn-14.5) .lt. 5.) then
37 ! xs = 45.2 * (pjmassn**.333 + 2.03)**2
38 ! else
39 ! write(msg, *) ' update cAAXsection so that target can be ',
40 ! * ' non air'
41 ! call cerrorMsg(msg, 0)
42 ! endif
43 !
44 ! ---------------------------------------------------------
45 ! difference for He-Air(=14.5)) collisions ( r0=1.29 )
46 ! old new
47 ! He 591 mb 492 mb
48 ! Fe 1549 1710
49 !
50  real*8 p, t
51  real*8 einc/500./
52  write(0,*) ' use cAAxsec2 instead of obsolete cAAxsec; sorry'
53  stop
54 
55  if( ek .le. 0. ) then
56  xs = 0.
57  else
58  p = pjmassn**0.3333
59  t = tgmassn**0.3333
60  xs = 52.2 *( p + t -
61  * 1.189 * exp(- 0.055*min( dble(pjmassn), tgmassn)))**2
62  if(ek/pjmassn .gt. einc) then
63  xs = xs * (ek/einc/pjmassn)**(2.5* deltpp/(p+t+p*t/2.))
64  endif
65  endif
66  end
67 
subroutine caaxsec(pjmassn, tgmassn, ek, xs)
Definition: cAAXsec.f:3