mirror of
https://github.com/boostorg/math.git
synced 2026-01-19 04:22:09 +00:00
S390x testing: make all the tests 128-bit float safe.
* Remove tests we don't need right now. !!!REVERT THIS COMMIT BEFORE MERGING!!! * Add s390x testing to drone. * Correct drone file. * Correct drone file (again) * Prevent complete cancellation in bessel_jy logic. * Correct testing for 128-bit floats. * Make some more tests 128-bit long double safe. * Make more tests 128-bit float safe. * Fix some more 128-bit testing issues. * More 128-bit float fixes. * Make more tests 128-bit float safe. * Fix up remaining tests for 128-bit floats. * Yet more 128-bit float test case fixes. * Fix up more tests for 128-bit floats and non-intel platforms. * Fix up more tests to be 128-bit long double safe. * More test case adjustments. * More 128-bit float error rate adjustments. * Fixes for autodiff tests * Two more test fixes. * Fix up daubechies_scaling_test.cpp and reinstate full CI. Co-authored-by: Matt Borland <matt@mattborland.com>
This commit is contained in:
@@ -37,7 +37,11 @@ T bessel_y_derivative_bare(T v, T x)
|
||||
template <class T>
|
||||
T bessel_i_derivative_bare(T v, T x)
|
||||
{
|
||||
return (v / x) * boost::math::cyl_bessel_i(v, x) + boost::math::cyl_bessel_i(v+1, x);
|
||||
if ((x < 1) && (x > 0))
|
||||
return (boost::math::cyl_bessel_i(v - 1, x) + boost::math::cyl_bessel_i(v + 1, x)) / 2;
|
||||
if (x == 0)
|
||||
throw std::domain_error("");
|
||||
return (boost::math::cyl_bessel_i(v - 1, x) + boost::math::cyl_bessel_i(v + 1, x)) / 2;
|
||||
}
|
||||
|
||||
template <class T>
|
||||
@@ -78,7 +82,7 @@ enum
|
||||
|
||||
int cpp_main(int argc, char*argv [])
|
||||
{
|
||||
typedef number<mpfr_float_backend<200> > bignum;
|
||||
typedef number<mpfr_float_backend<500> > bignum;
|
||||
|
||||
parameter_info<bignum> arg1, arg2;
|
||||
test_data<bignum> data;
|
||||
@@ -123,9 +127,9 @@ int cpp_main(int argc, char*argv [])
|
||||
std::cout << "Welcome.\n"
|
||||
"This program will generate spot tests for the Bessel " << letter << " function derivative\n\n";
|
||||
do{
|
||||
if(0 == get_user_parameter_info(arg1, "a"))
|
||||
if(0 == get_user_parameter_info(arg1, "x"))
|
||||
return 1;
|
||||
if(0 == get_user_parameter_info(arg2, "b"))
|
||||
if(0 == get_user_parameter_info(arg2, "v"))
|
||||
return 1;
|
||||
|
||||
bignum (*fp)(bignum, bignum) = 0;
|
||||
|
||||
Reference in New Issue
Block a user