⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test_rational.hpp

📁 Boost provides free peer-reviewed portable C++ source libraries. We emphasize libraries that work
💻 HPP
📖 第 1 页 / 共 5 页
字号:
      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(0.125), 3),      static_cast<T>(0.10096435546875e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(0.25), 3),      static_cast<T>(0.1041796875e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(0.75), 3),      static_cast<T>(0.1685546875e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(1.0f - 1.0f/64.0f), 3),      static_cast<T>(0.26142410933971405029296875e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(6.5f), 3),      static_cast<T>(0.198991875e5L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(10247.25f), 3),      static_cast<T>(0.12128916726310335635546875e18L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(0.125)),      static_cast<T>(0.10096435546875e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(0.25)),      static_cast<T>(0.1041796875e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(0.75)),      static_cast<T>(0.1685546875e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(1.0f - 1.0f/64.0f)),      static_cast<T>(0.26142410933971405029296875e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(6.5f)),      static_cast<T>(0.198991875e5L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(10247.25f)),      static_cast<T>(0.12128916726310335635546875e18L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_even_polynomial(n3a, static_cast<T>(0.125)),      static_cast<T>(0.10096435546875e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_even_polynomial(n3a, static_cast<T>(0.25)),      static_cast<T>(0.1041796875e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_even_polynomial(n3a, static_cast<T>(0.75)),      static_cast<T>(0.1685546875e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_even_polynomial(n3a, static_cast<T>(1.0f - 1.0f/64.0f)),      static_cast<T>(0.26142410933971405029296875e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_even_polynomial(n3a, static_cast<T>(6.5f)),      static_cast<T>(0.198991875e5L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_even_polynomial(n3a, static_cast<T>(10247.25f)),      static_cast<T>(0.12128916726310335635546875e18L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(0.125), 3),      static_cast<T>(0.10771484375e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(0.25), 3),      static_cast<T>(0.11671875e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(0.75), 3),      static_cast<T>(0.19140625e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(1.0f - 1.0f/64.0f), 3),      static_cast<T>(0.26398639678955078125e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(6.5f), 3),      static_cast<T>(0.3069875e4L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(10247.25f), 3),      static_cast<T>(0.11836265072405359375e14L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(0.125)),      static_cast<T>(0.10771484375e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(0.25)),      static_cast<T>(0.11671875e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(0.75)),      static_cast<T>(0.19140625e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(1.0f - 1.0f/64.0f)),      static_cast<T>(0.26398639678955078125e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(6.5f)),      static_cast<T>(0.3069875e4L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(10247.25f)),      static_cast<T>(0.11836265072405359375e14L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_odd_polynomial(n3a, static_cast<T>(0.125)),      static_cast<T>(0.10771484375e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_odd_polynomial(n3a, static_cast<T>(0.25)),      static_cast<T>(0.11671875e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_odd_polynomial(n3a, static_cast<T>(0.75)),      static_cast<T>(0.19140625e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_odd_polynomial(n3a, static_cast<T>(1.0f - 1.0f/64.0f)),      static_cast<T>(0.26398639678955078125e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_odd_polynomial(n3a, static_cast<T>(6.5f)),      static_cast<T>(0.3069875e4L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_odd_polynomial(n3a, static_cast<T>(10247.25f)),      static_cast<T>(0.11836265072405359375e14L),      tolerance);   //   // Rational functions of order 2   //   static const U d3c[3] = { 3, 4, 10 };   static const boost::array<U, 3> d3a = { 3, 4, 10 };   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(0.125), 3),      static_cast<T>(0.2987179487179487179487179487179487179487e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(0.25), 3),      static_cast<T>(0.2635135135135135135135135135135135135135e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(0.75), 3),      static_cast<T>(0.1779569892473118279569892473118279569892e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(1.0f - 1.0f/64.0f), 3),      static_cast<T>(0.1597671277126831703520981998649164537633e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(6.5f), 3),      static_cast<T>(0.1137873754152823920265780730897009966777e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(10247.25f), 3),      static_cast<T>(0.1100015619716026431429617996316152069115e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(0.125)),      static_cast<T>(0.2987179487179487179487179487179487179487e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(0.25)),      static_cast<T>(0.2635135135135135135135135135135135135135e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(0.75)),      static_cast<T>(0.1779569892473118279569892473118279569892e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(1.0f - 1.0f/64.0f)),      static_cast<T>(0.1597671277126831703520981998649164537633e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(6.5f)),      static_cast<T>(0.1137873754152823920265780730897009966777e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(10247.25f)),      static_cast<T>(0.1100015619716026431429617996316152069115e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_rational(n3a, d3a, static_cast<T>(0.125)),      static_cast<T>(0.2987179487179487179487179487179487179487e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_rational(n3a, d3a, static_cast<T>(0.25)),      static_cast<T>(0.2635135135135135135135135135135135135135e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_rational(n3a, d3a, static_cast<T>(0.75)),      static_cast<T>(0.1779569892473118279569892473118279569892e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_rational(n3a, d3a, static_cast<T>(1.0f - 1.0f/64.0f)),      static_cast<T>(0.1597671277126831703520981998649164537633e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_rational(n3a, d3a, static_cast<T>(6.5f)),      static_cast<T>(0.1137873754152823920265780730897009966777e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_rational(n3a, d3a, static_cast<T>(10247.25f)),      static_cast<T>(0.1100015619716026431429617996316152069115e1L),      tolerance);}template <class T, class U>void do_test_spots3(T, U){   //   // Tolerance is 4 eps expressed as a persentage:   //   T tolerance = boost::math::tools::epsilon<T>() * 4 * 100;   //   // Polynomials of order 3   //   static const U n4c[4] = { 1, 4, 9, 11 };   static const boost::array<U, 4> n4a = { 1, 4, 9, 11 };   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(0.125), 4),      static_cast<T>(0.1662109375e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(0.25), 4),      static_cast<T>(0.2734375e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(0.75), 4),      static_cast<T>(0.13703125e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(1.0f - 1.0f/64.0f), 4),      static_cast<T>(0.24150836944580078125e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(6.5), 4),      static_cast<T>(0.3428125e4L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(10247.25), 4),      static_cast<T>(0.11837210107094921875e14L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(0.125)),      static_cast<T>(0.1662109375e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(0.25)),      static_cast<T>(0.2734375e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(0.75)),      static_cast<T>(0.13703125e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(1.0f - 1.0f/64.0f)),      static_cast<T>(0.24150836944580078125e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(6.5)),      static_cast<T>(0.3428125e4L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(10247.25)),      static_cast<T>(0.11837210107094921875e14L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_polynomial(n4a, static_cast<T>(0.125)),      static_cast<T>(0.1662109375e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_polynomial(n4a, static_cast<T>(0.25)),      static_cast<T>(0.2734375e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_polynomial(n4a, static_cast<T>(0.75)),      static_cast<T>(0.13703125e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_polynomial(n4a, static_cast<T>(1.0f - 1.0f/64.0f)),      static_cast<T>(0.24150836944580078125e2L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_polynomial(n4a, static_cast<T>(6.5)),      static_cast<T>(0.3428125e4L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_polynomial(n4a, static_cast<T>(10247.25)),      static_cast<T>(0.11837210107094921875e14L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_even_polynomial(n4c, static_cast<T>(0.125), 4),      static_cast<T>(0.1064739227294921875e1L),      tolerance);   BOOST_CHECK_CLOSE(      boost::math::tools::evaluate_even_polynomial(n4c, static_cast<T>(0.25), 4),      static_cast<T>(0.1287841796875e1L),      tolerance);   BOOST_CHECK_CLOSE(

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -