Generalised Exponential Integral
This function computes the generalized exponential integral E_a(x) for positive real parameter a and argument x. Call it as y=genexpint(a,x) or y=genexpint(a,x,expscale). If the optional third input argument expscale is set to true, the output is exp(x)*E_a(x), which is finite for large x where exp(x) overflows and E_a(x) underflows.
The code uses a MATLAB translation of the FORTRAN function DGAMIC from the SLATEC library. DGAMIC computes the upper incomplete gamma function for negative real parameter, using the algorithm of Gautschi (ACM Trans. Math. Soft. 5(4) pp 466-481, 1979). For x>1, the Legendre continued fraction is used to calculate the function
G(1-a)=exp(x)*E_a(x). For x<=1, the generalized exponential integral is obtained from the relationship
E_a(x)=x^(a-1)*Gamma(1-a,x). (Note that the incomplete gamma function parameter 1-a can be negative, so the MATLAB function gammainc cannot be used here as it is limited to positive real parameters.)
引用格式
Stephen Bocquet (2024). Generalised Exponential Integral (https://www.mathworks.com/matlabcentral/fileexchange/52694-generalised-exponential-integral), MATLAB Central File Exchange. 检索来源 .
MATLAB 版本兼容性
平台兼容性
Windows macOS Linux类别
标签
致谢
参考作品: benbarrowes/f2matlab
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!版本 | 已发布 | 发行说明 | |
---|---|---|---|
1.0.0.0 |