summaryrefslogtreecommitdiff
path: root/libs/math/test/test_digamma.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libs/math/test/test_digamma.cpp')
-rw-r--r--libs/math/test/test_digamma.cpp18
1 files changed, 16 insertions, 2 deletions
diff --git a/libs/math/test/test_digamma.cpp b/libs/math/test/test_digamma.cpp
index 7926e7031..23ffc236a 100644
--- a/libs/math/test/test_digamma.cpp
+++ b/libs/math/test/test_digamma.cpp
@@ -43,6 +43,20 @@ void expected_results()
".*Negative.*", // test data group
".*", 300, 40); // test function
add_expected_result(
+ ".*", // compiler
+ ".*", // stdlib
+ ".*", // platform
+ "real_concept", // test type(s)
+ ".*Near the Positive Root.*", // test data group
+ ".*", 25000, 3000); // test function
+ add_expected_result(
+ ".*", // compiler
+ ".*", // stdlib
+ ".*", // platform
+ "real_concept", // test type(s)
+ ".*Half.*", // test data group
+ ".*", 15, 10); // test function
+ add_expected_result(
".*", // compiler
".*", // stdlib
".*", // platform
@@ -72,8 +86,8 @@ void test_spots(T, const char* t)
BOOST_CHECK_CLOSE(::boost::math::digamma(static_cast<T>(0.125)), static_cast<T>(-8.3884926632958548678027429230863430000514460424495L), tolerance);
BOOST_CHECK_CLOSE(::boost::math::digamma(static_cast<T>(0.5)), static_cast<T>(-1.9635100260214234794409763329987555671931596046604L), tolerance);
BOOST_CHECK_CLOSE(::boost::math::digamma(static_cast<T>(1)), static_cast<T>(-0.57721566490153286060651209008240243104215933593992L), tolerance);
- BOOST_CHECK_CLOSE(::boost::math::digamma(static_cast<T>(1.5)), static_cast<T>(0.036489973978576520559023667001244432806840395339566L), tolerance);
- BOOST_CHECK_CLOSE(::boost::math::digamma(static_cast<T>(1.5) - static_cast<T>(1)/32), static_cast<T>(0.00686541147073577672813890866512415766586241385896200579891429L), tolerance);
+ BOOST_CHECK_CLOSE(::boost::math::digamma(static_cast<T>(1.5)), static_cast<T>(0.036489973978576520559023667001244432806840395339566L), tolerance * 40);
+ BOOST_CHECK_CLOSE(::boost::math::digamma(static_cast<T>(1.5) - static_cast<T>(1)/32), static_cast<T>(0.00686541147073577672813890866512415766586241385896200579891429L), tolerance * 100);
BOOST_CHECK_CLOSE(::boost::math::digamma(static_cast<T>(2)), static_cast<T>(0.42278433509846713939348790991759756895784066406008L), tolerance);
BOOST_CHECK_CLOSE(::boost::math::digamma(static_cast<T>(8)), static_cast<T>(2.0156414779556099965363450527747404261006978069172L), tolerance);
BOOST_CHECK_CLOSE(::boost::math::digamma(static_cast<T>(12)), static_cast<T>(2.4426616799758120167383652547949424463027180089374L), tolerance);