* Implemented mode and associated tests
* Clarity and complexity changes
* Added google benchmark
* Small changes to mode. More tests.
* Seperated into sorted and non-sorted functions
* Fixed data types and removed copying
* Fixed bounds checking
* Additional tests and cleanup.
* Added tests for std::list and std::forward_list
* Small testing changes and documentation
* Added modes memory allocation and faster insertion
* Changed return type, and modified tests
* Removed copied iterator and edge cases.
* Documentation fixes
A small audit of the Bessel and beta functions revealed a number of
places where primitive functions were being called without a Policy
argument, thus introducing double- and float-promotion in violation
of the user-provided policy. The primitive functions in question
include cbrt, cos_pi, sin_pi, lgamma, tgamma, and polygamma.
This commit passes the Policy argument down the call chain in several
locations. As part of this work, a number of internal functions have had
a Policy argument added to them. These functions include:
* airy_ai_zero_detail::initial_guess
* airy_bi_zero_detail::initial_guess
* airy_zero::equation_as_10_4_105
* binomial_ccdf (in special_functions/beta.hpp)
* bessel_zero::asymptotic_bessel_j_large_x_2
* bessel_zero::asymptotic_bessel_y_large_x_2
* bessel_zero::equation_as_9_5_26
* bessel_zero::cyl_neumann_zero_detail::equation_nist_10_21_40_a
* bessel_zero::cyl_neumann_zero_detail::equation_nist_10_21_40_b
The above functions do not have any user-facing documentation, and so
I did not preserve their non-policy function signatures.
I do not know of a good way to verify the absence of float-promotion
deep down a call chain, and so I have not added any new tests. The
existing tests in the special_fun and distribution_tests suites continue
to pass.
* Add Feigenbaum constant.
* Add isnan to real_concept. Convert test_constants.cpp to math_unit_test.cpp.
* Reduce ULP tolerance to 2, which is the minimum that passes on my machine.
* Improvements to Feigenbaum.
* Ok this is pretty complicated . . . [CI SKIP]
* Take jzmaddock's suggestion to remove additions to real_concept.
* Remove test the demonstrates throw.
* Use BOOST_STATIC_ASSERT_MSG to retain C++03 compatibility.
* More precise conversion from binary to decimal.
* Plastic constant.
* Fix typos.
* New tests [CI SKIP]
* bugfix in test [CI SKIP]
* Update docs for new constants [CI SKIP]
* Fix outdated instructions [CI SKIP]
* Do C++11 check for new constants.
* Update constants.qbk [CI SKIP]
* Hopefully green up build
* Constants still *work* in C++03, but now they must be tested in C++11 mode.
* Remove boost::math::isnan.
* Test file requires C++17.