@cindex exponential integrals @cindex integrals, exponential Information on the exponential integrals can be found in Abramowitz & Stegun, Chapter 5. These functions are declared in the header file @file{gsl_sf_expint.h}. @menu * Exponential Integral:: * Ei(x):: * Hyperbolic Integrals:: * Ei_3(x):: * Trigonometric Integrals:: * Arctangent Integral:: @end menu @node Exponential Integral @subsection Exponential Integral @cindex E1(x), E2(x), Ei(x) @deftypefun double gsl_sf_expint_E1 (double @var{x}) @deftypefunx int gsl_sf_expint_E1_e (double @var{x}, gsl_sf_result * @var{result}) These routines compute the exponential integral @math{E_1(x)}, @tex \beforedisplay $$ E_1(x) := \Re \int_1^\infty dt \exp(-xt)/t. $$ \afterdisplay @end tex @ifinfo @example E_1(x) := \Re \int_1^\infty dt \exp(-xt)/t. @end example @end ifinfo @noindent @comment Domain: x != 0.0 @comment Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW @end deftypefun @deftypefun double gsl_sf_expint_E2 (double @var{x}) @deftypefunx int gsl_sf_expint_E2_e (double @var{x}, gsl_sf_result * @var{result}) These routines compute the second-order exponential integral @math{E_2(x)}, @tex \beforedisplay $$ E_2(x) := \Re \int_1^\infty dt \exp(-xt)/t^2. $$ \afterdisplay @end tex @ifinfo @example E_2(x) := \Re \int_1^\infty dt \exp(-xt)/t^2. @end example @end ifinfo @noindent @comment Domain: x != 0.0 @comment Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW @end deftypefun @node Ei(x) @subsection Ei(x) @deftypefun double gsl_sf_expint_Ei (double @var{x}) @deftypefunx int gsl_sf_expint_Ei_e (double @var{x}, gsl_sf_result * @var{result}) These routines compute the exponential integral @math{Ei(x)}, @tex \beforedisplay $$ Ei(x) := - PV\left(\int_{-x}^\infty dt \exp(-t)/t\right) $$ \afterdisplay @end tex @ifinfo @example Ei(x) := - PV(\int_@{-x@}^\infty dt \exp(-t)/t) @end example @end ifinfo @noindent where @math{PV} denotes the principal value of the integral. @comment Domain: x != 0.0 @comment Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW @end deftypefun @node Hyperbolic Integrals @subsection Hyperbolic Integrals @cindex hyperbolic integrals @cindex Shi(x) @cindex Chi(x) @deftypefun double gsl_sf_Shi (double @var{x}) @deftypefunx int gsl_sf_Shi_e (double @var{x}, gsl_sf_result * @var{result}) These routines compute the integral @math{Shi(x) = \int_0^x dt \sinh(t)/t}. @comment Exceptional Return Values: GSL_EOVRFLW, GSL_EUNDRFLW @end deftypefun @deftypefun double gsl_sf_Chi (double @var{x}) @deftypefunx int gsl_sf_Chi_e (double @var{x}, gsl_sf_result * @var{result}) These routines compute the integral @math{ Chi(x) := \Re[ \gamma_E + \log(x) + \int_0^x dt (\cosh[t]-1)/t] }, where @math{\gamma_E} is the Euler constant (available as the macro @code{M_EULER}). @comment Domain: x != 0.0 @comment Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW @end deftypefun @node Ei_3(x) @subsection Ei_3(x) @deftypefun double gsl_sf_expint_3 (double @var{x}) @deftypefunx int gsl_sf_expint_3_e (double @var{x}, gsl_sf_result * @var{result}) These routines compute the third-order exponential integral @math{Ei_3(x) = \int_0^xdt \exp(-t^3)} for @c{$x \ge 0$} @math{x >= 0}. @comment Exceptional Return Values: GSL_EDOM @end deftypefun @node Trigonometric Integrals @subsection Trigonometric Integrals @cindex trigonometric integrals @cindex Si(x) @cindex Ci(x) @deftypefun double gsl_sf_Si (const double @var{x}) @deftypefunx int gsl_sf_Si_e (double @var{x}, gsl_sf_result * @var{result}) These routines compute the Sine integral @math{Si(x) = \int_0^x dt \sin(t)/t}. @comment Exceptional Return Values: none @end deftypefun @deftypefun double gsl_sf_Ci (const double @var{x}) @deftypefunx int gsl_sf_Ci_e (double @var{x}, gsl_sf_result * @var{result}) These routines compute the Cosine integral @math{Ci(x) = -\int_x^\infty dt \cos(t)/t} for @math{x > 0}. @comment Domain: x > 0.0 @comment Exceptional Return Values: GSL_EDOM @end deftypefun @node Arctangent Integral @subsection Arctangent Integral @cindex arctangent integral @deftypefun double gsl_sf_atanint (double @var{x}) @deftypefunx int gsl_sf_atanint_e (double @var{x}, gsl_sf_result * @var{result}) These routines compute the Arctangent integral, which is defined as @math{AtanInt(x) = \int_0^x dt \arctan(t)/t}. @comment Domain: @comment Exceptional Return Values: @end deftypefun