jzmaddock
dd92123098
[digamma] fix reference.
2014-11-07 16:57:18 +00:00
jzmaddock
50778a40c4
[digamma]Oops fix missing return statement on half integer special case.
2014-11-07 16:56:15 +00:00
jzmaddock
0e98fd90c2
[Polygamma] Add optimized trigamma version that uses rational approximations.
2014-11-07 16:32:41 +00:00
jzmaddock
8477de53b4
[polygamma]Fix spurious overflow for very large x.
2014-11-04 18:27:48 +00:00
jzmaddock
3478ee9c46
[polygamma] Fix GCC failures, a few bugs and forward policy arguments. Fix test data to be 128-bit safe.
2014-11-03 17:55:21 +00:00
jzmaddock
d50cf889f6
Add basic thread safety and initialization code.
2014-11-03 12:01:11 +00:00
jzmaddock
eccec791c7
[polygamma] Fix spurious overflow in transition zone, update cot derivative to work to arbitrary level.
2014-11-03 11:50:10 +00:00
jzmaddock
e70f53e670
[Polygamma] Fix issues with small negative arguments for x.
...
Tidy up a couple of cosmetic coding issues.
2014-10-31 18:51:14 +00:00
jzmaddock
8438b8a84b
[Polygamma] Extend derivatives-of-cot method to larger orders.
...
Extend test cases for negative x.
Fix missing return statement on error condition.
2014-10-31 18:07:01 +00:00
jzmaddock
31c345108c
[polygamma] Fix gcc-11 test failures.
2014-10-30 17:13:39 +00:00
jzmaddock
812122d56f
Fix include order to be alphabetical, update copyright.
2014-10-30 11:13:31 +00:00
jzmaddock
3f58ab9009
Fix copyright info.
2014-10-30 11:11:50 +00:00
jzmaddock
081abc704a
[zeta/polygamma]Add cache of odd-integer zeta values.
...
Fix even integer case to call fast closed-form code more often.
Fix initialization code to initializes new cache of even-integer values.
2014-10-30 11:08:36 +00:00
jzmaddock
8a36ba07d1
{Polygamma]Fix polygamma_nearzero to call correct zeta function overload.
2014-10-30 11:06:28 +00:00
jzmaddock
232e7af69b
[polygamma] short circuit series evaluation when it can make no difference to the result.
2014-10-29 17:38:38 +00:00
jzmaddock
8362ab2a08
[polygamma]
...
Replace small-x expansion with one that's accelerated and avoids spurious overflow.
Also tweak selection logic, and reuse variables better.
2014-10-28 19:39:35 +00:00
jzmaddock
a3bed60089
More test failure fixes.
2014-10-26 16:25:19 +00:00
jzmaddock
22bc7212e7
[Polygamma]
...
Hook up concept checks.
Move test instantiations into instances lib.
Fix a few test failures.
Add Nikhar's trigamma tests.
2014-10-26 09:42:11 +00:00
jzmaddock
dffdb444ee
Expand test cases for negative x.
...
Add comment on the calculation of derivatives of cot(x).
2014-10-25 17:28:09 +01:00
jzmaddock
bda3331ed3
[Polygamma]
...
Fix digits_base10 to actually return the correct value!
Add support for negative x.
Add missing using declaration to digamma.
Update tests with negative x tests.
2014-10-24 18:50:37 +01:00
jzmaddock
f2ae6940ca
[Polygamma]
...
Optimize zeta function for integer arguments.
2014-10-23 17:08:19 +01:00
jzmaddock
29e86c8fcb
[Polygamma]
...
Extend existing digamma implementation to true multiprecision.
Add integer and half-integer test cases for digamma.
Change polygamma to call digamma when order is zero.
2014-10-23 11:42:57 +01:00
jzmaddock
d9ea302cff
Hook up basic multiprecision digamma.
2014-10-23 09:59:08 +01:00
jzmaddock
4bc3b6076c
[Polygamma]
...
Fix real_concept compilation and runtime.
Add digits_base10 support function to policies.
2014-10-21 19:03:26 +01:00
jzmaddock
5f89e70efd
[Polygamma]
...
Add test cases.
Rewrite polygamma_atinfinityplus to avoid spurious underflow/overflow.
Rewrite polygamma_attransitionplus to call polygamma_atinfinityplus rather than have it's own routine.
Change condition which selects when polygamma_atinfinityplus can be called.
2014-10-21 13:12:26 +01:00
jzmaddock
eb2525b516
Merge branch 'develop' into bernoulli-tgamma
...
Conflicts:
doc/equations/bernoulli_numbers2.mml
doc/equations/bernoulli_numbers2.png
doc/equations/bernoulli_numbers2.svg
doc/equations/generate.sh
doc/equations/tangent_numbers.png
doc/equations/tangent_numbers.svg
doc/math.qbk
include/boost/cstdfloat.hpp
include/boost/math/policies/error_handling.hpp
include/boost/math/special_functions/detail/bernoulli_details.hpp
2014-10-18 17:49:49 +01:00
jzmaddock
bd807c74e1
Fix more spurious overflows detected by Rocco Romeo.
2014-09-24 18:02:00 +01:00
jzmaddock
b471723bd1
Fix bug cases reported by Rocco Romeo:
...
* Add another approximation for x very small.
* Add code to handle cases where tgamma(a) would overflow.
* Add tests for the above.
2014-09-14 17:05:15 +01:00
jzmaddock
d1d6d5b063
Fix derivative of incomplete beta in special cases where a = b = 0.5 and b = 1.
...
Add additional tests to non-central F and T distributions to verify above fix.
Fixes https://svn.boost.org/trac/boost/ticket/10480 .
2014-09-12 16:29:29 +01:00
jzmaddock
321d8f2eda
Merge branch 'hyper_exponential' into develop
2014-09-08 18:12:52 +01:00
jzmaddock
17e4f40fce
Revert "[distributions] Hyper-Exponential: changed return type of 'probabilities' and 'rates' from 'vector<...>' to 'vector<...> const\&' to allow users to do things like this: 'std::copy(he.probabilities().begin(), he.probabilities().end(), std::ostream_iterator<double>(std::cout, " "));'."
...
This reverts commit a8efc9a637 .
2014-09-08 18:10:53 +01:00
jzmaddock
5d37faf873
Merge branch 'feature/hyperexponential_dist' of https://github.com/sguazt/math into hyper_exponential
2014-09-08 17:14:23 +01:00
sguazt
a8efc9a637
[distributions] Hyper-Exponential: changed return type of 'probabilities' and 'rates' from 'vector<...>' to 'vector<...> const\&' to allow users to do things like this: 'std::copy(he.probabilities().begin(), he.probabilities().end(), std::ostream_iterator<double>(std::cout, " "));'.
2014-09-07 10:29:09 +02:00
jzmaddock
f73ecae7f5
Add some tests for the error handlers.
2014-09-05 18:56:49 +01:00
jzmaddock
bc77596f23
Improve calculation of phase probabilities when normalizing so they really should add up to 1.
...
Allow slight tolerance in checking for sum of phase probabilities.
Add missing call to normalize in iterator constructor.
Remove asserts that duplicated the error handling code - better to provide consistent behavior via the error handlers.
Add comment to examples about other containers working equally well.
2014-09-03 19:25:20 +01:00
sguazt
43de825473
[distributions] Hyper-Exponential: BOOST_MSVC -> _MSC_VER (as _MSC_VER is always defined for MS VS, whereas BOOST_MSVC isn’t defined until *after* the first call to boost/config.hpp). Also, added MSVC pragma 4389.
2014-09-01 21:25:11 +02:00
jzmaddock
4a6cbc1135
Initializer-list constructors don't need to be templates - indeed it is better if they're not.
2014-09-01 18:14:35 +01:00
sguazt
f5cec49a60
[distributions] Hyper-Exponential: added include of 'iterator' for 'std::distance' and aesthetic changes.
2014-09-01 09:50:16 +02:00
sguazt
34e42a36c5
[distributions] Hyper-Exponential: added include file for macro BOOST_NO_CXX11_HDR_INITIALIZER_LIST and removed 'const\&' from 'std::initializer_list' (as from (Stroustrup,TCPL4e).
2014-08-31 23:22:15 +02:00
jzmaddock
60a6730fe2
Modify Marco's 1 and 2 arg constructors to use SFINAE to differentiate between iterators and ranges.
...
Add a 1 arg initializer list constructor.
Update tests accordingly.
2014-08-30 17:03:26 +01:00
sguazt
62ee849eab
[distributions] Hyper-Exponential: added more constructors and class construction test case.
2014-08-28 10:12:41 +02:00
jzmaddock
08308ab945
Merge branch 'feature/hyperexponential_dist' of https://github.com/sguazt/math into hyper_exponential
2014-08-26 18:57:25 +01:00
sguazt
fa198a0b04
[distributions] Hyper-Exponential: clean-up.
2014-08-26 17:08:05 +02:00
jzmaddock
2e7eede435
Add comment linking to discussion.
2014-08-25 17:04:52 +01:00
jzmaddock
d8c97bec27
Add initializer_list support and tests.
2014-08-25 13:11:51 +01:00
sguazt
c693510588
[distributions] Hyper-Exponential: use exponential's PDF in hyperexponential PDF.
2014-08-25 10:45:08 +02:00
jzmaddock
d424e2ef23
Fix some more warnings and enable tests for all the test types.
2014-08-24 18:40:21 +01:00
jzmaddock
b925b0c0e8
Add hyperexponential_distribution to concept checks, fix for warnings/bugs.
2014-08-24 15:21:36 +01:00
jzmaddock
ffc483f907
Up precision of tests.
...
Fix some conceptual compiler errors in hyperexponential_distribution.
2014-08-24 09:29:11 +01:00
Robin Eckert
fb835eb029
fix rounding errors
...
- the direct predecessor/successor for 0.5/-0.5 was formerly wrongly
rounded to 1.0/-1.0 rather than 0.0
- integral numbers of the format 1xxxxxx1 filling mantissa completely
were formerly rounded to the next integral away from zero
2014-08-23 19:42:02 +02:00