mirror of
https://github.com/boostorg/math.git
synced 2026-01-19 04:22:09 +00:00
Prep for 1.77:
Rework hypergeometric distro equations. Fix up Fibonacci docs. Fix Fibonacci constexpr and noexcept usage and add to testing. Regenerate docs.
This commit is contained in:
@@ -229,18 +229,24 @@ gives the required CDF.
|
||||
The median is simply the quantile at 0.5, and the remaining properties are
|
||||
calculated via:
|
||||
|
||||
[equation hypergeometric6]
|
||||
[/
|
||||
Requires amsmath and mathtools:
|
||||
|
||||
\DeclarePairedDelimiter{\floor}{\lfloor}{\rfloor}
|
||||
\begin{equation*}
|
||||
\begin{split}
|
||||
mean & = \frac{rn}{N} \\
|
||||
mode & = \floor*{ \frac{(r+1)(n+1)}{N+2} }\\
|
||||
variance & = \frac{r(\frac{n}{N})(1-\frac{n}{N})(N-r)}{(N-1)}\\
|
||||
skewness & = \frac{(N-2n)\sqrt{(N-1)}(N-2r)}{\sqrt{rn(N-n)(N-r)}(N-2)}\\
|
||||
kertosis\:excess & = \frac{(N-1)N^2(N(N+1)-6r(N-r)-6n(N-n)+6nr(N-r)(N-n)(5N-6)}{nr(N-r)(N-n)(N-2)(N-3)}
|
||||
\end{split}
|
||||
\end{equation*}
|
||||
|
||||
[note The kurtosis formula above is not quite correct and kurtosis excess is now calculated
|
||||
from
|
||||
[@https://www.wolframalpha.com/input/?i=kurtosis+hypergeometric+distribution Wolfram Alpha hypergeometric distribution kurtosis].
|
||||
(The hypergeometric distribution kurtosis excess is mentioned in
|
||||
[@https://mathworld.wolfram.com/HypergeometricDistribution.html Wolfram Hypergeometric distribution]
|
||||
but coyly only described as ['\"the kurtosis excess is given by a complicated expression.\"]).
|
||||
This has been found numerically equivalent to the
|
||||
[@https://en.wikipedia.org/wiki/Hypergeometric_distribution Wikipedia hypergeometric kurtosis excess formula].
|
||||
]
|
||||
|
||||
[equation hypergeometric6]
|
||||
|
||||
[endsect]
|
||||
|
||||
[/ hypergeometric.qbk
|
||||
|
||||
File diff suppressed because one or more lines are too long
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 57 KiB |
@@ -134,7 +134,7 @@ This manual is also available in <a href="http://sourceforge.net/projects/boost/
|
||||
</div>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
<td align="left"><p><small>Last revised: June 16, 2021 at 10:35:24 GMT</small></p></td>
|
||||
<td align="left"><p><small>Last revised: June 27, 2021 at 18:26:02 GMT</small></p></td>
|
||||
<td align="right"><div class="copyright-footer"></div></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
<a name="id2124353"></a>Function Index</h2></div></div></div>
|
||||
<a name="id2043453"></a>Function Index</h2></div></div></div>
|
||||
<p><a class="link" href="s01.html#idx_id_0">1</a> <a class="link" href="s01.html#idx_id_1">2</a> <a class="link" href="s01.html#idx_id_2">4</a> <a class="link" href="s01.html#idx_id_5">A</a> <a class="link" href="s01.html#idx_id_6">B</a> <a class="link" href="s01.html#idx_id_7">C</a> <a class="link" href="s01.html#idx_id_8">D</a> <a class="link" href="s01.html#idx_id_9">E</a> <a class="link" href="s01.html#idx_id_10">F</a> <a class="link" href="s01.html#idx_id_11">G</a> <a class="link" href="s01.html#idx_id_12">H</a> <a class="link" href="s01.html#idx_id_13">I</a> <a class="link" href="s01.html#idx_id_14">J</a> <a class="link" href="s01.html#idx_id_15">K</a> <a class="link" href="s01.html#idx_id_16">L</a> <a class="link" href="s01.html#idx_id_17">M</a> <a class="link" href="s01.html#idx_id_18">N</a> <a class="link" href="s01.html#idx_id_19">O</a> <a class="link" href="s01.html#idx_id_20">P</a> <a class="link" href="s01.html#idx_id_21">Q</a> <a class="link" href="s01.html#idx_id_22">R</a> <a class="link" href="s01.html#idx_id_23">S</a> <a class="link" href="s01.html#idx_id_24">T</a> <a class="link" href="s01.html#idx_id_25">U</a> <a class="link" href="s01.html#idx_id_26">V</a> <a class="link" href="s01.html#idx_id_27">W</a> <a class="link" href="s01.html#idx_id_28">X</a> <a class="link" href="s01.html#idx_id_29">Y</a> <a class="link" href="s01.html#idx_id_30">Z</a></p>
|
||||
<div class="variablelist"><dl class="variablelist">
|
||||
<dt>
|
||||
@@ -123,6 +123,10 @@
|
||||
</ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">addition</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">Fibonacci Numbers</span></a></p></li></ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">add_fn</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/ulps_plots.html" title="ULPs Plots"><span class="index-entry-level-1">ULPs Plots</span></a></p></li></ul></div>
|
||||
</li>
|
||||
@@ -277,7 +281,10 @@
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">at</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/sf_implementation.html" title="Additional Implementation Notes"><span class="index-entry-level-1">Additional Implementation Notes</span></a></p></li></ul></div>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; ">
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/sf_implementation.html" title="Additional Implementation Notes"><span class="index-entry-level-1">Additional Implementation Notes</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bilinear_uniform.html" title="Bilinear Uniform Interpolation"><span class="index-entry-level-1">Bilinear Uniform Interpolation</span></a></p></li>
|
||||
</ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">atanh</span></p>
|
||||
@@ -1320,6 +1327,10 @@
|
||||
</ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">fibonacci</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">Fibonacci Numbers</span></a></p></li></ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">find_alpha</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/dist_ref/dists/beta_dist.html" title="Beta Distribution"><span class="index-entry-level-1">Beta Distribution</span></a></p></li></ul></div>
|
||||
</li>
|
||||
@@ -2060,6 +2071,7 @@
|
||||
<div class="index"><ul class="index" style="list-style-type: none; ">
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/root_finding_examples/elliptic_eg.html" title="A More complex example - Inverting the Elliptic Integrals"><span class="index-entry-level-1">A More complex example - Inverting the Elliptic Integrals</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/internals/agm.html" title="Arithmetic-Geometric Mean"><span class="index-entry-level-1">Arithmetic-Geometric Mean</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bilinear_uniform.html" title="Bilinear Uniform Interpolation"><span class="index-entry-level-1">Bilinear Uniform Interpolation</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/sf_poly/cardinal_b_splines.html" title="Cardinal B-splines"><span class="index-entry-level-1">Cardinal B-splines</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/catmull_rom.html" title="Catmull-Rom Splines"><span class="index-entry-level-1">Catmull-Rom Splines</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/ellint/ellint_intro.html" title="Elliptic Integral Overview"><span class="index-entry-level-1">Elliptic Integral Overview</span></a></p></li>
|
||||
@@ -2502,10 +2514,6 @@
|
||||
</ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">means</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/stat_tut/weg/f_eg.html" title="F Distribution Examples"><span class="index-entry-level-1">F Distribution Examples</span></a></p></li></ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">means_and_covariance</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bivariate_statistics.html" title="Bivariate Statistics"><span class="index-entry-level-1">Bivariate Statistics</span></a></p></li></ul></div>
|
||||
</li>
|
||||
@@ -2720,6 +2728,7 @@
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/autodiff.html" title="Automatic Differentiation"><span class="index-entry-level-1">Automatic Differentiation</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bessel/bessel_first.html" title="Bessel Functions of the First and Second Kinds"><span class="index-entry-level-1">Bessel Functions of the First and Second Kinds</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/dist_ref/dists/empirical_cdf.html" title="Empirical Cumulative Distribution Function"><span class="index-entry-level-1">Empirical Cumulative Distribution Function</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">Fibonacci Numbers</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/diff0.html" title="Lanczos Smoothing Derivatives"><span class="index-entry-level-1">Lanczos Smoothing Derivatives</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bessel/mbessel.html" title="Modified Bessel Functions of the First and Second Kinds"><span class="index-entry-level-1">Modified Bessel Functions of the First and Second Kinds</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/double_exponential/de_tanh_sinh.html" title="tanh_sinh"><span class="index-entry-level-1">tanh_sinh</span></a></p></li>
|
||||
@@ -2765,6 +2774,7 @@
|
||||
<div class="index"><ul class="index" style="list-style-type: none; ">
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/root_finding_examples/elliptic_eg.html" title="A More complex example - Inverting the Elliptic Integrals"><span class="index-entry-level-1">A More complex example - Inverting the Elliptic Integrals</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/barycentric.html" title="Barycentric Rational Interpolation"><span class="index-entry-level-1">Barycentric Rational Interpolation</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bilinear_uniform.html" title="Bilinear Uniform Interpolation"><span class="index-entry-level-1">Bilinear Uniform Interpolation</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/cardinal_cubic_b.html" title="Cardinal Cubic B-spline interpolation"><span class="index-entry-level-1">Cardinal Cubic B-spline interpolation</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/cardinal_quadratic_b.html" title="Cardinal Quadratic B-spline interpolation"><span class="index-entry-level-1">Cardinal Quadratic B-spline interpolation</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/cardinal_quintic_b.html" title="Cardinal Quintic B-spline interpolation"><span class="index-entry-level-1">Cardinal Quintic B-spline interpolation</span></a></p></li>
|
||||
@@ -2778,6 +2788,7 @@
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/cubic_hermite.html" title="Cubic Hermite interpolation"><span class="index-entry-level-1">Cubic Hermite interpolation</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/daubechies.html" title="Daubechies Wavelets and Scaling Functions"><span class="index-entry-level-1">Daubechies Wavelets and Scaling Functions</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/dist_ref/dists/empirical_cdf.html" title="Empirical Cumulative Distribution Function"><span class="index-entry-level-1">Empirical Cumulative Distribution Function</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">Fibonacci Numbers</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/root_finding_examples/cbrt_eg.html" title="Finding the Cubed Root With and Without Derivatives"><span class="index-entry-level-1">Finding the Cubed Root With and Without Derivatives</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/root_finding_examples/nth_root.html" title="Generalizing to Compute the nth root"><span class="index-entry-level-1">Generalizing to Compute the nth root</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/internals/test_data.html" title="Graphing, Profiling, and Generating Test Data for Special Functions"><span class="index-entry-level-1">Graphing, Profiling, and Generating Test Data for Special Functions</span></a></p></li>
|
||||
@@ -3243,6 +3254,13 @@
|
||||
</ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">set</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; ">
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">Fibonacci Numbers</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/fp_facets/reference.html" title="Reference"><span class="index-entry-level-1">Reference</span></a></p></li>
|
||||
</ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">set_zero</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/polynomials.html" title="Polynomials"><span class="index-entry-level-1">Polynomials</span></a></p></li></ul></div>
|
||||
</li>
|
||||
@@ -3631,6 +3649,10 @@
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/factorials/sf_factorial.html" title="Factorial"><span class="index-entry-level-1">Factorial</span></a></p></li></ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">unchecked_fibonacci</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">Fibonacci Numbers</span></a></p></li></ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">unreal</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; ">
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/oct_mem_fun.html" title="Octonion Member Functions"><span class="index-entry-level-1">Octonion Member Functions</span></a></p></li>
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
<a name="id2155303"></a>Class Index</h2></div></div></div>
|
||||
<a name="id2073346"></a>Class Index</h2></div></div></div>
|
||||
<p><a class="link" href="s02.html#idx_id_36">A</a> <a class="link" href="s02.html#idx_id_37">B</a> <a class="link" href="s02.html#idx_id_38">C</a> <a class="link" href="s02.html#idx_id_39">D</a> <a class="link" href="s02.html#idx_id_40">E</a> <a class="link" href="s02.html#idx_id_41">F</a> <a class="link" href="s02.html#idx_id_42">G</a> <a class="link" href="s02.html#idx_id_43">H</a> <a class="link" href="s02.html#idx_id_44">I</a> <a class="link" href="s02.html#idx_id_46">K</a> <a class="link" href="s02.html#idx_id_47">L</a> <a class="link" href="s02.html#idx_id_48">M</a> <a class="link" href="s02.html#idx_id_49">N</a> <a class="link" href="s02.html#idx_id_50">O</a> <a class="link" href="s02.html#idx_id_51">P</a> <a class="link" href="s02.html#idx_id_52">Q</a> <a class="link" href="s02.html#idx_id_53">R</a> <a class="link" href="s02.html#idx_id_54">S</a> <a class="link" href="s02.html#idx_id_55">T</a> <a class="link" href="s02.html#idx_id_56">U</a> <a class="link" href="s02.html#idx_id_57">V</a> <a class="link" href="s02.html#idx_id_58">W</a></p>
|
||||
<div class="variablelist"><dl class="variablelist">
|
||||
<dt>
|
||||
@@ -45,6 +45,10 @@
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/dist_ref/dists/bernoulli_dist.html" title="Bernoulli Distribution"><span class="index-entry-level-0">bernoulli_distribution</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/dist_ref/dists/beta_dist.html" title="Beta Distribution"><span class="index-entry-level-0">beta_distribution</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">bilinear_uniform</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bilinear_uniform.html" title="Bilinear Uniform Interpolation"><span class="index-entry-level-1">Bilinear Uniform Interpolation</span></a></p></li></ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/dist_ref/dists/binomial_dist.html" title="Binomial Distribution"><span class="index-entry-level-0">binomial_distribution</span></a></p></li>
|
||||
</ul></div></dd>
|
||||
<dt>
|
||||
@@ -182,6 +186,10 @@
|
||||
</dt>
|
||||
<dd><div class="index"><ul class="index" style="list-style-type: none; ">
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">fibonacci_generator</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">Fibonacci Numbers</span></a></p></li></ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">fisher_f_distribution</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/dist_ref/dists/f_dist.html" title="F Distribution"><span class="index-entry-level-1">F Distribution</span></a></p></li></ul></div>
|
||||
</li>
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
<a name="id2159548"></a>Typedef Index</h2></div></div></div>
|
||||
<a name="id2076117"></a>Typedef Index</h2></div></div></div>
|
||||
<p><a class="link" href="s03.html#idx_id_67">A</a> <a class="link" href="s03.html#idx_id_68">B</a> <a class="link" href="s03.html#idx_id_69">C</a> <a class="link" href="s03.html#idx_id_70">D</a> <a class="link" href="s03.html#idx_id_71">E</a> <a class="link" href="s03.html#idx_id_72">F</a> <a class="link" href="s03.html#idx_id_73">G</a> <a class="link" href="s03.html#idx_id_74">H</a> <a class="link" href="s03.html#idx_id_75">I</a> <a class="link" href="s03.html#idx_id_77">K</a> <a class="link" href="s03.html#idx_id_78">L</a> <a class="link" href="s03.html#idx_id_80">N</a> <a class="link" href="s03.html#idx_id_82">P</a> <a class="link" href="s03.html#idx_id_84">R</a> <a class="link" href="s03.html#idx_id_85">S</a> <a class="link" href="s03.html#idx_id_86">T</a> <a class="link" href="s03.html#idx_id_87">U</a> <a class="link" href="s03.html#idx_id_88">V</a> <a class="link" href="s03.html#idx_id_89">W</a></p>
|
||||
<div class="variablelist"><dl class="variablelist">
|
||||
<dt>
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
<a name="id2161564"></a>Macro Index</h2></div></div></div>
|
||||
<a name="id2080410"></a>Macro Index</h2></div></div></div>
|
||||
<p><a class="link" href="s04.html#idx_id_99">B</a> <a class="link" href="s04.html#idx_id_103">F</a></p>
|
||||
<div class="variablelist"><dl class="variablelist">
|
||||
<dt>
|
||||
@@ -308,6 +308,7 @@
|
||||
<p><span class="index-entry-level-0">BOOST_MATH_STANDALONE</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; ">
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/error_handling.html" title="Error Handling"><span class="index-entry-level-1">Error Handling</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/history1.html" title="History and What's New"><span class="index-entry-level-1">History and What's New</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/special_tut/special_tut_test.html" title="Testing"><span class="index-entry-level-1">Testing</span></a></p></li>
|
||||
</ul></div>
|
||||
</li>
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
<a name="id2163136"></a>Index</h2></div></div></div>
|
||||
<a name="id2083271"></a>Index</h2></div></div></div>
|
||||
<p><a class="link" href="s05.html#idx_id_124">1</a> <a class="link" href="s05.html#idx_id_125">2</a> <a class="link" href="s05.html#idx_id_126">4</a> <a class="link" href="s05.html#idx_id_127">5</a> <a class="link" href="s05.html#idx_id_128">7</a> <a class="link" href="s05.html#idx_id_129">A</a> <a class="link" href="s05.html#idx_id_130">B</a> <a class="link" href="s05.html#idx_id_131">C</a> <a class="link" href="s05.html#idx_id_132">D</a> <a class="link" href="s05.html#idx_id_133">E</a> <a class="link" href="s05.html#idx_id_134">F</a> <a class="link" href="s05.html#idx_id_135">G</a> <a class="link" href="s05.html#idx_id_136">H</a> <a class="link" href="s05.html#idx_id_137">I</a> <a class="link" href="s05.html#idx_id_138">J</a> <a class="link" href="s05.html#idx_id_139">K</a> <a class="link" href="s05.html#idx_id_140">L</a> <a class="link" href="s05.html#idx_id_141">M</a> <a class="link" href="s05.html#idx_id_142">N</a> <a class="link" href="s05.html#idx_id_143">O</a> <a class="link" href="s05.html#idx_id_144">P</a> <a class="link" href="s05.html#idx_id_145">Q</a> <a class="link" href="s05.html#idx_id_146">R</a> <a class="link" href="s05.html#idx_id_147">S</a> <a class="link" href="s05.html#idx_id_148">T</a> <a class="link" href="s05.html#idx_id_149">U</a> <a class="link" href="s05.html#idx_id_150">V</a> <a class="link" href="s05.html#idx_id_151">W</a> <a class="link" href="s05.html#idx_id_152">X</a> <a class="link" href="s05.html#idx_id_153">Y</a> <a class="link" href="s05.html#idx_id_154">Z</a></p>
|
||||
<div class="variablelist"><dl class="variablelist">
|
||||
<dt>
|
||||
@@ -375,6 +375,10 @@
|
||||
</ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">addition</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">Fibonacci Numbers</span></a></p></li></ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">add_fn</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/ulps_plots.html" title="ULPs Plots"><span class="index-entry-level-1">ULPs Plots</span></a></p></li></ul></div>
|
||||
</li>
|
||||
@@ -612,7 +616,10 @@
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">at</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/sf_implementation.html" title="Additional Implementation Notes"><span class="index-entry-level-1">Additional Implementation Notes</span></a></p></li></ul></div>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; ">
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/sf_implementation.html" title="Additional Implementation Notes"><span class="index-entry-level-1">Additional Implementation Notes</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bilinear_uniform.html" title="Bilinear Uniform Interpolation"><span class="index-entry-level-1">Bilinear Uniform Interpolation</span></a></p></li>
|
||||
</ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">atanh</span></p>
|
||||
@@ -818,6 +825,22 @@
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/dist_ref/dists/beta_dist.html" title="Beta Distribution"><span class="index-entry-level-0">beta_distribution</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">Bilinear Uniform Interpolation</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; ">
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bilinear_uniform.html" title="Bilinear Uniform Interpolation"><span class="index-entry-level-1">at</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bilinear_uniform.html" title="Bilinear Uniform Interpolation"><span class="index-entry-level-1">bilinear_uniform</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bilinear_uniform.html" title="Bilinear Uniform Interpolation"><span class="index-entry-level-1">constants</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bilinear_uniform.html" title="Bilinear Uniform Interpolation"><span class="index-entry-level-1">interpolation</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bilinear_uniform.html" title="Bilinear Uniform Interpolation"><span class="index-entry-level-1">K</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bilinear_uniform.html" title="Bilinear Uniform Interpolation"><span class="index-entry-level-1">operator</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bilinear_uniform.html" title="Bilinear Uniform Interpolation"><span class="index-entry-level-1">performance</span></a></p></li>
|
||||
</ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">bilinear_uniform</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bilinear_uniform.html" title="Bilinear Uniform Interpolation"><span class="index-entry-level-1">Bilinear Uniform Interpolation</span></a></p></li></ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">binomial</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/dist_ref/dists/binomial_dist.html" title="Binomial Distribution"><span class="index-entry-level-1">Binomial Distribution</span></a></p></li></ul></div>
|
||||
</li>
|
||||
@@ -1221,6 +1244,7 @@
|
||||
<p><span class="index-entry-level-0">BOOST_MATH_STANDALONE</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; ">
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/error_handling.html" title="Error Handling"><span class="index-entry-level-1">Error Handling</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/history1.html" title="History and What's New"><span class="index-entry-level-1">History and What's New</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/special_tut/special_tut_test.html" title="Testing"><span class="index-entry-level-1">Testing</span></a></p></li>
|
||||
</ul></div>
|
||||
</li>
|
||||
@@ -2404,6 +2428,7 @@
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/internals/agm.html" title="Arithmetic-Geometric Mean"><span class="index-entry-level-1">Arithmetic-Geometric Mean</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/autodiff.html" title="Automatic Differentiation"><span class="index-entry-level-1">Automatic Differentiation</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/barycentric.html" title="Barycentric Rational Interpolation"><span class="index-entry-level-1">Barycentric Rational Interpolation</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bilinear_uniform.html" title="Bilinear Uniform Interpolation"><span class="index-entry-level-1">Bilinear Uniform Interpolation</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/dist_ref/dists/binomial_dist.html" title="Binomial Distribution"><span class="index-entry-level-1">Binomial Distribution</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/stat_tut/weg/binom_eg/binomial_quiz_example.html" title="Binomial Quiz Example"><span class="index-entry-level-1">Binomial Quiz Example</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bivariate_statistics.html" title="Bivariate Statistics"><span class="index-entry-level-1">Bivariate Statistics</span></a></p></li>
|
||||
@@ -2430,6 +2455,7 @@
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/expint/expint_i.html" title="Exponential Integral Ei"><span class="index-entry-level-1">Exponential Integral Ei</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/dist_ref/dists/extreme_dist.html" title="Extreme Value Distribution"><span class="index-entry-level-1">Extreme Value Distribution</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/factorials/sf_factorial.html" title="Factorial"><span class="index-entry-level-1">Factorial</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">Fibonacci Numbers</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/macros.html" title="Floating-Point Constant Macros"><span class="index-entry-level-1">Floating-Point Constant Macros</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/gauss_kronrod.html" title="Gauss-Kronrod Quadrature"><span class="index-entry-level-1">Gauss-Kronrod Quadrature</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/gauss.html" title="Gauss-Legendre quadrature"><span class="index-entry-level-1">Gauss-Legendre quadrature</span></a></p></li>
|
||||
@@ -4142,6 +4168,7 @@
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/ellint/ellint_intro.html" title="Elliptic Integral Overview"><span class="index-entry-level-1">Elliptic Integral Overview</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/dist_ref/dists/f_dist.html" title="F Distribution"><span class="index-entry-level-1">F Distribution</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/factorials/sf_factorial.html" title="Factorial"><span class="index-entry-level-1">Factorial</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">Fibonacci Numbers</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/stat_tut/weg/find_eg/find_scale_eg.html" title="Find Scale (Standard Deviation) Example"><span class="index-entry-level-1">Find Scale (Standard Deviation) Example</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bessel/bessel_root.html" title="Finding Zeros of Bessel Functions of the First and Second Kinds"><span class="index-entry-level-1">Finding Zeros of Bessel Functions of the First and Second Kinds</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/dist_ref/dists/gamma_dist.html" title="Gamma (and Erlang) Distribution"><span class="index-entry-level-1">Gamma (and Erlang) Distribution</span></a></p></li>
|
||||
@@ -4232,10 +4259,6 @@
|
||||
</ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">F Distribution Examples</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/stat_tut/weg/f_eg.html" title="F Distribution Examples"><span class="index-entry-level-1">means</span></a></p></li></ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">Facets for Floating-Point Infinities and NaNs</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; ">
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/fp_facets.html" title="Facets for Floating-Point Infinities and NaNs"><span class="index-entry-level-1">nonfinite_num_get</span></a></p></li>
|
||||
@@ -4303,6 +4326,29 @@
|
||||
</ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">fibonacci</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">Fibonacci Numbers</span></a></p></li></ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">Fibonacci Numbers</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; ">
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">addition</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">constants</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">expression</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">fibonacci</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">fibonacci_generator</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">multiprecision</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">O</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">operator</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">set</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">unchecked_fibonacci</span></a></p></li>
|
||||
</ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">fibonacci_generator</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">Fibonacci Numbers</span></a></p></li></ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">file</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; ">
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/directories.html" title="Directory and File Structure"><span class="index-entry-level-1">Directory and File Structure</span></a></p></li>
|
||||
@@ -5129,6 +5175,7 @@
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/history1.html" title="History and What's New"><span class="index-entry-level-1">2</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/history1.html" title="History and What's New"><span class="index-entry-level-1">accuracy</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/history1.html" title="History and What's New"><span class="index-entry-level-1">airy_bi_zero</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/history1.html" title="History and What's New"><span class="index-entry-level-1">BOOST_MATH_STANDALONE</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/history1.html" title="History and What's New"><span class="index-entry-level-1">bug</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/history1.html" title="History and What's New"><span class="index-entry-level-1">constants</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/history1.html" title="History and What's New"><span class="index-entry-level-1">cpp_dec_float</span></a></p></li>
|
||||
@@ -5588,6 +5635,7 @@
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/main_intro.html" title="About the Math Toolkit"><span class="index-entry-level-1">About the Math Toolkit</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/roots_noderiv/TOMS748.html" title="Algorithm TOMS 748: Alefeld, Potra and Shi: Enclosing zeros of continuous functions"><span class="index-entry-level-1">Algorithm TOMS 748: Alefeld, Potra and Shi: Enclosing zeros of continuous functions</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/barycentric.html" title="Barycentric Rational Interpolation"><span class="index-entry-level-1">Barycentric Rational Interpolation</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bilinear_uniform.html" title="Bilinear Uniform Interpolation"><span class="index-entry-level-1">Bilinear Uniform Interpolation</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/sf_poly/cardinal_b_splines.html" title="Cardinal B-splines"><span class="index-entry-level-1">Cardinal B-splines</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/cardinal_cubic_b.html" title="Cardinal Cubic B-spline interpolation"><span class="index-entry-level-1">Cardinal Cubic B-spline interpolation</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/cardinal_quadratic_b.html" title="Cardinal Quadratic B-spline interpolation"><span class="index-entry-level-1">Cardinal Quadratic B-spline interpolation</span></a></p></li>
|
||||
@@ -6016,6 +6064,7 @@
|
||||
<div class="index"><ul class="index" style="list-style-type: none; ">
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/root_finding_examples/elliptic_eg.html" title="A More complex example - Inverting the Elliptic Integrals"><span class="index-entry-level-1">A More complex example - Inverting the Elliptic Integrals</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/internals/agm.html" title="Arithmetic-Geometric Mean"><span class="index-entry-level-1">Arithmetic-Geometric Mean</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bilinear_uniform.html" title="Bilinear Uniform Interpolation"><span class="index-entry-level-1">Bilinear Uniform Interpolation</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/sf_poly/cardinal_b_splines.html" title="Cardinal B-splines"><span class="index-entry-level-1">Cardinal B-splines</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/catmull_rom.html" title="Catmull-Rom Splines"><span class="index-entry-level-1">Catmull-Rom Splines</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/ellint/ellint_intro.html" title="Elliptic Integral Overview"><span class="index-entry-level-1">Elliptic Integral Overview</span></a></p></li>
|
||||
@@ -6770,10 +6819,6 @@
|
||||
</ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">means</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/stat_tut/weg/f_eg.html" title="F Distribution Examples"><span class="index-entry-level-1">F Distribution Examples</span></a></p></li></ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">means_and_covariance</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bivariate_statistics.html" title="Bivariate Statistics"><span class="index-entry-level-1">Bivariate Statistics</span></a></p></li></ul></div>
|
||||
</li>
|
||||
@@ -6892,6 +6937,7 @@
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/ellint/ellint_intro.html" title="Elliptic Integral Overview"><span class="index-entry-level-1">Elliptic Integral Overview</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/internals/engel_expansion.html" title="Engel Expansion"><span class="index-entry-level-1">Engel Expansion</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/sf_erf/error_function.html" title="Error Function erf and complement erfc"><span class="index-entry-level-1">Error Function erf and complement erfc</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">Fibonacci Numbers</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/airy/airy_root.html" title="Finding Zeros of Airy Functions"><span class="index-entry-level-1">Finding Zeros of Airy Functions</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bessel/bessel_root.html" title="Finding Zeros of Bessel Functions of the First and Second Kinds"><span class="index-entry-level-1">Finding Zeros of Bessel Functions of the First and Second Kinds</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/next_float.html" title="Floating-Point Representation Distance (ULP), and Finding Adjacent Floating-Point Values"><span class="index-entry-level-1">Floating-Point Representation Distance (ULP), and Finding Adjacent Floating-Point Values</span></a></p></li>
|
||||
@@ -7324,6 +7370,7 @@
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/autodiff.html" title="Automatic Differentiation"><span class="index-entry-level-1">Automatic Differentiation</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bessel/bessel_first.html" title="Bessel Functions of the First and Second Kinds"><span class="index-entry-level-1">Bessel Functions of the First and Second Kinds</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/dist_ref/dists/empirical_cdf.html" title="Empirical Cumulative Distribution Function"><span class="index-entry-level-1">Empirical Cumulative Distribution Function</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">Fibonacci Numbers</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/diff0.html" title="Lanczos Smoothing Derivatives"><span class="index-entry-level-1">Lanczos Smoothing Derivatives</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bessel/mbessel.html" title="Modified Bessel Functions of the First and Second Kinds"><span class="index-entry-level-1">Modified Bessel Functions of the First and Second Kinds</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/double_exponential/de_tanh_sinh.html" title="tanh_sinh"><span class="index-entry-level-1">tanh_sinh</span></a></p></li>
|
||||
@@ -7429,6 +7476,7 @@
|
||||
<div class="index"><ul class="index" style="list-style-type: none; ">
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/root_finding_examples/elliptic_eg.html" title="A More complex example - Inverting the Elliptic Integrals"><span class="index-entry-level-1">A More complex example - Inverting the Elliptic Integrals</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/barycentric.html" title="Barycentric Rational Interpolation"><span class="index-entry-level-1">Barycentric Rational Interpolation</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bilinear_uniform.html" title="Bilinear Uniform Interpolation"><span class="index-entry-level-1">Bilinear Uniform Interpolation</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/cardinal_cubic_b.html" title="Cardinal Cubic B-spline interpolation"><span class="index-entry-level-1">Cardinal Cubic B-spline interpolation</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/cardinal_quadratic_b.html" title="Cardinal Quadratic B-spline interpolation"><span class="index-entry-level-1">Cardinal Quadratic B-spline interpolation</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/cardinal_quintic_b.html" title="Cardinal Quintic B-spline interpolation"><span class="index-entry-level-1">Cardinal Quintic B-spline interpolation</span></a></p></li>
|
||||
@@ -7442,6 +7490,7 @@
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/cubic_hermite.html" title="Cubic Hermite interpolation"><span class="index-entry-level-1">Cubic Hermite interpolation</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/daubechies.html" title="Daubechies Wavelets and Scaling Functions"><span class="index-entry-level-1">Daubechies Wavelets and Scaling Functions</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/dist_ref/dists/empirical_cdf.html" title="Empirical Cumulative Distribution Function"><span class="index-entry-level-1">Empirical Cumulative Distribution Function</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">Fibonacci Numbers</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/root_finding_examples/cbrt_eg.html" title="Finding the Cubed Root With and Without Derivatives"><span class="index-entry-level-1">Finding the Cubed Root With and Without Derivatives</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/root_finding_examples/nth_root.html" title="Generalizing to Compute the nth root"><span class="index-entry-level-1">Generalizing to Compute the nth root</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/internals/test_data.html" title="Graphing, Profiling, and Generating Test Data for Special Functions"><span class="index-entry-level-1">Graphing, Profiling, and Generating Test Data for Special Functions</span></a></p></li>
|
||||
@@ -7598,6 +7647,7 @@
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/perf_over1.html" title="Performance"><span class="index-entry-level-1">accuracy</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/internals/agm.html" title="Arithmetic-Geometric Mean"><span class="index-entry-level-1">Arithmetic-Geometric Mean</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/bernoulli_numbers.html" title="Bernoulli Numbers"><span class="index-entry-level-1">Bernoulli Numbers</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/bilinear_uniform.html" title="Bilinear Uniform Interpolation"><span class="index-entry-level-1">Bilinear Uniform Interpolation</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/main_faq.html" title="Boost.Math Frequently Asked Questions (FAQs)"><span class="index-entry-level-1">Boost.Math Frequently Asked Questions (FAQs)</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/config_macros.html#math_toolkit.config_macros.boost_math_tuning" title="Table 1.12. Boost.Math Tuning"><span class="index-entry-level-1">Boost.Math Tuning</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/overview_tr1.html" title="C99 and C++ TR1 C-style Functions"><span class="index-entry-level-1">C99 and C++ TR1 C-style Functions</span></a></p></li>
|
||||
@@ -8126,6 +8176,7 @@
|
||||
<div class="index"><ul class="index" style="list-style-type: none; ">
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/fp_facets/reference.html" title="Reference"><span class="index-entry-level-1">function</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/fp_facets/reference.html" title="Reference"><span class="index-entry-level-1">nan</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/fp_facets/reference.html" title="Reference"><span class="index-entry-level-1">set</span></a></p></li>
|
||||
</ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
@@ -8566,6 +8617,13 @@
|
||||
</ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">set</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; ">
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">Fibonacci Numbers</span></a></p></li>
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/fp_facets/reference.html" title="Reference"><span class="index-entry-level-1">Reference</span></a></p></li>
|
||||
</ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">Setting Polices at Namespace Scope</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; ">
|
||||
<li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/pol_ref/namespace_pol.html" title="Setting Polices at Namespace Scope"><span class="index-entry-level-1">BOOST_MATH_DECLARE_DISTRIBUTIONS</span></a></p></li>
|
||||
@@ -9467,6 +9525,10 @@
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/factorials/sf_factorial.html" title="Factorial"><span class="index-entry-level-1">Factorial</span></a></p></li></ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">unchecked_fibonacci</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/number_series/fibonacci_numbers.html" title="Fibonacci Numbers"><span class="index-entry-level-1">Fibonacci Numbers</span></a></p></li></ul></div>
|
||||
</li>
|
||||
<li class="listitem" style="list-style-type: none">
|
||||
<p><span class="index-entry-level-0">uniform</span></p>
|
||||
<div class="index"><ul class="index" style="list-style-type: none; "><li class="listitem" style="list-style-type: none"><p><a class="link" href="../math_toolkit/dist_ref/dists/uniform_dist.html" title="Uniform Distribution"><span class="index-entry-level-1">Uniform Distribution</span></a></p></li></ul></div>
|
||||
</li>
|
||||
|
||||
@@ -45,6 +45,7 @@
|
||||
<dt><span class="section"><a href="math_toolkit/makima.html">Modified Akima interpolation</a></span></dt>
|
||||
<dt><span class="section"><a href="math_toolkit/pchip.html">PCHIP interpolation</a></span></dt>
|
||||
<dt><span class="section"><a href="math_toolkit/quintic_hermite.html">Quintic Hermite interpolation</a></span></dt>
|
||||
<dt><span class="section"><a href="math_toolkit/bilinear_uniform.html">Bilinear Uniform Interpolation</a></span></dt>
|
||||
</dl>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
144
doc/html/math_toolkit/bilinear_uniform.html
Normal file
144
doc/html/math_toolkit/bilinear_uniform.html
Normal file
@@ -0,0 +1,144 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>Bilinear Uniform Interpolation</title>
|
||||
<link rel="stylesheet" href="../math.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
|
||||
<link rel="home" href="../index.html" title="Math Toolkit 3.0.0">
|
||||
<link rel="up" href="../interpolation.html" title="Chapter 12. Interpolation">
|
||||
<link rel="prev" href="quintic_hermite.html" title="Quintic Hermite interpolation">
|
||||
<link rel="next" href="../quadrature.html" title="Chapter 13. Quadrature and Differentiation">
|
||||
</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="quintic_hermite.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../interpolation.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="../quadrature.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
<a name="math_toolkit.bilinear_uniform"></a><a class="link" href="bilinear_uniform.html" title="Bilinear Uniform Interpolation">Bilinear Uniform Interpolation</a>
|
||||
</h2></div></div></div>
|
||||
<h4>
|
||||
<a name="math_toolkit.bilinear_uniform.h0"></a>
|
||||
<span class="phrase"><a name="math_toolkit.bilinear_uniform.synopsis"></a></span><a class="link" href="bilinear_uniform.html#math_toolkit.bilinear_uniform.synopsis">Synopsis</a>
|
||||
</h4>
|
||||
<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">math</span><span class="special">/</span><span class="identifier">interpolators</span><span class="special">/</span><span class="identifier">bilinear_uniform</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
|
||||
<span class="keyword">namespace</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">interpolators</span> <span class="special">{</span>
|
||||
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">RandomAccessContainer</span><span class="special">></span>
|
||||
<span class="keyword">class</span> <span class="identifier">bilinear_uniform</span>
|
||||
<span class="special">{</span>
|
||||
<span class="keyword">public</span><span class="special">:</span>
|
||||
<span class="keyword">using</span> <span class="identifier">Real</span> <span class="special">=</span> <span class="keyword">typename</span> <span class="identifier">RandomAccessContainer</span><span class="special">::</span><span class="identifier">value_type</span><span class="special">;</span>
|
||||
|
||||
<span class="identifier">bilinear_uniform</span><span class="special">(</span><span class="identifier">RandomAccessContainer</span> <span class="special">&&</span> <span class="identifier">fieldData</span><span class="special">,</span> <span class="keyword">decltype</span><span class="special">(</span><span class="identifier">fieldData</span><span class="special">.</span><span class="identifier">size</span><span class="special">())</span> <span class="identifier">rows</span><span class="special">,</span> <span class="keyword">decltype</span><span class="special">(</span><span class="identifier">fieldData</span><span class="special">.</span><span class="identifier">size</span><span class="special">())</span> <span class="identifier">cols</span><span class="special">,</span> <span class="identifier">Real</span> <span class="identifier">dx</span> <span class="special">=</span> <span class="number">1</span><span class="special">,</span> <span class="identifier">Real</span> <span class="identifier">dy</span> <span class="special">=</span> <span class="number">1</span><span class="special">,</span> <span class="identifier">Real</span> <span class="identifier">x0</span> <span class="special">=</span> <span class="number">0</span><span class="special">,</span> <span class="identifier">Real</span> <span class="identifier">y0</span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span>
|
||||
|
||||
<span class="identifier">Real</span> <span class="keyword">operator</span><span class="special">()(</span><span class="identifier">Real</span> <span class="identifier">x</span><span class="special">,</span> <span class="identifier">Real</span> <span class="identifier">y</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
|
||||
<span class="special">};</span>
|
||||
</pre>
|
||||
<h4>
|
||||
<a name="math_toolkit.bilinear_uniform.h1"></a>
|
||||
<span class="phrase"><a name="math_toolkit.bilinear_uniform.bilinear_uniform_interpolation"></a></span><a class="link" href="bilinear_uniform.html#math_toolkit.bilinear_uniform.bilinear_uniform_interpolation">Bilinear
|
||||
Uniform Interpolation</a>
|
||||
</h4>
|
||||
<p>
|
||||
The bilinear uniform interpolator takes a grid of data points specified by
|
||||
a linear index and interpolates between each segment using a bilinear function.
|
||||
Note that "bilinear" does not mean linear-it is the product of two
|
||||
linear functions. The interpolant is continuous and its evaluation is constant
|
||||
time. An example usage is as follows:
|
||||
</p>
|
||||
<pre class="programlisting"><span class="identifier">std</span><span class="special">::</span><span class="identifier">vector</span><span class="special"><</span><span class="keyword">double</span><span class="special">></span> <span class="identifier">v</span><span class="special">{</span><span class="number">0.1</span><span class="special">,</span> <span class="number">0.2</span><span class="special">,</span> <span class="number">0.3</span><span class="special">,</span>
|
||||
<span class="number">0.4</span><span class="special">,</span> <span class="number">0.5</span><span class="special">,</span> <span class="number">0.5</span><span class="special">};</span>
|
||||
<span class="keyword">using</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">interpolators</span><span class="special">::</span><span class="identifier">bilinear_uniform</span><span class="special">;</span>
|
||||
<span class="keyword">int</span> <span class="identifier">rows</span> <span class="special">=</span> <span class="number">2</span><span class="special">;</span>
|
||||
<span class="keyword">int</span> <span class="identifier">cols</span> <span class="special">=</span> <span class="number">3</span><span class="special">;</span>
|
||||
<span class="keyword">double</span> <span class="identifier">dx</span> <span class="special">=</span> <span class="number">1</span><span class="special">;</span>
|
||||
<span class="keyword">double</span> <span class="identifier">dy</span> <span class="special">=</span> <span class="number">1</span><span class="special">;</span>
|
||||
<span class="keyword">auto</span> <span class="identifier">bu</span> <span class="special">=</span> <span class="identifier">bilinear_uniform</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">move</span><span class="special">(</span><span class="identifier">v</span><span class="special">),</span> <span class="identifier">rows</span><span class="special">,</span> <span class="identifier">cols</span><span class="special">,</span> <span class="identifier">dx</span><span class="special">,</span> <span class="identifier">dy</span><span class="special">);</span>
|
||||
<span class="comment">// evaluate at a point:</span>
|
||||
<span class="keyword">double</span> <span class="identifier">z</span> <span class="special">=</span> <span class="identifier">bu</span><span class="special">(</span><span class="number">0.0</span><span class="special">,</span> <span class="number">0.0</span><span class="special">);</span>
|
||||
</pre>
|
||||
<p>
|
||||
Periodically, it is helpful to see what data the interpolator has. This can
|
||||
be achieved via
|
||||
</p>
|
||||
<pre class="programlisting"><span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special"><<</span> <span class="identifier">ub</span> <span class="special"><<</span> <span class="string">"\n"</span><span class="special">;</span>
|
||||
</pre>
|
||||
<p>
|
||||
Note that the interpolator is pimpl'd, so that copying the class is cheap,
|
||||
and hence it can be shared between threads. (The call operator is threadsafe.)
|
||||
</p>
|
||||
<p>
|
||||
Note that the layout of the field data follows the convention found in laying
|
||||
out images: The first value is associated with (x0, y0), and the last value
|
||||
is associate with (x0 + (cols - 1)dx, y0 + (rows - 1)dy). This matches with
|
||||
how we think about laying out matrices in C order, but of course there is no
|
||||
canonical choice and conventions must be made. For example, it is traditional
|
||||
in image processing the associate the first field value with the center of
|
||||
the pixel (which would be called a cell-centered field in VTK). This interpolator
|
||||
is point-centered, in the sense that (x0,y0) is associated with value v[0],
|
||||
and (x0+dx, y0) associated with v[1]. If you have cell-centered data at (0,0),
|
||||
then just pass (x0,y0) = (0.5, 0.5) to this interpolator.
|
||||
</p>
|
||||
<p>
|
||||
Note that this interpolator does not provide the option for a rotation. We
|
||||
regarded that as too expensive to handle in this class. Rotating the arguments
|
||||
must be performed by the user.
|
||||
</p>
|
||||
<h4>
|
||||
<a name="math_toolkit.bilinear_uniform.h2"></a>
|
||||
<span class="phrase"><a name="math_toolkit.bilinear_uniform.complexity_and_performance"></a></span><a class="link" href="bilinear_uniform.html#math_toolkit.bilinear_uniform.complexity_and_performance">Complexity
|
||||
and Performance</a>
|
||||
</h4>
|
||||
<p>
|
||||
The google/benchmark in <code class="computeroutput"><span class="identifier">reporting</span><span class="special">/</span><span class="identifier">performance</span><span class="special">/</span><span class="identifier">bilinear_uniform_performance</span><span class="special">.</span><span class="identifier">cpp</span></code> demonstrates
|
||||
the cost of the call operator for this interpolator:
|
||||
</p>
|
||||
<pre class="programlisting"><span class="identifier">Run</span> <span class="identifier">on</span> <span class="special">(</span><span class="number">16</span> <span class="identifier">X</span> <span class="number">4300</span> <span class="identifier">MHz</span> <span class="identifier">CPU</span> <span class="identifier">s</span><span class="special">)</span>
|
||||
<span class="identifier">CPU</span> <span class="identifier">Caches</span><span class="special">:</span>
|
||||
<span class="identifier">L1</span> <span class="identifier">Data</span> <span class="number">32</span><span class="identifier">K</span> <span class="special">(</span><span class="identifier">x8</span><span class="special">)</span>
|
||||
<span class="identifier">L1</span> <span class="identifier">Instruction</span> <span class="number">32</span><span class="identifier">K</span> <span class="special">(</span><span class="identifier">x8</span><span class="special">)</span>
|
||||
<span class="identifier">L2</span> <span class="identifier">Unified</span> <span class="number">1024</span><span class="identifier">K</span> <span class="special">(</span><span class="identifier">x8</span><span class="special">)</span>
|
||||
<span class="identifier">L3</span> <span class="identifier">Unified</span> <span class="number">11264</span><span class="identifier">K</span> <span class="special">(</span><span class="identifier">x1</span><span class="special">)</span>
|
||||
<span class="identifier">Load</span> <span class="identifier">Average</span><span class="special">:</span> <span class="number">0.92</span><span class="special">,</span> <span class="number">0.64</span><span class="special">,</span> <span class="number">0.35</span>
|
||||
<span class="special">--------------------------------------</span>
|
||||
<span class="identifier">Benchmark</span> <span class="identifier">Time</span>
|
||||
<span class="special">--------------------------------------</span>
|
||||
<span class="identifier">Bilinear</span><span class="special"><</span><span class="keyword">double</span><span class="special">>/</span><span class="number">64</span> <span class="number">13.6</span> <span class="identifier">ns</span>
|
||||
<span class="identifier">Bilinear</span><span class="special"><</span><span class="keyword">double</span><span class="special">>/</span><span class="number">128</span> <span class="number">13.3</span> <span class="identifier">ns</span>
|
||||
<span class="identifier">Bilinear</span><span class="special"><</span><span class="keyword">double</span><span class="special">>/</span><span class="number">256</span> <span class="number">13.9</span> <span class="identifier">ns</span>
|
||||
<span class="identifier">Bilinear</span><span class="special"><</span><span class="keyword">double</span><span class="special">>/</span><span class="number">512</span> <span class="number">13.7</span> <span class="identifier">ns</span>
|
||||
<span class="identifier">Bilinear</span><span class="special"><</span><span class="keyword">double</span><span class="special">>/</span><span class="number">1024</span> <span class="number">13.2</span> <span class="identifier">ns</span>
|
||||
<span class="identifier">Bilinear</span><span class="special"><</span><span class="keyword">double</span><span class="special">>/</span><span class="number">2048</span> <span class="number">13.1</span> <span class="identifier">ns</span>
|
||||
<span class="identifier">Bilinear</span><span class="special"><</span><span class="keyword">double</span><span class="special">>/</span><span class="number">4096</span> <span class="number">13.2</span> <span class="identifier">ns</span>
|
||||
<span class="identifier">Bilinear</span><span class="special"><</span><span class="keyword">double</span><span class="special">>/</span><span class="number">8192</span> <span class="number">13.2</span> <span class="identifier">ns</span>
|
||||
</pre>
|
||||
</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 © 2006-2021 Nikhar Agrawal, Anton Bikineev, Matthew Borland,
|
||||
Paul A. Bristow, Marco Guazzone, Christopher Kormanyos, Hubert Holin, Bruno
|
||||
Lalande, John Maddock, Evan Miller, Jeremy Murphy, Matthew Pulver, Johan Råde,
|
||||
Gautam Sewani, Benjamin Sobotta, Nicholas Thompson, Thijs van den Berg, Daryle
|
||||
Walker and Xiaogang Zhang<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="quintic_hermite.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../interpolation.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="../quadrature.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -27,7 +27,7 @@
|
||||
<a name="math_toolkit.conventions"></a><a class="link" href="conventions.html" title="Document Conventions">Document Conventions</a>
|
||||
</h2></div></div></div>
|
||||
<p>
|
||||
<a class="indexterm" name="id1028641"></a>
|
||||
<a class="indexterm" name="id949905"></a>
|
||||
</p>
|
||||
<p>
|
||||
This documentation aims to use of the following naming and formatting conventions.
|
||||
|
||||
@@ -342,22 +342,6 @@
|
||||
<span class="inlinemediaobject"><img src="../../../../equations/hypergeometric6.svg"></span>
|
||||
|
||||
</p></blockquote></div>
|
||||
<div class="note"><table border="0" summary="Note">
|
||||
<tr>
|
||||
<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="../../../../../../../doc/src/images/note.png"></td>
|
||||
<th align="left">Note</th>
|
||||
</tr>
|
||||
<tr><td align="left" valign="top"><p>
|
||||
The kurtosis formula above is not quite correct and kurtosis excess is
|
||||
now calculated from <a href="https://www.wolframalpha.com/input/?i=kurtosis+hypergeometric+distribution" target="_top">Wolfram
|
||||
Alpha hypergeometric distribution kurtosis</a>. (The hypergeometric
|
||||
distribution kurtosis excess is mentioned in <a href="https://mathworld.wolfram.com/HypergeometricDistribution.html" target="_top">Wolfram
|
||||
Hypergeometric distribution</a> but coyly only described as <span class="emphasis"><em>"the
|
||||
kurtosis excess is given by a complicated expression."</em></span>).
|
||||
This has been found numerically equivalent to the <a href="https://en.wikipedia.org/wiki/Hypergeometric_distribution" target="_top">Wikipedia
|
||||
hypergeometric kurtosis excess formula</a>.
|
||||
</p></td></tr>
|
||||
</table></div>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
<td align="left"></td>
|
||||
|
||||
@@ -38,6 +38,42 @@
|
||||
</p>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h0"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.math_3_1_0_boost_1_77"></a></span><a class="link" href="history1.html#math_toolkit.history1.math_3_1_0_boost_1_77">Math-3.1.0
|
||||
(Boost-1.77)</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
<li class="listitem">
|
||||
This library can now be used entirely standalone, without the rest of Boost:
|
||||
either use a compiler which supports <code class="computeroutput"><span class="identifier">__has_include</span></code>
|
||||
or define <code class="computeroutput"><span class="identifier">BOOST_MATH_STANDALONE</span></code>
|
||||
to enable standalone mode.
|
||||
</li>
|
||||
<li class="listitem">
|
||||
Add <a class="link" href="bilinear_uniform.html" title="Bilinear Uniform Interpolation">Bilinear Uniform Interpolation</a>.
|
||||
</li>
|
||||
<li class="listitem">
|
||||
Add <a class="link" href="number_series/fibonacci_numbers.html" title="Fibonacci Numbers">Fibonacci
|
||||
Numbers</a>.
|
||||
</li>
|
||||
<li class="listitem">
|
||||
Fix Hypergeometric Distribution kertosis, see <a href="https://github.com/boostorg/math/issues/639" target="_top">#639</a>.
|
||||
</li>
|
||||
<li class="listitem">
|
||||
Fix closed Catmull-Rom curves to have the same start/end point. See <a href="https://github.com/boostorg/math/issues/636" target="_top">#636</a>.
|
||||
</li>
|
||||
<li class="listitem">
|
||||
Correct Bernoulli number caching in multi-threading multiprecision case.
|
||||
</li>
|
||||
<li class="listitem">
|
||||
Re-enabled the ability to build in environments with no std lib threading
|
||||
support. See <a href="https://github.com/boostorg/math/issues/621" target="_top">#621</a>.
|
||||
</li>
|
||||
<li class="listitem">
|
||||
Correct Gini-coefficient parrellel calculation.
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h1"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.math_3_0_0_boost_1_76"></a></span><a class="link" href="history1.html#math_toolkit.history1.math_3_0_0_boost_1_76">Math-3.0.0
|
||||
(Boost-1.76)</a>
|
||||
</h5>
|
||||
@@ -88,7 +124,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h1"></a>
|
||||
<a name="math_toolkit.history1.h2"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.math_2_13_0_boost_1_75"></a></span><a class="link" href="history1.html#math_toolkit.history1.math_2_13_0_boost_1_75">Math-2.13.0
|
||||
(Boost-1.75)</a>
|
||||
</h5>
|
||||
@@ -139,7 +175,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h2"></a>
|
||||
<a name="math_toolkit.history1.h3"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.math_2_12_0_boost_1_73"></a></span><a class="link" href="history1.html#math_toolkit.history1.math_2_12_0_boost_1_73">Math-2.12.0
|
||||
(Boost-1.73)</a>
|
||||
</h5>
|
||||
@@ -181,7 +217,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h3"></a>
|
||||
<a name="math_toolkit.history1.h4"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.math_2_11_0_boost_1_72"></a></span><a class="link" href="history1.html#math_toolkit.history1.math_2_11_0_boost_1_72">Math-2.11.0
|
||||
(Boost-1.72)</a>
|
||||
</h5>
|
||||
@@ -243,7 +279,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h4"></a>
|
||||
<a name="math_toolkit.history1.h5"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.math_2_10_0_boost_1_71"></a></span><a class="link" href="history1.html#math_toolkit.history1.math_2_10_0_boost_1_71">Math-2.10.0
|
||||
(Boost-1.71)</a>
|
||||
</h5>
|
||||
@@ -277,7 +313,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h5"></a>
|
||||
<a name="math_toolkit.history1.h6"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.math_2_9_0_boost_1_70"></a></span><a class="link" href="history1.html#math_toolkit.history1.math_2_9_0_boost_1_70">Math-2.9.0
|
||||
(Boost-1.70)</a>
|
||||
</h5>
|
||||
@@ -331,7 +367,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h6"></a>
|
||||
<a name="math_toolkit.history1.h7"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.math_2_8_0_boost_1_69"></a></span><a class="link" href="history1.html#math_toolkit.history1.math_2_8_0_boost_1_69">Math-2.8.0
|
||||
(Boost-1.69)</a>
|
||||
</h5>
|
||||
@@ -388,7 +424,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h7"></a>
|
||||
<a name="math_toolkit.history1.h8"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.math_2_7_1_boost_1_68"></a></span><a class="link" href="history1.html#math_toolkit.history1.math_2_7_1_boost_1_68">Math-2.7.1
|
||||
(Boost-1.68)</a>
|
||||
</h5>
|
||||
@@ -402,7 +438,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h8"></a>
|
||||
<a name="math_toolkit.history1.h9"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.math_2_7_0_boost_1_66"></a></span><a class="link" href="history1.html#math_toolkit.history1.math_2_7_0_boost_1_66">Math-2.7.0
|
||||
(Boost-1.66)</a>
|
||||
</h5>
|
||||
@@ -419,7 +455,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h9"></a>
|
||||
<a name="math_toolkit.history1.h10"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.math_2_6_0_boost_1_65"></a></span><a class="link" href="history1.html#math_toolkit.history1.math_2_6_0_boost_1_65">Math-2.6.0
|
||||
(Boost-1.65)</a>
|
||||
</h5>
|
||||
@@ -456,7 +492,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h10"></a>
|
||||
<a name="math_toolkit.history1.h11"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.math_2_5_2_boost_1_64"></a></span><a class="link" href="history1.html#math_toolkit.history1.math_2_5_2_boost_1_64">Math-2.5.2
|
||||
(Boost-1.64)</a>
|
||||
</h5>
|
||||
@@ -473,7 +509,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h11"></a>
|
||||
<a name="math_toolkit.history1.h12"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.math_2_5_1_boost_1_63"></a></span><a class="link" href="history1.html#math_toolkit.history1.math_2_5_1_boost_1_63">Math-2.5.1
|
||||
(Boost-1.63)</a>
|
||||
</h5>
|
||||
@@ -489,7 +525,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h12"></a>
|
||||
<a name="math_toolkit.history1.h13"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.math_2_5_0_boost_1_62"></a></span><a class="link" href="history1.html#math_toolkit.history1.math_2_5_0_boost_1_62">Math-2.5.0
|
||||
(Boost-1.62)</a>
|
||||
</h5>
|
||||
@@ -514,7 +550,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h13"></a>
|
||||
<a name="math_toolkit.history1.h14"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.math_2_4_0_boost_1_61"></a></span><a class="link" href="history1.html#math_toolkit.history1.math_2_4_0_boost_1_61">Math-2.4.0
|
||||
(Boost-1.61)</a>
|
||||
</h5>
|
||||
@@ -525,7 +561,7 @@
|
||||
Polynomial arithmetic added to tools.
|
||||
</li></ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h14"></a>
|
||||
<a name="math_toolkit.history1.h15"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.math_2_3_0_boost_1_60"></a></span><a class="link" href="history1.html#math_toolkit.history1.math_2_3_0_boost_1_60">Math-2.3.0
|
||||
(Boost-1.60)</a>
|
||||
</h5>
|
||||
@@ -604,7 +640,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h15"></a>
|
||||
<a name="math_toolkit.history1.h16"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.math_2_2_1"></a></span><a class="link" href="history1.html#math_toolkit.history1.math_2_2_1">Math-2.2.1</a>
|
||||
</h5>
|
||||
<p>
|
||||
@@ -623,7 +659,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h16"></a>
|
||||
<a name="math_toolkit.history1.h17"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.math_2_2_0_boost_1_58_0"></a></span><a class="link" href="history1.html#math_toolkit.history1.math_2_2_0_boost_1_58_0">Math-2.2.0
|
||||
(boost-1.58.0)</a>
|
||||
</h5>
|
||||
@@ -667,7 +703,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h17"></a>
|
||||
<a name="math_toolkit.history1.h18"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.math_2_1_0_boost_1_57_0"></a></span><a class="link" href="history1.html#math_toolkit.history1.math_2_1_0_boost_1_57_0">Math-2.1.0
|
||||
(boost-1.57.0)</a>
|
||||
</h5>
|
||||
@@ -693,7 +729,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h18"></a>
|
||||
<a name="math_toolkit.history1.h19"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.math_2_0_0_boost_1_56_0"></a></span><a class="link" href="history1.html#math_toolkit.history1.math_2_0_0_boost_1_56_0">Math-2.0.0
|
||||
(Boost-1.56.0)</a>
|
||||
</h5>
|
||||
@@ -744,7 +780,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h19"></a>
|
||||
<a name="math_toolkit.history1.h20"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.math_1_9_1"></a></span><a class="link" href="history1.html#math_toolkit.history1.math_1_9_1">Math-1.9.1</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -759,7 +795,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h20"></a>
|
||||
<a name="math_toolkit.history1.h21"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.math_1_9_0"></a></span><a class="link" href="history1.html#math_toolkit.history1.math_1_9_0">Math-1.9.0</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -826,7 +862,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h21"></a>
|
||||
<a name="math_toolkit.history1.h22"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.boost_1_55"></a></span><a class="link" href="history1.html#math_toolkit.history1.boost_1_55">Boost-1.55</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -885,7 +921,7 @@
|
||||
and Accurate Parallel Inversion of the Gamma Distribution, Thomas Luu</a>
|
||||
</p>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h22"></a>
|
||||
<a name="math_toolkit.history1.h23"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.boost_1_54"></a></span><a class="link" href="history1.html#math_toolkit.history1.boost_1_54">Boost-1.54</a>
|
||||
</h5>
|
||||
</li>
|
||||
@@ -939,7 +975,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h23"></a>
|
||||
<a name="math_toolkit.history1.h24"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.boost_1_53"></a></span><a class="link" href="history1.html#math_toolkit.history1.boost_1_53">Boost-1.53</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -974,7 +1010,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h24"></a>
|
||||
<a name="math_toolkit.history1.h25"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.boost_1_52"></a></span><a class="link" href="history1.html#math_toolkit.history1.boost_1_52">Boost-1.52</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -1021,14 +1057,14 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h25"></a>
|
||||
<a name="math_toolkit.history1.h26"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.boost_1_51"></a></span><a class="link" href="history1.html#math_toolkit.history1.boost_1_51">Boost-1.51</a>
|
||||
</h5>
|
||||
<p>
|
||||
See Boost-1.52 - some items were added but not listed in time for the release.
|
||||
</p>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h26"></a>
|
||||
<a name="math_toolkit.history1.h27"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.boost_1_50"></a></span><a class="link" href="history1.html#math_toolkit.history1.boost_1_50">Boost-1.50</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -1065,7 +1101,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h27"></a>
|
||||
<a name="math_toolkit.history1.h28"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.boost_1_49"></a></span><a class="link" href="history1.html#math_toolkit.history1.boost_1_49">Boost-1.49</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -1109,7 +1145,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h28"></a>
|
||||
<a name="math_toolkit.history1.h29"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.boost_1_48"></a></span><a class="link" href="history1.html#math_toolkit.history1.boost_1_48">Boost-1.48</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -1160,7 +1196,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h29"></a>
|
||||
<a name="math_toolkit.history1.h30"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.boost_1_47"></a></span><a class="link" href="history1.html#math_toolkit.history1.boost_1_47">Boost-1.47</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -1177,7 +1213,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h30"></a>
|
||||
<a name="math_toolkit.history1.h31"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.boost_1_46_1"></a></span><a class="link" href="history1.html#math_toolkit.history1.boost_1_46_1">Boost-1.46.1</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
|
||||
@@ -1185,7 +1221,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
<a href="https://svn.boost.org/trac/boost/ticket/5095" target="_top">#5113</a>.
|
||||
</li></ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h31"></a>
|
||||
<a name="math_toolkit.history1.h32"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.boost_1_46_0"></a></span><a class="link" href="history1.html#math_toolkit.history1.boost_1_46_0">Boost-1.46.0</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -1200,7 +1236,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h32"></a>
|
||||
<a name="math_toolkit.history1.h33"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.boost_1_45_0"></a></span><a class="link" href="history1.html#math_toolkit.history1.boost_1_45_0">Boost-1.45.0</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -1217,7 +1253,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h33"></a>
|
||||
<a name="math_toolkit.history1.h34"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.boost_1_44_0"></a></span><a class="link" href="history1.html#math_toolkit.history1.boost_1_44_0">Boost-1.44.0</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -1231,7 +1267,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h34"></a>
|
||||
<a name="math_toolkit.history1.h35"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.boost_1_41_0"></a></span><a class="link" href="history1.html#math_toolkit.history1.boost_1_41_0">Boost-1.41.0</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
|
||||
@@ -1239,7 +1275,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
its inverse.
|
||||
</li></ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h35"></a>
|
||||
<a name="math_toolkit.history1.h36"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.boost_1_40_0"></a></span><a class="link" href="history1.html#math_toolkit.history1.boost_1_40_0">Boost-1.40.0</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -1275,7 +1311,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h36"></a>
|
||||
<a name="math_toolkit.history1.h37"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.boost_1_38_0"></a></span><a class="link" href="history1.html#math_toolkit.history1.boost_1_38_0">Boost-1.38.0</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -1287,14 +1323,14 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h37"></a>
|
||||
<a name="math_toolkit.history1.h38"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.boost_1_37_0"></a></span><a class="link" href="history1.html#math_toolkit.history1.boost_1_37_0">Boost-1.37.0</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
|
||||
Improved accuracy and testing of the inverse hypergeometric functions.
|
||||
</li></ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h38"></a>
|
||||
<a name="math_toolkit.history1.h39"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.boost_1_36_0"></a></span><a class="link" href="history1.html#math_toolkit.history1.boost_1_36_0">Boost-1.36.0</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -1327,7 +1363,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h39"></a>
|
||||
<a name="math_toolkit.history1.h40"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.boost_1_35_0_post_review_first_o"></a></span><a class="link" href="history1.html#math_toolkit.history1.boost_1_35_0_post_review_first_o">Boost-1.35.0:
|
||||
Post Review First Official Release</a>
|
||||
</h5>
|
||||
@@ -1359,7 +1395,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h40"></a>
|
||||
<a name="math_toolkit.history1.h41"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.milestone_4_second_review_candid"></a></span><a class="link" href="history1.html#math_toolkit.history1.milestone_4_second_review_candid">Milestone
|
||||
4: Second Review Candidate (1st March 2007)</a>
|
||||
</h5>
|
||||
@@ -1373,7 +1409,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h41"></a>
|
||||
<a name="math_toolkit.history1.h42"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.milestone_3_first_review_candida"></a></span><a class="link" href="history1.html#math_toolkit.history1.milestone_3_first_review_candida">Milestone
|
||||
3: First Review Candidate (31st Dec 2006)</a>
|
||||
</h5>
|
||||
@@ -1401,7 +1437,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h42"></a>
|
||||
<a name="math_toolkit.history1.h43"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.milestone_2_released_september_1"></a></span><a class="link" href="history1.html#math_toolkit.history1.milestone_2_released_september_1">Milestone
|
||||
2: Released September 10th 2006</a>
|
||||
</h5>
|
||||
@@ -1437,7 +1473,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history1.h43"></a>
|
||||
<a name="math_toolkit.history1.h44"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history1.milestone_1_released_march_31st_"></a></span><a class="link" href="history1.html#math_toolkit.history1.milestone_1_released_march_31st_">Milestone
|
||||
1: Released March 31st 2006</a>
|
||||
</h5>
|
||||
|
||||
@@ -38,6 +38,42 @@
|
||||
</p>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h0"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.math_3_1_0_boost_1_77"></a></span><a class="link" href="history2.html#math_toolkit.history2.math_3_1_0_boost_1_77">Math-3.1.0
|
||||
(Boost-1.77)</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
<li class="listitem">
|
||||
This library can now be used entirely standalone, without the rest of Boost:
|
||||
either use a compiler which supports <code class="computeroutput"><span class="identifier">__has_include</span></code>
|
||||
or define <code class="computeroutput"><span class="identifier">BOOST_MATH_STANDALONE</span></code>
|
||||
to enable standalone mode.
|
||||
</li>
|
||||
<li class="listitem">
|
||||
Add <a class="link" href="bilinear_uniform.html" title="Bilinear Uniform Interpolation">Bilinear Uniform Interpolation</a>.
|
||||
</li>
|
||||
<li class="listitem">
|
||||
Add <a class="link" href="number_series/fibonacci_numbers.html" title="Fibonacci Numbers">Fibonacci
|
||||
Numbers</a>.
|
||||
</li>
|
||||
<li class="listitem">
|
||||
Fix Hypergeometric Distribution kertosis, see <a href="https://github.com/boostorg/math/issues/639" target="_top">#639</a>.
|
||||
</li>
|
||||
<li class="listitem">
|
||||
Fix closed Catmull-Rom curves to have the same start/end point. See <a href="https://github.com/boostorg/math/issues/636" target="_top">#636</a>.
|
||||
</li>
|
||||
<li class="listitem">
|
||||
Correct Bernoulli number caching in multi-threading multiprecision case.
|
||||
</li>
|
||||
<li class="listitem">
|
||||
Re-enabled the ability to build in environments with no std lib threading
|
||||
support. See <a href="https://github.com/boostorg/math/issues/621" target="_top">#621</a>.
|
||||
</li>
|
||||
<li class="listitem">
|
||||
Correct Gini-coefficient parrellel calculation.
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h1"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.math_3_0_0_boost_1_76"></a></span><a class="link" href="history2.html#math_toolkit.history2.math_3_0_0_boost_1_76">Math-3.0.0
|
||||
(Boost-1.76)</a>
|
||||
</h5>
|
||||
@@ -88,7 +124,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h1"></a>
|
||||
<a name="math_toolkit.history2.h2"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.math_2_13_0_boost_1_75"></a></span><a class="link" href="history2.html#math_toolkit.history2.math_2_13_0_boost_1_75">Math-2.13.0
|
||||
(Boost-1.75)</a>
|
||||
</h5>
|
||||
@@ -139,7 +175,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h2"></a>
|
||||
<a name="math_toolkit.history2.h3"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.math_2_12_0_boost_1_73"></a></span><a class="link" href="history2.html#math_toolkit.history2.math_2_12_0_boost_1_73">Math-2.12.0
|
||||
(Boost-1.73)</a>
|
||||
</h5>
|
||||
@@ -181,7 +217,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h3"></a>
|
||||
<a name="math_toolkit.history2.h4"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.math_2_11_0_boost_1_72"></a></span><a class="link" href="history2.html#math_toolkit.history2.math_2_11_0_boost_1_72">Math-2.11.0
|
||||
(Boost-1.72)</a>
|
||||
</h5>
|
||||
@@ -243,7 +279,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h4"></a>
|
||||
<a name="math_toolkit.history2.h5"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.math_2_10_0_boost_1_71"></a></span><a class="link" href="history2.html#math_toolkit.history2.math_2_10_0_boost_1_71">Math-2.10.0
|
||||
(Boost-1.71)</a>
|
||||
</h5>
|
||||
@@ -277,7 +313,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h5"></a>
|
||||
<a name="math_toolkit.history2.h6"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.math_2_9_0_boost_1_70"></a></span><a class="link" href="history2.html#math_toolkit.history2.math_2_9_0_boost_1_70">Math-2.9.0
|
||||
(Boost-1.70)</a>
|
||||
</h5>
|
||||
@@ -331,7 +367,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h6"></a>
|
||||
<a name="math_toolkit.history2.h7"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.math_2_8_0_boost_1_69"></a></span><a class="link" href="history2.html#math_toolkit.history2.math_2_8_0_boost_1_69">Math-2.8.0
|
||||
(Boost-1.69)</a>
|
||||
</h5>
|
||||
@@ -388,7 +424,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h7"></a>
|
||||
<a name="math_toolkit.history2.h8"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.math_2_7_1_boost_1_68"></a></span><a class="link" href="history2.html#math_toolkit.history2.math_2_7_1_boost_1_68">Math-2.7.1
|
||||
(Boost-1.68)</a>
|
||||
</h5>
|
||||
@@ -402,7 +438,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h8"></a>
|
||||
<a name="math_toolkit.history2.h9"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.math_2_7_0_boost_1_66"></a></span><a class="link" href="history2.html#math_toolkit.history2.math_2_7_0_boost_1_66">Math-2.7.0
|
||||
(Boost-1.66)</a>
|
||||
</h5>
|
||||
@@ -419,7 +455,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h9"></a>
|
||||
<a name="math_toolkit.history2.h10"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.math_2_6_0_boost_1_65"></a></span><a class="link" href="history2.html#math_toolkit.history2.math_2_6_0_boost_1_65">Math-2.6.0
|
||||
(Boost-1.65)</a>
|
||||
</h5>
|
||||
@@ -456,7 +492,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h10"></a>
|
||||
<a name="math_toolkit.history2.h11"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.math_2_5_2_boost_1_64"></a></span><a class="link" href="history2.html#math_toolkit.history2.math_2_5_2_boost_1_64">Math-2.5.2
|
||||
(Boost-1.64)</a>
|
||||
</h5>
|
||||
@@ -473,7 +509,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h11"></a>
|
||||
<a name="math_toolkit.history2.h12"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.math_2_5_1_boost_1_63"></a></span><a class="link" href="history2.html#math_toolkit.history2.math_2_5_1_boost_1_63">Math-2.5.1
|
||||
(Boost-1.63)</a>
|
||||
</h5>
|
||||
@@ -489,7 +525,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h12"></a>
|
||||
<a name="math_toolkit.history2.h13"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.math_2_5_0_boost_1_62"></a></span><a class="link" href="history2.html#math_toolkit.history2.math_2_5_0_boost_1_62">Math-2.5.0
|
||||
(Boost-1.62)</a>
|
||||
</h5>
|
||||
@@ -514,7 +550,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h13"></a>
|
||||
<a name="math_toolkit.history2.h14"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.math_2_4_0_boost_1_61"></a></span><a class="link" href="history2.html#math_toolkit.history2.math_2_4_0_boost_1_61">Math-2.4.0
|
||||
(Boost-1.61)</a>
|
||||
</h5>
|
||||
@@ -525,7 +561,7 @@
|
||||
Polynomial arithmetic added to tools.
|
||||
</li></ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h14"></a>
|
||||
<a name="math_toolkit.history2.h15"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.math_2_3_0_boost_1_60"></a></span><a class="link" href="history2.html#math_toolkit.history2.math_2_3_0_boost_1_60">Math-2.3.0
|
||||
(Boost-1.60)</a>
|
||||
</h5>
|
||||
@@ -604,7 +640,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h15"></a>
|
||||
<a name="math_toolkit.history2.h16"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.math_2_2_1"></a></span><a class="link" href="history2.html#math_toolkit.history2.math_2_2_1">Math-2.2.1</a>
|
||||
</h5>
|
||||
<p>
|
||||
@@ -623,7 +659,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h16"></a>
|
||||
<a name="math_toolkit.history2.h17"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.math_2_2_0_boost_1_58_0"></a></span><a class="link" href="history2.html#math_toolkit.history2.math_2_2_0_boost_1_58_0">Math-2.2.0
|
||||
(boost-1.58.0)</a>
|
||||
</h5>
|
||||
@@ -667,7 +703,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h17"></a>
|
||||
<a name="math_toolkit.history2.h18"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.math_2_1_0_boost_1_57_0"></a></span><a class="link" href="history2.html#math_toolkit.history2.math_2_1_0_boost_1_57_0">Math-2.1.0
|
||||
(boost-1.57.0)</a>
|
||||
</h5>
|
||||
@@ -693,7 +729,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h18"></a>
|
||||
<a name="math_toolkit.history2.h19"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.math_2_0_0_boost_1_56_0"></a></span><a class="link" href="history2.html#math_toolkit.history2.math_2_0_0_boost_1_56_0">Math-2.0.0
|
||||
(Boost-1.56.0)</a>
|
||||
</h5>
|
||||
@@ -744,7 +780,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h19"></a>
|
||||
<a name="math_toolkit.history2.h20"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.math_1_9_1"></a></span><a class="link" href="history2.html#math_toolkit.history2.math_1_9_1">Math-1.9.1</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -759,7 +795,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h20"></a>
|
||||
<a name="math_toolkit.history2.h21"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.math_1_9_0"></a></span><a class="link" href="history2.html#math_toolkit.history2.math_1_9_0">Math-1.9.0</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -826,7 +862,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h21"></a>
|
||||
<a name="math_toolkit.history2.h22"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.boost_1_55"></a></span><a class="link" href="history2.html#math_toolkit.history2.boost_1_55">Boost-1.55</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -885,7 +921,7 @@
|
||||
and Accurate Parallel Inversion of the Gamma Distribution, Thomas Luu</a>
|
||||
</p>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h22"></a>
|
||||
<a name="math_toolkit.history2.h23"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.boost_1_54"></a></span><a class="link" href="history2.html#math_toolkit.history2.boost_1_54">Boost-1.54</a>
|
||||
</h5>
|
||||
</li>
|
||||
@@ -939,7 +975,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h23"></a>
|
||||
<a name="math_toolkit.history2.h24"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.boost_1_53"></a></span><a class="link" href="history2.html#math_toolkit.history2.boost_1_53">Boost-1.53</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -974,7 +1010,7 @@
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h24"></a>
|
||||
<a name="math_toolkit.history2.h25"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.boost_1_52"></a></span><a class="link" href="history2.html#math_toolkit.history2.boost_1_52">Boost-1.52</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -1021,14 +1057,14 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h25"></a>
|
||||
<a name="math_toolkit.history2.h26"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.boost_1_51"></a></span><a class="link" href="history2.html#math_toolkit.history2.boost_1_51">Boost-1.51</a>
|
||||
</h5>
|
||||
<p>
|
||||
See Boost-1.52 - some items were added but not listed in time for the release.
|
||||
</p>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h26"></a>
|
||||
<a name="math_toolkit.history2.h27"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.boost_1_50"></a></span><a class="link" href="history2.html#math_toolkit.history2.boost_1_50">Boost-1.50</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -1065,7 +1101,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h27"></a>
|
||||
<a name="math_toolkit.history2.h28"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.boost_1_49"></a></span><a class="link" href="history2.html#math_toolkit.history2.boost_1_49">Boost-1.49</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -1109,7 +1145,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h28"></a>
|
||||
<a name="math_toolkit.history2.h29"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.boost_1_48"></a></span><a class="link" href="history2.html#math_toolkit.history2.boost_1_48">Boost-1.48</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -1160,7 +1196,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h29"></a>
|
||||
<a name="math_toolkit.history2.h30"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.boost_1_47"></a></span><a class="link" href="history2.html#math_toolkit.history2.boost_1_47">Boost-1.47</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -1177,7 +1213,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h30"></a>
|
||||
<a name="math_toolkit.history2.h31"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.boost_1_46_1"></a></span><a class="link" href="history2.html#math_toolkit.history2.boost_1_46_1">Boost-1.46.1</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
|
||||
@@ -1185,7 +1221,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
<a href="https://svn.boost.org/trac/boost/ticket/5095" target="_top">#5113</a>.
|
||||
</li></ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h31"></a>
|
||||
<a name="math_toolkit.history2.h32"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.boost_1_46_0"></a></span><a class="link" href="history2.html#math_toolkit.history2.boost_1_46_0">Boost-1.46.0</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -1200,7 +1236,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h32"></a>
|
||||
<a name="math_toolkit.history2.h33"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.boost_1_45_0"></a></span><a class="link" href="history2.html#math_toolkit.history2.boost_1_45_0">Boost-1.45.0</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -1217,7 +1253,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h33"></a>
|
||||
<a name="math_toolkit.history2.h34"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.boost_1_44_0"></a></span><a class="link" href="history2.html#math_toolkit.history2.boost_1_44_0">Boost-1.44.0</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -1231,7 +1267,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h34"></a>
|
||||
<a name="math_toolkit.history2.h35"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.boost_1_41_0"></a></span><a class="link" href="history2.html#math_toolkit.history2.boost_1_41_0">Boost-1.41.0</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
|
||||
@@ -1239,7 +1275,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
its inverse.
|
||||
</li></ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h35"></a>
|
||||
<a name="math_toolkit.history2.h36"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.boost_1_40_0"></a></span><a class="link" href="history2.html#math_toolkit.history2.boost_1_40_0">Boost-1.40.0</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -1275,7 +1311,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h36"></a>
|
||||
<a name="math_toolkit.history2.h37"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.boost_1_38_0"></a></span><a class="link" href="history2.html#math_toolkit.history2.boost_1_38_0">Boost-1.38.0</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -1287,14 +1323,14 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h37"></a>
|
||||
<a name="math_toolkit.history2.h38"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.boost_1_37_0"></a></span><a class="link" href="history2.html#math_toolkit.history2.boost_1_37_0">Boost-1.37.0</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
|
||||
Improved accuracy and testing of the inverse hypergeometric functions.
|
||||
</li></ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h38"></a>
|
||||
<a name="math_toolkit.history2.h39"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.boost_1_36_0"></a></span><a class="link" href="history2.html#math_toolkit.history2.boost_1_36_0">Boost-1.36.0</a>
|
||||
</h5>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||||
@@ -1327,7 +1363,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h39"></a>
|
||||
<a name="math_toolkit.history2.h40"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.boost_1_35_0_post_review_first_o"></a></span><a class="link" href="history2.html#math_toolkit.history2.boost_1_35_0_post_review_first_o">Boost-1.35.0:
|
||||
Post Review First Official Release</a>
|
||||
</h5>
|
||||
@@ -1359,7 +1395,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h40"></a>
|
||||
<a name="math_toolkit.history2.h41"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.milestone_4_second_review_candid"></a></span><a class="link" href="history2.html#math_toolkit.history2.milestone_4_second_review_candid">Milestone
|
||||
4: Second Review Candidate (1st March 2007)</a>
|
||||
</h5>
|
||||
@@ -1373,7 +1409,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h41"></a>
|
||||
<a name="math_toolkit.history2.h42"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.milestone_3_first_review_candida"></a></span><a class="link" href="history2.html#math_toolkit.history2.milestone_3_first_review_candida">Milestone
|
||||
3: First Review Candidate (31st Dec 2006)</a>
|
||||
</h5>
|
||||
@@ -1401,7 +1437,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h42"></a>
|
||||
<a name="math_toolkit.history2.h43"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.milestone_2_released_september_1"></a></span><a class="link" href="history2.html#math_toolkit.history2.milestone_2_released_september_1">Milestone
|
||||
2: Released September 10th 2006</a>
|
||||
</h5>
|
||||
@@ -1437,7 +1473,7 @@ by switching to use the Students t distribution (or Normal distribution
|
||||
</li>
|
||||
</ul></div>
|
||||
<h5>
|
||||
<a name="math_toolkit.history2.h43"></a>
|
||||
<a name="math_toolkit.history2.h44"></a>
|
||||
<span class="phrase"><a name="math_toolkit.history2.milestone_1_released_march_31st_"></a></span><a class="link" href="history2.html#math_toolkit.history2.milestone_1_released_march_31st_">Milestone
|
||||
1: Released March 31st 2006</a>
|
||||
</h5>
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
<a name="math_toolkit.navigation"></a><a class="link" href="navigation.html" title="Navigation">Navigation</a>
|
||||
</h2></div></div></div>
|
||||
<p>
|
||||
<a class="indexterm" name="id1028515"></a>
|
||||
<a class="indexterm" name="id949810"></a>
|
||||
</p>
|
||||
<p>
|
||||
Boost.Math documentation is provided in both HTML and PDF formats.
|
||||
|
||||
@@ -31,6 +31,8 @@
|
||||
Numbers</a></span></dt>
|
||||
<dt><span class="section"><a href="number_series/tangent_numbers.html">Tangent Numbers</a></span></dt>
|
||||
<dt><span class="section"><a href="number_series/primes.html">Prime Numbers</a></span></dt>
|
||||
<dt><span class="section"><a href="number_series/fibonacci_numbers.html">Fibonacci
|
||||
Numbers</a></span></dt>
|
||||
</dl></div>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
|
||||
198
doc/html/math_toolkit/number_series/fibonacci_numbers.html
Normal file
198
doc/html/math_toolkit/number_series/fibonacci_numbers.html
Normal file
@@ -0,0 +1,198 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<title>Fibonacci Numbers</title>
|
||||
<link rel="stylesheet" href="../../math.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
|
||||
<link rel="home" href="../../index.html" title="Math Toolkit 3.0.0">
|
||||
<link rel="up" href="../number_series.html" title="Number Series">
|
||||
<link rel="prev" href="primes.html" title="Prime Numbers">
|
||||
<link rel="next" href="../sf_gamma.html" title="Gamma Functions">
|
||||
</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="primes.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../number_series.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="../sf_gamma.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
<a name="math_toolkit.number_series.fibonacci_numbers"></a><a class="link" href="fibonacci_numbers.html" title="Fibonacci Numbers">Fibonacci
|
||||
Numbers</a>
|
||||
</h3></div></div></div>
|
||||
<p>
|
||||
<a href="https://en.wikipedia.org/wiki/Fibonacci_number" target="_top">Fibonacci numbers</a>
|
||||
(F<sub>n</sub>) follows the linear recurrence F<sub>n</sub>=F<sub>n-1</sub>+F<sub>n-2</sub> starting with F<sub>0</sub>=0, F<sub>1</sub>=1.
|
||||
</p>
|
||||
<h5>
|
||||
<a name="math_toolkit.number_series.fibonacci_numbers.h0"></a>
|
||||
<span class="phrase"><a name="math_toolkit.number_series.fibonacci_numbers.synopsis"></a></span><a class="link" href="fibonacci_numbers.html#math_toolkit.number_series.fibonacci_numbers.synopsis">Synopsis</a>
|
||||
</h5>
|
||||
<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special"><</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">fibonacci</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<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"><</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Policy</span><span class="special">></span>
|
||||
<span class="keyword">constexpr</span> <span class="identifier">T</span> <span class="identifier">fibonacci</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">long</span> <span class="keyword">long</span> <span class="identifier">n</span><span class="special">)</span> <span class="comment">// Checked version (default policy)</span>
|
||||
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">class</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Policy</span><span class="special">></span>
|
||||
<span class="keyword">constexpr</span> <span class="identifier">T</span> <span class="identifier">fibonacci</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">long</span> <span class="keyword">long</span> <span class="identifier">n</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Policy</span> <span class="special">&</span><span class="identifier">pol</span><span class="special">)</span> <span class="comment">// Checked version (policy for errors etc.)</span>
|
||||
|
||||
<span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">></span>
|
||||
<span class="keyword">constexpr</span> <span class="identifier">T</span> <span class="identifier">unchecked_fibonacci</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">long</span> <span class="keyword">long</span> <span class="identifier">n</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">is_fundamental</span><span class="special"><</span><span class="identifier">T</span><span class="special">>::</span><span class="identifier">value</span><span class="special">);</span> <span class="special">{</span> <span class="comment">// Unchecked version (no policy).</span>
|
||||
|
||||
<span class="special">}}</span> <span class="comment">// namespaces</span>
|
||||
</pre>
|
||||
<p>
|
||||
The functions return F<sub>n</sub> for a given input <code class="literal">n</code> having type
|
||||
<code class="literal">T</code>.
|
||||
</p>
|
||||
<h5>
|
||||
<a name="math_toolkit.number_series.fibonacci_numbers.h1"></a>
|
||||
<span class="phrase"><a name="math_toolkit.number_series.fibonacci_numbers.description"></a></span><a class="link" href="fibonacci_numbers.html#math_toolkit.number_series.fibonacci_numbers.description">Description</a>
|
||||
</h5>
|
||||
<p>
|
||||
The checked versions checks for the overflow before starting the computation.
|
||||
If <code class="literal">n</code> is so large that the result can not be represented
|
||||
in type <code class="literal">T</code>, it then calls <a class="link" href="../error_handling.html#math_toolkit.error_handling.overflow_error">overflow_error</a>.
|
||||
The overflow check is susceptible to off-by-one errors around the overflow
|
||||
limit. See Binet's Formula below for more details on the check.
|
||||
</p>
|
||||
<p>
|
||||
These functions are all <code class="computeroutput"><span class="keyword">constexpr</span></code>
|
||||
from C++14 onwards, and in addition <code class="computeroutput"><span class="identifier">unchecked_fibonacci</span></code>
|
||||
is <code class="computeroutput"><span class="keyword">noexcept</span></code> when T is a fundamental
|
||||
type.
|
||||
</p>
|
||||
<p>
|
||||
The final <a class="link" href="../../policy.html" title="Chapter 21. Policies: Controlling Precision, Error Handling etc">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="Chapter 21. Policies: Controlling Precision, Error Handling etc">policy
|
||||
documentation for more details</a>.
|
||||
</p>
|
||||
<p>
|
||||
If in the checked version, the overflow check succeeds then the unchecked
|
||||
version is called which computes the desired F<sub>n</sub>. Checked version is slower
|
||||
because of the overhead involved in overflow check.
|
||||
</p>
|
||||
<h5>
|
||||
<a name="math_toolkit.number_series.fibonacci_numbers.h2"></a>
|
||||
<span class="phrase"><a name="math_toolkit.number_series.fibonacci_numbers.generator"></a></span><a class="link" href="fibonacci_numbers.html#math_toolkit.number_series.fibonacci_numbers.generator">Generator</a>
|
||||
</h5>
|
||||
<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special"><</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">fibonacci</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<pre class="programlisting"><span class="keyword">template</span> <span class="special"><</span><span class="keyword">typename</span> <span class="identifier">T</span><span class="special">></span>
|
||||
<span class="keyword">class</span> <span class="identifier">fibonacci_generator</span> <span class="special">{</span>
|
||||
<span class="comment">// returns consecutive fibonacci number starting from 0, 1, 1, 2, ...</span>
|
||||
<span class="identifier">T</span> <span class="keyword">operator</span><span class="special">()();</span>
|
||||
<span class="comment">// reset the generator to start from nth fibonacci number</span>
|
||||
<span class="keyword">void</span> <span class="identifier">set</span><span class="special">(</span><span class="keyword">unsigned</span> <span class="keyword">long</span> <span class="keyword">long</span> <span class="identifier">n</span><span class="special">);</span>
|
||||
<span class="special">}</span>
|
||||
</pre>
|
||||
<p>
|
||||
The generator returns consecutive fibonacci numbers starting with 0, 1, 1,
|
||||
2...
|
||||
</p>
|
||||
<p>
|
||||
The state of the generator can be modified using <code class="literal">set()</code>
|
||||
which makes generator return consecutive fibonacci numbers starting from
|
||||
<code class="literal">n</code>[sup th] fibonacci number.
|
||||
</p>
|
||||
<pre class="programlisting"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">fibonacci_generator</span><span class="special"><</span><span class="keyword">int</span><span class="special">></span> <span class="identifier">gen</span><span class="special">;</span>
|
||||
<span class="keyword">int</span> <span class="identifier">x</span> <span class="special">=</span> <span class="identifier">gen</span><span class="special">();</span> <span class="comment">// x is 0</span>
|
||||
<span class="keyword">int</span> <span class="identifier">y</span> <span class="special">=</span> <span class="identifier">gen</span><span class="special">();</span> <span class="comment">// y is 1</span>
|
||||
<span class="keyword">for</span><span class="special">(</span><span class="keyword">int</span> <span class="identifier">i</span> <span class="special">=</span> <span class="number">0</span><span class="special">;</span> <span class="identifier">i</span> <span class="special"><</span> <span class="number">5</span><span class="special">;</span> <span class="special">++</span><span class="identifier">i</span><span class="special">)</span> <span class="comment">// this loop is same as gen.set(7);</span>
|
||||
<span class="identifier">gen</span><span class="special">();</span>
|
||||
<span class="keyword">int</span> <span class="identifier">z</span> <span class="special">=</span> <span class="identifier">gen</span><span class="special">();</span> <span class="comment">// z is 13 </span>
|
||||
</pre>
|
||||
<p>
|
||||
Generator is non-throwing for all fundamental types and will not check for
|
||||
overflows.
|
||||
</p>
|
||||
<h5>
|
||||
<a name="math_toolkit.number_series.fibonacci_numbers.h3"></a>
|
||||
<span class="phrase"><a name="math_toolkit.number_series.fibonacci_numbers.type_requirements"></a></span><a class="link" href="fibonacci_numbers.html#math_toolkit.number_series.fibonacci_numbers.type_requirements">Type
|
||||
Requirements</a>
|
||||
</h5>
|
||||
<p>
|
||||
The type must be an arithmetic type supporting +, -, * and can be initialized
|
||||
from trivial integral types.
|
||||
</p>
|
||||
<h5>
|
||||
<a name="math_toolkit.number_series.fibonacci_numbers.h4"></a>
|
||||
<span class="phrase"><a name="math_toolkit.number_series.fibonacci_numbers.example"></a></span><a class="link" href="fibonacci_numbers.html#math_toolkit.number_series.fibonacci_numbers.example">Example</a>
|
||||
</h5>
|
||||
<p>
|
||||
The file <a href="../../../../example/reciprocal_fibonacci_constant.cpp" target="_top">reciprocal_fibonacci_constant.cpp</a>
|
||||
uses <code class="computeroutput"><span class="identifier">fibonacci_generator</span></code>
|
||||
to calculate the reciprocal fibonacci constant to 1000 digit precision like
|
||||
so:
|
||||
</p>
|
||||
<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special"><</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">fibonacci</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">multiprecision</span><span class="special">/</span><span class="identifier">mpfr</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">iomanip</span><span class="special">></span>
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">iostream</span><span class="special">></span>
|
||||
|
||||
<span class="keyword">int</span> <span class="identifier">main</span><span class="special">()</span> <span class="special">{</span>
|
||||
<span class="keyword">using</span> <span class="identifier">Real</span> <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">multiprecision</span><span class="special">::</span><span class="identifier">mpfr_float_1000</span><span class="special">;</span>
|
||||
<span class="identifier">boost</span><span class="special">::</span><span class="identifier">math</span><span class="special">::</span><span class="identifier">fibonacci_generator</span><span class="special"><</span><span class="identifier">Real</span><span class="special">></span> <span class="identifier">gen</span><span class="special">;</span>
|
||||
<span class="identifier">gen</span><span class="special">.</span><span class="identifier">set</span><span class="special">(</span><span class="number">1</span><span class="special">);</span> <span class="comment">// start producing values from 1st fibonacci number</span>
|
||||
<span class="identifier">Real</span> <span class="identifier">ans</span> <span class="special">=</span> <span class="number">0</span><span class="special">;</span>
|
||||
<span class="keyword">const</span> <span class="keyword">int</span> <span class="identifier">ITR</span> <span class="special">=</span> <span class="number">1000</span><span class="special">;</span>
|
||||
<span class="keyword">for</span> <span class="special">(</span><span class="keyword">int</span> <span class="identifier">i</span> <span class="special">=</span> <span class="number">0</span><span class="special">;</span> <span class="identifier">i</span> <span class="special"><</span> <span class="identifier">ITR</span><span class="special">;</span> <span class="special">++</span><span class="identifier">i</span><span class="special">)</span> <span class="special">{</span>
|
||||
<span class="identifier">ans</span> <span class="special">+=</span> <span class="number">1.0</span> <span class="special">/</span> <span class="identifier">gen</span><span class="special">();</span>
|
||||
<span class="special">}</span>
|
||||
<span class="identifier">std</span><span class="special">::</span><span class="identifier">cout</span> <span class="special"><<</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">setprecision</span><span class="special">(</span><span class="number">1000</span><span class="special">)</span> <span class="special"><<</span> <span class="string">"Reciprocal fibonacci constant after "</span>
|
||||
<span class="special"><<</span> <span class="identifier">ITR</span> <span class="special"><<</span> <span class="string">" iterations is: "</span> <span class="special"><<</span> <span class="identifier">ans</span> <span class="special"><<</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span>
|
||||
<span class="special">}</span>
|
||||
</pre>
|
||||
<h5>
|
||||
<a name="math_toolkit.number_series.fibonacci_numbers.h5"></a>
|
||||
<span class="phrase"><a name="math_toolkit.number_series.fibonacci_numbers.implementation"></a></span><a class="link" href="fibonacci_numbers.html#math_toolkit.number_series.fibonacci_numbers.implementation">Implementation</a>
|
||||
</h5>
|
||||
<p>
|
||||
The time complexity for computing fibonacci number is O(log n), without considering
|
||||
the time complexities of multiplication and addition (where <code class="literal">n</code>
|
||||
is the input parameter). The implementation is iterative version of <a href="http://www.cs.utexas.edu/users/EWD/ewd06xx/EWD654.PDF" target="_top">Dijkstra's identities</a>
|
||||
and which simply walks down the bits of <code class="literal">n</code>.
|
||||
</p>
|
||||
<h5>
|
||||
<a name="math_toolkit.number_series.fibonacci_numbers.h6"></a>
|
||||
<span class="phrase"><a name="math_toolkit.number_series.fibonacci_numbers.binet"></a></span><a class="link" href="fibonacci_numbers.html#math_toolkit.number_series.fibonacci_numbers.binet">Binet's
|
||||
Formula</a>
|
||||
</h5>
|
||||
<p>
|
||||
There is a closed form expression for computing fibonacci numbers but since
|
||||
it suffers from imprecision issues (using floating point computation), it
|
||||
is not implemented.
|
||||
</p>
|
||||
<p>
|
||||
However an approximate formula is used for the overflow checking in the checked
|
||||
version.
|
||||
</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 © 2006-2021 Nikhar Agrawal, Anton Bikineev, Matthew Borland,
|
||||
Paul A. Bristow, Marco Guazzone, Christopher Kormanyos, Hubert Holin, Bruno
|
||||
Lalande, John Maddock, Evan Miller, Jeremy Murphy, Matthew Pulver, Johan Råde,
|
||||
Gautam Sewani, Benjamin Sobotta, Nicholas Thompson, Thijs van den Berg, Daryle
|
||||
Walker and Xiaogang Zhang<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="primes.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../number_series.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="../sf_gamma.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -7,7 +7,7 @@
|
||||
<link rel="home" href="../../index.html" title="Math Toolkit 3.0.0">
|
||||
<link rel="up" href="../number_series.html" title="Number Series">
|
||||
<link rel="prev" href="tangent_numbers.html" title="Tangent Numbers">
|
||||
<link rel="next" href="../sf_gamma.html" title="Gamma Functions">
|
||||
<link rel="next" href="fibonacci_numbers.html" title="Fibonacci Numbers">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%"><tr>
|
||||
@@ -20,7 +20,7 @@
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="tangent_numbers.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../number_series.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="../sf_gamma.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
<a accesskey="p" href="tangent_numbers.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../number_series.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="fibonacci_numbers.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h3 class="title">
|
||||
@@ -83,7 +83,7 @@
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="tangent_numbers.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../number_series.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="../sf_gamma.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
<a accesskey="p" href="tangent_numbers.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../number_series.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="fibonacci_numbers.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
<link rel="home" href="../index.html" title="Math Toolkit 3.0.0">
|
||||
<link rel="up" href="../interpolation.html" title="Chapter 12. Interpolation">
|
||||
<link rel="prev" href="pchip.html" title="PCHIP interpolation">
|
||||
<link rel="next" href="../quadrature.html" title="Chapter 13. Quadrature and Differentiation">
|
||||
<link rel="next" href="bilinear_uniform.html" title="Bilinear Uniform Interpolation">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
<table cellpadding="2" width="100%"><tr>
|
||||
@@ -20,7 +20,7 @@
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="pchip.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../interpolation.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="../quadrature.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
<a accesskey="p" href="pchip.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../interpolation.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="bilinear_uniform.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
@@ -236,7 +236,7 @@
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="pchip.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../interpolation.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="../quadrature.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
<a accesskey="p" href="pchip.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../interpolation.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="bilinear_uniform.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
|
||||
<link rel="home" href="../index.html" title="Math Toolkit 3.0.0">
|
||||
<link rel="up" href="../special.html" title="Chapter 8. Special Functions">
|
||||
<link rel="prev" href="number_series/primes.html" title="Prime Numbers">
|
||||
<link rel="prev" href="number_series/fibonacci_numbers.html" title="Fibonacci Numbers">
|
||||
<link rel="next" href="sf_gamma/tgamma.html" title="Gamma">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
@@ -20,7 +20,7 @@
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="number_series/primes.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../special.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="sf_gamma/tgamma.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
<a accesskey="p" href="number_series/fibonacci_numbers.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../special.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="sf_gamma/tgamma.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="section">
|
||||
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
|
||||
@@ -54,7 +54,7 @@
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="number_series/primes.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../special.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="sf_gamma/tgamma.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
<a accesskey="p" href="number_series/fibonacci_numbers.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../special.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="sf_gamma/tgamma.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
|
||||
<link rel="home" href="index.html" title="Math Toolkit 3.0.0">
|
||||
<link rel="up" href="index.html" title="Math Toolkit 3.0.0">
|
||||
<link rel="prev" href="math_toolkit/quintic_hermite.html" title="Quintic Hermite interpolation">
|
||||
<link rel="prev" href="math_toolkit/bilinear_uniform.html" title="Bilinear Uniform Interpolation">
|
||||
<link rel="next" href="math_toolkit/trapezoidal.html" title="Trapezoidal Quadrature">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
@@ -20,7 +20,7 @@
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="math_toolkit/quintic_hermite.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="index.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="math_toolkit/trapezoidal.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
<a accesskey="p" href="math_toolkit/bilinear_uniform.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="index.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="math_toolkit/trapezoidal.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
<div class="chapter">
|
||||
<div class="titlepage"><div><div><h1 class="title">
|
||||
@@ -70,7 +70,7 @@
|
||||
</tr></table>
|
||||
<hr>
|
||||
<div class="spirit-nav">
|
||||
<a accesskey="p" href="math_toolkit/quintic_hermite.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="index.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="math_toolkit/trapezoidal.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
<a accesskey="p" href="math_toolkit/bilinear_uniform.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="index.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="math_toolkit/trapezoidal.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -34,6 +34,8 @@
|
||||
Numbers</a></span></dt>
|
||||
<dt><span class="section"><a href="math_toolkit/number_series/tangent_numbers.html">Tangent Numbers</a></span></dt>
|
||||
<dt><span class="section"><a href="math_toolkit/number_series/primes.html">Prime Numbers</a></span></dt>
|
||||
<dt><span class="section"><a href="math_toolkit/number_series/fibonacci_numbers.html">Fibonacci
|
||||
Numbers</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="section"><a href="math_toolkit/sf_gamma.html">Gamma Functions</a></span></dt>
|
||||
<dd><dl>
|
||||
|
||||
@@ -168,6 +168,7 @@ math_toolkit/number_series.html
|
||||
math_toolkit/number_series/bernoulli_numbers.html
|
||||
math_toolkit/number_series/tangent_numbers.html
|
||||
math_toolkit/number_series/primes.html
|
||||
math_toolkit/number_series/fibonacci_numbers.html
|
||||
math_toolkit/sf_gamma.html
|
||||
math_toolkit/sf_gamma/tgamma.html
|
||||
math_toolkit/sf_gamma/lgamma.html
|
||||
@@ -326,6 +327,7 @@ math_toolkit/cubic_hermite.html
|
||||
math_toolkit/makima.html
|
||||
math_toolkit/pchip.html
|
||||
math_toolkit/quintic_hermite.html
|
||||
math_toolkit/bilinear_uniform.html
|
||||
quadrature.html
|
||||
math_toolkit/trapezoidal.html
|
||||
math_toolkit/gauss.html
|
||||
|
||||
@@ -8,6 +8,18 @@ All old bug reports including closed ones can be viewed on Trac
|
||||
|
||||
Recent issues on GitHub [@https://github.com/boostorg/math/issues?utf8=%E2%9C%93&q=is%3Aissue here].
|
||||
|
||||
[h4 Math-3.1.0 (Boost-1.77)]
|
||||
|
||||
* This library can now be used entirely standalone, without the rest of Boost: either use a compiler
|
||||
which supports `__has_include` or define `BOOST_MATH_STANDALONE` to enable standalone mode.
|
||||
* Add [link math_toolkit.bilinear_uniform Bilinear Uniform Interpolation].
|
||||
* Add [link math_toolkit.number_series.fibonacci_numbers Fibonacci Numbers].
|
||||
* Fix Hypergeometric Distribution kertosis, see [@https://github.com/boostorg/math/issues/639 #639].
|
||||
* Fix closed Catmull-Rom curves to have the same start/end point. See [@https://github.com/boostorg/math/issues/636 #636].
|
||||
* Correct Bernoulli number caching in multi-threading multiprecision case.
|
||||
* Re-enabled the ability to build in environments with no std lib threading support. See [@https://github.com/boostorg/math/issues/621 #621].
|
||||
* Correct Gini-coefficient parrellel calculation.
|
||||
|
||||
[h4 Math-3.0.0 (Boost-1.76)]
|
||||
|
||||
* [*Breaking Change:] C++03 support is now removed, a C++11 or later conformant compiler is now required to use this library.
|
||||
|
||||
@@ -261,11 +261,100 @@ This function is `constexpr` only if the compiler supports C++14 constexpr funct
|
||||
|
||||
[endsect] [/section:primes]
|
||||
|
||||
[section:fibonacci_numbers Fibonacci Numbers]
|
||||
|
||||
[@https://en.wikipedia.org/wiki/Fibonacci_number Fibonacci numbers] (F[sub n]) follows the linear recurrence F[sub n]=F[sub n-1]+F[sub n-2] starting with F[sub 0]=0, F[sub 1]=1.
|
||||
|
||||
[h4 Synopsis]
|
||||
|
||||
``
|
||||
#include <boost/math/special_functions/fibonacci.hpp>
|
||||
``
|
||||
|
||||
namespace boost { namespace math {
|
||||
|
||||
template <class T, class Policy>
|
||||
constexpr T fibonacci(unsigned long long n) // Checked version (default policy)
|
||||
|
||||
template <class T, class Policy>
|
||||
constexpr T fibonacci(unsigned long long n, const Policy &pol) // Checked version (policy for errors etc.)
|
||||
|
||||
template <typename T>
|
||||
constexpr T unchecked_fibonacci(unsigned long long n) noexcept(std::is_fundamental<T>::value); { // Unchecked version (no policy).
|
||||
|
||||
}} // namespaces
|
||||
|
||||
The functions return F[sub n] for a given input [^n] having type [^T].
|
||||
|
||||
[h4 Description]
|
||||
The checked versions checks for the overflow before starting the computation. If [^n] is so large that the result can not
|
||||
be represented in type [^T], it then calls __overflow_error. The overflow check is susceptible to off-by-one errors around the overflow limit. See Binet's Formula below for more details on the check.
|
||||
|
||||
These functions are all `constexpr` from C++14 onwards, and in addition `unchecked_fibonacci` is `noexcept` when T is a fundamental type.
|
||||
|
||||
[optional_policy]
|
||||
|
||||
If in the checked version, the overflow check succeeds then the unchecked version is called which computes the desired F[sub n]. Checked version is slower because of the overhead involved in overflow check.
|
||||
|
||||
[h4 Generator]
|
||||
|
||||
``
|
||||
#include <boost/math/special_functions/fibonacci.hpp>
|
||||
``
|
||||
|
||||
template <typename T>
|
||||
class fibonacci_generator {
|
||||
// returns consecutive fibonacci number starting from 0, 1, 1, 2, ...
|
||||
T operator()();
|
||||
// reset the generator to start from nth fibonacci number
|
||||
void set(unsigned long long n);
|
||||
}
|
||||
|
||||
The generator returns consecutive fibonacci numbers starting with 0, 1, 1, 2...
|
||||
|
||||
The state of the generator can be modified using [^set()] which makes generator return consecutive fibonacci numbers starting from [^n][sup th] fibonacci number.
|
||||
|
||||
boost::math::fibonacci_generator<int> gen;
|
||||
int x = gen(); // x is 0
|
||||
int y = gen(); // y is 1
|
||||
for(int i = 0; i < 5; ++i) // this loop is same as gen.set(7);
|
||||
gen();
|
||||
int z = gen(); // z is 13
|
||||
|
||||
|
||||
Generator is non-throwing for all fundamental types and will not check for overflows.
|
||||
|
||||
[h4 Type Requirements]
|
||||
|
||||
The type must be an arithmetic type supporting +, -, * and can be initialized from trivial integral types.
|
||||
|
||||
[h4 Example]
|
||||
|
||||
The file [@../../example/reciprocal_fibonacci_constant.cpp reciprocal_fibonacci_constant.cpp] uses `fibonacci_generator` to calculate the
|
||||
reciprocal fibonacci constant to 1000 digit precision like so:
|
||||
|
||||
[import ../../example/reciprocal_fibonacci_constant.cpp]
|
||||
|
||||
[fibonacci_eg]
|
||||
|
||||
[h4 Implementation]
|
||||
|
||||
The time complexity for computing fibonacci number is O(log n), without considering the time complexities of multiplication and addition (where [^n] is the input parameter).
|
||||
The implementation is iterative version of [@http://www.cs.utexas.edu/users/EWD/ewd06xx/EWD654.PDF Dijkstra's identities] and which simply walks down the bits of [^n].
|
||||
|
||||
[h4:binet Binet's Formula]
|
||||
|
||||
There is a closed form expression for computing fibonacci numbers but since it suffers from imprecision issues (using floating point computation), it is not implemented.
|
||||
|
||||
However an approximate formula is used for the overflow checking in the checked version.
|
||||
|
||||
[endsect] [/Fibonacci Numbers]
|
||||
|
||||
[endsect] [/Number Series]
|
||||
|
||||
[/
|
||||
Copyright 2013, 2014 Nikhar Agrawal, Christopher Kormanyos, John Maddock, Paul A. Bristow.
|
||||
Distributed under the Boost Software License, Version 1.0.
|
||||
Copyright 2020 Madhur Chauhan. 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).
|
||||
]
|
||||
|
||||
@@ -150,7 +150,7 @@ test-suite examples :
|
||||
[ run ooura_fourier_integrals_example.cpp : : : [ requires cxx11_hdr_mutex cxx11_lambdas cxx11_inline_namespaces cxx11_auto_declarations ] ]
|
||||
[ run ooura_fourier_integrals_cosine_example.cpp : : : [ requires cxx11_hdr_mutex cxx11_inline_namespaces cxx11_auto_declarations cxx17_std_apply ] ]
|
||||
[ run ooura_fourier_integrals_multiprecision_example.cpp : : : [ check-target-builds ../config//has_float128 "GCC libquadmath and __float128 support" : <linkflags>-lquadmath ] [ requires cxx11_hdr_mutex cxx11_inline_namespaces cxx11_auto_declarations cxx17_std_apply ] ]
|
||||
|
||||
[ run reciprocal_fibonacci_constant.cpp : : : [ check-target-builds ../config//has_mpfr "MPFR Support" : <linkflags>"-lmpfr -lgmp" : <build>no ] ]
|
||||
;
|
||||
|
||||
run root_elliptic_finding.cpp /boost/timer : : : release <link>static [ requires cxx11_unified_initialization_syntax cxx11_defaulted_functions ] <target-os>freebsd:<linkflags>"-lrt" <target-os>linux:<linkflags>"-lrt -lpthread" ;
|
||||
|
||||
@@ -8,6 +8,8 @@
|
||||
// This is an example to calculate Reciprocal Fibonacci Constant (A079586 in the OEIS)
|
||||
// compile with flags: -std=c++11 -lmpfr
|
||||
|
||||
//[fibonacci_eg
|
||||
|
||||
#include <boost/math/special_functions/fibonacci.hpp>
|
||||
#include <boost/multiprecision/mpfr.hpp>
|
||||
#include <iomanip>
|
||||
@@ -25,3 +27,5 @@ int main() {
|
||||
std::cout << std::setprecision(1000) << "Reciprocal fibonacci constant after "
|
||||
<< ITR << " iterations is: " << ans << std::endl;
|
||||
}
|
||||
|
||||
//]
|
||||
|
||||
@@ -21,14 +21,12 @@ namespace boost {
|
||||
namespace math {
|
||||
|
||||
namespace detail {
|
||||
// this should be constexpr in future
|
||||
const double log_2 = std::log(2.0),
|
||||
fib_bits_phi = std::log(boost::math::constants::phi<double>()) / log_2,
|
||||
fib_bits_deno = std::log(5.0) / 2.0 / log_2;
|
||||
constexpr double fib_bits_phi = 0.69424191363061730173879026;
|
||||
constexpr double fib_bits_deno = 1.1609640474436811739351597;
|
||||
} // namespace detail
|
||||
|
||||
template <typename T>
|
||||
inline constexpr T unchecked_fibonacci(unsigned long long n) noexcept {
|
||||
inline BOOST_CXX14_CONSTEXPR T unchecked_fibonacci(unsigned long long n) noexcept(std::is_fundamental<T>::value) {
|
||||
// This function is called by the rest and computes the actual nth fibonacci number
|
||||
// First few fibonacci numbers: 0 (0th), 1 (1st), 1 (2nd), 2 (3rd), ...
|
||||
if (n <= 2) return n == 0 ? 0 : 1;
|
||||
@@ -52,7 +50,7 @@ inline constexpr T unchecked_fibonacci(unsigned long long n) noexcept {
|
||||
}
|
||||
|
||||
template <typename T, class Policy>
|
||||
T inline fibonacci(unsigned long long n, const Policy &pol) {
|
||||
T inline BOOST_CXX14_CONSTEXPR fibonacci(unsigned long long n, const Policy &pol) {
|
||||
// check for overflow using approximation to binet's formula: F_n ~ phi^n / sqrt(5)
|
||||
if (n > 20 && n * detail::fib_bits_phi - detail::fib_bits_deno > std::numeric_limits<T>::digits)
|
||||
return policies::raise_overflow_error<T>("boost::math::fibonacci<%1%>(unsigned long long)", "Possible overflow detected.", pol);
|
||||
@@ -60,7 +58,7 @@ T inline fibonacci(unsigned long long n, const Policy &pol) {
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
T inline fibonacci(unsigned long long n) {
|
||||
T inline BOOST_CXX14_CONSTEXPR fibonacci(unsigned long long n) {
|
||||
return fibonacci<T>(n, policies::policy<>());
|
||||
}
|
||||
|
||||
@@ -69,7 +67,7 @@ template <typename T>
|
||||
class fibonacci_generator {
|
||||
public:
|
||||
// return next fibonacci number
|
||||
T operator()() noexcept {
|
||||
T operator()() noexcept(std::is_fundamental<T>::value) {
|
||||
T ret = a;
|
||||
a = b, b = b + ret; // could've simply: swap(a, b), b += a;
|
||||
return ret;
|
||||
@@ -77,7 +75,7 @@ class fibonacci_generator {
|
||||
|
||||
// after set(nth), subsequent calls to the generator returns consecutive
|
||||
// fibonacci numbers starting with the nth fibonacci number
|
||||
void set(unsigned long long nth) noexcept {
|
||||
void set(unsigned long long nth) noexcept(std::is_fundamental<T>::value) {
|
||||
n = nth;
|
||||
a = unchecked_fibonacci<T>(n);
|
||||
b = unchecked_fibonacci<T>(n + 1);
|
||||
|
||||
@@ -495,7 +495,7 @@ test-suite special_fun :
|
||||
[ run test_trig.cpp test_instances//test_instances pch_light ../../test/build//boost_unit_test_framework ]
|
||||
[ run test_zeta.cpp ../../test/build//boost_unit_test_framework test_instances//test_instances pch_light ]
|
||||
[ run test_sinc.cpp ../../test/build//boost_unit_test_framework pch_light ]
|
||||
[ run test_fibonacci.cpp ../../test/build//boost_unit_test_framework : : : [ requires cxx17_if_constexpr cxx17_std_apply ] ]
|
||||
[ run test_fibonacci.cpp ../../test/build//boost_unit_test_framework ]
|
||||
;
|
||||
|
||||
test-suite distribution_tests :
|
||||
|
||||
@@ -94,13 +94,21 @@ BOOST_AUTO_TEST_CASE(generator_check) {
|
||||
}
|
||||
}
|
||||
|
||||
#ifndef BOOST_NO_CXX14_CONSTEXPR
|
||||
|
||||
BOOST_AUTO_TEST_CASE(constexpr_check) {
|
||||
constexpr int x = boost::math::unchecked_fibonacci<int>(32);
|
||||
BOOST_TEST(x == 2178309);
|
||||
static_assert(x == 2178309);
|
||||
|
||||
constexpr double y = boost::math::unchecked_fibonacci<double>(40);
|
||||
BOOST_TEST(y == 102334155.0);
|
||||
static_assert(y == 102334155.0);
|
||||
|
||||
constexpr int xx = boost::math::fibonacci<int>(32);
|
||||
static_assert(xx == 2178309);
|
||||
|
||||
constexpr double yy = boost::math::fibonacci<double>(40);
|
||||
static_assert(yy == 102334155.0);
|
||||
|
||||
// checked fibonacci can't be constexpr because of non-constexpr
|
||||
// dependency in detail::log_2, detail::fib_bits_phi, detail::fib_bits_deno
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user