![]() |
|
|||
File indexing completed on 2025-08-03 08:16:23
0001 C+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 0002 C++ Copyright S. Zhang and J. M. Jing ++ 0003 C++ Computation of Special Functions, John Wiley & Sons, New York, ++ 0004 C++ 1996 and http://jin.ece.illinois.edu . ++ 0005 C+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 0006 C 0007 SUBROUTINE EIX(X,EI) 0008 C 0009 C ============================================ 0010 C Purpose: Compute exponential integral Ei(x) 0011 C Input : x --- Argument of Ei(x) 0012 C Output: EI --- Ei(x) ( x > 0 ) 0013 C ============================================ 0014 C 0015 IMPLICIT DOUBLE PRECISION (A-H,O-Z) 0016 IF (X.EQ.0.0) THEN 0017 EI=-1.0D+300 0018 ELSE IF (X.LE.40.0) THEN 0019 EI=1.0D0 0020 R=1.0D0 0021 DO 15 K=1,100 0022 R=R*K*X/(K+1.0D0)**2 0023 EI=EI+R 0024 IF (DABS(R/EI).LE.1.0D-15) GO TO 20 0025 15 CONTINUE 0026 20 GA=0.5772156649015328D0 0027 EI=GA+DLOG(X)+X*EI 0028 ELSE 0029 EI=1.0D0 0030 R=1.0D0 0031 DO 25 K=1,20 0032 R=R*K/X 0033 25 EI=EI+R 0034 EI=DEXP(X)/X*EI 0035 ENDIF 0036 RETURN 0037 END
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
![]() ![]() |