SpectraRust/synspec/extracted/expint.f
2026-03-19 14:05:33 +08:00

19 lines
547 B
Fortran

FUNCTION EXPINT(X)
C ==================
C
C First exponential integral function E1(X)
C
INCLUDE 'PARAMS.FOR'
C
IF(X.LE.1.0) THEN
EXPINT=-LOG(X)-0.57721566+X*(0.99999193+X*(-0.24991055
* +X*(0.05519968+X*(-0.00976004+X*0.00107857))))
ELSE
EXPINT=EXP(-X)*((0.2677734343+X*(8.6347608925+X*
* (18.059016973+X*(8.5733287401+X))))/
* (3.9584969228+X*(21.0996530827+X*
* (25.6329561486+X*(9.5733223454+X)))))/X
END IF
RETURN
END