<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Exponential Integral Ei</title>
<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.74.0">
<link rel="home" href="../../../index.html" title="Math Toolkit">
<link rel="up" href="../expint.html" title="Exponential Integrals">
<link rel="prev" href="expint_n.html" title="Exponential Integral En">
<link rel="next" href="../powers.html" title="Logs, Powers, Roots and Exponentials">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../../boost.png"></td>
<td align="center"><a href="../../../../../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="expint_n.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../expint.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../powers.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" lang="en">
<div class="titlepage"><div><div><h4 class="title">
<a name="math_toolkit.special.expint.expint_i"></a><a class="link" href="expint_i.html" title="Exponential Integral Ei"> Exponential
        Integral Ei</a>
</h4></div></div></div>
<a name="math_toolkit.special.expint.expint_i.synopsis"></a><h5>
<a name="id1144541"></a>
          <a class="link" href="expint_i.html#math_toolkit.special.expint.expint_i.synopsis">Synopsis</a>
        </h5>
<p>
          
</p>
<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">math</span><span class="special">/</span><span class="identifier">special_functions</span><span class="special">/</span><span class="identifier">expint</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span>
</pre>
<p>
        </p>
<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">{</span> <span class="keyword">namespace</span> <span class="identifier">math</span><span class="special">{</span>

<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
<a class="link" href="../../main_overview/result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>calculated-result-type</em></span></a> <span class="identifier">expint</span><span class="special">(</span><span class="identifier">T</span> <span class="identifier">z</span><span class="special">);</span>

<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">class</span> <a class="link" href="../../policy.html" title="Policies">Policy</a><span class="special">&gt;</span>
<a class="link" href="../../main_overview/result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>calculated-result-type</em></span></a> <span class="identifier">expint</span><span class="special">(</span><span class="identifier">T</span> <span class="identifier">z</span><span class="special">,</span> <span class="keyword">const</span> <a class="link" href="../../policy.html" title="Policies">Policy</a><span class="special">&amp;);</span>

<span class="special">}}</span> <span class="comment">// namespaces
</span></pre>
<p>
          The return type of these functions is computed using the <a class="link" href="../../main_overview/result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>result
          type calculation rules</em></span></a>: the return type is <code class="computeroutput"><span class="keyword">double</span></code> if T is an integer type, and T otherwise.
        </p>
<p>
          </p>
<p>
            The final <a class="link" href="../../policy.html" title="Policies">Policy</a> argument
            is optional and can be used to control the behaviour of the function:
            how it handles errors, what level of precision to use etc. Refer to the
            <a class="link" href="../../policy.html" title="Policies">policy documentation for more details</a>.
          </p>
<p>
        </p>
<a name="math_toolkit.special.expint.expint_i.description"></a><h5>
<a name="id1144802"></a>
          <a class="link" href="expint_i.html#math_toolkit.special.expint.expint_i.description">Description</a>
        </h5>
<pre class="programlisting"><span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">&gt;</span>
<a class="link" href="../../main_overview/result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>calculated-result-type</em></span></a> <span class="identifier">expint</span><span class="special">(</span><span class="identifier">T</span> <span class="identifier">z</span><span class="special">);</span>

<span class="keyword">template</span> <span class="special">&lt;</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">class</span> <a class="link" href="../../policy.html" title="Policies">Policy</a><span class="special">&gt;</span>
<a class="link" href="../../main_overview/result_type.html" title="Calculation of the Type of the Result"><span class="emphasis"><em>calculated-result-type</em></span></a> <span class="identifier">expint</span><span class="special">(</span><span class="identifier">T</span> <span class="identifier">z</span><span class="special">,</span> <span class="keyword">const</span> <a class="link" href="../../policy.html" title="Policies">Policy</a><span class="special">&amp;);</span>
</pre>
<p>
          Returns the <a href="http://mathworld.wolfram.com/ExponentialIntegral.html" target="_top">exponential
          integral</a> of z:
        </p>
<p>
          <span class="inlinemediaobject"><img src="../../../../equations/expint_i_1.png"></span>
        </p>
<p>
          <span class="inlinemediaobject"><img src="../../../../graphs/expint_i.png" align="middle"></span>
        </p>
<a name="math_toolkit.special.expint.expint_i.accuracy"></a><h5>
<a name="id1145000"></a>
          <a class="link" href="expint_i.html#math_toolkit.special.expint.expint_i.accuracy">Accuracy</a>
        </h5>
<p>
          The following table shows the peak errors (in units of epsilon) found on
          various platforms with various floating point types, along with comparisons
          to Cody's SPECFUN implementation and the <a href="http://www.gnu.org/software/gsl/" target="_top">GSL-1.9</a>
          library. Unless otherwise specified any floating point type that is narrower
          than the one shown will have <a class="link" href="../../backgrounders/relative_error.html#zero_error">effectively zero
          error</a>.
        </p>
<div class="table">
<a name="math_toolkit.special.expint.expint_i.errors_in_the_function_expint_z_"></a><p class="title"><b>Table&#160;46.&#160;Errors In the Function expint(z)</b></p>
<div class="table-contents"><table class="table" summary="Errors In the Function expint(z)">
<colgroup>
<col>
<col>
<col>
</colgroup>
<thead><tr>
<th>
                  <p>
                    Significand Size
                  </p>
                </th>
<th>
                  <p>
                    Platform and Compiler
                  </p>
                </th>
<th>
                  <p>
                    Error
                  </p>
                </th>
</tr></thead>
<tbody>
<tr>
<td>
                  <p>
                    53
                  </p>
                </td>
<td>
                  <p>
                    Win32, Visual C++ 8
                  </p>
                </td>
<td>
                  <p>
                    Peak=2.4 Mean=0.6
                  </p>
                  <p>
                    GSL Peak=8.9 Mean=0.7
                  </p>
                  <p>
                    SPECFUN (Cody) Peak=2.5 Mean=0.6
                  </p>
                </td>
</tr>
<tr>
<td>
                  <p>
                    64
                  </p>
                </td>
<td>
                  <p>
                    RedHat Linux IA_EM64, gcc-4.1
                  </p>
                </td>
<td>
                  <p>
                    Peak=5.1 Mean=0.8
                  </p>
                </td>
</tr>
<tr>
<td>
                  <p>
                    64
                  </p>
                </td>
<td>
                  <p>
                    Redhat Linux IA64, gcc-4.1
                  </p>
                </td>
<td>
                  <p>
                    Peak=5.0 Mean=0.8
                  </p>
                </td>
</tr>
<tr>
<td>
                  <p>
                    113
                  </p>
                </td>
<td>
                  <p>
                    HPUX IA64, aCC A.06.06
                  </p>
                </td>
<td>
                  <p>
                    Peak=1.9 Mean=0.63
                  </p>
                </td>
</tr>
</tbody>
</table></div>
</div>
<br class="table-break"><p>
          It should be noted that all three libraries tested above offer sub-epsilon
          precision over most of their range.
        </p>
<p>
          GSL has the greatest difficulty near the positive root of En, while Cody's
          SPECFUN along with this implementation increase their error rates very
          slightly over the range [4,6].
        </p>
<a name="math_toolkit.special.expint.expint_i.testing"></a><h5>
<a name="id1145199"></a>
          <a class="link" href="expint_i.html#math_toolkit.special.expint.expint_i.testing">Testing</a>
        </h5>
<p>
          The tests for these functions come in two parts: basic sanity checks use
          spot values calculated using <a href="http://functions.wolfram.com/webMathematica/FunctionEvaluation.jsp?name=ExpIntegralEi" target="_top">Mathworld's
          online evaluator</a>, while accuracy checks use high-precision test
          values calculated at 1000-bit precision with <a href="http://shoup.net/ntl/doc/RR.txt" target="_top">NTL::RR</a>
          and this implementation. Note that the generic and type-specific versions
          of these functions use differing implementations internally, so this gives
          us reasonably independent test data. Using our test data to test other
          "known good" implementations also provides an additional sanity
          check.
        </p>
<a name="math_toolkit.special.expint.expint_i.implementation"></a><h5>
<a name="id1145225"></a>
          <a class="link" href="expint_i.html#math_toolkit.special.expint.expint_i.implementation">Implementation</a>
        </h5>
<p>
          For x &lt; 0 this function just calls <a class="link" href="expint_n.html" title="Exponential Integral En">zeta</a>(1,
          -x): which in turn is implemented in terms of rational approximations when
          the type of x has 113 or fewer bits of precision.
        </p>
<p>
          For x &gt; 0 the generic version is implemented using the infinte series:
        </p>
<p>
          <span class="inlinemediaobject"><img src="../../../../equations/expint_i_2.png"></span>
        </p>
<p>
          However, when the precision of the argument type is known at compile time
          and is 113 bits or less, then rational approximations <a class="link" href="../../backgrounders/implementation.html#math_toolkit.backgrounders.implementation.rational_approximations_used">devised
          by JM</a> are used.
        </p>
<p>
          For 0 &lt; z &lt; 6 a root-preserving approximation of the form:
        </p>
<p>
          <span class="inlinemediaobject"><img src="../../../../equations/expint_i_3.png"></span>
        </p>
<p>
          is used, where z<sub>0</sub> is the positive root of the function, and R(z/3 - 1) is
          a minimax rational approximation rescaled so that it is evaluated over
          [-1,1]. Note that while the rational approximation over [0,6] converges
          rapidly to the minimax solution it is rather ill-conditioned in practice.
          Cody and Thacher <sup>[<a name="id1145313" href="#ftn.id1145313" class="footnote">2</a>]</sup> experienced the same issue and converted the polynomials into
          Chebeshev form to ensure stable computation. By experiment we found that
          the polynomials are just as stable in polynomial as Chebyshev form, <span class="emphasis"><em>provided</em></span>
          they are computed over the interval [-1,1].
        </p>
<p>
          Over the a series of intervals [a,b] and [b,INF] the rational approximation
          takes the form:
        </p>
<p>
          <span class="inlinemediaobject"><img src="../../../../equations/expint_i_4.png"></span>
        </p>
<p>
          where <span class="emphasis"><em>c</em></span> is a constant, and R(t) is a minimax solution
          optimised for low absolute error compared to <span class="emphasis"><em>c</em></span>. Variable
          <span class="emphasis"><em>t</em></span> is <code class="computeroutput"><span class="number">1</span><span class="special">/</span><span class="identifier">z</span></code> when
          the range in infinite and <code class="computeroutput"><span class="number">2</span><span class="identifier">z</span><span class="special">/(</span><span class="identifier">b</span><span class="special">-</span><span class="identifier">a</span><span class="special">)</span>
          <span class="special">-</span> <span class="special">(</span><span class="number">2</span><span class="identifier">a</span><span class="special">/(</span><span class="identifier">b</span><span class="special">-</span><span class="identifier">a</span><span class="special">)</span> <span class="special">+</span> <span class="number">1</span><span class="special">)</span></code> otherwise: this has the effect of scaling
          z to the interval [-1,1]. As before rational approximations over arbitrary
          intervals were found to be ill-conditioned: Cody and Thacher solved this
          issue by converting the polynomials to their J-Fraction equivalent. However,
          as long as the interval of evaluation was [-1,1] and the number of terms
          carefully chosen, it was found that the polynomials <span class="emphasis"><em>could</em></span>
          be evaluated to suitable precision: error rates are typically 2 to 3 epsilon
          which is comparible to the error rate that Cody and Thacher achieved using
          J-Fractions, but marginally more efficient given that fewer divisions are
          involved.
        </p>
<div class="footnotes">
<br><hr width="100" align="left">
<div class="footnote"><p><sup>[<a name="ftn.id1145313" href="#id1145313" class="para">2</a>] </sup>
            W. J. Cody and H. C. Thacher, Jr., Rational Chebyshev approximations
            for the exponential integral E<sub>1</sub>(x), Math. Comp. 22 (1968), 641-649, and
            W. J. Cody and H. C. Thacher, Jr., Chebyshev approximations for the exponential
            integral Ei(x), Math. Comp. 23 (1969), 289-303.
          </p></div>
</div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2006 , 2007, 2008, 2009, 2010 John Maddock, Paul A. Bristow,
      Hubert Holin, Xiaogang Zhang, Bruno Lalande, Johan R&#229;de, Gautam Sewani and
      Thijs van den Berg<p>
        Distributed under the Boost Software License, Version 1.0. (See accompanying
        file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
      </p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="expint_n.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../expint.html"><img src="../../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../../index.html"><img src="../../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../powers.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
