blob: 69982aeb4ee06d912d25e7dbad310e91fe6fc538 [file] [log] [blame]
[section:intro About the Math Toolkit]
This library is divided into three interconnected parts:
[h4 Statistical Distributions]
Provides a reasonably comprehensive set of
[link math_toolkit.dist statistical distributions],
upon which higher level statistical tests can be built.
The initial focus is on the central
[@http://en.wikipedia.org/wiki/Univariate univariate ]
[@http://mathworld.wolfram.com/StatisticalDistribution.html distributions].
Both [@http://mathworld.wolfram.com/ContinuousDistribution.html continuous]
(like [link math_toolkit.dist.dist_ref.dists.normal_dist normal]
& [link math_toolkit.dist.dist_ref.dists.f_dist Fisher])
and [@http://mathworld.wolfram.com/DiscreteDistribution.html discrete]
(like [link math_toolkit.dist.dist_ref.dists.binomial_dist binomial]
& [link math_toolkit.dist.dist_ref.dists.poisson_dist Poisson])
distributions are provided.
A [link math_toolkit.dist.stat_tut comprehensive tutorial is provided],
along with a series of
[link math_toolkit.dist.stat_tut.weg worked examples] illustrating
how the library is used to conduct statistical tests.
[h4 Mathematical Special Functions]
Provides a small number of high quality
[link math_toolkit.special special functions],
initially these were concentrated on functions used in statistical applications
along with those in the [tr1].
The function families currently implemented are the gamma, beta & erf functions
along with the incomplete gamma and beta functions (four variants
of each) and all the possible inverses of these, plus digamma,
various factorial functions,
Bessel functions, elliptic integrals, sinus cardinals (along with their
hyperbolic variants), inverse hyperbolic functions, Legrendre/Laguerre/Hermite
polynomials and various
special power and logarithmic functions.
All the implementations
are fully generic and support the use of arbitrary "real-number" types,
although they are optimised for use with types with known-about
[@http://en.wikipedia.org/wiki/Significand significand (or mantissa)]
sizes: typically `float`, `double` or `long double`.
[h4 Implementation Toolkit]
Provides [link math_toolkit.toolkit many of the tools] required to implement
mathematical special functions: hopefully the presence of
these will encourage other authors to contribute more special
function implementations in the future. These tools are currently
considered experimental: they are "exposed implementation details"
whose interfaces and\/or implementations may change.
There are helpers for the
[link math_toolkit.toolkit.internals1.series_evaluation
evaluation of infinite series],
[link math_toolkit.toolkit.internals1.cf continued
fractions] and [link math_toolkit.toolkit.internals1.rational
rational approximations].
There is a fairly comprehensive set of root finding and
[link math_toolkit.toolkit.internals1.minima function minimisation
algorithms]: the root finding algorithms are both
[link math_toolkit.toolkit.internals1.roots with] and
[link math_toolkit.toolkit.internals1.roots2 without] derivative support.
A [link math_toolkit.toolkit.internals2.minimax
Remez algorithm implementation] allows for the locating of minimax rational
approximations.
There are also (experimental) classes for the
[link math_toolkit.toolkit.internals2.polynomials manipulation of polynomials], for
[link math_toolkit.toolkit.internals2.error_test
testing a special function against tabulated test data], and for
the [link math_toolkit.toolkit.internals2.test_data
rapid generation of test data] and/or data for output to an
external graphing application.
[endsect] [/section:intro Introduction]
[/
Copyright 2006 John Maddock and Paul A. Bristow.
Distributed under the Boost Software License, Version 1.0.
(See accompanying file LICENSE_1_0.txt or copy at
http://www.boost.org/LICENSE_1_0.txt).
]