Hi all,I want to use matlab to calculate the exponential integral,I know that the official function ExpIntegralE in Mathematica can calculate it.

13 views (last 30 days)
As shown in the title, I want to find a relatively authoritative code to calculate exponential integral

Accepted Answer

Paul
Paul on 31 Aug 2022
ExpIntegralE in Mathematica seems to be the same as the two-argument form of expint in the Symbolic Math Toolbox.
  2 Comments
Paul
Paul on 4 Sep 2022
"there is no official matlab function that is used like expint(n,x), in matlab "
Using the function at the doc page for expint linked above in this Answer
expint(sym(3),sym(5.5))
ans = 
Get the decimal representation
vpa(expint(sym(3),sym(5.5)))
ans = 
0.00049877076767550924005965009248623
which is the same result using ExpIntegalE in Mathematica link

Sign in to comment.

More Answers (1)

John D'Errico
John D'Errico on 30 Aug 2022
Edited: John D'Errico on 30 Aug 2022
Is there a reason why you would not just use expint?
help expint
EXPINT Exponential integral function. Y = EXPINT(X) is the exponential integral function for each element of X. The exponential integral is defined as: EXPINT(x) = integral from x to Inf of (exp(-t)/t) dt, for x > 0. By analytic continuation, EXPINT is a scalar-valued function in the complex plane cut along the negative real axis. Another common definition of the exponential integral function is the Cauchy principal value integral from -Inf to X of (exp(t)/t) dt, for positive X. This is denoted as Ei(x). The relationships between EXPINT(x) and Ei(x) are as follows: EXPINT(-x+i*0) = -Ei(x) - i*pi, for real x > 0 Ei(x) = REAL(-EXPINT(-x)), for real x > 0 Class support for input X: float: double, single Documentation for expint doc expint Other functions named expint codistributed/expint gpuArray/expint sym/expint
Probably you did not look for it. And that was what you did wrong. When you don't know how to do something in MATLAB, LEARN TO USE LOOKFOR. In my case, this identified many possible things, but do you see the 6th item on the list?
lookfor exponential
expmdemo1 - Matrix exponential via Pade approximation.
expmdemo2 - Matrix exponential via Taylor series.
expmdemo3 - Matrix exponential via eigenvalues and eigenvectors.
exp - Exponential.
expm - Matrix exponential.
expint - Exponential integral function.
...
Any guesses what expint would do? The point is, USE LOOKFOR.
  6 Comments
ma Jack
ma Jack on 4 Sep 2022
In fact, there is no official matlab function that is used like expint(n,x), in matlab it can only be expint(x), which is equivalent to ExpIntegralE[1, x] in mathematica, but what I want is ExpIntegralE[n, x]

Sign in to comment.

Categories

Find more on MATLAB in Help Center and File Exchange

Products


Release

R2018b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!