C***************************************************************C
SUBROUTINE ALBELR(PTE, PCF, KNCF, PRC, KERMSG)
C***************************************************************C
C* IONIZATION RATE COEFFICIENTS BY BELL *C
C* + + + + + + + + *C
C* PTE : ELECTRON TEMPERATURE (EV) *C
C* KNCF : NUMBER OF COEFFICIENTS SUPPLIED IN PCF *C
C* PRC : RATE COEFFICIENT (CM[3]/SEC) *C
C* KERMSG : ERROR MESSAGE *C
C* + + + + + + + + *C
C* PCF(1) = EI : IONIZATION POTENTIAL *C
C* PCF(2) = AL : COEFFICIENT alpha *C
C* PCF(3)-(5) = B : COEFFICIENTS beta(0-2) *C
C* PCF(6)-(11) = A : COEFFICIENTS A(0-5) *C
C* + + + + + + + + *C
C* BY T. KATO *C
C* + + + + + + + + *C
C* MODIFIED FROM SUBROUTINE BELION *C
C* SEP. 4, 1990 BY K. TAKASUGI *C
C***************************************************************C
C
IMPLICIT REAL*8 (A-H,O-Z)
DIMENSION PCF(11)
CHARACTER*(*) KERMSG
C
TEI=PTE/PCF(1)
DS=PCF(2)
DEV=0.0
C
IF(TEI.LT.0.1) THEN
PRC=0.0
KERMSG=' ALBELR: TEMPERATURE BELOW 0.1*I'
RETURN
ELSE IF(KNCF .NE. 11) THEN
KERMSG = ' ALBELR: INCORRECT NUMBER OF COEFFICIENTS'
RETURN
ELSE
KERMSG = ' '
ENDIF
C
IF(TEI.LE.10.)THEN
DO 100 N=0,5
DA=PCF(N+6)
DDA=DA*LOG10(TEI)**N
DEV=DEV+DDA
100 CONTINUE
PRC=EXP(-1.0/TEI)*SQRT(TEI)*DEV
C
ELSEIF(TEI.GT.10.)THEN
DO 110 N=0,2
DA=PCF(N+3)
DDA=DA*TEI**(-N)
DEV=DEV+DDA
110 CONTINUE
PRC=(DS*LOG(TEI)+DEV)/SQRT(TEI)
C
ENDIF
C
RETURN
END
C