42 lines
1.3 KiB
Fortran
42 lines
1.3 KiB
Fortran
subroutine szirc(nn,T,ic,rno,cii)
|
|
c =================================
|
|
c
|
|
c calculates electron impact ionizition rates from semiempirical
|
|
c formula (eq.35) from Sampson & Zhang (1988, ApJ 335, 516)
|
|
c
|
|
c a modification of Tim Kallman's XSTAR routine
|
|
c
|
|
INCLUDE 'IMPLIC.FOR'
|
|
real abethe(11), hbethe(11), rbethe(11)
|
|
DATA(abethe(i),i=1,11)/ 1.134, 0.603, 0.412, 0.313, 0.252,
|
|
1 0.211, 0.181, 0.159, 0.142, 0.128, 1.307 /
|
|
DATA(hbethe(i),i=1,11)/ 1.48, 3.64, 5.93, 8.32, 10.75, 12.90,
|
|
1 15.05, 17.20, 19.35, 21.50, 2.15 /
|
|
DATA(rbethe(i),i=1,11)/ 2.20, 1.90, 1.73, 1.65, 1.60, 1.56,
|
|
1 1.54, 1.52, 1.52, 1.52, 1.52 /
|
|
rz=ic
|
|
Boltz=1.38066e-16
|
|
Eion=2.179874e-11
|
|
const=4.6513e-3
|
|
C
|
|
rc=float(int(rno))
|
|
if (nn.lt.11) then
|
|
an=abethe(nn)
|
|
hn=hbethe(nn)
|
|
rrn=rbethe(nn)
|
|
else
|
|
an=abethe(11)/float(nn)
|
|
hn=hbethe(11)*float(nn)
|
|
rrn=rbethe(11)
|
|
endif
|
|
tt= T*Boltz
|
|
rn=float(nn)
|
|
yy=rz*rz*Eion/tt*(1./rn/rn-1./rc/rc-.25*(1./(rc-1.)**2-
|
|
c 1./rc/rc))
|
|
call eint(yy,e1,e2,e3)
|
|
cii=const*sqrt(tt)*(rn**5)/(rz**4)*an*yy* (
|
|
1 e1/rn-(exp(-yy)-yy*e3)/(3.*rn)+(yy*e2-2.*yy*e1+exp(-yy))*
|
|
2 3.*hn/rn/(3.-rrn)+(e1-e2)*3.36*yy)
|
|
return
|
|
end
|