<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>History and What's New</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="../status.html" title="Library Status">
<link rel="prev" href="../status.html" title="Library Status">
<link rel="next" href="compilers.html" title="Compilers">
</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="../status.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../status.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="compilers.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section" lang="en">
<div class="titlepage"><div><div><h3 class="title">
<a name="math_toolkit.status.history1"></a><a class="link" href="history1.html" title="History and What's New"> History and What's New</a>
</h3></div></div></div>
<p>
        <a name="math_toolkit.status.history1.boost_1_45_0"></a>
        </p>
<h5>
<a name="id1290324"></a>
          <a class="link" href="history1.html#math_toolkit.status.history1.boost_1_45_0">Boost-1.45.0</a>
        </h5>
<p>
        </p>
<div class="itemizedlist"><ul type="disc">
<li>
              Added warnings about potential ambiguity with std random library in
              distribution and function names.
            </li>
<li>
              Added inverse gamma distribution and inverse chi_square and scaled
              inverse chi_square.
            </li>
<li>
              Editorial revision of documentation, and added FAQ.
            </li>
</ul></div>
<p>
        <a name="math_toolkit.status.history1.boost_1_44_0"></a>
        </p>
<h5>
<a name="id1290363"></a>
          <a class="link" href="history1.html#math_toolkit.status.history1.boost_1_44_0">Boost-1.44.0</a>
        </h5>
<p>
        </p>
<div class="itemizedlist"><ul type="disc">
<li>
              Fixed incorrect range and support for Rayleigh distribution.
            </li>
<li>
              Fixed numerical error in the quantile of the Student's T distribution:
              the function was returning garbage values for non-integer degrees of
              freedom between 2 and 3.
            </li>
</ul></div>
<p>
        <a name="math_toolkit.status.history1.boost_1_41_0"></a>
        </p>
<h5>
<a name="id1290394"></a>
          <a class="link" href="history1.html#math_toolkit.status.history1.boost_1_41_0">Boost-1.41.0</a>
        </h5>
<p>
        </p>
<div class="itemizedlist"><ul type="disc"><li>
              Significantly improved performance for the incomplete gamma function
              and its inverse.
            </li></ul></div>
<p>
        <a name="math_toolkit.status.history1.boost_1_40_0"></a>
        </p>
<h5>
<a name="id1290418"></a>
          <a class="link" href="history1.html#math_toolkit.status.history1.boost_1_40_0">Boost-1.40.0</a>
        </h5>
<p>
        </p>
<div class="itemizedlist"><ul type="disc">
<li>
              Added support for MPFR as a bignum type.
            </li>
<li>
              Added some full specializations of the policy classes to reduce compile
              times.
            </li>
<li>
              Added logistic and hypergeometric distributions, from Gautam Sewani's
              Google Summer of Code project.
            </li>
<li>
              Added Laplace distribution submitted by Thijs van den Berg.
            </li>
<li>
              Updated performance test code to include new distributions, and improved
              the performance of the non-central distributions.
            </li>
<li>
              Added SSE2 optimised <a class="link" href="../backgrounders/lanczos.html" title="The Lanczos Approximation">Lanczos
              approximation</a> code, from Gautam Sewani's Google Summer of Code
              project.
            </li>
<li>
              Fixed bug in cyl_bessel_i that used an incorrect approximation for
              &#957; = 0.5, also effects the non-central Chi Square Distribution when &#957; =
              3, see bug report <a href="https://svn.boost.org/trac/boost/ticket/2877" target="_top">#2877</a>.
            </li>
<li>
              Fixed minor bugs <a href="https://svn.boost.org/trac/boost/ticket/2873" target="_top">#2873</a>.
            </li>
</ul></div>
<p>
        <a name="math_toolkit.status.history1.boost_1_38_0"></a>
        </p>
<h5>
<a name="id1290507"></a>
          <a class="link" href="history1.html#math_toolkit.status.history1.boost_1_38_0">Boost-1.38.0</a>
        </h5>
<p>
        </p>
<div class="itemizedlist"><ul type="disc">
<li>
              Added Johan R&#229;de's optimised floating point classification routines.
            </li>
<li>
              Fixed code so that it compiles in GCC's -pedantic mode (bug report
              <a href="https://svn.boost.org/trac/boost/ticket/1451" target="_top">#1451</a>).
            </li>
</ul></div>
<p>
        <a name="math_toolkit.status.history1.boost_1_37_0"></a>
        </p>
<h5>
<a name="id1290543"></a>
          <a class="link" href="history1.html#math_toolkit.status.history1.boost_1_37_0">Boost-1.37.0</a>
        </h5>
<p>
        </p>
<div class="itemizedlist"><ul type="disc"><li>
              Improved accuracy and testing of the inverse hypergeometric functions.
            </li></ul></div>
<p>
        <a name="math_toolkit.status.history1.boost_1_36_0"></a>
        </p>
<h5>
<a name="id1290567"></a>
          <a class="link" href="history1.html#math_toolkit.status.history1.boost_1_36_0">Boost-1.36.0</a>
        </h5>
<p>
        </p>
<div class="itemizedlist"><ul type="disc">
<li>
              Added Noncentral Chi Squared Distribution.
            </li>
<li>
              Added Noncentral Beta Distribution.
            </li>
<li>
              Added Noncentral F Distribution.
            </li>
<li>
              Added Noncentral T Distribution.
            </li>
<li>
              Added Exponential Integral Functions.
            </li>
<li>
              Added Zeta Function.
            </li>
<li>
              Added Rounding and Truncation functions.
            </li>
<li>
              Added Compile time powers of runtime bases.
            </li>
<li>
              Added SSE2 optimizations for Lanczos evaluation.
            </li>
</ul></div>
<p>
        <a name="math_toolkit.status.history1.boost_1_35_0__post_review_first_official_release"></a>
        </p>
<h5>
<a name="id1292582"></a>
          <a class="link" href="history1.html#math_toolkit.status.history1.boost_1_35_0__post_review_first_official_release">Boost-1.35.0:
          Post Review First Official Release</a>
        </h5>
<p>
        </p>
<div class="itemizedlist"><ul type="disc">
<li>
              Added Policy based framework that allows fine grained control over
              function behaviour.
            </li>
<li>
              <span class="bold"><strong>Breaking change:</strong></span> Changed default behaviour
              for domain, pole and overflow errors to throw an exception (based on
              review feedback), this behaviour can be customised using <a class="link" href="../policy.html" title="Policies">Policy</a>'s.
            </li>
<li>
              <span class="bold"><strong>Breaking change:</strong></span> Changed exception
              thrown when an internal evaluation error occurs to boost::math::evaluation_error.
            </li>
<li>
              <span class="bold"><strong>Breaking change:</strong></span> Changed discrete
              quantiles to return an integer result: this is anything up to 20 times
              faster than finding the true root, this behaviour can be customised
              using <a class="link" href="../policy.html" title="Policies">Policy</a>'s.
            </li>
<li>
              Polynomial/rational function evaluation is now customisable and hopefully
              faster than before.
            </li>
<li>
              Added performance test program.
            </li>
</ul></div>
<p>
        <a name="math_toolkit.status.history1.milestone_4__second_review_candidate__1st_march_2007_"></a>
        </p>
<h5>
<a name="id1292669"></a>
          <a class="link" href="history1.html#math_toolkit.status.history1.milestone_4__second_review_candidate__1st_march_2007_">Milestone
          4: Second Review Candidate (1st March 2007)</a>
        </h5>
<p>
        </p>
<div class="itemizedlist"><ul type="disc">
<li>
              Moved Xiaogang Zhang's Bessel Functions code into the library, and
              brought them into line with the rest of the code.
            </li>
<li>
              Added C# "Distribution Explorer" demo application.
            </li>
</ul></div>
<p>
        <a name="math_toolkit.status.history1.milestone_3__first_review_candidate__31st_dec_2006_"></a>
        </p>
<h5>
<a name="id1292701"></a>
          <a class="link" href="history1.html#math_toolkit.status.history1.milestone_3__first_review_candidate__31st_dec_2006_">Milestone
          3: First Review Candidate (31st Dec 2006)</a>
        </h5>
<p>
        </p>
<div class="itemizedlist"><ul type="disc">
<li>
              Implemented the main probability distribution and density functions.
            </li>
<li>
              Implemented digamma.
            </li>
<li>
              Added more factorial functions.
            </li>
<li>
              Implemented the Hermite, Legendre and Laguerre polynomials plus the
              spherical harmonic functions from TR1.
            </li>
<li>
              Moved Xiaogang Zhang's elliptic integral code into the library, and
              brought them into line with the rest of the code.
            </li>
<li>
              Moved Hubert Holin's existing Boost.Math special functions into this
              library and brought them into line with the rest of the code.
            </li>
</ul></div>
<p>
        <a name="math_toolkit.status.history1.milestone_2__released_september_10th_2006"></a>
        </p>
<h5>
<a name="id1292764"></a>
          <a class="link" href="history1.html#math_toolkit.status.history1.milestone_2__released_september_10th_2006">Milestone
          2: Released September 10th 2006</a>
        </h5>
<p>
        </p>
<div class="itemizedlist"><ul type="disc">
<li>
              Implement preview release of the statistical distributions.
            </li>
<li>
              Added statistical distributions tutorial.
            </li>
<li>
              Implemented root finding algorithms.
            </li>
<li>
              Implemented the inverses of the incomplete gamma and beta functions.
            </li>
<li>
              Rewrite erf/erfc as rational approximations (valid to 128-bit precision).
            </li>
<li>
              Integrated the statistical results generated from the test data with
              Boost.Test: uses a database of expected results, indexed by test, floating
              point type, platform, and compiler.
            </li>
<li>
              Improved lgamma near 1 and 2 (rational approximations).
            </li>
<li>
              Improved erf/erfc inverses (rational approximations).
            </li>
<li>
              Implemented Rational function generation (the Remez method).
            </li>
</ul></div>
<p>
        <a name="math_toolkit.status.history1.milestone_1__released_march_31st_2006"></a>
        </p>
<h5>
<a name="id1292845"></a>
          <a class="link" href="history1.html#math_toolkit.status.history1.milestone_1__released_march_31st_2006">Milestone
          1: Released March 31st 2006</a>
        </h5>
<p>
        </p>
<div class="itemizedlist"><ul type="disc">
<li>
              Implement gamma/beta/erf functions along with their incomplete counterparts.
            </li>
<li>
              Generate high quality test data, against which future improvements
              can be judged.
            </li>
<li>
              Provide tools for the evaluation of infinite series, continued fractions,
              and rational functions.
            </li>
<li>
              Provide tools for testing against tabulated test data, and collecting
              statistics on error rates.
            </li>
<li>
              Provide sufficient docs for people to be able to find their way around
              the library.
            </li>
</ul></div>
<p>
        </p>
<p>
          SVN Revisions:
        </p>
<p>
        </p>
<p>
          Sandbox and trunk last synchonised at revision: .
        </p>
<p>
      </p>
</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="../status.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../status.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="compilers.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
