John Maddock
4a569bf1c4
Fix header order include so that ADL works
2017-05-04 11:17:11 +01:00
John Maddock
7fab3cbb0e
change namespace for gcd/lcm test
2017-05-04 11:11:12 +01:00
jzmaddock
c560cb00cb
Merge branch 'develop' of https://github.com/boostorg/math into develop
2017-05-03 13:33:58 +01:00
jzmaddock
b9362cb000
Add concept checks for cubic-spline code, and fix resulting errors.
2017-05-03 13:32:53 +01:00
jzmaddock
127178518d
Add iterator based construction to cubic B spline.
2017-05-03 13:07:54 +01:00
jzmaddock
3141e075ed
Fix min/max usage.
2017-05-02 20:06:53 +01:00
jzmaddock
e377135aaf
Move documentation structure around a bit to make way for new interpolators.
2017-05-02 20:03:22 +01:00
jzmaddock
9dd532e01a
Merge branch 'develop' of https://github.com/NAThompson/math into interpolate
2017-05-02 19:30:31 +01:00
John Maddock
41d373d89f
Remove obsolete references to NTL
2017-05-02 19:23:13 +01:00
John Maddock
fdd5f562dd
Merge branch 'building-minimax' of https://github.com/oxidase/math into t
2017-05-02 19:19:55 +01:00
jzmaddock
6407bedb75
Bring polynomial gcd into line with new Boost.Integer code, and improve tests.
2017-05-02 19:12:18 +01:00
jzmaddock
8b55166363
Bring tests into line with new Boost.Integer gcd/lcm.
2017-05-02 18:50:00 +01:00
Nick Thompson
4632cb1169
Remove typos in documentation. Remove hacks for float128 in unit tests.
2017-05-02 10:33:36 -06:00
jzmaddock
69579ae210
Update gcd/lcm docs to point to Boost.Integer.
2017-04-24 19:42:22 +01:00
jzmaddock
ceae76a526
Switch to using Boost.Integer gcd/lcm.
2017-04-24 19:26:23 +01:00
jzmaddock
1c10933943
polynomial.hpp should not be including private Boost.Config header.
2017-04-20 19:23:02 +01:00
jzmaddock
060f9e4da5
Merge branch 'gcd_cpp14' into develop
2017-04-20 19:18:41 +01:00
jzmaddock
fafda3176c
Fix gcd tests and code for clang on Linux
2017-04-20 14:43:28 +01:00
jzmaddock
82e3949024
GCD: Don't enable variadics unless the compiler supports them.
...
Update docs.
Escape from variadic GCD early when the result hits unity.
2017-04-15 18:31:01 +01:00
jzmaddock
c1ab95b6cc
Add rational and multiprecision types to common_factor_test.cpp.
...
Disable rational overloads if there is no numeric_limits support as boost::rational won't compile in that case anyway.
2017-04-15 18:13:30 +01:00
jzmaddock
e731cc8c3d
Update performance test code to work with latest gcd.
2017-04-10 12:28:57 +01:00
Nick Thompson
76a5423666
Finally learned how to use quickbook. The documentation for the cubic b spline looks good now.
2017-04-08 18:47:42 -05:00
jzmaddock
70e82419d5
Fix for expression template types.
2017-04-08 20:12:23 +01:00
jzmaddock
f74da283aa
Add variadic gcd and lcm variations, update tests to match.
2017-04-08 19:42:33 +01:00
jzmaddock
e71629f1c0
Make gcd/lcm functions constexpr and noexcept where applicable.
2017-04-08 19:13:08 +01:00
jzmaddock
8ee33649c7
Remove dead code orphaned by previous commits.
2017-04-07 09:55:31 +01:00
jzmaddock
5ca0e2ead8
Tighten up polynomial-GCD algorithm selection.
...
Disallow GCD's of polynomials of bounded integers as overflow is too likely to occur.
2017-04-07 09:44:48 +01:00
jzmaddock
8e98f30cb2
Remove SFINAE-logic and replace with simpler numeric_limits based algorithm selection.
2017-04-07 09:43:40 +01:00
jzmaddock
39006ecaca
Reinstate gcd of rational numbers.
2017-04-06 19:22:45 +01:00
jzmaddock
141fcf0b15
Disable test case which invokes undefined behaviour
2017-04-06 11:34:08 +01:00
jzmaddock
7795ad3fd1
Merge branch 'gcd_polynomial' into gcd_cpp14
2017-04-06 11:28:32 +01:00
jzmaddock
9d0dac1df9
gcd: add the function objects back.
...
Improve the gcd/lcm tests.
2017-04-04 18:29:45 +01:00
jzmaddock
e4c0fdb0f2
Make gcd/lcm independent of type_traits and mpl.
...
Later we'll try and reconcile this version with that in Boost.Integer.
2017-04-02 20:10:46 +01:00
jzmaddock
8c9709b317
Fix cases where wchar_t is not an intrinsic type.
...
Fixes: https://svn.boost.org/trac/boost/ticket/12944
2017-03-30 19:35:59 +01:00
Nick Thompson
6734b363dd
Include spline documentation in math.qbk so it gets added to the build.
2017-03-11 15:56:34 -06:00
Nick
36159a4426
Discuss how the interpolant extrapolates.
2017-03-06 11:57:25 -06:00
Nick Thompson
4efe710855
Add tests detailing the use cases which make it difficult to use std::unique_ptr for pimpl idiom. Also, test that evaluating the spline outside the interpolation region succeeds as best it can.
2017-03-06 11:12:51 -06:00
Nick Thompson
446f8c415d
Cite Kress's book 'Numerical Analysis' in MLA format.
2017-03-05 10:49:22 -06:00
Nick Thompson
7dbd074343
Add population example.
2017-03-03 08:58:18 -06:00
Nick Thompson
2506d7ed1f
Use PIMPL so that the interpolant can be passed as a functor.
2017-03-02 17:16:21 -06:00
jzmaddock
47714b4e72
Doc update of TODO list.
2017-03-02 18:56:57 +00:00
Nick Thompson
c42e8feebe
Remove all traces of the linguistically incorrect word 'routine'.
2017-03-02 12:30:12 -06:00
Nick Thompson
2b9d88d352
Fixes suggested by code review of PR #57 .
2017-03-02 11:54:55 -06:00
Nick Thompson
b157403fd9
Do not use Kahan summation to compute average; use update procedure that cannot overflow recommended by Knuth.
2017-02-27 20:58:42 -06:00
jzmaddock
f35a3551b0
Merge pull request #56 from NAThompson/patch-2
...
Remove finished TODO list entries
2017-02-27 18:12:02 +00:00
jzmaddock
b0b0810701
Update history and regenerate docs for 1.64.
2017-02-25 18:48:39 +00:00
Nick Thompson
fee20ab932
Given a function f, known at evenly spaced samples y_j = f(a + jh),
...
this function constructs an interpolant using compactly supported cubic b splines.
The advantage of using splines of compact support over traditional cubic splines
is that compact support makes the splines well-conditioned.
The interpolant is constructed in O(N) time and can be evaluated in constant time.
Its error is O(h^4), and obeys the interpolating condition s(x_j) = f(x_j) for all samples.
In addition, f' can be estimated from s', albeit with lower accuracy.
This routine is cppcheck clean, and is clean under AddressSanitizer and MemorySanitizer.
2017-02-23 18:21:06 -06:00
Nick
fa4dd6ff4c
Remove finished TODO list entries
...
Removing Jacobi elliptic functions and cylindrical Bessel/Neumann derivatives from TODO list, as they have been completed.
2017-02-22 14:08:22 -06:00
jzmaddock
4c19a1ec34
Remove unneeded parameters in new beesel J/K code.
...
Also fix some multiprecision-conceptual errors.
2017-01-29 19:18:36 +00:00
jzmaddock
38eb9d3e38
Update docs for new Bessel K0 and K1 approximation code.
2017-01-24 18:35:54 +00:00