16 data ( dndx(
i),
i= 1,
n)/
17 1 0, 0.178704, 0.330057, 0.439452, 0.518544, 0.576176,
18 2 0.6189, 0.651, 0.677, 0.699, 0.719, 0.737, 0.754, 0.770,
19 3 0.7855, 0.800, 0.814, 0.845, 0.869, 0.894, 0.843, 0.804,
20 4 0.806, 0.9, 0.819, 0.878, 0.856, 0.831, 0.779, 0.811,
21 5 0.866, 0.831, 0.874, 0.804, 0.826, 0.781, 0.77, 0.758,
22 6 0.777, 0.746, 0.738, 0.734, 0.71, 0.704, 0.74, 0.666,
23 7 0.671, 0.669, 0.658, 0.653, 0.655, 0.631, 0.601, 0.583,
24 8 0.568, 0.546, 0.516, 0.482, 0.485, 0.455, 0.479, 0.476,
25 9 0.435, 0.419, 0.412, 0.348, 0.382, 0.347, 0.332, 0.337,
26 a 0.3, 0.335, 0.314, 0.296, 0.267, 0.284, 0.277, 0.25,
27 b 0.217, 0.253, 0.249, 0.198, 0.197, 0.194, 0.209, 0.189,
28 c 0.215, 0.193, 0.208, 0.206, 0.212, 0.193, 0.199, 0.214,
29 d 0.248, 0.254, 0.307, 0.371, 0.574, 1.914, 4.043/
60 *
'failed in making leading particle sampling table', 0)
subroutine cerrormsg(msg, needrtn)
block data include Zlatfit h c fitting region data x1(1)/0.03/
atmos%rho(atmos%nodes) **exp(-(z-atmos%z(atmos%nodes))/Hinf) elseif(z .lt. atmos%z(1)) then ans=atmos%rho(1) **exp((atmos%z(1) -z)/atmos%H(1)) else call kdwhereis(z, atmos%nodes, atmos%z, 1, i) a=atmos%a(i) if(a .ne. 0.d0) then ans=atmos%rho(i) **(1+a *(z-atmos%z(i))/atmos%H(i)) **(-1.0d0-1.d0/a) else ans=*atmos%rho(i) *exp(-(z-atmos%z(i))/atmos%H(i)) endif endif ! zsave=z ! endif cvh2den=ans end ! ---------------------------------- real *8 function cvh2temp(z) implicit none ! vettical height to temperatur(Kelvin) real *8 z ! input. vertical height in m ! output is temperature of the atmospher in Kelvin real *8 ans integer i if(z .gt. atmos%z(atmos%nodes)) then ans=atmos%T(atmos%nodes) elseif(z .lt. atmos%z(1)) then ans=atmos%T(1)+atmos%b(1) *(z - atmos%z(1)) else call kdwhereis(z, atmos%nodes, atmos%z, 1, i) ans=atmos%T(i)+atmos%b(i) *(z-atmos%z(i)) endif cvh2temp=ans end !--------------------------------------------- real *8 function cthick2h(t) implicit none real *8 t ! input. air thickness in kg/m^2 real *8 logt, ans integer i real *8 dod0, fd, a logt=log(t) if(t .ge. atmos%cumd(1)) then ans=atmos%z(1) - *(logt - atmos%logcumd(1)) *atmos%H(1) elseif(t .le. atmos%cumd(atmos%nodes)) then ans=atmos%z(atmos%nodes) - *Hinf *log(t/atmos%cumd(atmos%nodes)) else call kdwhereis(t, atmos%nodes, atmos%cumd, 1, i) ! i is such that X(i) > x >=x(i+1) ans
integer npitbl real *nx dx real dx
real *8 function cinteldndx(x)
integer npitbl real *nx dx real ndndx
subroutine kbinchop(f, x1, x2, x, eps, ans, icon)
integer npitbl real *nx dx real uconst
integer npitbl real *nx dx real intendndx(n) real *8 ndndxn(n)
block data cblkEvhnp ! currently usable models data RegMdls ad *special data *Cekaon d0
dE dx *! Nuc Int sampling table d
integer npitbl real *nx dx real ppsx
subroutine ktrpzintegt(t, intv, n, x0, dx, x, ans)
! structure defining a particle at production ! Basic idea of what is to be contained in ! the particle structue is that dynamical ones should be included those derivable from the particle code ! is not included ******************************************************type fmom momentum sequence union map real e endmap map real * x
dE dx *! Nuc Int sampling table c