Blame doc/specfunc-expint.rst

Packit 67cb25
.. index::
Packit 67cb25
   single: exponential integrals
Packit 67cb25
   single: integrals, exponential
Packit 67cb25
Packit 67cb25
Information on the exponential integrals can be found in Abramowitz &
Packit 67cb25
Stegun, Chapter 5.  These functions are declared in the header file
Packit 67cb25
:file:`gsl_sf_expint.h`.
Packit 67cb25
Packit 67cb25
Exponential Integral
Packit 67cb25
--------------------
Packit 67cb25
.. index:: E1(x), E2(x), Ei(x)
Packit 67cb25
Packit 67cb25
.. function:: double gsl_sf_expint_E1 (double x)
Packit 67cb25
              int gsl_sf_expint_E1_e (double x, gsl_sf_result * result)
Packit 67cb25
Packit 67cb25
   These routines compute the exponential integral :math:`E_1(x)`,
Packit 67cb25
Packit 67cb25
   .. math:: E_1(x) := \Re \int_1^\infty dt \exp(-xt)/t.
Packit 67cb25
Packit 67cb25
.. Domain: x != 0.0
Packit 67cb25
.. Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW
Packit 67cb25
Packit 67cb25
.. function:: double gsl_sf_expint_E2 (double x)
Packit 67cb25
              int gsl_sf_expint_E2_e (double x, gsl_sf_result * result)
Packit 67cb25
Packit 67cb25
   These routines compute the second-order exponential integral :math:`E_2(x)`,
Packit 67cb25
Packit 67cb25
   .. math:: E_2(x) := \Re \int_1^\infty dt \exp(-xt)/t^2
Packit 67cb25
Packit 67cb25
.. Domain: x != 0.0
Packit 67cb25
.. Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW
Packit 67cb25
Packit 67cb25
.. function:: double gsl_sf_expint_En (int n, double x)
Packit 67cb25
              int gsl_sf_expint_En_e (int n, double x, gsl_sf_result * result)
Packit 67cb25
Packit 67cb25
   These routines compute the exponential integral :math:`E_n(x)` of order :data:`n`, 
Packit 67cb25
Packit 67cb25
   .. math:: E_n(x) := \Re \int_1^\infty dt \exp(-xt)/t^n.
Packit 67cb25
Packit 67cb25
.. Domain: x != 0.0
Packit 67cb25
.. Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW
Packit 67cb25
Packit 67cb25
Ei(x)
Packit 67cb25
-----
Packit 67cb25
Packit 67cb25
.. function:: double gsl_sf_expint_Ei (double x)
Packit 67cb25
              int gsl_sf_expint_Ei_e (double x, gsl_sf_result * result)
Packit 67cb25
Packit 67cb25
   These routines compute the exponential integral :math:`Ei(x)`,
Packit 67cb25
Packit 67cb25
   .. only:: not texinfo
Packit 67cb25
Packit 67cb25
      .. math:: \hbox{Ei}(x) = - PV \left( \int_{-x}^\infty dt \exp(-t)/t \right)
Packit 67cb25
Packit 67cb25
   .. only:: texinfo
Packit 67cb25
Packit 67cb25
      ::
Packit 67cb25
Packit 67cb25
         Ei(x) = - PV(\int_{-x}^\infty dt \exp(-t)/t)
Packit 67cb25
Packit 67cb25
   where :math:`PV` denotes the principal value of the integral.
Packit 67cb25
.. Domain: x != 0.0
Packit 67cb25
.. Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW
Packit 67cb25
Packit 67cb25
Hyperbolic Integrals
Packit 67cb25
--------------------
Packit 67cb25
.. index::
Packit 67cb25
   single: hyperbolic integrals
Packit 67cb25
   single: Shi(x)
Packit 67cb25
   single: Chi(x)
Packit 67cb25
Packit 67cb25
.. function:: double gsl_sf_Shi (double x)
Packit 67cb25
              int gsl_sf_Shi_e (double x, gsl_sf_result * result)
Packit 67cb25
Packit 67cb25
   These routines compute the integral
Packit 67cb25
   
Packit 67cb25
   .. only:: not texinfo
Packit 67cb25
      
Packit 67cb25
      .. math:: \hbox{Shi}(x) = \int_0^x dt \sinh(t)/t
Packit 67cb25
Packit 67cb25
   .. only:: texinfo
Packit 67cb25
Packit 67cb25
      ::
Packit 67cb25
Packit 67cb25
         Shi(x) = \int_0^x dt \sinh(t)/t
Packit 67cb25
Packit 67cb25
.. Exceptional Return Values: GSL_EOVRFLW, GSL_EUNDRFLW
Packit 67cb25
Packit 67cb25
.. function:: double gsl_sf_Chi (double x)
Packit 67cb25
              int gsl_sf_Chi_e (double x, gsl_sf_result * result)
Packit 67cb25
Packit 67cb25
   These routines compute the integral
Packit 67cb25
   
Packit 67cb25
   .. only:: not texinfo
Packit 67cb25
      
Packit 67cb25
      .. math:: \hbox{Chi}(x) := \Re \left[ \gamma_E + \log(x) + \int_0^x dt (\cosh(t)-1)/t \right]
Packit 67cb25
Packit 67cb25
   .. only:: texinfo
Packit 67cb25
Packit 67cb25
      ::
Packit 67cb25
Packit 67cb25
         Chi(x) := \Re[ \gamma_E + \log(x) + \int_0^x dt (\cosh(t)-1)/t ]
Packit 67cb25
Packit 67cb25
   where :math:`\gamma_E` is the Euler constant (available as the macro :macro:`M_EULER`).
Packit 67cb25
.. Domain: x != 0.0
Packit 67cb25
.. Exceptional Return Values: GSL_EDOM, GSL_EOVRFLW, GSL_EUNDRFLW
Packit 67cb25
Packit 67cb25
Ei_3(x)
Packit 67cb25
-------
Packit 67cb25
Packit 67cb25
.. function:: double gsl_sf_expint_3 (double x)
Packit 67cb25
              int gsl_sf_expint_3_e (double x, gsl_sf_result * result)
Packit 67cb25
Packit 67cb25
   These routines compute the third-order exponential integral
Packit 67cb25
   
Packit 67cb25
   .. only:: not texinfo
Packit 67cb25
      
Packit 67cb25
      .. math:: {\rm Ei}_3(x) = \int_0^x dt \exp(-t^3)
Packit 67cb25
Packit 67cb25
   .. only:: texinfo
Packit 67cb25
Packit 67cb25
      ::
Packit 67cb25
Packit 67cb25
         Ei_3(x) = \int_0^x dt \exp(-t^3)`
Packit 67cb25
         
Packit 67cb25
   for :math:`x \ge 0`.
Packit 67cb25
Packit 67cb25
.. Exceptional Return Values: GSL_EDOM
Packit 67cb25
Packit 67cb25
Trigonometric Integrals
Packit 67cb25
-----------------------
Packit 67cb25
.. index::
Packit 67cb25
   single: trigonometric integrals
Packit 67cb25
   single: Si(x)
Packit 67cb25
   single: Ci(x)
Packit 67cb25
Packit 67cb25
.. function:: double gsl_sf_Si (const double x)
Packit 67cb25
              int gsl_sf_Si_e (double x, gsl_sf_result * result)
Packit 67cb25
Packit 67cb25
   These routines compute the Sine integral
Packit 67cb25
   
Packit 67cb25
   .. only:: not texinfo
Packit 67cb25
      
Packit 67cb25
      .. math:: \hbox{Si}(x) = \int_0^x dt \sin(t)/t
Packit 67cb25
Packit 67cb25
   .. only:: texinfo
Packit 67cb25
Packit 67cb25
      ::
Packit 67cb25
Packit 67cb25
         Si(x) = \int_0^x dt \sin(t)/t
Packit 67cb25
Packit 67cb25
.. Exceptional Return Values: none
Packit 67cb25
 
Packit 67cb25
.. function:: double gsl_sf_Ci (const double x)
Packit 67cb25
              int gsl_sf_Ci_e (double x, gsl_sf_result * result)
Packit 67cb25
Packit 67cb25
   These routines compute the Cosine integral
Packit 67cb25
   
Packit 67cb25
   .. only:: not texinfo
Packit 67cb25
      
Packit 67cb25
      .. math:: \hbox{Ci}(x) = -\int_x^\infty dt \cos(t)/t
Packit 67cb25
Packit 67cb25
   .. only:: texinfo
Packit 67cb25
Packit 67cb25
      ::
Packit 67cb25
Packit 67cb25
         Ci(x) = -\int_x^\infty dt \cos(t)/t}
Packit 67cb25
         
Packit 67cb25
   for :math:`x > 0`
Packit 67cb25
.. Domain: x > 0.0
Packit 67cb25
.. Exceptional Return Values: GSL_EDOM
Packit 67cb25
Packit 67cb25
Arctangent Integral
Packit 67cb25
-------------------
Packit 67cb25
.. index::
Packit 67cb25
   single: arctangent integral
Packit 67cb25
Packit 67cb25
.. function:: double gsl_sf_atanint (double x)
Packit 67cb25
              int gsl_sf_atanint_e (double x, gsl_sf_result * result)
Packit 67cb25
Packit 67cb25
   These routines compute the Arctangent integral, which is defined as
Packit 67cb25
   
Packit 67cb25
   .. only:: not texinfo
Packit 67cb25
      
Packit 67cb25
      .. math:: \hbox{AtanInt}(x) = \int_0^x dt \arctan(t)/t
Packit 67cb25
Packit 67cb25
   .. only:: texinfo
Packit 67cb25
Packit 67cb25
      ::
Packit 67cb25
Packit 67cb25
         AtanInt(x) = \int_0^x dt \arctan(t)/t
Packit 67cb25
Packit 67cb25
.. Domain: 
Packit 67cb25
.. Exceptional Return Values: