2
0
mirror of https://github.com/boostorg/math.git synced 2026-01-25 06:22:09 +00:00
Commit Graph

3002 Commits

Author SHA1 Message Date
jzmaddock
2cdabeb30e Merge pull request #875 from boostorg/issue873
Correct root finders in extreme cases.
2022-11-15 09:00:39 +00:00
jzmaddock
9a9bb9ddc8 Update root bracketing to home in faster.
Special case for when the exponent range is so large that it basically takes "forever" to bracket otherwise.
2022-11-13 17:08:19 +00:00
Matt Borland
03ac231b83 Fix for issue #871 (#872) 2022-11-13 07:25:12 -08:00
Brian Wignall
1923ba5c75 Fix typos (#876) 2022-11-12 17:16:53 -08:00
jzmaddock
fbb4398683 Correct root finders in extreme cases.
Fixes: https://github.com/boostorg/math/issues/873
2022-11-11 19:36:24 +00:00
jzmaddock
4631716f66 s/constructable/constructible/
[CI SKIP]
2022-11-10 18:49:37 +00:00
Rose
fe48a3bba7 Junk removal
Removal of junk headers, typos, or mistakenly duplicated keywords
2022-11-05 12:14:12 -04:00
jzmaddock
cb326912f5 Merge pull request #856 from boostorg/norms
Assert when features which require C++17 are compiled for an earlier …
2022-11-04 17:06:15 +00:00
Rose
b08aa05069 Use 64-bit RNG for types that are 64 bits (#865)
Do this instead of casting down every time we do a normal distribution.
2022-11-04 09:20:51 -07:00
Matt Borland
94201a88ba Use numeric_limits<T>::is_signed to support Boost.MP types 2022-10-29 16:25:39 -07:00
Matt Borland
2acd1d62bf Fix warning C4244: 'return': conversion from 'int' to 'T' 2022-10-29 16:25:39 -07:00
Matt Borland
548118a735 Fix warning C4146: unary minus operator applied to unsigned type 2022-10-29 16:25:39 -07:00
Matt Borland
61c4e3b03e Disable C6326: Potential comparison of a constant with another constant 2022-10-25 18:59:04 -07:00
jzmaddock
86c24916b2 Assert when features which require C++17 are compiled for an earlier C++ version.
Also document C++17 requirement for norms.
2022-10-25 18:51:29 +01:00
Matt Borland
53534c5505 Fix for scipy issue 17146 (#847)
See: https://github.com/scipy/scipy/issues/17146
2022-10-17 17:54:46 -07:00
Matt Borland
dfdb50caca Fix for issue 845 (#846)
* Fix for issue 845

Avoid division by zero in special cases
2022-10-17 13:52:56 -07:00
Matt Borland
9da3a0abb0 Fix warnings in quadrature tests (#844) 2022-10-16 07:51:52 -07:00
Rose
a978d95d8d Change looping over array to be unsigned (#830) 2022-10-13 07:06:46 -07:00
Nicholas McKibben
7ad016f34b short-circuit overflow protection for M1 Mac clang (#827)
xref scipy/scipy#14901

Splits single if statement into two to avoid apparent clang short-circuit bug on M1 Mac platforms.

Co-authored-by: Matt Borland <matt@mattborland.com>
2022-10-12 15:03:13 -07:00
Rose
2a07116411 Fix bytes behavior (#828)
"this" is a pointer, not a reference, so we need to find the size of the referenced object.
2022-10-12 08:27:42 -07:00
Rose
38034fa576 Fix Clang-15 warnings (#831)
Redundant casts, noexcept for move constructors, and usage of default and delete make the code more performant and maintainable.
2022-10-09 19:18:24 +01:00
jzmaddock
ddf0143a8c BREAKING CHANGE: Correct definition of user_rounding_error, (#836)
* BREAKING CHANGE: Correct definition of user_rounding_error,
To return correct type.
Likewise fix up a few other rounding error inconsistencies.
Fixes https://github.com/boostorg/math/issues/834.

* Remove redundant error handler.
2022-10-09 09:14:27 +01:00
Nick
ea9c3a27e9 Fix quartic roots when depressed cubic only has single real root (#838) 2022-10-08 21:39:08 -07:00
jzmaddock
9346271a45 Fix Issue 833 (#835)
* Correct 1F1[-n, -n, x]
To match what Mathematica does.
Fixes: https://github.com/boostorg/math/issues/829

* Pass policy in forwarding call to gamma_q.

* Fix bug in 1F1 recurrence relations when one term goes to zero.
Fixes issue with 1F1[-n, n, n].
Also reduce cancellation error in a = -1 special case.
Fixes https://github.com/boostorg/math/issues/833.
2022-10-07 09:35:26 +01:00
jzmaddock
92775b53fc Correct 1F1[-n, -n, x] (#832)
* Correct 1F1[-n, -n, x]
To match what Mathematica does.
Fixes: https://github.com/boostorg/math/issues/829
2022-10-06 11:10:56 +01:00
Antony Polukhin
a3c2c0d0b2 Modernize exception specification (#822)
Replace `throw()` with `BOOST_NOEXCEPT_OR_NOTHROW`
2022-09-27 11:07:58 -07:00
Hans Dembinski
5f704c76a5 remove extra semicolon, fixes 2022-09-18 10:23:46 +02:00
Matt Borland
48edf590f4 Fix include logic for <bit> and assert 0 and NAN when no bit_cast 2022-08-26 09:27:23 -07:00
Matt Borland
2bd2859660 Fix warning for width exceeding type 2022-08-26 09:27:23 -07:00
Matt Borland
2b50b522fa Use improved signbit in copysign impl 2022-08-26 09:27:23 -07:00
Matt Borland
50a581240e Fix x86 padding and make all types fixed length 2022-08-26 09:27:23 -07:00
Matt Borland
3a69eaf7da Add NAN and Zero support for long doubles 2022-08-26 09:27:23 -07:00
Matt Borland
a0d3b809b0 Add NAN and Zero support for doubles 2022-08-26 09:27:23 -07:00
Matt Borland
80efcf6db6 Fix macro logic for older compliers 2022-08-26 09:27:23 -07:00
Matt Borland
d62f0d9ba0 Add NAN and Zero support for float 2022-08-26 09:27:23 -07:00
jzmaddock
de7928e39b Disable new ellint code for clang-7. 2022-08-24 08:41:00 +01:00
jzmaddock
c8fdd65521 Re-factor nested calls from ellint_3->ellint_1.
See if it fixes the clang-7 audodiff issues.
2022-08-23 19:37:06 +01:00
jzmaddock
58ab7db62f Define BOOST_FORCEINLINE in standalone mode. 2022-08-18 11:18:35 +01:00
jzmaddock
10bd7be0f1 ellint_1/2 performance tweaks.
Add Google bench to probe changes more easily.
Update graphs and docs.
2022-08-17 19:21:03 +01:00
jzmaddock
9302b79221 Correct some accuracy issues in ellint specializations.
Also correct infinite recursion in ellint_2.
2022-08-11 12:30:53 +01:00
jzmaddock
d6877737e0 Improve performance of the Complete Elliptic Integrals.
By adding Taylor series approximations.
2022-08-10 19:14:08 +01:00
Matt Borland
53e6658208 Fix for issue #800 2022-08-04 20:17:15 -07:00
jzmaddock
45e479deb0 Add #include tests for hypergeometric functions.
Fix the one error detected.
2022-08-04 13:37:20 +01:00
Matt Borland
319817d3ca Fix -Wsign-compare warnings 2022-08-03 20:29:10 -07:00
Matt Borland
6a64075999 Fix for zero as null pointer constant warning 2022-08-03 19:29:01 -07:00
Matt Borland
fae5c5cd12 Add missing headers and test for git issue 2022-08-03 19:28:35 -07:00
jzmaddock
b33e40eb4b Add BOOST_NOINLINE to standalone config and apply to erf_inv_initializer.
Replaces: https://github.com/boostorg/math/pull/807.
2022-07-27 11:20:51 +01:00
mckib2
b0096e649f Avoid overflow in intermediate bessel_ik computation 2022-07-18 19:05:44 -07:00
jzmaddock
08f30fb8d7 Stop taking the logarithm of zero in ibeta_power_terms. 2022-07-15 19:35:34 +01:00
jzmaddock
6efed67e21 Make sure ibeta_derivative triggers an underflow error when required.
See https://github.com/boostorg/math/issues/799.
2022-07-15 19:16:17 +01:00