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

12 visualizaciones (últimos 30 días)
As shown in the title, I want to find a relatively authoritative code to calculate exponential integral

Respuesta aceptada

Paul
Paul el 31 de Ag. de 2022
ExpIntegralE in Mathematica seems to be the same as the two-argument form of expint in the Symbolic Math Toolbox.
  2 comentarios
Paul
Paul el 4 de Sept. de 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

Iniciar sesión para comentar.

Más respuestas (1)

John D'Errico
John D'Errico el 30 de Ag. de 2022
Editada: John D'Errico el 30 de Ag. de 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 comentarios
ma Jack
ma Jack el 4 de Sept. de 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]

Iniciar sesión para comentar.

Categorías

Más información sobre MATLAB en Help Center y File Exchange.

Productos


Versión

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by