2
0
mirror of https://github.com/boostorg/math.git synced 2026-02-21 15:12:28 +00:00
Commit Graph

1482 Commits

Author SHA1 Message Date
Nick Thompson
7660162d41 Add concept and include test. 2017-05-18 17:33:45 -06:00
Nick Thompson
4801e2d8bf Add namespace boost::math::quadrature. Remove throw when condition number of summation exceeds precision of type; how to properly mollify the condition number is not clear and should be done consistently rather than ad-hoc. 2017-05-11 21:03:00 -06:00
Nick Thompson
48a0cf714b Put license information in each file. Do not throw when condition number is approaching an undefined value; use mollification. Improve documentation. 2017-05-02 12:02:02 -06:00
Nick Thompson
fff12aa16b Improve documentation for trapezoidal quadrature, explaining the role of the L1 norm calculation. Throw correct error type. 2017-03-28 13:56:18 -05:00
Nick Thompson
9f58f0d337 Add facility to check L1 norm and hence condition number of the quadrature sum. Throw when condition number exceeds the number of significant digits of the type. 2017-03-26 13:45:50 -05:00
Nick Thompson
136e7411f5 Adaptive Trapezoidal Quadrature
This routine estimates the definite integral of a function f.
Assuming that f is periodic, it can be shown that this routine converges exponentially fast.
In fact, the test cases given exhibit exponential convergence with decreasing stepsize.

A potential improvement is using the Bulirsch sequence rather than the Romberg sequence to schedule the refinements.
However, the convergence is so rapid for functions of the class specified above that there seems to be no need at present.

This code is cppcheck clean, and runs successfully under AddressSanitizer and UndefinedBehaviorSanitizer.
2017-03-05 19:05:41 -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
jzmaddock
fe66909b23 Reorder some declarations to keep GCC happy.
Remove some dead code.
2017-01-23 19:34:34 +00:00
jzmaddock
7922883e7b Add improved approximations for K0 and K1.
Based on http://www.advanpix.com/2016/01/05/rational-approximations-for-the-modified-bessel-function-of-the-second-kind-k1-for-computations-with-double-precision/
2017-01-23 17:45:51 +00:00
jzmaddock
2dc47a631a Improve constant initialization for I0 and I1. 2017-01-23 17:45:00 +00:00
jzmaddock
cc8e300bae Update I0 and I1 to use better approximations from Pavel Holoborodko
See: http://www.advanpix.com/2015/11/11/rational-approximations-for-the-modified-bessel-function-of-the-first-kind-i0-computations-double-precision/
2017-01-18 18:56:27 +00:00
pabristow
78320adb7a return 0 to T(0) in float_distance changed because fixed-point requires explicit construction 2016-12-05 16:41:18 +00:00
jzmaddock
1844134d07 Changes to call correct error handlers in C99 annex F cases. 2016-11-30 18:57:11 +00:00
zerotypos-found
3871f6a7e8 Fix issues in the inspection report
- Remove Non-ASCII characters (i.e. replace dashes with hyphens).
- Protect min from macro expansion.
2016-10-25 11:56:09 +09:00
jzmaddock
37fe39f2d9 Merge pull request #50 from kartikmohta/fix/boost-zero-polynomial-evaluate
Fix boost::math::polynomial::evaluate for the zero polynomial
2016-10-19 19:33:24 +01:00
jzmaddock
3370ea2f79 Add missing #include.
Fixes https://svn.boost.org/trac/boost/ticket/12537.
2016-10-19 19:27:37 +01:00
jzmaddock
21ab379ee9 Merge branch 'develop' of https://github.com/boostorg/math into develop 2016-10-19 19:22:51 +01:00
jzmaddock
4787d870c6 Suppress some msvc warnings. 2016-10-19 19:22:37 +01:00
Kartik Mohta
9dad3e2b62 Fix boost::math::polynomial::evaluate for the zero polynomial 2016-10-17 16:13:25 -04:00
zerotypos-found
4b9823768b Replace tabs to whitespace 2016-10-11 12:44:32 +09:00
inkstink
c9d9f446c5 fixed typos for real this time 2016-08-19 20:42:14 -04:00
inkstink
950d3990e4 fixed typos 2016-08-19 20:33:24 -04:00
pabristow
7786c7d5a8 Added Thomas Luu references 2016-08-09 16:05:20 +01:00
jzmaddock
53403a58f7 minor Intel fix. 2016-07-29 11:41:28 +01:00
jzmaddock
d3a570e91a Fix Intel C++ test failures 2016-07-22 09:27:15 +01:00
jzmaddock
2165b95f52 Two more GCC 4.4 workarounds 2016-07-15 02:15:30 +01:00
jzmaddock
9127a2f707 Merge branch 'develop' of https://github.com/boostorg/math into develop 2016-07-15 01:31:17 +01:00
jzmaddock
12feba86fa Remove references to removed gcd/lcd code. 2016-07-15 18:36:55 +01:00
jzmaddock
cbb0cce89b Disable initializer_list support for GCC-4.4 as it doesn't fully support the new syntax and there appears to be no workaround. 2016-07-15 01:24:18 +01:00
jzmaddock
5d125381f6 Enable SSE2 code for more cases. 2016-07-14 13:24:09 +01:00
jzmaddock
b043126170 Add long double specializations where appropriate. 2016-07-14 13:23:44 +01:00
jzmaddock
3891523510 Fix tgamma_delta_ratio for cases where argument is very large compared to delta. 2016-07-14 13:22:16 +01:00
jzmaddock
5e54ce2427 Fix thread_local code:
1) Use new Boost.Config macro.
2) Fix constants to cache value and initialize on startup when used with variable precision types.
3) Fix factorials to initialize on startup with UDT types.
4) Streamline some other variable precision code.
2016-07-03 18:27:49 +01:00
jzmaddock
44a105aaf0 Tidy up clang/thread_local detection a little. 2016-06-27 19:42:09 +01:00
jzmaddock
3f0eaf7c46 Fix clang thread_local support detection 2016-06-27 18:54:38 +01:00
jzmaddock
a96792d309 Merge branch 'develop' of https://github.com/boostorg/math into develop 2016-06-05 18:29:14 +01:00
jzmaddock
afb8e89642 Change selection of thread_local to be more conservative. 2016-06-05 18:28:56 +01:00
jzmaddock
e4cd194686 Fix misc clang issues 2016-06-04 19:26:59 +01:00
jzmaddock
5ce39f2673 squash warnings and forward policies 2016-06-03 15:11:34 +01:00
jzmaddock
e946c45e9e Fixes for cases where number type has no infinity and divide by zero is a hard error. 2016-06-01 19:25:03 +01:00
jzmaddock
5966b186f9 Add needed typecast to factorial-from-string multiprecision code 2016-06-01 00:09:49 +01:00
Daniel James
cd496c9ace Fix typo 2016-05-31 14:04:39 +01:00
jzmaddock
1cb146a001 Merge branch 'develop' of https://github.com/boostorg/math into develop 2016-05-31 13:36:01 +01:00
jzmaddock
7499075a01 Recalculate cached constants if the precision changes in zeta.hpp. 2016-05-31 13:33:51 +01:00
jzmaddock
f02c9cba13 Calculate lgamma near 1 and 2 via series expansion in terms of zeta functions of integers.
Likewise for tgamma1pm1.
2016-05-31 13:33:08 +01:00
jzmaddock
609e8373b8 We can calculate the limit as an int, no need to invoke FP code. 2016-05-31 13:31:52 +01:00
jzmaddock
6961f14eb3 Don't initialize erf's cached constants for variable-precision types. 2016-05-31 13:30:54 +01:00
jzmaddock
bd39b86ca1 Warning suppression. 2016-05-31 10:12:20 +01:00
jzmaddock
fb8528e47b Allow our cached data to be recalculated if the precision changes in unchecked_factorial.hpp. 2016-05-31 10:11:35 +01:00