scipy.special.expi#
- scipy.special.expi(x, out=None) = <ufunc 'expi'>#
Exponentielle Integrale Ei.
Für reelles \(x\) ist das Exponentialintegral definiert als [1]
\[Ei(x) = \int_{-\infty}^x \frac{e^t}{t} dt.\]Für \(x > 0\) wird das Integral als Cauchy-Hauptwert verstanden.
Es wird durch analytische Fortsetzung der Funktion auf dem Intervall \((0, \infty)\) auf die komplexe Ebene erweitert. Die komplexe Variante hat einen Zweigschnitt auf der negativen reellen Achse.
- Parameter:
- xarray_like
Reeller oder komplexwertiger Argument
- outndarray, optional
Optionales Ausgabe-Array für die Funktionsergebnisse
- Rückgabe:
- skalar oder ndarray
Werte des Exponentialintegrals
Hinweise
Die Exponentialintegrale \(E_1\) und \(Ei\) erfüllen die Beziehung
\[E_1(x) = -Ei(-x)\]für \(x > 0\).
Referenzen
[1]Digital Library of Mathematical Functions, 6.2.5 https://dlmf.nist.gov/6.2#E5
Beispiele
>>> import numpy as np >>> import scipy.special as sc
Es steht in Beziehung zu
exp1.>>> x = np.array([1, 2, 3, 4]) >>> -sc.expi(-x) array([0.21938393, 0.04890051, 0.01304838, 0.00377935]) >>> sc.exp1(x) array([0.21938393, 0.04890051, 0.01304838, 0.00377935])
Die komplexe Variante hat einen Zweigschnitt auf der negativen reellen Achse.
>>> sc.expi(-1 + 1e-12j) (-0.21938393439552062+3.1415926535894254j) >>> sc.expi(-1 - 1e-12j) (-0.21938393439552062-3.1415926535894254j)
Wenn sich die komplexe Variante dem Zweigschnitt nähert, nähern sich die Realteile dem Wert der reellen Variante.
>>> sc.expi(-1) -0.21938393439552062
Die SciPy-Implementierung gibt für komplexe Werte auf dem Zweigschnitt die reelle Variante zurück.
>>> sc.expi(complex(-1, 0.0)) (-0.21938393439552062-0j) >>> sc.expi(complex(-1, -0.0)) (-0.21938393439552062-0j)