From 3cb6098751da80b39f7744113531cf7cf6e494ef Mon Sep 17 00:00:00 2001 From: John Maddock Date: Wed, 10 Oct 2007 09:28:48 +0000 Subject: [PATCH] Adjusted limits for Win64 and Sun OS. [SVN r39881] --- test/test_bessel_y.cpp | 18 ++++++++++++++++++ test/test_binomial_coeff.cpp | 2 +- test/test_digamma.cpp | 2 +- test/test_factorials.cpp | 2 +- test/test_gamma.cpp | 25 +++++++++++++++++++++---- test/test_ibeta.cpp | 36 +++++++++++++++++++++++++++++++++--- test/test_igamma.cpp | 31 +++++++++++++++++++++++++++++++ test/test_igamma_inv.cpp | 2 +- test/test_laguerre.cpp | 28 ++++++++++++++-------------- 9 files changed, 121 insertions(+), 25 deletions(-) diff --git a/test/test_bessel_y.cpp b/test/test_bessel_y.cpp index 37e3e4a3f..552554b4a 100644 --- a/test/test_bessel_y.cpp +++ b/test/test_bessel_y.cpp @@ -143,6 +143,24 @@ void expected_results() largest_type, // test type(s) ".*Yn.*", // test data group ".*", 30000, 30000); // test function + // + // Solaris version of long double has it's own error rates, + // again just a touch higher than msvc's 64-bit double: + // + add_expected_result( + "GNU.*", // compiler + ".*", // stdlib + "Sun.*", // platform + largest_type, // test type(s) + "Y[0N] Mathworld.*", // test data group + ".*", 2000, 2000); // test function + add_expected_result( + "GNU.*", // compiler + ".*", // stdlib + "Sun.*", // platform + largest_type, // test type(s) + "Y[0N].*", // test data group + ".*", 200, 200); // test function #ifndef BOOST_MATH_NO_LONG_DOUBLE_MATH_FUNCTIONS if((std::numeric_limits::digits != std::numeric_limits::digits) diff --git a/test/test_binomial_coeff.cpp b/test/test_binomial_coeff.cpp index 2754b27cb..a501a98ae 100644 --- a/test/test_binomial_coeff.cpp +++ b/test/test_binomial_coeff.cpp @@ -62,7 +62,7 @@ void expected_results() ".*", // platform largest_type, // test type(s) ".*large.*", // test data group - ".*", 70, 20); // test function + ".*", 100, 20); // test function add_expected_result( ".*", // compiler ".*", // stdlib diff --git a/test/test_digamma.cpp b/test/test_digamma.cpp index e05bfcb23..c5b035cf6 100644 --- a/test/test_digamma.cpp +++ b/test/test_digamma.cpp @@ -50,7 +50,7 @@ void expected_results() ".*", // platform ".*", // test type(s) ".*Negative.*", // test data group - ".*", 250, 40); // test function + ".*", 300, 40); // test function add_expected_result( ".*", // compiler ".*", // stdlib diff --git a/test/test_factorials.cpp b/test/test_factorials.cpp index ec69977c1..c6e5d28ac 100644 --- a/test/test_factorials.cpp +++ b/test/test_factorials.cpp @@ -132,7 +132,7 @@ void test_spots(T) static_cast(1.28674092710208810281923019294164707555099052561945725535047e-26L), tolerance); BOOST_CHECK_CLOSE( ::boost::math::rising_factorial(static_cast(30.25), 21), - static_cast(3.93286957998925490693364184100209193343633629069699964020401e33L), tolerance); + static_cast(3.93286957998925490693364184100209193343633629069699964020401e33L), tolerance * 2); BOOST_CHECK_CLOSE( ::boost::math::rising_factorial(static_cast(30.25), -21), static_cast(3.35010902064291983728782493133164809108646650368560147505884e-27L), tolerance); diff --git a/test/test_gamma.cpp b/test/test_gamma.cpp index 2d2c43ec3..08f0d9a27 100644 --- a/test/test_gamma.cpp +++ b/test/test_gamma.cpp @@ -110,7 +110,7 @@ void expected_results() "linux", // platform largest_type, // test type(s) "near (1|2|-10)", // test data group - "boost::math::lgamma", 50, 30); // test function + "boost::math::lgamma", 50, 50); // test function add_expected_result( ".*", // compiler ".*", // stdlib @@ -131,7 +131,7 @@ void expected_results() "linux", // platform "real_concept", // test type(s) "near (0|-55)", // test data group - "boost::math::(t|l)gamma", 130, 60); // test function + "boost::math::(t|l)gamma", 130, 80); // test function add_expected_result( ".*", // compiler ".*", // stdlib @@ -176,7 +176,24 @@ void expected_results() "HP-UX", // platform "real_concept", // test type(s) "tgamma1pm1.*", // test data group - "boost::math::tgamma1pm1", 200, 60); // test function + "boost::math::tgamma1pm1", 200, 80); // test function + // + // Sun OS: + // + add_expected_result( + ".*", // compiler + ".*", // stdlib + "Sun.*", // platform + largest_type, // test type(s) + "factorials", // test data group + "boost::math::tgamma", 300, 50); // test function + add_expected_result( + ".*", // compiler + ".*", // stdlib + "Sun.*", // platform + "real_concept" // test type(s) + "factorials", // test data group + "boost::math::tgamma", 300, 50); // test function // // Catch all cases come last: @@ -244,7 +261,7 @@ void expected_results() ".*", // platform "real_concept", // test type(s) "near.*", // test data group - "boost::math::tgamma", 60, 30); // test function + "boost::math::tgamma", 80, 60); // test function add_expected_result( ".*", // compiler ".*", // stdlib diff --git a/test/test_ibeta.cpp b/test/test_ibeta.cpp index 329b5c6cc..c4abbd74e 100644 --- a/test/test_ibeta.cpp +++ b/test/test_ibeta.cpp @@ -102,7 +102,7 @@ void expected_results() add_expected_result( "[^|]*", // compiler "[^|]*", // stdlib - "linux|Mac OS", // platform + "linux|Mac OS|Sun.*", // platform "double", // test type(s) "(?i).*large.*", // test data group ".*", 40, 20); // test function @@ -135,7 +135,37 @@ void expected_results() largest_type, // test type(s) "(?i).*large.*", // test data group ".*", 200000, 10000); // test function - + // + // Sun OS: + // + add_expected_result( + "[^|]*", // compiler + "[^|]*", // stdlib + "Sun.*", // platform + largest_type, // test type(s) + "(?i).*large.*", // test data group + ".*", 80000, 10000); // test function + add_expected_result( + "[^|]*", // compiler + "[^|]*", // stdlib + "Sun.*", // platform + largest_type, // test type(s) + "(?i).*small.*", // test data group + ".*", 130, 30); // test function + add_expected_result( + "[^|]*", // compiler + "[^|]*", // stdlib + "Sun.*", // platform + "real_concept", // test type(s) + "(?i).*medium.*", // test data group + ".*", 200, 40); // test function + add_expected_result( + "[^|]*", // compiler + "[^|]*", // stdlib + "Sun.*", // platform + "real_concept", // test type(s) + "(?i).*small.*", // test data group + ".*", 130, 30); // test function // // MinGW: // @@ -204,7 +234,7 @@ void expected_results() "[^|]*", // platform "real_concept", // test type(s) "(?i).*medium.*", // test data group - ".*", 100, 50); // test function + ".*", 200, 50); // test function add_expected_result( "[^|]*", // compiler "[^|]*", // stdlib diff --git a/test/test_igamma.cpp b/test/test_igamma.cpp index 6846cd904..f6dea81f4 100644 --- a/test/test_igamma.cpp +++ b/test/test_igamma.cpp @@ -167,6 +167,37 @@ void expected_results() "real_concept", // test type(s) "[^|]*medium[^|]*", // test data group "[^|]*", 500, 100); // test function + // + // Sun OS: + // + add_expected_result( + "[^|]*", // compiler + "[^|]*", // stdlib + "Sun.*", // platform + largest_real, // test type(s) + "[^|]*medium[^|]*", // test data group + "[^|]*", 500, 100); // test function + add_expected_result( + "[^|]*", // compiler + "[^|]*", // stdlib + "Sun.*", // platform + largest_real, // test type(s) + "[^|]*integer[^|]*", // test data group + "[^|]*", 100, 30); // test function + add_expected_result( + "[^|]*", // compiler + "[^|]*", // stdlib + "Sun.*", // platform + "real_concept", // test type(s) + "[^|]*medium[^|]*", // test data group + "[^|]*", 500, 100); // test function + add_expected_result( + "[^|]*", // compiler + "[^|]*", // stdlib + "Sun.*", // platform + "real_concept", // test type(s) + "[^|]*integer[^|]*", // test data group + "[^|]*", 100, 30); // test function // // Mac OS X: diff --git a/test/test_igamma_inv.cpp b/test/test_igamma_inv.cpp index 1548e53fe..736d336f6 100644 --- a/test/test_igamma_inv.cpp +++ b/test/test_igamma_inv.cpp @@ -171,7 +171,7 @@ void expected_results() "[^|]*", // platform "real_concept", // test type(s) "[^|]*small[^|]*", // test data group - "[^|]*", 3500, 500); // test function + "[^|]*", 3700, 500); // test function // // Finish off by printing out the compiler/stdlib/platform names, diff --git a/test/test_laguerre.cpp b/test/test_laguerre.cpp index 413fe142c..46dc582f2 100644 --- a/test/test_laguerre.cpp +++ b/test/test_laguerre.cpp @@ -81,31 +81,31 @@ void expected_results() add_expected_result( ".*", // compiler ".*", // stdlib - "linux.*|Mac OS", // platform + "linux.*|Mac OS|Sun.*", // platform largest_type, // test type(s) - ".*", // test data group - ".*", 40000, 1000); // test function + ".*", // test data group + ".*", 40000, 1000); // test function add_expected_result( ".*", // compiler ".*", // stdlib - "linux.*|Mac OS", // platform - "real_concept", // test type(s) - ".*", // test data group - ".*", 40000, 1000); // test function + "linux.*|Mac OS|Sun.*", // platform + "real_concept", // test type(s) + ".*", // test data group + ".*", 40000, 1000); // test function add_expected_result( - ".*mingw.*", // compiler + ".*mingw.*", // compiler ".*", // stdlib ".*", // platform largest_type, // test type(s) - ".*", // test data group - ".*", 40000, 1000); // test function + ".*", // test data group + ".*", 40000, 1000); // test function add_expected_result( - ".*mingw.*", // compiler + ".*mingw.*", // compiler ".*", // stdlib ".*", // platform - "real_concept", // test type(s) - ".*", // test data group - ".*", 40000, 1000); // test function + "real_concept", // test type(s) + ".*", // test data group + ".*", 40000, 1000); // test function // // Catch all cases come last: