-
Promoted math constants to be 1st class citizens, including convenient
access to the most widely used built-in float, double, long double via
three namespaces.
-
Added the Owen's T function and Skew Normal distribution written by Benjamin
Sobotta: see Owens T
and skew_normal_distrib.
-
Added Hankel functions cyl_hankel_1,
cyl_hankel_2,
sph_hankel_1
and sph_hankel_2.
-
Corrected issue #6627
nonfinite_num_put formatting of 0.0 is incorrect based on a patch
submitted by K R Walker.
-
Changed constant initialization mechanism so that it is thread safe even
for user-defined types, also so that user defined types get the full
precision of the constant, even when
long
double
does not. So for example
128-bit rational approximations will work with UDT's and do the right
thing, even though long double
may be only 64 or 80 bits.
-
Fixed issue in
bessel_jy
which causes Y8.5(4π) to yield a NaN.
-
Deprecated wrongly named
twothirds
math constant in favour of two_thirds
(with underscore separator). (issue #6199).
-
Refactored test data and some special function code to improve support
for arbitary precision and/or expression-template-enabled types.
-
Added new faster zeta function evaluation method.
Fixed issues:
-
Corrected CDF complement for Laplace distribution (issue #6151).
-
Corrected branch cuts on the complex inverse trig functions, to handle
signed zeros (issue #6171).
-
Fixed bug in
bessel_yn
which caused incorrect overflow errors to be raised for negative n
(issue #6367).
-
Also fixed minor/cosmetic/configuration issues #6120,
#6191,
#5982,
#6130,
#6234,
#6307,
#6192.
-
Added new series evaluation methods to the cyclic Bessel I, J, K and
Y functions. Also taken great care to avoid spurious over and underflow
of these functions. Fixes issue #5560
-
Added an example of using Inverse Chi-Squared distribution for Bayesian
statistics, provided by Thomas Mang.
-
Added tests to use improved version of lexical_cast which handles C99
nonfinites without using globale facets.
-
Corrected wrong out-of-bound uniform distribution CDF complement values
#5733.
-
Enabled long double support on OpenBSD (issue #6014).
-
Changed nextafter and related functions to behave in the same way as
other implementations - so that nextafter(+INF, 0) is a finite value
(issue #5832).
-
Changed tuple include configuration to fix issue when using in conjunction
with Boost.Tr1 (issue #5934).
-
Changed class eps_tolerance to behave correctly when both ends of the
range are zero (issue #6001).
-
Fixed missing include guards on prime.hpp (issue #5927).
-
Removed unused/undocumented constants from constants.hpp (issue #5982).
-
Fixed missing std:: prefix in nonfinite_num_facets.hpp (issue #5914).
-
Minor patches for Cray compiler compatibility.
-
Added changesign function to sign.hpp to facilitate addition of nonfinite
facets.
-
Addition of nonfinite facets from Johan Rade, with tests, examples of
use for C99 format infinity and NaN, and documentation.
-
Added tests and documentation of changesign from Johan Rade.
-
Added Wald, Inverse Gaussian and geometric distributions.
-
Added information about configuration macros.
-
Added support for mpreal as a real-numbered type.
-
Added warnings about potential ambiguity with std random library in distribution
and function names.
-
Added inverse gamma distribution and inverse chi_square and scaled inverse
chi_square.
-
Editorial revision of documentation, and added FAQ.
-
Fixed incorrect range and support for Rayleigh distribution.
-
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.
-
Significantly improved performance for the incomplete gamma function
and its inverse.
-
Added support for MPFR as a bignum type.
-
Added some full specializations of the policy classes to reduce compile
times.
-
Added logistic and hypergeometric distributions, from Gautam Sewani's
Google Summer of Code project.
-
Added Laplace distribution submitted by Thijs van den Berg.
-
Updated performance test code to include new distributions, and improved
the performance of the non-central distributions.
-
Added SSE2 optimised Lanczos
approximation code, from Gautam Sewani's Google Summer of Code
project.
-
Fixed bug in cyl_bessel_i that used an incorrect approximation for ν =
0.5, also effects the non-central Chi Square Distribution when ν = 3, see
bug report #2877.
-
Fixed minor bugs #2873.
-
Added Johan Råde's optimised floating point classification routines.
-
Fixed code so that it compiles in GCC's -pedantic mode (bug report #1451).
-
Improved accuracy and testing of the inverse hypergeometric functions.
-
Added Noncentral Chi Squared Distribution.
-
Added Noncentral Beta Distribution.
-
Added Noncentral F Distribution.
-
Added Noncentral T Distribution.
-
Added Exponential Integral Functions.
-
Added Zeta Function.
-
Added Rounding and Truncation functions.
-
Added Compile time powers of runtime bases.
-
Added SSE2 optimizations for Lanczos evaluation.
-
Added Policy based framework that allows fine grained control over function
behaviour.
-
Breaking change: Changed default behaviour
for domain, pole and overflow errors to throw an exception (based on
review feedback), this behaviour can be customised using Policy's.
-
Breaking change: Changed exception thrown
when an internal evaluation error occurs to boost::math::evaluation_error.
-
Breaking change: 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 Policy's.
-
Polynomial/rational function evaluation is now customisable and hopefully
faster than before.
-
Added performance test program.
-
Moved Xiaogang Zhang's Bessel Functions code into the library, and brought
them into line with the rest of the code.
-
Added C# "Distribution Explorer" demo application.
-
Implemented the main probability distribution and density functions.
-
Implemented digamma.
-
Added more factorial functions.
-
Implemented the Hermite, Legendre and Laguerre polynomials plus the spherical
harmonic functions from TR1.
-
Moved Xiaogang Zhang's elliptic integral code into the library, and brought
them into line with the rest of the code.
-
Moved Hubert Holin's existing Boost.Math special functions into this
library and brought them into line with the rest of the code.
-
Implement preview release of the statistical distributions.
-
Added statistical distributions tutorial.
-
Implemented root finding algorithms.
-
Implemented the inverses of the incomplete gamma and beta functions.
-
Rewrite erf/erfc as rational approximations (valid to 128-bit precision).
-
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.
-
Improved lgamma near 1 and 2 (rational approximations).
-
Improved erf/erfc inverses (rational approximations).
-
Implemented Rational function generation (the Remez method).
-
Implement gamma/beta/erf functions along with their incomplete counterparts.
-
Generate high quality test data, against which future improvements can
be judged.
-
Provide tools for the evaluation of infinite series, continued fractions,
and rational functions.
-
Provide tools for testing against tabulated test data, and collecting
statistics on error rates.
-
Provide sufficient docs for people to be able to find their way around
the library.
SVN Revisions:
Sandbox and trunk last synchonised at revision: .