74 lines
3.0 KiB
Fortran
74 lines
3.0 KiB
Fortran
FUNCTION SFFHMI(POPI,FR,T)
|
|
C ==========================
|
|
C
|
|
C Free-free cross-section for H- (negative hydrogen ion)
|
|
C Taken from Kurucz ATLAS9
|
|
C
|
|
C From Bell and Berrington J.Phys.B,vol. 20, 801-806,1987.
|
|
C
|
|
INCLUDE 'IMPLIC.FOR'
|
|
PARAMETER (CONFF=5040.*1.380658E-16, CONTH=5040.)
|
|
PARAMETER (HK = 4.79928144D-11)
|
|
DIMENSION FFLOG(22,11),FFCS(11,22),FFLOG2(22)
|
|
DIMENSION FFBEG(11,11),FFEND(11,11),FFTT(11),WFFLOG(22)
|
|
DIMENSION THETAFF(11),WAVEK(22)
|
|
EQUIVALENCE (FFCS(1,1),FFBEG(1,1)),(FFCS(1,12),FFEND(1,1))
|
|
C
|
|
DATA WAVEK/.50,.40,.35,.30,.25,.20,.18,.16,.14,.12,.10,.09,.08,
|
|
1 .07,.06,.05,.04,.03,.02,.01,.008,.006/
|
|
DATA THETAFF/
|
|
1 0.5, 0.6, 0.8, 1.0, 1.2, 1.4, 1.6, 1.8, 2.0, 2.8, 3.6/
|
|
DATA FFBEG/
|
|
1.0178,.0222,.0308,.0402,.0498,.0596,.0695,.0795,.0896, .131, .172,
|
|
2.0228,.0280,.0388,.0499,.0614,.0732,.0851,.0972, .110, .160, .211,
|
|
3.0277,.0342,.0476,.0615,.0760,.0908, .105, .121, .136, .199, .262,
|
|
4.0364,.0447,.0616,.0789,.0966, .114, .132, .150, .169, .243, .318,
|
|
5.0520,.0633,.0859, .108, .131, .154, .178, .201, .225, .321, .418,
|
|
6.0791,.0959, .129, .161, .194, .227, .260, .293, .327, .463, .602,
|
|
7.0965, .117, .157, .195, .234, .272, .311, .351, .390, .549, .711,
|
|
8 .121, .146, .195, .241, .288, .334, .381, .428, .475, .667, .861,
|
|
9 .154, .188, .249, .309, .367, .424, .482, .539, .597, .830, 1.07,
|
|
A .208, .250, .332, .409, .484, .557, .630, .702, .774, 1.06, 1.36,
|
|
B .293, .354, .468, .576, .677, .777, .874, .969, 1.06, 1.45, 1.83/
|
|
DATA FFEND/
|
|
1 .358, .432, .572, .702, .825, .943, 1.06, 1.17, 1.28, 1.73, 2.17,
|
|
2 .448, .539, .711, .871, 1.02, 1.16, 1.29, 1.43, 1.57, 2.09, 2.60,
|
|
3 .579, .699, .924, 1.13, 1.33, 1.51, 1.69, 1.86, 2.02, 2.67, 3.31,
|
|
4 .781, .940, 1.24, 1.52, 1.78, 2.02, 2.26, 2.48, 2.69, 3.52, 4.31,
|
|
5 1.11, 1.34, 1.77, 2.17, 2.53, 2.87, 3.20, 3.51, 3.80, 4.92, 5.97,
|
|
6 1.73, 2.08, 2.74, 3.37, 3.90, 4.50, 5.01, 5.50, 5.95, 7.59, 9.06,
|
|
7 3.04, 3.65, 4.80, 5.86, 6.86, 7.79, 8.67, 9.50, 10.3, 13.2, 15.6,
|
|
8 6.79, 8.16, 10.7, 13.1, 15.3, 17.4, 19.4, 21.2, 23.0, 29.5, 35.0,
|
|
9 27.0, 32.4, 42.6, 51.9, 60.7, 68.9, 76.8, 84.2, 91.4, 117., 140.,
|
|
A 42.3, 50.6, 66.4, 80.8, 94.5, 107., 120., 131., 142., 183., 219.,
|
|
B 75.1, 90.0, 118., 144., 168., 191., 212., 234., 253., 325., 388./
|
|
DATA ISTART/0/
|
|
C
|
|
IF(ISTART.EQ.0) THEN
|
|
ISTART=1
|
|
DO IWAVE=1,22
|
|
WFFLOG(IWAVE)=LOG(91.134D0/WAVEK(IWAVE))
|
|
DO ITHETA=1,11
|
|
FFLOG(IWAVE,ITHETA)=LOG(FFCS(ITHETA,IWAVE)*1.E-26)
|
|
END DO
|
|
END DO
|
|
ENDIF
|
|
C
|
|
WAVE=2.99792458E17/FR
|
|
WAVELOG=LOG(WAVE)
|
|
C
|
|
DO ITHETA=1,11
|
|
DO IWAVE=1,22
|
|
FFLOG2(IWAVE)=FFLOG(IWAVE,ITHETA)
|
|
END DO
|
|
FFTLOG=YLINTP(WAVELOG,WFFLOG,FFLOG2,22,22)
|
|
FFTT(ITHETA)=EXP(FFTLOG)/THETAFF(ITHETA)*CONFF
|
|
END DO
|
|
c
|
|
THETA=CONTH/T
|
|
FFTH=YLINTP(THETA,THETAFF,FFTT,11,11)
|
|
SFFHMI=FFTH*POPI/(1.-exp(-hk*fr/t))
|
|
|
|
RETURN
|
|
END
|