41 lines
2.4 KiB
Fortran
41 lines
2.4 KiB
Fortran
FUNCTION UBETA(BETA)
|
|
C =====================
|
|
C
|
|
C **********************************************************************
|
|
C ***
|
|
C *** CALLED BY: SUBROUTINE PROFSP
|
|
C *** CALLS: SUBROUTINE LAGRAN
|
|
C ***
|
|
C *** Interpolation of function U(beta) in table from Dien (ApJ 109,452)
|
|
C ***
|
|
C **********************************************************************
|
|
INCLUDE 'IMPLIC.FOR'
|
|
C
|
|
DIMENSION B0(46),U0(46)
|
|
C
|
|
DATA (B0(I),U0(I),I= 1,46) /
|
|
1 0.0,.287,0.1,.286,0.2,.283,0.3,.278,0.4,.271,0.5,.262,0.6,.252,
|
|
1 0.7,.240,0.8,.228,0.9,.215,1.0,.202,1.1,.188,1.2,.174,1.3,.161,
|
|
1 1.4,.148,1.5,.135,1.6,.124,1.7,.113,1.8,.1024,1.9,.0928,
|
|
1 2.0,.0839,2.1,.0758,2.2,.0684,2.3,.0617,2.4,.0557,2.5,.0502,
|
|
1 2.6,.0454,2.7,.0411,2.8,.0373,2.9,.0338,3.0,.0310,3.2,.0260,
|
|
1 3.4,.0220,3.6,.0187,3.8,.0160,4.0,.0238,4.2,.0120,4.4,.0104,
|
|
1 4.6,.0091,4.8,.0080,5.0,.0071,6.0,.0041,7.0,.0027,8.0,.0018,
|
|
1 9.0,.0014,10.0,.0011/
|
|
C
|
|
C *** asymptotic value
|
|
C
|
|
IF(BETA.GT.10.) THEN
|
|
UBETA=0.2992*BETA**(-2.5)
|
|
ELSE
|
|
C *** Interpolation
|
|
C
|
|
DO I=3,46
|
|
IF (BETA.LT.B0(I)) GO TO 2
|
|
END DO
|
|
2 CALL LAGRAN (B0(I-2),B0(I-1),B0(I),U0(I-2),U0(I-1),
|
|
* U0(I), BETA,UBETA)
|
|
END IF
|
|
RETURN
|
|
END
|