static_cast<double>(1u),
0.0
};
-static const boost::uint32_t denom_int[20] = {
- static_cast<boost::uint32_t>(0u),
- static_cast<boost::uint32_t>(39916800u),
- static_cast<boost::uint32_t>(120543840u),
- static_cast<boost::uint32_t>(150917976u),
- static_cast<boost::uint32_t>(105258076u),
- static_cast<boost::uint32_t>(45995730u),
- static_cast<boost::uint32_t>(13339535u),
- static_cast<boost::uint32_t>(2637558u),
- static_cast<boost::uint32_t>(357423u),
- static_cast<boost::uint32_t>(32670u),
- static_cast<boost::uint32_t>(1925u),
- static_cast<boost::uint32_t>(66u),
- static_cast<boost::uint32_t>(1u),
+static const std::uint32_t denom_int[20] = {
+ static_cast<std::uint32_t>(0u),
+ static_cast<std::uint32_t>(39916800u),
+ static_cast<std::uint32_t>(120543840u),
+ static_cast<std::uint32_t>(150917976u),
+ static_cast<std::uint32_t>(105258076u),
+ static_cast<std::uint32_t>(45995730u),
+ static_cast<std::uint32_t>(13339535u),
+ static_cast<std::uint32_t>(2637558u),
+ static_cast<std::uint32_t>(357423u),
+ static_cast<std::uint32_t>(32670u),
+ static_cast<std::uint32_t>(1925u),
+ static_cast<std::uint32_t>(66u),
+ static_cast<std::uint32_t>(1u),
0
};
return result;
}
-void test_poly_1(const boost::integral_constant<int, 1>&)
+void test_poly_1(const std::integral_constant<int, 1>&)
{
}
template <int N>
-void test_poly_1(const boost::integral_constant<int, N>&)
+void test_poly_1(const std::integral_constant<int, N>&)
{
- test_poly_1(boost::integral_constant<int, N - 1>());
+ test_poly_1(std::integral_constant<int, N - 1>());
double time = exec_timed_test([](const std::vector<double>& v)
{
double result = 0;
for (unsigned i = 0; i < 10; ++i)
- result += boost::math::tools::detail::evaluate_polynomial_c_imp_1(denom, v[0] + i, static_cast<boost::integral_constant<int, N>*>(0));
+ result += boost::math::tools::detail::evaluate_polynomial_c_imp_1(denom, v[0] + i, static_cast<std::integral_constant<int, N>*>(0));
return result;
});
report_execution_time(time, std::string("Polynomial Method Comparison with ") + compiler_name() + std::string(" on ") + platform_name(), "Order " + make_order_string(N), "Method 1[br](Double Coefficients)");
{
double result = 0;
for (unsigned i = 0; i < 10; ++i)
- result += boost::math::tools::detail::evaluate_polynomial_c_imp_1(denom_int, v[0] + i, static_cast<boost::integral_constant<int, N>*>(0));
+ result += boost::math::tools::detail::evaluate_polynomial_c_imp_1(denom_int, v[0] + i, static_cast<std::integral_constant<int, N>*>(0));
return result;
});
report_execution_time(time, std::string("Polynomial Method Comparison with ") + compiler_name() + std::string(" on ") + platform_name(), "Order " + make_order_string(N), "Method 1[br](Integer Coefficients)");
}
-void test_poly_2(const boost::integral_constant<int, 1>&)
+void test_poly_2(const std::integral_constant<int, 1>&)
{
}
template <int N>
-void test_poly_2(const boost::integral_constant<int, N>&)
+void test_poly_2(const std::integral_constant<int, N>&)
{
- test_poly_2(boost::integral_constant<int, N - 1>());
+ test_poly_2(std::integral_constant<int, N - 1>());
double time = exec_timed_test([](const std::vector<double>& v)
{
double result = 0;
for (unsigned i = 0; i < 10; ++i)
- result += boost::math::tools::detail::evaluate_polynomial_c_imp_2(denom, v[0] + i, static_cast<boost::integral_constant<int, N>*>(0));
+ result += boost::math::tools::detail::evaluate_polynomial_c_imp_2(denom, v[0] + i, static_cast<std::integral_constant<int, N>*>(0));
return result;
});
report_execution_time(time, std::string("Polynomial Method Comparison with ") + compiler_name() + std::string(" on ") + platform_name(), "Order " + make_order_string(N), "Method 2[br](Double Coefficients)");
{
double result = 0;
for (unsigned i = 0; i < 10; ++i)
- result += boost::math::tools::detail::evaluate_polynomial_c_imp_2(denom_int, v[0] + i, static_cast<boost::integral_constant<int, N>*>(0));
+ result += boost::math::tools::detail::evaluate_polynomial_c_imp_2(denom_int, v[0] + i, static_cast<std::integral_constant<int, N>*>(0));
return result;
});
report_execution_time(time, std::string("Polynomial Method Comparison with ") + compiler_name() + std::string(" on ") + platform_name(), "Order " + make_order_string(N), "Method 2[br](Integer Coefficients)");
}
-void test_poly_3(const boost::integral_constant<int, 1>&)
+void test_poly_3(const std::integral_constant<int, 1>&)
{
}
template <int N>
-void test_poly_3(const boost::integral_constant<int, N>&)
+void test_poly_3(const std::integral_constant<int, N>&)
{
- test_poly_3(boost::integral_constant<int, N - 1>());
+ test_poly_3(std::integral_constant<int, N - 1>());
double time = exec_timed_test([](const std::vector<double>& v) { double result = 0;
for (unsigned i = 0; i < 10; ++i)
- result += boost::math::tools::detail::evaluate_polynomial_c_imp_3(denom, v[0] + i, static_cast<boost::integral_constant<int, N>*>(0));
+ result += boost::math::tools::detail::evaluate_polynomial_c_imp_3(denom, v[0] + i, static_cast<std::integral_constant<int, N>*>(0));
return result;
});
report_execution_time(time, std::string("Polynomial Method Comparison with ") + compiler_name() + std::string(" on ") + platform_name(), "Order " + make_order_string(N), "Method 3[br](Double Coefficients)");
time = exec_timed_test([](const std::vector<double>& v) { double result = 0;
for (unsigned i = 0; i < 10; ++i)
- result += boost::math::tools::detail::evaluate_polynomial_c_imp_3(denom_int, v[0] + i, static_cast<boost::integral_constant<int, N>*>(0));
+ result += boost::math::tools::detail::evaluate_polynomial_c_imp_3(denom_int, v[0] + i, static_cast<std::integral_constant<int, N>*>(0));
return result;
});
report_execution_time(time, std::string("Polynomial Method Comparison with ") + compiler_name() + std::string(" on ") + platform_name(), "Order " + make_order_string(N), "Method 3[br](Integer Coefficients)");
return sum;
}
-void test_rat_1(const boost::integral_constant<int, 1>&)
+void test_rat_1(const std::integral_constant<int, 1>&)
{
}
template <int N>
-void test_rat_1(const boost::integral_constant<int, N>&)
+void test_rat_1(const std::integral_constant<int, N>&)
{
- test_rat_1(boost::integral_constant<int, N - 1>());
+ test_rat_1(std::integral_constant<int, N - 1>());
double time = exec_timed_test([](const std::vector<double>& v)
{
double result = 0;
for (unsigned i = 0; i < 10; ++i)
- result += boost::math::tools::detail::evaluate_rational_c_imp_1(num, denom, v[0] + i, static_cast<boost::integral_constant<int, N>*>(0));
+ result += boost::math::tools::detail::evaluate_rational_c_imp_1(num, denom, v[0] + i, static_cast<std::integral_constant<int, N>*>(0));
return result;
});
report_execution_time(time, std::string("Rational Method Comparison with ") + compiler_name() + std::string(" on ") + platform_name(), "Order " + make_order_string(N), "Method 1[br](Double Coefficients)");
{
double result = 0;
for (unsigned i = 0; i < 10; ++i)
- result += boost::math::tools::detail::evaluate_rational_c_imp_1(num, denom_int, v[0] + i, static_cast<boost::integral_constant<int, N>*>(0));
+ result += boost::math::tools::detail::evaluate_rational_c_imp_1(num, denom_int, v[0] + i, static_cast<std::integral_constant<int, N>*>(0));
return result;
});
report_execution_time(time, std::string("Rational Method Comparison with ") + compiler_name() + std::string(" on ") + platform_name(), "Order " + make_order_string(N), "Method 1[br](Integer Coefficients)");
}
-void test_rat_2(const boost::integral_constant<int, 1>&)
+void test_rat_2(const std::integral_constant<int, 1>&)
{
}
template <int N>
-void test_rat_2(const boost::integral_constant<int, N>&)
+void test_rat_2(const std::integral_constant<int, N>&)
{
- test_rat_2(boost::integral_constant<int, N - 1>());
+ test_rat_2(std::integral_constant<int, N - 1>());
double time = exec_timed_test([](const std::vector<double>& v)
{
double result = 0;
for (unsigned i = 0; i < 10; ++i)
- result += boost::math::tools::detail::evaluate_rational_c_imp_2(num, denom, v[0] + i, static_cast<boost::integral_constant<int, N>*>(0));
+ result += boost::math::tools::detail::evaluate_rational_c_imp_2(num, denom, v[0] + i, static_cast<std::integral_constant<int, N>*>(0));
return result;
});
report_execution_time(time, std::string("Rational Method Comparison with ") + compiler_name() + std::string(" on ") + platform_name(), "Order " + make_order_string(N), "Method 2[br](Double Coefficients)");
{
double result = 0;
for (unsigned i = 0; i < 10; ++i)
- result += boost::math::tools::detail::evaluate_rational_c_imp_2(num, denom_int, v[0] + i, static_cast<boost::integral_constant<int, N>*>(0));
+ result += boost::math::tools::detail::evaluate_rational_c_imp_2(num, denom_int, v[0] + i, static_cast<std::integral_constant<int, N>*>(0));
return result;
});
report_execution_time(time, std::string("Rational Method Comparison with ") + compiler_name() + std::string(" on ") + platform_name(), "Order " + make_order_string(N), "Method 2[br](Integer Coefficients)");
}
-void test_rat_3(const boost::integral_constant<int, 1>&)
+void test_rat_3(const std::integral_constant<int, 1>&)
{
}
template <int N>
-void test_rat_3(const boost::integral_constant<int, N>&)
+void test_rat_3(const std::integral_constant<int, N>&)
{
- test_rat_3(boost::integral_constant<int, N - 1>());
+ test_rat_3(std::integral_constant<int, N - 1>());
double time = exec_timed_test([](const std::vector<double>& v)
{
double result = 0;
for (unsigned i = 0; i < 10; ++i)
- result += boost::math::tools::detail::evaluate_rational_c_imp_3(num, denom, v[0] + i, static_cast<boost::integral_constant<int, N>*>(0));
+ result += boost::math::tools::detail::evaluate_rational_c_imp_3(num, denom, v[0] + i, static_cast<std::integral_constant<int, N>*>(0));
return result;
});
report_execution_time(time, std::string("Rational Method Comparison with ") + compiler_name() + std::string(" on ") + platform_name(), "Order " + make_order_string(N), "Method 3[br](Double Coefficients)");
{
double result = 0;
for (unsigned i = 0; i < 10; ++i)
- result += boost::math::tools::detail::evaluate_rational_c_imp_3(num, denom_int, v[0] + i, static_cast<boost::integral_constant<int, N>*>(0));
+ result += boost::math::tools::detail::evaluate_rational_c_imp_3(num, denom_int, v[0] + i, static_cast<std::integral_constant<int, N>*>(0));
return result;
});
report_execution_time(time, std::string("Rational Method Comparison with ") + compiler_name() + std::string(" on ") + platform_name(), "Order " + make_order_string(N), "Method 3[br](Integer Coefficients)");
report_execution_time(time, std::string("Polynomial Method Comparison with ") + compiler_name() + std::string(" on ") + platform_name(), "Order " + make_order_string(i), "Method 0[br](Integer Coefficients)");
}
- test_poly_1(boost::integral_constant<int, 20>());
- test_poly_2(boost::integral_constant<int, 20>());
- test_poly_3(boost::integral_constant<int, 20>());
+ test_poly_1(std::integral_constant<int, 20>());
+ test_poly_2(std::integral_constant<int, 20>());
+ test_poly_3(std::integral_constant<int, 20>());
for (unsigned i = 3; i <= 20; ++i)
{
report_execution_time(time, std::string("Rational Method Comparison with ") + compiler_name() + std::string(" on ") + platform_name(), "Order " + make_order_string(i), "Method 0[br](Integer Coefficients)");
}
- test_rat_1(boost::integral_constant<int, 20>());
- test_rat_2(boost::integral_constant<int, 20>());
- test_rat_3(boost::integral_constant<int, 20>());
+ test_rat_1(std::integral_constant<int, 20>());
+ test_rat_2(std::integral_constant<int, 20>());
+ test_rat_3(std::integral_constant<int, 20>());
return 0;
}