1 // (C) Copyright John Maddock 2006-7.
2 // Use, modification and distribution are subject to the
3 // Boost Software License, Version 1.0. (See accompanying file
4 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
7 #ifndef BOOST_MATH_TEST_RATIONAL_HPP
8 #define BOOST_MATH_TEST_RATIONAL_HPP
10 #include <boost/test/tools/floating_point_comparison.hpp>
11 #include <boost/test/unit_test.hpp>
12 #include <boost/array.hpp>
13 #include <boost/math/tools/rational.hpp>
14 #include <boost/math/tools/precision.hpp>
16 template <class T, class U>
17 void do_test_spots1(T, U)
20 // Tolerance is 4 eps expressed as a persentage:
22 T tolerance = boost::math::tools::epsilon<T>() * 4 * 100;
25 // Everything past this point is generated by the program
26 // ../tools/generate_rational_test.cpp
30 // Polynomials of order 0
32 static const U n1c[1] = { 2 };
33 static const boost::array<U, 1> n1a = {{ 2 }};
35 boost::math::tools::evaluate_polynomial(n1c, static_cast<T>(0.125), 1),
36 static_cast<T>(0.2e1L),
39 boost::math::tools::evaluate_polynomial(n1c, static_cast<T>(0.25), 1),
40 static_cast<T>(0.2e1L),
43 boost::math::tools::evaluate_polynomial(n1c, static_cast<T>(0.75), 1),
44 static_cast<T>(0.2e1L),
47 boost::math::tools::evaluate_polynomial(n1c, static_cast<T>(1.0f - 1.0f/64.0f), 1),
48 static_cast<T>(0.2e1L),
51 boost::math::tools::evaluate_polynomial(n1c, static_cast<T>(6.5), 1),
52 static_cast<T>(0.2e1L),
55 boost::math::tools::evaluate_polynomial(n1c, static_cast<T>(10247.25), 1),
56 static_cast<T>(0.2e1L),
60 boost::math::tools::evaluate_polynomial(n1c, static_cast<T>(0.125)),
61 static_cast<T>(0.2e1L),
64 boost::math::tools::evaluate_polynomial(n1c, static_cast<T>(0.25)),
65 static_cast<T>(0.2e1L),
68 boost::math::tools::evaluate_polynomial(n1c, static_cast<T>(0.75)),
69 static_cast<T>(0.2e1L),
72 boost::math::tools::evaluate_polynomial(n1c, static_cast<T>(1.0f - 1.0f/64.0f)),
73 static_cast<T>(0.2e1L),
76 boost::math::tools::evaluate_polynomial(n1c, static_cast<T>(6.5)),
77 static_cast<T>(0.2e1L),
80 boost::math::tools::evaluate_polynomial(n1c, static_cast<T>(10247.25)),
81 static_cast<T>(0.2e1L),
85 boost::math::tools::evaluate_polynomial(n1a, static_cast<T>(0.125)),
86 static_cast<T>(0.2e1L),
89 boost::math::tools::evaluate_polynomial(n1a, static_cast<T>(0.25)),
90 static_cast<T>(0.2e1L),
93 boost::math::tools::evaluate_polynomial(n1a, static_cast<T>(0.75)),
94 static_cast<T>(0.2e1L),
97 boost::math::tools::evaluate_polynomial(n1a, static_cast<T>(1.0f - 1.0f/64.0f)),
98 static_cast<T>(0.2e1L),
101 boost::math::tools::evaluate_polynomial(n1a, static_cast<T>(6.5)),
102 static_cast<T>(0.2e1L),
105 boost::math::tools::evaluate_polynomial(n1a, static_cast<T>(10247.25)),
106 static_cast<T>(0.2e1L),
110 boost::math::tools::evaluate_even_polynomial(n1c, static_cast<T>(0.125), 1),
111 static_cast<T>(0.2e1L),
114 boost::math::tools::evaluate_even_polynomial(n1c, static_cast<T>(0.25), 1),
115 static_cast<T>(0.2e1L),
118 boost::math::tools::evaluate_even_polynomial(n1c, static_cast<T>(0.75), 1),
119 static_cast<T>(0.2e1L),
122 boost::math::tools::evaluate_even_polynomial(n1c, static_cast<T>(1.0f - 1.0f/64.0f), 1),
123 static_cast<T>(0.2e1L),
126 boost::math::tools::evaluate_even_polynomial(n1c, static_cast<T>(6.5f), 1),
127 static_cast<T>(0.2e1L),
130 boost::math::tools::evaluate_even_polynomial(n1c, static_cast<T>(10247.25f), 1),
131 static_cast<T>(0.2e1L),
135 boost::math::tools::evaluate_even_polynomial(n1c, static_cast<T>(0.125)),
136 static_cast<T>(0.2e1L),
139 boost::math::tools::evaluate_even_polynomial(n1c, static_cast<T>(0.25)),
140 static_cast<T>(0.2e1L),
143 boost::math::tools::evaluate_even_polynomial(n1c, static_cast<T>(0.75)),
144 static_cast<T>(0.2e1L),
147 boost::math::tools::evaluate_even_polynomial(n1c, static_cast<T>(1.0f - 1.0f/64.0f)),
148 static_cast<T>(0.2e1L),
151 boost::math::tools::evaluate_even_polynomial(n1c, static_cast<T>(6.5f)),
152 static_cast<T>(0.2e1L),
155 boost::math::tools::evaluate_even_polynomial(n1c, static_cast<T>(10247.25f)),
156 static_cast<T>(0.2e1L),
160 boost::math::tools::evaluate_even_polynomial(n1a, static_cast<T>(0.125)),
161 static_cast<T>(0.2e1L),
164 boost::math::tools::evaluate_even_polynomial(n1a, static_cast<T>(0.25)),
165 static_cast<T>(0.2e1L),
168 boost::math::tools::evaluate_even_polynomial(n1a, static_cast<T>(0.75)),
169 static_cast<T>(0.2e1L),
172 boost::math::tools::evaluate_even_polynomial(n1a, static_cast<T>(1.0f - 1.0f/64.0f)),
173 static_cast<T>(0.2e1L),
176 boost::math::tools::evaluate_even_polynomial(n1a, static_cast<T>(6.5f)),
177 static_cast<T>(0.2e1L),
180 boost::math::tools::evaluate_even_polynomial(n1a, static_cast<T>(10247.25f)),
181 static_cast<T>(0.2e1L),
185 // Rational functions of order 0
187 static const U d1c[1] = { 3 };
188 static const boost::array<U, 1> d1a = {{ 3 }};
190 boost::math::tools::evaluate_rational(n1c, d1c, static_cast<T>(0.125), 1),
191 static_cast<T>(0.6666666666666666666666666666666666666667e0L),
194 boost::math::tools::evaluate_rational(n1c, d1c, static_cast<T>(0.25), 1),
195 static_cast<T>(0.6666666666666666666666666666666666666667e0L),
198 boost::math::tools::evaluate_rational(n1c, d1c, static_cast<T>(0.75), 1),
199 static_cast<T>(0.6666666666666666666666666666666666666667e0L),
202 boost::math::tools::evaluate_rational(n1c, d1c, static_cast<T>(1.0f - 1.0f/64.0f), 1),
203 static_cast<T>(0.6666666666666666666666666666666666666667e0L),
206 boost::math::tools::evaluate_rational(n1c, d1c, static_cast<T>(6.5f), 1),
207 static_cast<T>(0.6666666666666666666666666666666666666667e0L),
210 boost::math::tools::evaluate_rational(n1c, d1c, static_cast<T>(10247.25f), 1),
211 static_cast<T>(0.6666666666666666666666666666666666666667e0L),
215 boost::math::tools::evaluate_rational(n1c, d1c, static_cast<T>(0.125)),
216 static_cast<T>(0.6666666666666666666666666666666666666667e0L),
219 boost::math::tools::evaluate_rational(n1c, d1c, static_cast<T>(0.25)),
220 static_cast<T>(0.6666666666666666666666666666666666666667e0L),
223 boost::math::tools::evaluate_rational(n1c, d1c, static_cast<T>(0.75)),
224 static_cast<T>(0.6666666666666666666666666666666666666667e0L),
227 boost::math::tools::evaluate_rational(n1c, d1c, static_cast<T>(1.0f - 1.0f/64.0f)),
228 static_cast<T>(0.6666666666666666666666666666666666666667e0L),
231 boost::math::tools::evaluate_rational(n1c, d1c, static_cast<T>(6.5f)),
232 static_cast<T>(0.6666666666666666666666666666666666666667e0L),
235 boost::math::tools::evaluate_rational(n1c, d1c, static_cast<T>(10247.25f)),
236 static_cast<T>(0.6666666666666666666666666666666666666667e0L),
240 boost::math::tools::evaluate_rational(n1a, d1a, static_cast<T>(0.125)),
241 static_cast<T>(0.6666666666666666666666666666666666666667e0L),
244 boost::math::tools::evaluate_rational(n1a, d1a, static_cast<T>(0.25)),
245 static_cast<T>(0.6666666666666666666666666666666666666667e0L),
248 boost::math::tools::evaluate_rational(n1a, d1a, static_cast<T>(0.75)),
249 static_cast<T>(0.6666666666666666666666666666666666666667e0L),
252 boost::math::tools::evaluate_rational(n1a, d1a, static_cast<T>(1.0f - 1.0f/64.0f)),
253 static_cast<T>(0.6666666666666666666666666666666666666667e0L),
256 boost::math::tools::evaluate_rational(n1a, d1a, static_cast<T>(6.5f)),
257 static_cast<T>(0.6666666666666666666666666666666666666667e0L),
260 boost::math::tools::evaluate_rational(n1a, d1a, static_cast<T>(10247.25f)),
261 static_cast<T>(0.6666666666666666666666666666666666666667e0L),
265 // Polynomials of order 1
267 static const U n2c[2] = { 3, 1 };
268 static const boost::array<U, 2> n2a = {{ 3, 1 }};
270 boost::math::tools::evaluate_polynomial(n2c, static_cast<T>(0.125), 2),
271 static_cast<T>(0.3125e1L),
274 boost::math::tools::evaluate_polynomial(n2c, static_cast<T>(0.25), 2),
275 static_cast<T>(0.325e1L),
278 boost::math::tools::evaluate_polynomial(n2c, static_cast<T>(0.75), 2),
279 static_cast<T>(0.375e1L),
282 boost::math::tools::evaluate_polynomial(n2c, static_cast<T>(1.0f - 1.0f/64.0f), 2),
283 static_cast<T>(0.3984375e1L),
286 boost::math::tools::evaluate_polynomial(n2c, static_cast<T>(6.5), 2),
287 static_cast<T>(0.95e1L),
290 boost::math::tools::evaluate_polynomial(n2c, static_cast<T>(10247.25), 2),
291 static_cast<T>(0.1025025e5L),
295 boost::math::tools::evaluate_polynomial(n2c, static_cast<T>(0.125)),
296 static_cast<T>(0.3125e1L),
299 boost::math::tools::evaluate_polynomial(n2c, static_cast<T>(0.25)),
300 static_cast<T>(0.325e1L),
303 boost::math::tools::evaluate_polynomial(n2c, static_cast<T>(0.75)),
304 static_cast<T>(0.375e1L),
307 boost::math::tools::evaluate_polynomial(n2c, static_cast<T>(1.0f - 1.0f/64.0f)),
308 static_cast<T>(0.3984375e1L),
311 boost::math::tools::evaluate_polynomial(n2c, static_cast<T>(6.5)),
312 static_cast<T>(0.95e1L),
315 boost::math::tools::evaluate_polynomial(n2c, static_cast<T>(10247.25)),
316 static_cast<T>(0.1025025e5L),
320 boost::math::tools::evaluate_polynomial(n2a, static_cast<T>(0.125)),
321 static_cast<T>(0.3125e1L),
324 boost::math::tools::evaluate_polynomial(n2a, static_cast<T>(0.25)),
325 static_cast<T>(0.325e1L),
328 boost::math::tools::evaluate_polynomial(n2a, static_cast<T>(0.75)),
329 static_cast<T>(0.375e1L),
332 boost::math::tools::evaluate_polynomial(n2a, static_cast<T>(1.0f - 1.0f/64.0f)),
333 static_cast<T>(0.3984375e1L),
336 boost::math::tools::evaluate_polynomial(n2a, static_cast<T>(6.5)),
337 static_cast<T>(0.95e1L),
340 boost::math::tools::evaluate_polynomial(n2a, static_cast<T>(10247.25)),
341 static_cast<T>(0.1025025e5L),
345 boost::math::tools::evaluate_even_polynomial(n2c, static_cast<T>(0.125), 2),
346 static_cast<T>(0.3015625e1L),
349 boost::math::tools::evaluate_even_polynomial(n2c, static_cast<T>(0.25), 2),
350 static_cast<T>(0.30625e1L),
353 boost::math::tools::evaluate_even_polynomial(n2c, static_cast<T>(0.75), 2),
354 static_cast<T>(0.35625e1L),
357 boost::math::tools::evaluate_even_polynomial(n2c, static_cast<T>(1.0f - 1.0f/64.0f), 2),
358 static_cast<T>(0.3968994140625e1L),
361 boost::math::tools::evaluate_even_polynomial(n2c, static_cast<T>(6.5f), 2),
362 static_cast<T>(0.4525e2L),
365 boost::math::tools::evaluate_even_polynomial(n2c, static_cast<T>(10247.25f), 2),
366 static_cast<T>(0.1050061355625e9L),
370 boost::math::tools::evaluate_even_polynomial(n2c, static_cast<T>(0.125)),
371 static_cast<T>(0.3015625e1L),
374 boost::math::tools::evaluate_even_polynomial(n2c, static_cast<T>(0.25)),
375 static_cast<T>(0.30625e1L),
378 boost::math::tools::evaluate_even_polynomial(n2c, static_cast<T>(0.75)),
379 static_cast<T>(0.35625e1L),
382 boost::math::tools::evaluate_even_polynomial(n2c, static_cast<T>(1.0f - 1.0f/64.0f)),
383 static_cast<T>(0.3968994140625e1L),
386 boost::math::tools::evaluate_even_polynomial(n2c, static_cast<T>(6.5f)),
387 static_cast<T>(0.4525e2L),
390 boost::math::tools::evaluate_even_polynomial(n2c, static_cast<T>(10247.25f)),
391 static_cast<T>(0.1050061355625e9L),
395 boost::math::tools::evaluate_even_polynomial(n2a, static_cast<T>(0.125)),
396 static_cast<T>(0.3015625e1L),
399 boost::math::tools::evaluate_even_polynomial(n2a, static_cast<T>(0.25)),
400 static_cast<T>(0.30625e1L),
403 boost::math::tools::evaluate_even_polynomial(n2a, static_cast<T>(0.75)),
404 static_cast<T>(0.35625e1L),
407 boost::math::tools::evaluate_even_polynomial(n2a, static_cast<T>(1.0f - 1.0f/64.0f)),
408 static_cast<T>(0.3968994140625e1L),
411 boost::math::tools::evaluate_even_polynomial(n2a, static_cast<T>(6.5f)),
412 static_cast<T>(0.4525e2L),
415 boost::math::tools::evaluate_even_polynomial(n2a, static_cast<T>(10247.25f)),
416 static_cast<T>(0.1050061355625e9L),
420 boost::math::tools::evaluate_odd_polynomial(n2c, static_cast<T>(0.125), 2),
421 static_cast<T>(0.3125e1L),
424 boost::math::tools::evaluate_odd_polynomial(n2c, static_cast<T>(0.25), 2),
425 static_cast<T>(0.325e1L),
428 boost::math::tools::evaluate_odd_polynomial(n2c, static_cast<T>(0.75), 2),
429 static_cast<T>(0.375e1L),
432 boost::math::tools::evaluate_odd_polynomial(n2c, static_cast<T>(1.0f - 1.0f/64.0f), 2),
433 static_cast<T>(0.3984375e1L),
436 boost::math::tools::evaluate_odd_polynomial(n2c, static_cast<T>(6.5f), 2),
437 static_cast<T>(0.95e1L),
440 boost::math::tools::evaluate_odd_polynomial(n2c, static_cast<T>(10247.25f), 2),
441 static_cast<T>(0.1025025e5L),
445 boost::math::tools::evaluate_odd_polynomial(n2c, static_cast<T>(0.125)),
446 static_cast<T>(0.3125e1L),
449 boost::math::tools::evaluate_odd_polynomial(n2c, static_cast<T>(0.25)),
450 static_cast<T>(0.325e1L),
453 boost::math::tools::evaluate_odd_polynomial(n2c, static_cast<T>(0.75)),
454 static_cast<T>(0.375e1L),
457 boost::math::tools::evaluate_odd_polynomial(n2c, static_cast<T>(1.0f - 1.0f/64.0f)),
458 static_cast<T>(0.3984375e1L),
461 boost::math::tools::evaluate_odd_polynomial(n2c, static_cast<T>(6.5f)),
462 static_cast<T>(0.95e1L),
465 boost::math::tools::evaluate_odd_polynomial(n2c, static_cast<T>(10247.25f)),
466 static_cast<T>(0.1025025e5L),
470 boost::math::tools::evaluate_odd_polynomial(n2a, static_cast<T>(0.125)),
471 static_cast<T>(0.3125e1L),
474 boost::math::tools::evaluate_odd_polynomial(n2a, static_cast<T>(0.25)),
475 static_cast<T>(0.325e1L),
478 boost::math::tools::evaluate_odd_polynomial(n2a, static_cast<T>(0.75)),
479 static_cast<T>(0.375e1L),
482 boost::math::tools::evaluate_odd_polynomial(n2a, static_cast<T>(1.0f - 1.0f/64.0f)),
483 static_cast<T>(0.3984375e1L),
486 boost::math::tools::evaluate_odd_polynomial(n2a, static_cast<T>(6.5f)),
487 static_cast<T>(0.95e1L),
490 boost::math::tools::evaluate_odd_polynomial(n2a, static_cast<T>(10247.25f)),
491 static_cast<T>(0.1025025e5L),
495 // Rational functions of order 1
497 static const U d2c[2] = { 5, 9 };
498 static const boost::array<U, 2> d2a = {{ 5, 9 }};
500 boost::math::tools::evaluate_rational(n2c, d2c, static_cast<T>(0.125), 2),
501 static_cast<T>(0.5102040816326530612244897959183673469388e0L),
504 boost::math::tools::evaluate_rational(n2c, d2c, static_cast<T>(0.25), 2),
505 static_cast<T>(0.4482758620689655172413793103448275862069e0L),
508 boost::math::tools::evaluate_rational(n2c, d2c, static_cast<T>(0.75), 2),
509 static_cast<T>(0.3191489361702127659574468085106382978723e0L),
512 boost::math::tools::evaluate_rational(n2c, d2c, static_cast<T>(1.0f - 1.0f/64.0f), 2),
513 static_cast<T>(0.2874859075535512965050732807215332581736e0L),
516 boost::math::tools::evaluate_rational(n2c, d2c, static_cast<T>(6.5f), 2),
517 static_cast<T>(0.1496062992125984251968503937007874015748e0L),
520 boost::math::tools::evaluate_rational(n2c, d2c, static_cast<T>(10247.25f), 2),
521 static_cast<T>(0.1111376148281068304596377002122405609873e0L),
525 boost::math::tools::evaluate_rational(n2c, d2c, static_cast<T>(0.125)),
526 static_cast<T>(0.5102040816326530612244897959183673469388e0L),
529 boost::math::tools::evaluate_rational(n2c, d2c, static_cast<T>(0.25)),
530 static_cast<T>(0.4482758620689655172413793103448275862069e0L),
533 boost::math::tools::evaluate_rational(n2c, d2c, static_cast<T>(0.75)),
534 static_cast<T>(0.3191489361702127659574468085106382978723e0L),
537 boost::math::tools::evaluate_rational(n2c, d2c, static_cast<T>(1.0f - 1.0f/64.0f)),
538 static_cast<T>(0.2874859075535512965050732807215332581736e0L),
541 boost::math::tools::evaluate_rational(n2c, d2c, static_cast<T>(6.5f)),
542 static_cast<T>(0.1496062992125984251968503937007874015748e0L),
545 boost::math::tools::evaluate_rational(n2c, d2c, static_cast<T>(10247.25f)),
546 static_cast<T>(0.1111376148281068304596377002122405609873e0L),
550 boost::math::tools::evaluate_rational(n2a, d2a, static_cast<T>(0.125)),
551 static_cast<T>(0.5102040816326530612244897959183673469388e0L),
554 boost::math::tools::evaluate_rational(n2a, d2a, static_cast<T>(0.25)),
555 static_cast<T>(0.4482758620689655172413793103448275862069e0L),
558 boost::math::tools::evaluate_rational(n2a, d2a, static_cast<T>(0.75)),
559 static_cast<T>(0.3191489361702127659574468085106382978723e0L),
562 boost::math::tools::evaluate_rational(n2a, d2a, static_cast<T>(1.0f - 1.0f/64.0f)),
563 static_cast<T>(0.2874859075535512965050732807215332581736e0L),
566 boost::math::tools::evaluate_rational(n2a, d2a, static_cast<T>(6.5f)),
567 static_cast<T>(0.1496062992125984251968503937007874015748e0L),
570 boost::math::tools::evaluate_rational(n2a, d2a, static_cast<T>(10247.25f)),
571 static_cast<T>(0.1111376148281068304596377002122405609873e0L),
575 template <class T, class U>
576 void do_test_spots2(T, U)
579 // Tolerance is 4 eps expressed as a persentage:
581 T tolerance = boost::math::tools::epsilon<T>() * 4 * 100;
584 // Polynomials of order 2
586 static const U n3c[3] = { 10, 6, 11 };
587 static const boost::array<U, 3> n3a = {{ 10, 6, 11 }};
589 boost::math::tools::evaluate_polynomial(n3c, static_cast<T>(0.125), 3),
590 static_cast<T>(0.10921875e2L),
593 boost::math::tools::evaluate_polynomial(n3c, static_cast<T>(0.25), 3),
594 static_cast<T>(0.121875e2L),
597 boost::math::tools::evaluate_polynomial(n3c, static_cast<T>(0.75), 3),
598 static_cast<T>(0.206875e2L),
601 boost::math::tools::evaluate_polynomial(n3c, static_cast<T>(1.0f - 1.0f/64.0f), 3),
602 static_cast<T>(0.26565185546875e2L),
605 boost::math::tools::evaluate_polynomial(n3c, static_cast<T>(6.5), 3),
606 static_cast<T>(0.51375e3L),
609 boost::math::tools::evaluate_polynomial(n3c, static_cast<T>(10247.25), 3),
610 static_cast<T>(0.11551289516875e10L),
614 boost::math::tools::evaluate_polynomial(n3c, static_cast<T>(0.125)),
615 static_cast<T>(0.10921875e2L),
618 boost::math::tools::evaluate_polynomial(n3c, static_cast<T>(0.25)),
619 static_cast<T>(0.121875e2L),
622 boost::math::tools::evaluate_polynomial(n3c, static_cast<T>(0.75)),
623 static_cast<T>(0.206875e2L),
626 boost::math::tools::evaluate_polynomial(n3c, static_cast<T>(1.0f - 1.0f/64.0f)),
627 static_cast<T>(0.26565185546875e2L),
630 boost::math::tools::evaluate_polynomial(n3c, static_cast<T>(6.5)),
631 static_cast<T>(0.51375e3L),
634 boost::math::tools::evaluate_polynomial(n3c, static_cast<T>(10247.25)),
635 static_cast<T>(0.11551289516875e10L),
639 boost::math::tools::evaluate_polynomial(n3a, static_cast<T>(0.125)),
640 static_cast<T>(0.10921875e2L),
643 boost::math::tools::evaluate_polynomial(n3a, static_cast<T>(0.25)),
644 static_cast<T>(0.121875e2L),
647 boost::math::tools::evaluate_polynomial(n3a, static_cast<T>(0.75)),
648 static_cast<T>(0.206875e2L),
651 boost::math::tools::evaluate_polynomial(n3a, static_cast<T>(1.0f - 1.0f/64.0f)),
652 static_cast<T>(0.26565185546875e2L),
655 boost::math::tools::evaluate_polynomial(n3a, static_cast<T>(6.5)),
656 static_cast<T>(0.51375e3L),
659 boost::math::tools::evaluate_polynomial(n3a, static_cast<T>(10247.25)),
660 static_cast<T>(0.11551289516875e10L),
664 boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(0.125), 3),
665 static_cast<T>(0.10096435546875e2L),
668 boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(0.25), 3),
669 static_cast<T>(0.1041796875e2L),
672 boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(0.75), 3),
673 static_cast<T>(0.1685546875e2L),
676 boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(1.0f - 1.0f/64.0f), 3),
677 static_cast<T>(0.26142410933971405029296875e2L),
680 boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(6.5f), 3),
681 static_cast<T>(0.198991875e5L),
684 boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(10247.25f), 3),
685 static_cast<T>(0.12128916726310335635546875e18L),
689 boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(0.125)),
690 static_cast<T>(0.10096435546875e2L),
693 boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(0.25)),
694 static_cast<T>(0.1041796875e2L),
697 boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(0.75)),
698 static_cast<T>(0.1685546875e2L),
701 boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(1.0f - 1.0f/64.0f)),
702 static_cast<T>(0.26142410933971405029296875e2L),
705 boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(6.5f)),
706 static_cast<T>(0.198991875e5L),
709 boost::math::tools::evaluate_even_polynomial(n3c, static_cast<T>(10247.25f)),
710 static_cast<T>(0.12128916726310335635546875e18L),
714 boost::math::tools::evaluate_even_polynomial(n3a, static_cast<T>(0.125)),
715 static_cast<T>(0.10096435546875e2L),
718 boost::math::tools::evaluate_even_polynomial(n3a, static_cast<T>(0.25)),
719 static_cast<T>(0.1041796875e2L),
722 boost::math::tools::evaluate_even_polynomial(n3a, static_cast<T>(0.75)),
723 static_cast<T>(0.1685546875e2L),
726 boost::math::tools::evaluate_even_polynomial(n3a, static_cast<T>(1.0f - 1.0f/64.0f)),
727 static_cast<T>(0.26142410933971405029296875e2L),
730 boost::math::tools::evaluate_even_polynomial(n3a, static_cast<T>(6.5f)),
731 static_cast<T>(0.198991875e5L),
734 boost::math::tools::evaluate_even_polynomial(n3a, static_cast<T>(10247.25f)),
735 static_cast<T>(0.12128916726310335635546875e18L),
739 boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(0.125), 3),
740 static_cast<T>(0.10771484375e2L),
743 boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(0.25), 3),
744 static_cast<T>(0.11671875e2L),
747 boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(0.75), 3),
748 static_cast<T>(0.19140625e2L),
751 boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(1.0f - 1.0f/64.0f), 3),
752 static_cast<T>(0.26398639678955078125e2L),
755 boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(6.5f), 3),
756 static_cast<T>(0.3069875e4L),
759 boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(10247.25f), 3),
760 static_cast<T>(0.11836265072405359375e14L),
764 boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(0.125)),
765 static_cast<T>(0.10771484375e2L),
768 boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(0.25)),
769 static_cast<T>(0.11671875e2L),
772 boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(0.75)),
773 static_cast<T>(0.19140625e2L),
776 boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(1.0f - 1.0f/64.0f)),
777 static_cast<T>(0.26398639678955078125e2L),
780 boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(6.5f)),
781 static_cast<T>(0.3069875e4L),
784 boost::math::tools::evaluate_odd_polynomial(n3c, static_cast<T>(10247.25f)),
785 static_cast<T>(0.11836265072405359375e14L),
789 boost::math::tools::evaluate_odd_polynomial(n3a, static_cast<T>(0.125)),
790 static_cast<T>(0.10771484375e2L),
793 boost::math::tools::evaluate_odd_polynomial(n3a, static_cast<T>(0.25)),
794 static_cast<T>(0.11671875e2L),
797 boost::math::tools::evaluate_odd_polynomial(n3a, static_cast<T>(0.75)),
798 static_cast<T>(0.19140625e2L),
801 boost::math::tools::evaluate_odd_polynomial(n3a, static_cast<T>(1.0f - 1.0f/64.0f)),
802 static_cast<T>(0.26398639678955078125e2L),
805 boost::math::tools::evaluate_odd_polynomial(n3a, static_cast<T>(6.5f)),
806 static_cast<T>(0.3069875e4L),
809 boost::math::tools::evaluate_odd_polynomial(n3a, static_cast<T>(10247.25f)),
810 static_cast<T>(0.11836265072405359375e14L),
814 // Rational functions of order 2
816 static const U d3c[3] = { 3, 4, 10 };
817 static const boost::array<U, 3> d3a = {{ 3, 4, 10 }};
819 boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(0.125), 3),
820 static_cast<T>(0.2987179487179487179487179487179487179487e1L),
823 boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(0.25), 3),
824 static_cast<T>(0.2635135135135135135135135135135135135135e1L),
827 boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(0.75), 3),
828 static_cast<T>(0.1779569892473118279569892473118279569892e1L),
831 boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(1.0f - 1.0f/64.0f), 3),
832 static_cast<T>(0.1597671277126831703520981998649164537633e1L),
835 boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(6.5f), 3),
836 static_cast<T>(0.1137873754152823920265780730897009966777e1L),
839 boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(10247.25f), 3),
840 static_cast<T>(0.1100015619716026431429617996316152069115e1L),
844 boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(0.125)),
845 static_cast<T>(0.2987179487179487179487179487179487179487e1L),
848 boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(0.25)),
849 static_cast<T>(0.2635135135135135135135135135135135135135e1L),
852 boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(0.75)),
853 static_cast<T>(0.1779569892473118279569892473118279569892e1L),
856 boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(1.0f - 1.0f/64.0f)),
857 static_cast<T>(0.1597671277126831703520981998649164537633e1L),
860 boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(6.5f)),
861 static_cast<T>(0.1137873754152823920265780730897009966777e1L),
864 boost::math::tools::evaluate_rational(n3c, d3c, static_cast<T>(10247.25f)),
865 static_cast<T>(0.1100015619716026431429617996316152069115e1L),
869 boost::math::tools::evaluate_rational(n3a, d3a, static_cast<T>(0.125)),
870 static_cast<T>(0.2987179487179487179487179487179487179487e1L),
873 boost::math::tools::evaluate_rational(n3a, d3a, static_cast<T>(0.25)),
874 static_cast<T>(0.2635135135135135135135135135135135135135e1L),
877 boost::math::tools::evaluate_rational(n3a, d3a, static_cast<T>(0.75)),
878 static_cast<T>(0.1779569892473118279569892473118279569892e1L),
881 boost::math::tools::evaluate_rational(n3a, d3a, static_cast<T>(1.0f - 1.0f/64.0f)),
882 static_cast<T>(0.1597671277126831703520981998649164537633e1L),
885 boost::math::tools::evaluate_rational(n3a, d3a, static_cast<T>(6.5f)),
886 static_cast<T>(0.1137873754152823920265780730897009966777e1L),
889 boost::math::tools::evaluate_rational(n3a, d3a, static_cast<T>(10247.25f)),
890 static_cast<T>(0.1100015619716026431429617996316152069115e1L),
894 template <class T, class U>
895 void do_test_spots3(T, U)
898 // Tolerance is 4 eps expressed as a persentage:
900 T tolerance = boost::math::tools::epsilon<T>() * 4 * 100;
903 // Polynomials of order 3
905 static const U n4c[4] = { 1, 4, 9, 11 };
906 static const boost::array<U, 4> n4a = {{ 1, 4, 9, 11 }};
908 boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(0.125), 4),
909 static_cast<T>(0.1662109375e1L),
912 boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(0.25), 4),
913 static_cast<T>(0.2734375e1L),
916 boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(0.75), 4),
917 static_cast<T>(0.13703125e2L),
920 boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(1.0f - 1.0f/64.0f), 4),
921 static_cast<T>(0.24150836944580078125e2L),
924 boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(6.5), 4),
925 static_cast<T>(0.3428125e4L),
928 boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(10247.25), 4),
929 static_cast<T>(0.11837210107094921875e14L),
933 boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(0.125)),
934 static_cast<T>(0.1662109375e1L),
937 boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(0.25)),
938 static_cast<T>(0.2734375e1L),
941 boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(0.75)),
942 static_cast<T>(0.13703125e2L),
945 boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(1.0f - 1.0f/64.0f)),
946 static_cast<T>(0.24150836944580078125e2L),
949 boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(6.5)),
950 static_cast<T>(0.3428125e4L),
953 boost::math::tools::evaluate_polynomial(n4c, static_cast<T>(10247.25)),
954 static_cast<T>(0.11837210107094921875e14L),
958 boost::math::tools::evaluate_polynomial(n4a, static_cast<T>(0.125)),
959 static_cast<T>(0.1662109375e1L),
962 boost::math::tools::evaluate_polynomial(n4a, static_cast<T>(0.25)),
963 static_cast<T>(0.2734375e1L),
966 boost::math::tools::evaluate_polynomial(n4a, static_cast<T>(0.75)),
967 static_cast<T>(0.13703125e2L),
970 boost::math::tools::evaluate_polynomial(n4a, static_cast<T>(1.0f - 1.0f/64.0f)),
971 static_cast<T>(0.24150836944580078125e2L),
974 boost::math::tools::evaluate_polynomial(n4a, static_cast<T>(6.5)),
975 static_cast<T>(0.3428125e4L),
978 boost::math::tools::evaluate_polynomial(n4a, static_cast<T>(10247.25)),
979 static_cast<T>(0.11837210107094921875e14L),
983 boost::math::tools::evaluate_even_polynomial(n4c, static_cast<T>(0.125), 4),
984 static_cast<T>(0.1064739227294921875e1L),
987 boost::math::tools::evaluate_even_polynomial(n4c, static_cast<T>(0.25), 4),
988 static_cast<T>(0.1287841796875e1L),
991 boost::math::tools::evaluate_even_polynomial(n4c, static_cast<T>(0.75), 4),
992 static_cast<T>(0.8055419921875e1L),
995 boost::math::tools::evaluate_even_polynomial(n4c, static_cast<T>(1.0f - 1.0f/64.0f), 4),
996 static_cast<T>(0.23334727106775972060859203338623046875e2L),
999 boost::math::tools::evaluate_even_polynomial(n4c, static_cast<T>(6.5f), 4),
1000 static_cast<T>(0.845843359375e6L),
1003 boost::math::tools::evaluate_even_polynomial(n4c, static_cast<T>(10247.25f), 4),
1004 static_cast<T>(0.12736106409103529349764202508544921875e26L),
1008 boost::math::tools::evaluate_even_polynomial(n4c, static_cast<T>(0.125)),
1009 static_cast<T>(0.1064739227294921875e1L),
1012 boost::math::tools::evaluate_even_polynomial(n4c, static_cast<T>(0.25)),
1013 static_cast<T>(0.1287841796875e1L),
1016 boost::math::tools::evaluate_even_polynomial(n4c, static_cast<T>(0.75)),
1017 static_cast<T>(0.8055419921875e1L),
1020 boost::math::tools::evaluate_even_polynomial(n4c, static_cast<T>(1.0f - 1.0f/64.0f)),
1021 static_cast<T>(0.23334727106775972060859203338623046875e2L),
1024 boost::math::tools::evaluate_even_polynomial(n4c, static_cast<T>(6.5f)),
1025 static_cast<T>(0.845843359375e6L),
1028 boost::math::tools::evaluate_even_polynomial(n4c, static_cast<T>(10247.25f)),
1029 static_cast<T>(0.12736106409103529349764202508544921875e26L),
1033 boost::math::tools::evaluate_even_polynomial(n4a, static_cast<T>(0.125)),
1034 static_cast<T>(0.1064739227294921875e1L),
1037 boost::math::tools::evaluate_even_polynomial(n4a, static_cast<T>(0.25)),
1038 static_cast<T>(0.1287841796875e1L),
1041 boost::math::tools::evaluate_even_polynomial(n4a, static_cast<T>(0.75)),
1042 static_cast<T>(0.8055419921875e1L),
1045 boost::math::tools::evaluate_even_polynomial(n4a, static_cast<T>(1.0f - 1.0f/64.0f)),
1046 static_cast<T>(0.23334727106775972060859203338623046875e2L),
1049 boost::math::tools::evaluate_even_polynomial(n4a, static_cast<T>(6.5f)),
1050 static_cast<T>(0.845843359375e6L),
1053 boost::math::tools::evaluate_even_polynomial(n4a, static_cast<T>(10247.25f)),
1054 static_cast<T>(0.12736106409103529349764202508544921875e26L),
1058 boost::math::tools::evaluate_odd_polynomial(n4c, static_cast<T>(0.125), 4),
1059 static_cast<T>(0.1517913818359375e1L),
1062 boost::math::tools::evaluate_odd_polynomial(n4c, static_cast<T>(0.25), 4),
1063 static_cast<T>(0.21513671875e1L),
1066 boost::math::tools::evaluate_odd_polynomial(n4c, static_cast<T>(0.75), 4),
1067 static_cast<T>(0.104072265625e2L),
1070 boost::math::tools::evaluate_odd_polynomial(n4c, static_cast<T>(1.0f - 1.0f/64.0f), 4),
1071 static_cast<T>(0.23689246584661304950714111328125e2L),
1074 boost::math::tools::evaluate_odd_polynomial(n4c, static_cast<T>(6.5f), 4),
1075 static_cast<T>(0.13013059375e6L),
1078 boost::math::tools::evaluate_odd_polynomial(n4c, static_cast<T>(10247.25f), 4),
1079 static_cast<T>(0.12428804224649080826343115234375e22L),
1083 boost::math::tools::evaluate_odd_polynomial(n4c, static_cast<T>(0.125)),
1084 static_cast<T>(0.1517913818359375e1L),
1087 boost::math::tools::evaluate_odd_polynomial(n4c, static_cast<T>(0.25)),
1088 static_cast<T>(0.21513671875e1L),
1091 boost::math::tools::evaluate_odd_polynomial(n4c, static_cast<T>(0.75)),
1092 static_cast<T>(0.104072265625e2L),
1095 boost::math::tools::evaluate_odd_polynomial(n4c, static_cast<T>(1.0f - 1.0f/64.0f)),
1096 static_cast<T>(0.23689246584661304950714111328125e2L),
1099 boost::math::tools::evaluate_odd_polynomial(n4c, static_cast<T>(6.5f)),
1100 static_cast<T>(0.13013059375e6L),
1103 boost::math::tools::evaluate_odd_polynomial(n4c, static_cast<T>(10247.25f)),
1104 static_cast<T>(0.12428804224649080826343115234375e22L),
1108 boost::math::tools::evaluate_odd_polynomial(n4a, static_cast<T>(0.125)),
1109 static_cast<T>(0.1517913818359375e1L),
1112 boost::math::tools::evaluate_odd_polynomial(n4a, static_cast<T>(0.25)),
1113 static_cast<T>(0.21513671875e1L),
1116 boost::math::tools::evaluate_odd_polynomial(n4a, static_cast<T>(0.75)),
1117 static_cast<T>(0.104072265625e2L),
1120 boost::math::tools::evaluate_odd_polynomial(n4a, static_cast<T>(1.0f - 1.0f/64.0f)),
1121 static_cast<T>(0.23689246584661304950714111328125e2L),
1124 boost::math::tools::evaluate_odd_polynomial(n4a, static_cast<T>(6.5f)),
1125 static_cast<T>(0.13013059375e6L),
1128 boost::math::tools::evaluate_odd_polynomial(n4a, static_cast<T>(10247.25f)),
1129 static_cast<T>(0.12428804224649080826343115234375e22L),
1133 // Rational functions of order 3
1135 static const U d4c[4] = { 10, 2, 5, 4 };
1136 static const boost::array<U, 4> d4a = {{ 10, 2, 5, 4 }};
1138 boost::math::tools::evaluate_rational(n4c, d4c, static_cast<T>(0.125), 4),
1139 static_cast<T>(0.1608087679516250944822373393801965230537e0L),
1142 boost::math::tools::evaluate_rational(n4c, d4c, static_cast<T>(0.25), 4),
1143 static_cast<T>(0.2514367816091954022988505747126436781609e0L),
1146 boost::math::tools::evaluate_rational(n4c, d4c, static_cast<T>(0.75), 4),
1147 static_cast<T>(0.8564453125e0L),
1150 boost::math::tools::evaluate_rational(n4c, d4c, static_cast<T>(1.0f - 1.0f/64.0f), 4),
1151 static_cast<T>(0.1170714951947222939292918160495461743806e1L),
1154 boost::math::tools::evaluate_rational(n4c, d4c, static_cast<T>(6.5f), 4),
1155 static_cast<T>(0.2572219095854436315888201087975989495404e1L),
1158 boost::math::tools::evaluate_rational(n4c, d4c, static_cast<T>(10247.25f), 4),
1159 static_cast<T>(0.2749884125808399380227005558292823797886e1L),
1163 boost::math::tools::evaluate_rational(n4c, d4c, static_cast<T>(0.125)),
1164 static_cast<T>(0.1608087679516250944822373393801965230537e0L),
1167 boost::math::tools::evaluate_rational(n4c, d4c, static_cast<T>(0.25)),
1168 static_cast<T>(0.2514367816091954022988505747126436781609e0L),
1171 boost::math::tools::evaluate_rational(n4c, d4c, static_cast<T>(0.75)),
1172 static_cast<T>(0.8564453125e0L),
1175 boost::math::tools::evaluate_rational(n4c, d4c, static_cast<T>(1.0f - 1.0f/64.0f)),
1176 static_cast<T>(0.1170714951947222939292918160495461743806e1L),
1179 boost::math::tools::evaluate_rational(n4c, d4c, static_cast<T>(6.5f)),
1180 static_cast<T>(0.2572219095854436315888201087975989495404e1L),
1183 boost::math::tools::evaluate_rational(n4c, d4c, static_cast<T>(10247.25f)),
1184 static_cast<T>(0.2749884125808399380227005558292823797886e1L),
1188 boost::math::tools::evaluate_rational(n4a, d4a, static_cast<T>(0.125)),
1189 static_cast<T>(0.1608087679516250944822373393801965230537e0L),
1192 boost::math::tools::evaluate_rational(n4a, d4a, static_cast<T>(0.25)),
1193 static_cast<T>(0.2514367816091954022988505747126436781609e0L),
1196 boost::math::tools::evaluate_rational(n4a, d4a, static_cast<T>(0.75)),
1197 static_cast<T>(0.8564453125e0L),
1200 boost::math::tools::evaluate_rational(n4a, d4a, static_cast<T>(1.0f - 1.0f/64.0f)),
1201 static_cast<T>(0.1170714951947222939292918160495461743806e1L),
1204 boost::math::tools::evaluate_rational(n4a, d4a, static_cast<T>(6.5f)),
1205 static_cast<T>(0.2572219095854436315888201087975989495404e1L),
1208 boost::math::tools::evaluate_rational(n4a, d4a, static_cast<T>(10247.25f)),
1209 static_cast<T>(0.2749884125808399380227005558292823797886e1L),
1213 template <class T, class U>
1214 void do_test_spots4(T, U)
1217 // Tolerance is 4 eps expressed as a persentage:
1219 T tolerance = boost::math::tools::epsilon<T>() * 4 * 100;
1222 // Polynomials of order 4
1224 static const U n5c[5] = { 10, 10, 4, 11, 9 };
1225 static const boost::array<U, 5> n5a = {{ 10, 10, 4, 11, 9 }};
1227 boost::math::tools::evaluate_polynomial(n5c, static_cast<T>(0.125), 5),
1228 static_cast<T>(0.11336181640625e2L),
1231 boost::math::tools::evaluate_polynomial(n5c, static_cast<T>(0.25), 5),
1232 static_cast<T>(0.1295703125e2L),
1235 boost::math::tools::evaluate_polynomial(n5c, static_cast<T>(0.75), 5),
1236 static_cast<T>(0.2723828125e2L),
1239 boost::math::tools::evaluate_polynomial(n5c, static_cast<T>(1.0f - 1.0f/64.0f), 5),
1240 static_cast<T>(0.42662663042545318603515625e2L),
1243 boost::math::tools::evaluate_polynomial(n5c, static_cast<T>(6.5), 5),
1244 static_cast<T>(0.193304375e5L),
1247 boost::math::tools::evaluate_polynomial(n5c, static_cast<T>(10247.25), 5),
1248 static_cast<T>(0.9924842756673782995703125e17L),
1252 boost::math::tools::evaluate_polynomial(n5c, static_cast<T>(0.125)),
1253 static_cast<T>(0.11336181640625e2L),
1256 boost::math::tools::evaluate_polynomial(n5c, static_cast<T>(0.25)),
1257 static_cast<T>(0.1295703125e2L),
1260 boost::math::tools::evaluate_polynomial(n5c, static_cast<T>(0.75)),
1261 static_cast<T>(0.2723828125e2L),
1264 boost::math::tools::evaluate_polynomial(n5c, static_cast<T>(1.0f - 1.0f/64.0f)),
1265 static_cast<T>(0.42662663042545318603515625e2L),
1268 boost::math::tools::evaluate_polynomial(n5c, static_cast<T>(6.5)),
1269 static_cast<T>(0.193304375e5L),
1272 boost::math::tools::evaluate_polynomial(n5c, static_cast<T>(10247.25)),
1273 static_cast<T>(0.9924842756673782995703125e17L),
1277 boost::math::tools::evaluate_polynomial(n5a, static_cast<T>(0.125)),
1278 static_cast<T>(0.11336181640625e2L),
1281 boost::math::tools::evaluate_polynomial(n5a, static_cast<T>(0.25)),
1282 static_cast<T>(0.1295703125e2L),
1285 boost::math::tools::evaluate_polynomial(n5a, static_cast<T>(0.75)),
1286 static_cast<T>(0.2723828125e2L),
1289 boost::math::tools::evaluate_polynomial(n5a, static_cast<T>(1.0f - 1.0f/64.0f)),
1290 static_cast<T>(0.42662663042545318603515625e2L),
1293 boost::math::tools::evaluate_polynomial(n5a, static_cast<T>(6.5)),
1294 static_cast<T>(0.193304375e5L),
1297 boost::math::tools::evaluate_polynomial(n5a, static_cast<T>(10247.25)),
1298 static_cast<T>(0.9924842756673782995703125e17L),
1302 boost::math::tools::evaluate_even_polynomial(n5c, static_cast<T>(0.125), 5),
1303 static_cast<T>(0.10157269060611724853515625e2L),
1306 boost::math::tools::evaluate_even_polynomial(n5c, static_cast<T>(0.25), 5),
1307 static_cast<T>(0.106434478759765625e2L),
1310 boost::math::tools::evaluate_even_polynomial(n5c, static_cast<T>(0.75), 5),
1311 static_cast<T>(0.197494049072265625e2L),
1314 boost::math::tools::evaluate_even_polynomial(n5c, static_cast<T>(1.0f - 1.0f/64.0f), 5),
1315 static_cast<T>(0.4138858164296656028113829961512237787247e2L),
1318 boost::math::tools::evaluate_even_polynomial(n5c, static_cast<T>(6.5f), 5),
1319 static_cast<T>(0.2951521370703125e8L),
1322 boost::math::tools::evaluate_even_polynomial(n5c, static_cast<T>(10247.25f), 5),
1323 static_cast<T>(0.1094211231602999407223950000397888253311e34L),
1327 boost::math::tools::evaluate_even_polynomial(n5c, static_cast<T>(0.125)),
1328 static_cast<T>(0.10157269060611724853515625e2L),
1331 boost::math::tools::evaluate_even_polynomial(n5c, static_cast<T>(0.25)),
1332 static_cast<T>(0.106434478759765625e2L),
1335 boost::math::tools::evaluate_even_polynomial(n5c, static_cast<T>(0.75)),
1336 static_cast<T>(0.197494049072265625e2L),
1339 boost::math::tools::evaluate_even_polynomial(n5c, static_cast<T>(1.0f - 1.0f/64.0f)),
1340 static_cast<T>(0.4138858164296656028113829961512237787247e2L),
1343 boost::math::tools::evaluate_even_polynomial(n5c, static_cast<T>(6.5f)),
1344 static_cast<T>(0.2951521370703125e8L),
1347 boost::math::tools::evaluate_even_polynomial(n5c, static_cast<T>(10247.25f)),
1348 static_cast<T>(0.1094211231602999407223950000397888253311e34L),
1352 boost::math::tools::evaluate_even_polynomial(n5a, static_cast<T>(0.125)),
1353 static_cast<T>(0.10157269060611724853515625e2L),
1356 boost::math::tools::evaluate_even_polynomial(n5a, static_cast<T>(0.25)),
1357 static_cast<T>(0.106434478759765625e2L),
1360 boost::math::tools::evaluate_even_polynomial(n5a, static_cast<T>(0.75)),
1361 static_cast<T>(0.197494049072265625e2L),
1364 boost::math::tools::evaluate_even_polynomial(n5a, static_cast<T>(1.0f - 1.0f/64.0f)),
1365 static_cast<T>(0.4138858164296656028113829961512237787247e2L),
1368 boost::math::tools::evaluate_even_polynomial(n5a, static_cast<T>(6.5f)),
1369 static_cast<T>(0.2951521370703125e8L),
1372 boost::math::tools::evaluate_even_polynomial(n5a, static_cast<T>(10247.25f)),
1373 static_cast<T>(0.1094211231602999407223950000397888253311e34L),
1377 boost::math::tools::evaluate_odd_polynomial(n5c, static_cast<T>(0.125), 5),
1378 static_cast<T>(0.11258152484893798828125e2L),
1381 boost::math::tools::evaluate_odd_polynomial(n5c, static_cast<T>(0.25), 5),
1382 static_cast<T>(0.1257379150390625e2L),
1385 boost::math::tools::evaluate_odd_polynomial(n5c, static_cast<T>(0.75), 5),
1386 static_cast<T>(0.2299920654296875e2L),
1389 boost::math::tools::evaluate_odd_polynomial(n5c, static_cast<T>(1.0f - 1.0f/64.0f), 5),
1390 static_cast<T>(0.4188681309761682314274366945028305053711e2L),
1393 boost::math::tools::evaluate_odd_polynomial(n5c, static_cast<T>(6.5f), 5),
1394 static_cast<T>(0.45408105703125e7L),
1397 boost::math::tools::evaluate_odd_polynomial(n5c, static_cast<T>(10247.25f), 5),
1398 static_cast<T>(0.106780963829612765105169679718983215332e30L),
1402 boost::math::tools::evaluate_odd_polynomial(n5c, static_cast<T>(0.125)),
1403 static_cast<T>(0.11258152484893798828125e2L),
1406 boost::math::tools::evaluate_odd_polynomial(n5c, static_cast<T>(0.25)),
1407 static_cast<T>(0.1257379150390625e2L),
1410 boost::math::tools::evaluate_odd_polynomial(n5c, static_cast<T>(0.75)),
1411 static_cast<T>(0.2299920654296875e2L),
1414 boost::math::tools::evaluate_odd_polynomial(n5c, static_cast<T>(1.0f - 1.0f/64.0f)),
1415 static_cast<T>(0.4188681309761682314274366945028305053711e2L),
1418 boost::math::tools::evaluate_odd_polynomial(n5c, static_cast<T>(6.5f)),
1419 static_cast<T>(0.45408105703125e7L),
1422 boost::math::tools::evaluate_odd_polynomial(n5c, static_cast<T>(10247.25f)),
1423 static_cast<T>(0.106780963829612765105169679718983215332e30L),
1427 boost::math::tools::evaluate_odd_polynomial(n5a, static_cast<T>(0.125)),
1428 static_cast<T>(0.11258152484893798828125e2L),
1431 boost::math::tools::evaluate_odd_polynomial(n5a, static_cast<T>(0.25)),
1432 static_cast<T>(0.1257379150390625e2L),
1435 boost::math::tools::evaluate_odd_polynomial(n5a, static_cast<T>(0.75)),
1436 static_cast<T>(0.2299920654296875e2L),
1439 boost::math::tools::evaluate_odd_polynomial(n5a, static_cast<T>(1.0f - 1.0f/64.0f)),
1440 static_cast<T>(0.4188681309761682314274366945028305053711e2L),
1443 boost::math::tools::evaluate_odd_polynomial(n5a, static_cast<T>(6.5f)),
1444 static_cast<T>(0.45408105703125e7L),
1447 boost::math::tools::evaluate_odd_polynomial(n5a, static_cast<T>(10247.25f)),
1448 static_cast<T>(0.106780963829612765105169679718983215332e30L),
1452 // Rational functions of order 4
1454 static const U d5c[5] = { 6, 9, 6, 2, 5 };
1455 static const boost::array<U, 5> d5a = {{ 6, 9, 6, 2, 5 }};
1457 boost::math::tools::evaluate_rational(n5c, d5c, static_cast<T>(0.125), 5),
1458 static_cast<T>(0.1569265605461489066882963263374902835513e1L),
1461 boost::math::tools::evaluate_rational(n5c, d5c, static_cast<T>(0.25), 5),
1462 static_cast<T>(0.1493471409275101305718144979738856371004e1L),
1465 boost::math::tools::evaluate_rational(n5c, d5c, static_cast<T>(0.75), 5),
1466 static_cast<T>(0.1468309117708991366603495472731101284481e1L),
1469 boost::math::tools::evaluate_rational(n5c, d5c, static_cast<T>(1.0f - 1.0f/64.0f), 5),
1470 static_cast<T>(0.1564121691159921277310988862398683772017e1L),
1473 boost::math::tools::evaluate_rational(n5c, d5c, static_cast<T>(6.5f), 5),
1474 static_cast<T>(0.1973991741181125982091000185089449263153e1L),
1477 boost::math::tools::evaluate_rational(n5c, d5c, static_cast<T>(10247.25f), 5),
1478 static_cast<T>(0.1800144410401676792233921448870747965702e1L),
1482 boost::math::tools::evaluate_rational(n5c, d5c, static_cast<T>(0.125)),
1483 static_cast<T>(0.1569265605461489066882963263374902835513e1L),
1486 boost::math::tools::evaluate_rational(n5c, d5c, static_cast<T>(0.25)),
1487 static_cast<T>(0.1493471409275101305718144979738856371004e1L),
1490 boost::math::tools::evaluate_rational(n5c, d5c, static_cast<T>(0.75)),
1491 static_cast<T>(0.1468309117708991366603495472731101284481e1L),
1494 boost::math::tools::evaluate_rational(n5c, d5c, static_cast<T>(1.0f - 1.0f/64.0f)),
1495 static_cast<T>(0.1564121691159921277310988862398683772017e1L),
1498 boost::math::tools::evaluate_rational(n5c, d5c, static_cast<T>(6.5f)),
1499 static_cast<T>(0.1973991741181125982091000185089449263153e1L),
1502 boost::math::tools::evaluate_rational(n5c, d5c, static_cast<T>(10247.25f)),
1503 static_cast<T>(0.1800144410401676792233921448870747965702e1L),
1507 boost::math::tools::evaluate_rational(n5a, d5a, static_cast<T>(0.125)),
1508 static_cast<T>(0.1569265605461489066882963263374902835513e1L),
1511 boost::math::tools::evaluate_rational(n5a, d5a, static_cast<T>(0.25)),
1512 static_cast<T>(0.1493471409275101305718144979738856371004e1L),
1515 boost::math::tools::evaluate_rational(n5a, d5a, static_cast<T>(0.75)),
1516 static_cast<T>(0.1468309117708991366603495472731101284481e1L),
1519 boost::math::tools::evaluate_rational(n5a, d5a, static_cast<T>(1.0f - 1.0f/64.0f)),
1520 static_cast<T>(0.1564121691159921277310988862398683772017e1L),
1523 boost::math::tools::evaluate_rational(n5a, d5a, static_cast<T>(6.5f)),
1524 static_cast<T>(0.1973991741181125982091000185089449263153e1L),
1527 boost::math::tools::evaluate_rational(n5a, d5a, static_cast<T>(10247.25f)),
1528 static_cast<T>(0.1800144410401676792233921448870747965702e1L),
1532 template <class T, class U>
1533 void do_test_spots5(T, U)
1536 // Tolerance is 4 eps expressed as a persentage:
1538 T tolerance = boost::math::tools::epsilon<T>() * 4 * 100;
1541 // Polynomials of order 5
1543 static const U n6c[6] = { 6, 8, 12, 5, 7, 5 };
1544 static const boost::array<U, 6> n6a = {{ 6, 8, 12, 5, 7, 5 }};
1546 boost::math::tools::evaluate_polynomial(n6c, static_cast<T>(0.125), 6),
1547 static_cast<T>(0.7199127197265625e1L),
1550 boost::math::tools::evaluate_polynomial(n6c, static_cast<T>(0.25), 6),
1551 static_cast<T>(0.88603515625e1L),
1554 boost::math::tools::evaluate_polynomial(n6c, static_cast<T>(0.75), 6),
1555 static_cast<T>(0.242607421875e2L),
1558 boost::math::tools::evaluate_polynomial(n6c, static_cast<T>(1.0f - 1.0f/64.0f), 6),
1559 static_cast<T>(0.41466238017193973064422607421875e2L),
1562 boost::math::tools::evaluate_polynomial(n6c, static_cast<T>(6.5), 6),
1563 static_cast<T>(0.7244809375e5L),
1566 boost::math::tools::evaluate_polynomial(n6c, static_cast<T>(10247.25), 6),
1567 static_cast<T>(0.5650228315695522094919501953125e21L),
1571 boost::math::tools::evaluate_polynomial(n6c, static_cast<T>(0.125)),
1572 static_cast<T>(0.7199127197265625e1L),
1575 boost::math::tools::evaluate_polynomial(n6c, static_cast<T>(0.25)),
1576 static_cast<T>(0.88603515625e1L),
1579 boost::math::tools::evaluate_polynomial(n6c, static_cast<T>(0.75)),
1580 static_cast<T>(0.242607421875e2L),
1583 boost::math::tools::evaluate_polynomial(n6c, static_cast<T>(1.0f - 1.0f/64.0f)),
1584 static_cast<T>(0.41466238017193973064422607421875e2L),
1587 boost::math::tools::evaluate_polynomial(n6c, static_cast<T>(6.5)),
1588 static_cast<T>(0.7244809375e5L),
1591 boost::math::tools::evaluate_polynomial(n6c, static_cast<T>(10247.25)),
1592 static_cast<T>(0.5650228315695522094919501953125e21L),
1596 boost::math::tools::evaluate_polynomial(n6a, static_cast<T>(0.125)),
1597 static_cast<T>(0.7199127197265625e1L),
1600 boost::math::tools::evaluate_polynomial(n6a, static_cast<T>(0.25)),
1601 static_cast<T>(0.88603515625e1L),
1604 boost::math::tools::evaluate_polynomial(n6a, static_cast<T>(0.75)),
1605 static_cast<T>(0.242607421875e2L),
1608 boost::math::tools::evaluate_polynomial(n6a, static_cast<T>(1.0f - 1.0f/64.0f)),
1609 static_cast<T>(0.41466238017193973064422607421875e2L),
1612 boost::math::tools::evaluate_polynomial(n6a, static_cast<T>(6.5)),
1613 static_cast<T>(0.7244809375e5L),
1616 boost::math::tools::evaluate_polynomial(n6a, static_cast<T>(10247.25)),
1617 static_cast<T>(0.5650228315695522094919501953125e21L),
1621 boost::math::tools::evaluate_even_polynomial(n6c, static_cast<T>(0.125), 6),
1622 static_cast<T>(0.6127949182875454425811767578125e1L),
1625 boost::math::tools::evaluate_even_polynomial(n6c, static_cast<T>(0.25), 6),
1626 static_cast<T>(0.654820728302001953125e1L),
1629 boost::math::tools::evaluate_even_polynomial(n6c, static_cast<T>(0.75), 6),
1630 static_cast<T>(0.1616912555694580078125e2L),
1633 boost::math::tools::evaluate_even_polynomial(n6c, static_cast<T>(1.0f - 1.0f/64.0f), 6),
1634 static_cast<T>(0.4001137167344577683526091194110563264985e2L),
1637 boost::math::tools::evaluate_even_polynomial(n6c, static_cast<T>(6.5f), 6),
1638 static_cast<T>(0.6958411633369140625e9L),
1641 boost::math::tools::evaluate_even_polynomial(n6c, static_cast<T>(0.125)),
1642 static_cast<T>(0.6127949182875454425811767578125e1L),
1645 boost::math::tools::evaluate_even_polynomial(n6c, static_cast<T>(0.25)),
1646 static_cast<T>(0.654820728302001953125e1L),
1649 boost::math::tools::evaluate_even_polynomial(n6c, static_cast<T>(0.75)),
1650 static_cast<T>(0.1616912555694580078125e2L),
1653 boost::math::tools::evaluate_even_polynomial(n6c, static_cast<T>(1.0f - 1.0f/64.0f)),
1654 static_cast<T>(0.4001137167344577683526091194110563264985e2L),
1657 boost::math::tools::evaluate_even_polynomial(n6c, static_cast<T>(6.5f)),
1658 static_cast<T>(0.6958411633369140625e9L),
1661 boost::math::tools::evaluate_even_polynomial(n6a, static_cast<T>(0.125)),
1662 static_cast<T>(0.6127949182875454425811767578125e1L),
1665 boost::math::tools::evaluate_even_polynomial(n6a, static_cast<T>(0.25)),
1666 static_cast<T>(0.654820728302001953125e1L),
1669 boost::math::tools::evaluate_even_polynomial(n6a, static_cast<T>(0.75)),
1670 static_cast<T>(0.1616912555694580078125e2L),
1673 boost::math::tools::evaluate_even_polynomial(n6a, static_cast<T>(1.0f - 1.0f/64.0f)),
1674 static_cast<T>(0.4001137167344577683526091194110563264985e2L),
1677 boost::math::tools::evaluate_even_polynomial(n6a, static_cast<T>(6.5f)),
1678 static_cast<T>(0.6958411633369140625e9L),
1681 boost::math::tools::evaluate_odd_polynomial(n6c, static_cast<T>(0.125), 6),
1682 static_cast<T>(0.7023593463003635406494140625e1L),
1685 boost::math::tools::evaluate_odd_polynomial(n6c, static_cast<T>(0.25), 6),
1686 static_cast<T>(0.8192829132080078125e1L),
1689 boost::math::tools::evaluate_odd_polynomial(n6c, static_cast<T>(0.75), 6),
1690 static_cast<T>(0.19558834075927734375e2L),
1693 boost::math::tools::evaluate_odd_polynomial(n6c, static_cast<T>(1.0f - 1.0f/64.0f), 6),
1694 static_cast<T>(0.4055123471588142408661425974969461094588e2L),
1697 boost::math::tools::evaluate_odd_polynomial(n6c, static_cast<T>(6.5f), 6),
1698 static_cast<T>(0.107052491744140625e9L),
1701 boost::math::tools::evaluate_odd_polynomial(n6c, static_cast<T>(10247.25f), 6),
1702 static_cast<T>(0.6229253367792843599034768117351560896265e37L),
1706 boost::math::tools::evaluate_odd_polynomial(n6c, static_cast<T>(0.125)),
1707 static_cast<T>(0.7023593463003635406494140625e1L),
1710 boost::math::tools::evaluate_odd_polynomial(n6c, static_cast<T>(0.25)),
1711 static_cast<T>(0.8192829132080078125e1L),
1714 boost::math::tools::evaluate_odd_polynomial(n6c, static_cast<T>(0.75)),
1715 static_cast<T>(0.19558834075927734375e2L),
1718 boost::math::tools::evaluate_odd_polynomial(n6c, static_cast<T>(1.0f - 1.0f/64.0f)),
1719 static_cast<T>(0.4055123471588142408661425974969461094588e2L),
1722 boost::math::tools::evaluate_odd_polynomial(n6c, static_cast<T>(6.5f)),
1723 static_cast<T>(0.107052491744140625e9L),
1726 boost::math::tools::evaluate_odd_polynomial(n6c, static_cast<T>(10247.25f)),
1727 static_cast<T>(0.6229253367792843599034768117351560896265e37L),
1731 boost::math::tools::evaluate_odd_polynomial(n6a, static_cast<T>(0.125)),
1732 static_cast<T>(0.7023593463003635406494140625e1L),
1735 boost::math::tools::evaluate_odd_polynomial(n6a, static_cast<T>(0.25)),
1736 static_cast<T>(0.8192829132080078125e1L),
1739 boost::math::tools::evaluate_odd_polynomial(n6a, static_cast<T>(0.75)),
1740 static_cast<T>(0.19558834075927734375e2L),
1743 boost::math::tools::evaluate_odd_polynomial(n6a, static_cast<T>(1.0f - 1.0f/64.0f)),
1744 static_cast<T>(0.4055123471588142408661425974969461094588e2L),
1747 boost::math::tools::evaluate_odd_polynomial(n6a, static_cast<T>(6.5f)),
1748 static_cast<T>(0.107052491744140625e9L),
1751 boost::math::tools::evaluate_odd_polynomial(n6a, static_cast<T>(10247.25f)),
1752 static_cast<T>(0.6229253367792843599034768117351560896265e37L),
1756 // Rational functions of order 5
1758 static const U d6c[6] = { 5, 11, 7, 12, 10, 5 };
1759 static const boost::array<U, 6> d6a = {{ 5, 11, 7, 12, 10, 5 }};
1761 boost::math::tools::evaluate_rational(n6c, d6c, static_cast<T>(0.125), 6),
1762 static_cast<T>(0.1105787665293227020667219792530925829572e1L),
1765 boost::math::tools::evaluate_rational(n6c, d6c, static_cast<T>(0.25), 6),
1766 static_cast<T>(0.1052430112515949425820670455863588910799e1L),
1769 boost::math::tools::evaluate_rational(n6c, d6c, static_cast<T>(0.75), 6),
1770 static_cast<T>(0.9120378868534087154447666948125848966555e0L),
1773 boost::math::tools::evaluate_rational(n6c, d6c, static_cast<T>(1.0f - 1.0f/64.0f), 6),
1774 static_cast<T>(0.8626539746676637108178973543021882567334e0L),
1777 boost::math::tools::evaluate_rational(n6c, d6c, static_cast<T>(6.5f), 6),
1778 static_cast<T>(0.9109197333022141385660730837432462113756e0L),
1781 boost::math::tools::evaluate_rational(n6c, d6c, static_cast<T>(10247.25f), 6),
1782 static_cast<T>(0.9999414458034701919327379302959430043671e0L),
1786 boost::math::tools::evaluate_rational(n6c, d6c, static_cast<T>(0.125)),
1787 static_cast<T>(0.1105787665293227020667219792530925829572e1L),
1790 boost::math::tools::evaluate_rational(n6c, d6c, static_cast<T>(0.25)),
1791 static_cast<T>(0.1052430112515949425820670455863588910799e1L),
1794 boost::math::tools::evaluate_rational(n6c, d6c, static_cast<T>(0.75)),
1795 static_cast<T>(0.9120378868534087154447666948125848966555e0L),
1798 boost::math::tools::evaluate_rational(n6c, d6c, static_cast<T>(1.0f - 1.0f/64.0f)),
1799 static_cast<T>(0.8626539746676637108178973543021882567334e0L),
1802 boost::math::tools::evaluate_rational(n6c, d6c, static_cast<T>(6.5f)),
1803 static_cast<T>(0.9109197333022141385660730837432462113756e0L),
1806 boost::math::tools::evaluate_rational(n6c, d6c, static_cast<T>(10247.25f)),
1807 static_cast<T>(0.9999414458034701919327379302959430043671e0L),
1811 boost::math::tools::evaluate_rational(n6a, d6a, static_cast<T>(0.125)),
1812 static_cast<T>(0.1105787665293227020667219792530925829572e1L),
1815 boost::math::tools::evaluate_rational(n6a, d6a, static_cast<T>(0.25)),
1816 static_cast<T>(0.1052430112515949425820670455863588910799e1L),
1819 boost::math::tools::evaluate_rational(n6a, d6a, static_cast<T>(0.75)),
1820 static_cast<T>(0.9120378868534087154447666948125848966555e0L),
1823 boost::math::tools::evaluate_rational(n6a, d6a, static_cast<T>(1.0f - 1.0f/64.0f)),
1824 static_cast<T>(0.8626539746676637108178973543021882567334e0L),
1827 boost::math::tools::evaluate_rational(n6a, d6a, static_cast<T>(6.5f)),
1828 static_cast<T>(0.9109197333022141385660730837432462113756e0L),
1831 boost::math::tools::evaluate_rational(n6a, d6a, static_cast<T>(10247.25f)),
1832 static_cast<T>(0.9999414458034701919327379302959430043671e0L),
1836 template <class T, class U>
1837 void do_test_spots6(T, U)
1840 // Tolerance is 4 eps expressed as a persentage:
1842 T tolerance = boost::math::tools::epsilon<T>() * 4 * 100;
1845 // Polynomials of order 6
1847 static const U n7c[7] = { 3, 4, 11, 5, 10, 7, 9 };
1848 static const boost::array<U, 7> n7a = {{ 3, 4, 11, 5, 10, 7, 9 }};
1850 boost::math::tools::evaluate_polynomial(n7c, static_cast<T>(0.125), 7),
1851 static_cast<T>(0.3684329986572265625e1L),
1854 boost::math::tools::evaluate_polynomial(n7c, static_cast<T>(0.25), 7),
1855 static_cast<T>(0.4813720703125e1L),
1858 boost::math::tools::evaluate_polynomial(n7c, static_cast<T>(0.75), 7),
1859 static_cast<T>(0.20723876953125e2L),
1862 boost::math::tools::evaluate_polynomial(n7c, static_cast<T>(1.0f - 1.0f/64.0f), 7),
1863 static_cast<T>(0.46413680258337990380823612213134765625e2L),
1866 boost::math::tools::evaluate_polynomial(n7c, static_cast<T>(6.5), 7),
1867 static_cast<T>(0.779707859375e6L),
1870 boost::math::tools::evaluate_polynomial(n7c, static_cast<T>(10247.25), 7),
1871 static_cast<T>(0.10421241651331160693970241510986328125e26L),
1875 boost::math::tools::evaluate_polynomial(n7c, static_cast<T>(0.125)),
1876 static_cast<T>(0.3684329986572265625e1L),
1879 boost::math::tools::evaluate_polynomial(n7c, static_cast<T>(0.25)),
1880 static_cast<T>(0.4813720703125e1L),
1883 boost::math::tools::evaluate_polynomial(n7c, static_cast<T>(0.75)),
1884 static_cast<T>(0.20723876953125e2L),
1887 boost::math::tools::evaluate_polynomial(n7c, static_cast<T>(1.0f - 1.0f/64.0f)),
1888 static_cast<T>(0.46413680258337990380823612213134765625e2L),
1891 boost::math::tools::evaluate_polynomial(n7c, static_cast<T>(6.5)),
1892 static_cast<T>(0.779707859375e6L),
1895 boost::math::tools::evaluate_polynomial(n7c, static_cast<T>(10247.25)),
1896 static_cast<T>(0.10421241651331160693970241510986328125e26L),
1900 boost::math::tools::evaluate_polynomial(n7a, static_cast<T>(0.125)),
1901 static_cast<T>(0.3684329986572265625e1L),
1904 boost::math::tools::evaluate_polynomial(n7a, static_cast<T>(0.25)),
1905 static_cast<T>(0.4813720703125e1L),
1908 boost::math::tools::evaluate_polynomial(n7a, static_cast<T>(0.75)),
1909 static_cast<T>(0.20723876953125e2L),
1912 boost::math::tools::evaluate_polynomial(n7a, static_cast<T>(1.0f - 1.0f/64.0f)),
1913 static_cast<T>(0.46413680258337990380823612213134765625e2L),
1916 boost::math::tools::evaluate_polynomial(n7a, static_cast<T>(6.5)),
1917 static_cast<T>(0.779707859375e6L),
1920 boost::math::tools::evaluate_polynomial(n7a, static_cast<T>(10247.25)),
1921 static_cast<T>(0.10421241651331160693970241510986328125e26L),
1925 boost::math::tools::evaluate_even_polynomial(n7c, static_cast<T>(0.125), 7),
1926 static_cast<T>(0.3065205223058001138269901275634765625e1L),
1929 boost::math::tools::evaluate_even_polynomial(n7c, static_cast<T>(0.25), 7),
1930 static_cast<T>(0.3294349253177642822265625e1L),
1933 boost::math::tools::evaluate_even_polynomial(n7c, static_cast<T>(0.75), 7),
1934 static_cast<T>(0.11300772249698638916015625e2L),
1937 boost::math::tools::evaluate_even_polynomial(n7c, static_cast<T>(1.0f - 1.0f/64.0f), 7),
1938 static_cast<T>(0.4400013192129567626077980251194602528964e2L),
1941 boost::math::tools::evaluate_even_polynomial(n7c, static_cast<T>(6.5f), 7),
1942 static_cast<T>(0.52166734985505126953125e11L),
1945 boost::math::tools::evaluate_even_polynomial(n7c, static_cast<T>(0.125)),
1946 static_cast<T>(0.3065205223058001138269901275634765625e1L),
1949 boost::math::tools::evaluate_even_polynomial(n7c, static_cast<T>(0.25)),
1950 static_cast<T>(0.3294349253177642822265625e1L),
1953 boost::math::tools::evaluate_even_polynomial(n7c, static_cast<T>(0.75)),
1954 static_cast<T>(0.11300772249698638916015625e2L),
1957 boost::math::tools::evaluate_even_polynomial(n7c, static_cast<T>(1.0f - 1.0f/64.0f)),
1958 static_cast<T>(0.4400013192129567626077980251194602528964e2L),
1961 boost::math::tools::evaluate_even_polynomial(n7c, static_cast<T>(6.5f)),
1962 static_cast<T>(0.52166734985505126953125e11L),
1965 boost::math::tools::evaluate_even_polynomial(n7a, static_cast<T>(0.125)),
1966 static_cast<T>(0.3065205223058001138269901275634765625e1L),
1969 boost::math::tools::evaluate_even_polynomial(n7a, static_cast<T>(0.25)),
1970 static_cast<T>(0.3294349253177642822265625e1L),
1973 boost::math::tools::evaluate_even_polynomial(n7a, static_cast<T>(0.75)),
1974 static_cast<T>(0.11300772249698638916015625e2L),
1977 boost::math::tools::evaluate_even_polynomial(n7a, static_cast<T>(1.0f - 1.0f/64.0f)),
1978 static_cast<T>(0.4400013192129567626077980251194602528964e2L),
1981 boost::math::tools::evaluate_even_polynomial(n7a, static_cast<T>(6.5f)),
1982 static_cast<T>(0.52166734985505126953125e11L),
1985 boost::math::tools::evaluate_odd_polynomial(n7c, static_cast<T>(0.125), 7),
1986 static_cast<T>(0.3521641784464009106159210205078125e1L),
1989 boost::math::tools::evaluate_odd_polynomial(n7c, static_cast<T>(0.25), 7),
1990 static_cast<T>(0.41773970127105712890625e1L),
1993 boost::math::tools::evaluate_odd_polynomial(n7c, static_cast<T>(0.75), 7),
1994 static_cast<T>(0.140676963329315185546875e2L),
1997 boost::math::tools::evaluate_odd_polynomial(n7c, static_cast<T>(1.0f - 1.0f/64.0f), 7),
1998 static_cast<T>(0.4465092766607814731253821207562770823074e2L),
2001 boost::math::tools::evaluate_odd_polynomial(n7c, static_cast<T>(6.5f), 7),
2002 static_cast<T>(0.802565153877001953125e10L),
2005 boost::math::tools::evaluate_odd_polynomial(n7c, static_cast<T>(0.125)),
2006 static_cast<T>(0.3521641784464009106159210205078125e1L),
2009 boost::math::tools::evaluate_odd_polynomial(n7c, static_cast<T>(0.25)),
2010 static_cast<T>(0.41773970127105712890625e1L),
2013 boost::math::tools::evaluate_odd_polynomial(n7c, static_cast<T>(0.75)),
2014 static_cast<T>(0.140676963329315185546875e2L),
2017 boost::math::tools::evaluate_odd_polynomial(n7c, static_cast<T>(1.0f - 1.0f/64.0f)),
2018 static_cast<T>(0.4465092766607814731253821207562770823074e2L),
2021 boost::math::tools::evaluate_odd_polynomial(n7c, static_cast<T>(6.5f)),
2022 static_cast<T>(0.802565153877001953125e10L),
2025 boost::math::tools::evaluate_odd_polynomial(n7a, static_cast<T>(0.125)),
2026 static_cast<T>(0.3521641784464009106159210205078125e1L),
2029 boost::math::tools::evaluate_odd_polynomial(n7a, static_cast<T>(0.25)),
2030 static_cast<T>(0.41773970127105712890625e1L),
2033 boost::math::tools::evaluate_odd_polynomial(n7a, static_cast<T>(0.75)),
2034 static_cast<T>(0.140676963329315185546875e2L),
2037 boost::math::tools::evaluate_odd_polynomial(n7a, static_cast<T>(1.0f - 1.0f/64.0f)),
2038 static_cast<T>(0.4465092766607814731253821207562770823074e2L),
2041 boost::math::tools::evaluate_odd_polynomial(n7a, static_cast<T>(6.5f)),
2042 static_cast<T>(0.802565153877001953125e10L),
2045 // Rational functions of order 6
2047 static const U d7c[7] = { 2, 8, 10, 8, 1, 11, 1 };
2048 static const boost::array<U, 7> d7a = {{ 2, 8, 10, 8, 1, 11, 1 }};
2050 boost::math::tools::evaluate_rational(n7c, d7c, static_cast<T>(0.125), 7),
2051 static_cast<T>(0.1161348466465698540596242849979738853664e1L),
2054 boost::math::tools::evaluate_rational(n7c, d7c, static_cast<T>(0.25), 7),
2055 static_cast<T>(0.1010247476558897371522262642824204539632e1L),
2058 boost::math::tools::evaluate_rational(n7c, d7c, static_cast<T>(0.75), 7),
2059 static_cast<T>(0.103079575951134804308491906398377636644e1L),
2062 boost::math::tools::evaluate_rational(n7c, d7c, static_cast<T>(1.0f - 1.0f/64.0f), 7),
2063 static_cast<T>(0.1183671559390403425417413542214181025989e1L),
2066 boost::math::tools::evaluate_rational(n7c, d7c, static_cast<T>(6.5f), 7),
2067 static_cast<T>(0.3757457624476840396478985178609736319955e1L),
2070 boost::math::tools::evaluate_rational(n7c, d7c, static_cast<T>(10247.25f), 7),
2071 static_cast<T>(0.8991031618241406513349732955332873069556e1L),
2075 boost::math::tools::evaluate_rational(n7c, d7c, static_cast<T>(0.125)),
2076 static_cast<T>(0.1161348466465698540596242849979738853664e1L),
2079 boost::math::tools::evaluate_rational(n7c, d7c, static_cast<T>(0.25)),
2080 static_cast<T>(0.1010247476558897371522262642824204539632e1L),
2083 boost::math::tools::evaluate_rational(n7c, d7c, static_cast<T>(0.75)),
2084 static_cast<T>(0.103079575951134804308491906398377636644e1L),
2087 boost::math::tools::evaluate_rational(n7c, d7c, static_cast<T>(1.0f - 1.0f/64.0f)),
2088 static_cast<T>(0.1183671559390403425417413542214181025989e1L),
2091 boost::math::tools::evaluate_rational(n7c, d7c, static_cast<T>(6.5f)),
2092 static_cast<T>(0.3757457624476840396478985178609736319955e1L),
2095 boost::math::tools::evaluate_rational(n7c, d7c, static_cast<T>(10247.25f)),
2096 static_cast<T>(0.8991031618241406513349732955332873069556e1L),
2100 boost::math::tools::evaluate_rational(n7a, d7a, static_cast<T>(0.125)),
2101 static_cast<T>(0.1161348466465698540596242849979738853664e1L),
2104 boost::math::tools::evaluate_rational(n7a, d7a, static_cast<T>(0.25)),
2105 static_cast<T>(0.1010247476558897371522262642824204539632e1L),
2108 boost::math::tools::evaluate_rational(n7a, d7a, static_cast<T>(0.75)),
2109 static_cast<T>(0.103079575951134804308491906398377636644e1L),
2112 boost::math::tools::evaluate_rational(n7a, d7a, static_cast<T>(1.0f - 1.0f/64.0f)),
2113 static_cast<T>(0.1183671559390403425417413542214181025989e1L),
2116 boost::math::tools::evaluate_rational(n7a, d7a, static_cast<T>(6.5f)),
2117 static_cast<T>(0.3757457624476840396478985178609736319955e1L),
2120 boost::math::tools::evaluate_rational(n7a, d7a, static_cast<T>(10247.25f)),
2121 static_cast<T>(0.8991031618241406513349732955332873069556e1L),
2125 template <class T, class U>
2126 void do_test_spots7(T, U)
2129 // Tolerance is 4 eps expressed as a persentage:
2131 T tolerance = boost::math::tools::epsilon<T>() * 4 * 100;
2134 // Polynomials of order 7
2136 static const U n8c[8] = { 9, 5, 6, 1, 12, 2, 11, 1 };
2137 static const boost::array<U, 8> n8a = {{ 9, 5, 6, 1, 12, 2, 11, 1 }};
2139 boost::math::tools::evaluate_polynomial(n8c, static_cast<T>(0.125), 8),
2140 static_cast<T>(0.9723736286163330078125e1L),
2143 boost::math::tools::evaluate_polynomial(n8c, static_cast<T>(0.25), 8),
2144 static_cast<T>(0.1069219970703125e2L),
2147 boost::math::tools::evaluate_polynomial(n8c, static_cast<T>(0.75), 8),
2148 static_cast<T>(0.2290960693359375e2L),
2151 boost::math::tools::evaluate_polynomial(n8c, static_cast<T>(1.0f - 1.0f/64.0f), 8),
2152 static_cast<T>(0.4470947054706607559637632220983505249023e2L),
2155 boost::math::tools::evaluate_polynomial(n8c, static_cast<T>(6.5), 8),
2156 static_cast<T>(0.13650267734375e7L),
2159 boost::math::tools::evaluate_polynomial(n8c, static_cast<T>(10247.25), 8),
2160 static_cast<T>(0.1187728773094625678513681460864459228516e29L),
2164 boost::math::tools::evaluate_polynomial(n8c, static_cast<T>(0.125)),
2165 static_cast<T>(0.9723736286163330078125e1L),
2168 boost::math::tools::evaluate_polynomial(n8c, static_cast<T>(0.25)),
2169 static_cast<T>(0.1069219970703125e2L),
2172 boost::math::tools::evaluate_polynomial(n8c, static_cast<T>(0.75)),
2173 static_cast<T>(0.2290960693359375e2L),
2176 boost::math::tools::evaluate_polynomial(n8c, static_cast<T>(1.0f - 1.0f/64.0f)),
2177 static_cast<T>(0.4470947054706607559637632220983505249023e2L),
2180 boost::math::tools::evaluate_polynomial(n8c, static_cast<T>(6.5)),
2181 static_cast<T>(0.13650267734375e7L),
2184 boost::math::tools::evaluate_polynomial(n8c, static_cast<T>(10247.25)),
2185 static_cast<T>(0.1187728773094625678513681460864459228516e29L),
2189 boost::math::tools::evaluate_polynomial(n8a, static_cast<T>(0.125)),
2190 static_cast<T>(0.9723736286163330078125e1L),
2193 boost::math::tools::evaluate_polynomial(n8a, static_cast<T>(0.25)),
2194 static_cast<T>(0.1069219970703125e2L),
2197 boost::math::tools::evaluate_polynomial(n8a, static_cast<T>(0.75)),
2198 static_cast<T>(0.2290960693359375e2L),
2201 boost::math::tools::evaluate_polynomial(n8a, static_cast<T>(1.0f - 1.0f/64.0f)),
2202 static_cast<T>(0.4470947054706607559637632220983505249023e2L),
2205 boost::math::tools::evaluate_polynomial(n8a, static_cast<T>(6.5)),
2206 static_cast<T>(0.13650267734375e7L),
2209 boost::math::tools::evaluate_polynomial(n8a, static_cast<T>(10247.25)),
2210 static_cast<T>(0.1187728773094625678513681460864459228516e29L),
2214 boost::math::tools::evaluate_even_polynomial(n8c, static_cast<T>(0.125), 8),
2215 static_cast<T>(0.9079594375725946520105935633182525634766e1L),
2218 boost::math::tools::evaluate_even_polynomial(n8c, static_cast<T>(0.25), 8),
2219 static_cast<T>(0.93363673128187656402587890625e1L),
2222 boost::math::tools::evaluate_even_polynomial(n8c, static_cast<T>(0.75), 8),
2223 static_cast<T>(0.155691558457911014556884765625e2L),
2226 boost::math::tools::evaluate_even_polynomial(n8c, static_cast<T>(1.0f - 1.0f/64.0f), 8),
2227 static_cast<T>(0.4258457138999176910226338119632657870077e2L),
2230 boost::math::tools::evaluate_even_polynomial(n8c, static_cast<T>(6.5f), 8),
2231 static_cast<T>(0.30319406120433428955078125e12L),
2234 boost::math::tools::evaluate_even_polynomial(n8c, static_cast<T>(0.125)),
2235 static_cast<T>(0.9079594375725946520105935633182525634766e1L),
2238 boost::math::tools::evaluate_even_polynomial(n8c, static_cast<T>(0.25)),
2239 static_cast<T>(0.93363673128187656402587890625e1L),
2242 boost::math::tools::evaluate_even_polynomial(n8c, static_cast<T>(0.75)),
2243 static_cast<T>(0.155691558457911014556884765625e2L),
2246 boost::math::tools::evaluate_even_polynomial(n8c, static_cast<T>(1.0f - 1.0f/64.0f)),
2247 static_cast<T>(0.4258457138999176910226338119632657870077e2L),
2250 boost::math::tools::evaluate_even_polynomial(n8c, static_cast<T>(6.5f)),
2251 static_cast<T>(0.30319406120433428955078125e12L),
2254 boost::math::tools::evaluate_even_polynomial(n8a, static_cast<T>(0.125)),
2255 static_cast<T>(0.9079594375725946520105935633182525634766e1L),
2258 boost::math::tools::evaluate_even_polynomial(n8a, static_cast<T>(0.25)),
2259 static_cast<T>(0.93363673128187656402587890625e1L),
2262 boost::math::tools::evaluate_even_polynomial(n8a, static_cast<T>(0.75)),
2263 static_cast<T>(0.155691558457911014556884765625e2L),
2266 boost::math::tools::evaluate_even_polynomial(n8a, static_cast<T>(1.0f - 1.0f/64.0f)),
2267 static_cast<T>(0.4258457138999176910226338119632657870077e2L),
2270 boost::math::tools::evaluate_even_polynomial(n8a, static_cast<T>(6.5f)),
2271 static_cast<T>(0.30319406120433428955078125e12L),
2274 boost::math::tools::evaluate_odd_polynomial(n8c, static_cast<T>(0.125), 8),
2275 static_cast<T>(0.9636755005807572160847485065460205078125e1L),
2278 boost::math::tools::evaluate_odd_polynomial(n8c, static_cast<T>(0.25), 8),
2279 static_cast<T>(0.1034546925127506256103515625e2L),
2282 boost::math::tools::evaluate_odd_polynomial(n8c, static_cast<T>(0.75), 8),
2283 static_cast<T>(0.1775887446105480194091796875e2L),
2286 boost::math::tools::evaluate_odd_polynomial(n8c, static_cast<T>(1.0f - 1.0f/64.0f), 8),
2287 static_cast<T>(0.4311765982475354321499772058039525455316e2L),
2290 boost::math::tools::evaluate_odd_polynomial(n8c, static_cast<T>(6.5f), 8),
2291 static_cast<T>(0.466452401928975830078125e11L),
2294 boost::math::tools::evaluate_odd_polynomial(n8c, static_cast<T>(0.125)),
2295 static_cast<T>(0.9636755005807572160847485065460205078125e1L),
2298 boost::math::tools::evaluate_odd_polynomial(n8c, static_cast<T>(0.25)),
2299 static_cast<T>(0.1034546925127506256103515625e2L),
2302 boost::math::tools::evaluate_odd_polynomial(n8c, static_cast<T>(0.75)),
2303 static_cast<T>(0.1775887446105480194091796875e2L),
2306 boost::math::tools::evaluate_odd_polynomial(n8c, static_cast<T>(1.0f - 1.0f/64.0f)),
2307 static_cast<T>(0.4311765982475354321499772058039525455316e2L),
2310 boost::math::tools::evaluate_odd_polynomial(n8c, static_cast<T>(6.5f)),
2311 static_cast<T>(0.466452401928975830078125e11L),
2314 boost::math::tools::evaluate_odd_polynomial(n8a, static_cast<T>(0.125)),
2315 static_cast<T>(0.9636755005807572160847485065460205078125e1L),
2318 boost::math::tools::evaluate_odd_polynomial(n8a, static_cast<T>(0.25)),
2319 static_cast<T>(0.1034546925127506256103515625e2L),
2322 boost::math::tools::evaluate_odd_polynomial(n8a, static_cast<T>(0.75)),
2323 static_cast<T>(0.1775887446105480194091796875e2L),
2326 boost::math::tools::evaluate_odd_polynomial(n8a, static_cast<T>(1.0f - 1.0f/64.0f)),
2327 static_cast<T>(0.4311765982475354321499772058039525455316e2L),
2330 boost::math::tools::evaluate_odd_polynomial(n8a, static_cast<T>(6.5f)),
2331 static_cast<T>(0.466452401928975830078125e11L),
2334 // Rational functions of order 7
2336 static const U d8c[8] = { 7, 10, 10, 11, 2, 4, 1, 7 };
2337 static const boost::array<U, 8> d8a = {{ 7, 10, 10, 11, 2, 4, 1, 7 }};
2339 boost::math::tools::evaluate_rational(n8c, d8c, static_cast<T>(0.125), 8),
2340 static_cast<T>(0.1153693678861771369296601206130394355814e1L),
2343 boost::math::tools::evaluate_rational(n8c, d8c, static_cast<T>(0.25), 8),
2344 static_cast<T>(0.103714470093009762768860970830101771981e1L),
2347 boost::math::tools::evaluate_rational(n8c, d8c, static_cast<T>(0.75), 8),
2348 static_cast<T>(0.834289461108456229648481346061946410909e0L),
2351 boost::math::tools::evaluate_rational(n8c, d8c, static_cast<T>(1.0f - 1.0f/64.0f), 8),
2352 static_cast<T>(0.8981362736388035283180082845549732926578e0L),
2355 boost::math::tools::evaluate_rational(n8c, d8c, static_cast<T>(6.5f), 8),
2356 static_cast<T>(0.383383275200627223098571833372266642165e0L),
2359 boost::math::tools::evaluate_rational(n8c, d8c, static_cast<T>(10247.25f), 8),
2360 static_cast<T>(0.1430085023641929377426860779365964126311e0L),
2364 boost::math::tools::evaluate_rational(n8c, d8c, static_cast<T>(0.125)),
2365 static_cast<T>(0.1153693678861771369296601206130394355814e1L),
2368 boost::math::tools::evaluate_rational(n8c, d8c, static_cast<T>(0.25)),
2369 static_cast<T>(0.103714470093009762768860970830101771981e1L),
2372 boost::math::tools::evaluate_rational(n8c, d8c, static_cast<T>(0.75)),
2373 static_cast<T>(0.834289461108456229648481346061946410909e0L),
2376 boost::math::tools::evaluate_rational(n8c, d8c, static_cast<T>(1.0f - 1.0f/64.0f)),
2377 static_cast<T>(0.8981362736388035283180082845549732926578e0L),
2380 boost::math::tools::evaluate_rational(n8c, d8c, static_cast<T>(6.5f)),
2381 static_cast<T>(0.383383275200627223098571833372266642165e0L),
2384 boost::math::tools::evaluate_rational(n8c, d8c, static_cast<T>(10247.25f)),
2385 static_cast<T>(0.1430085023641929377426860779365964126311e0L),
2389 boost::math::tools::evaluate_rational(n8a, d8a, static_cast<T>(0.125)),
2390 static_cast<T>(0.1153693678861771369296601206130394355814e1L),
2393 boost::math::tools::evaluate_rational(n8a, d8a, static_cast<T>(0.25)),
2394 static_cast<T>(0.103714470093009762768860970830101771981e1L),
2397 boost::math::tools::evaluate_rational(n8a, d8a, static_cast<T>(0.75)),
2398 static_cast<T>(0.834289461108456229648481346061946410909e0L),
2401 boost::math::tools::evaluate_rational(n8a, d8a, static_cast<T>(1.0f - 1.0f/64.0f)),
2402 static_cast<T>(0.8981362736388035283180082845549732926578e0L),
2405 boost::math::tools::evaluate_rational(n8a, d8a, static_cast<T>(6.5f)),
2406 static_cast<T>(0.383383275200627223098571833372266642165e0L),
2409 boost::math::tools::evaluate_rational(n8a, d8a, static_cast<T>(10247.25f)),
2410 static_cast<T>(0.1430085023641929377426860779365964126311e0L),
2414 template <class T, class U>
2415 void do_test_spots8(T, U)
2418 // Tolerance is 4 eps expressed as a persentage:
2420 T tolerance = boost::math::tools::epsilon<T>() * 4 * 100;
2423 // Polynomials of order 8
2425 static const U n9c[9] = { 3, 9, 3, 9, 5, 6, 10, 7, 10 };
2426 static const boost::array<U, 9> n9a = {{ 3, 9, 3, 9, 5, 6, 10, 7, 10 }};
2428 boost::math::tools::evaluate_polynomial(n9c, static_cast<T>(0.125), 9),
2429 static_cast<T>(0.419089901447296142578125e1L),
2432 boost::math::tools::evaluate_polynomial(n9c, static_cast<T>(0.25), 9),
2433 static_cast<T>(0.5606536865234375e1L),
2436 boost::math::tools::evaluate_polynomial(n9c, static_cast<T>(0.75), 9),
2437 static_cast<T>(0.21955535888671875e2L),
2440 boost::math::tools::evaluate_polynomial(n9c, static_cast<T>(1.0f - 1.0f/64.0f), 9),
2441 static_cast<T>(0.577754343750660055434309470001608133316e2L),
2444 boost::math::tools::evaluate_polynomial(n9c, static_cast<T>(6.5), 9),
2445 static_cast<T>(0.3613143234375e8L),
2448 boost::math::tools::evaluate_polynomial(n9c, static_cast<T>(10247.25), 9),
2449 static_cast<T>(0.1215873306624182859977656082228297326996e34L),
2453 boost::math::tools::evaluate_polynomial(n9c, static_cast<T>(0.125)),
2454 static_cast<T>(0.419089901447296142578125e1L),
2457 boost::math::tools::evaluate_polynomial(n9c, static_cast<T>(0.25)),
2458 static_cast<T>(0.5606536865234375e1L),
2461 boost::math::tools::evaluate_polynomial(n9c, static_cast<T>(0.75)),
2462 static_cast<T>(0.21955535888671875e2L),
2465 boost::math::tools::evaluate_polynomial(n9c, static_cast<T>(1.0f - 1.0f/64.0f)),
2466 static_cast<T>(0.577754343750660055434309470001608133316e2L),
2469 boost::math::tools::evaluate_polynomial(n9c, static_cast<T>(6.5)),
2470 static_cast<T>(0.3613143234375e8L),
2473 boost::math::tools::evaluate_polynomial(n9c, static_cast<T>(10247.25)),
2474 static_cast<T>(0.1215873306624182859977656082228297326996e34L),
2478 boost::math::tools::evaluate_polynomial(n9a, static_cast<T>(0.125)),
2479 static_cast<T>(0.419089901447296142578125e1L),
2482 boost::math::tools::evaluate_polynomial(n9a, static_cast<T>(0.25)),
2483 static_cast<T>(0.5606536865234375e1L),
2486 boost::math::tools::evaluate_polynomial(n9a, static_cast<T>(0.75)),
2487 static_cast<T>(0.21955535888671875e2L),
2490 boost::math::tools::evaluate_polynomial(n9a, static_cast<T>(1.0f - 1.0f/64.0f)),
2491 static_cast<T>(0.577754343750660055434309470001608133316e2L),
2494 boost::math::tools::evaluate_polynomial(n9a, static_cast<T>(6.5)),
2495 static_cast<T>(0.3613143234375e8L),
2498 boost::math::tools::evaluate_polynomial(n9a, static_cast<T>(10247.25)),
2499 static_cast<T>(0.1215873306624182859977656082228297326996e34L),
2503 boost::math::tools::evaluate_even_polynomial(n9c, static_cast<T>(0.125), 9),
2504 static_cast<T>(0.3141392057908696244794555241242051124573e1L),
2507 boost::math::tools::evaluate_even_polynomial(n9c, static_cast<T>(0.25), 9),
2508 static_cast<T>(0.35764986560679972171783447265625e1L),
2511 boost::math::tools::evaluate_even_polynomial(n9c, static_cast<T>(0.75), 9),
2512 static_cast<T>(0.119936861679889261722564697265625e2L),
2515 boost::math::tools::evaluate_even_polynomial(n9c, static_cast<T>(1.0f - 1.0f/64.0f), 9),
2516 static_cast<T>(0.5392583642412261279423815221065846904997e2L),
2519 boost::math::tools::evaluate_even_polynomial(n9c, static_cast<T>(6.5f), 9),
2520 static_cast<T>(0.103274449934495763275146484375e15L),
2523 boost::math::tools::evaluate_even_polynomial(n9c, static_cast<T>(0.125)),
2524 static_cast<T>(0.3141392057908696244794555241242051124573e1L),
2527 boost::math::tools::evaluate_even_polynomial(n9c, static_cast<T>(0.25)),
2528 static_cast<T>(0.35764986560679972171783447265625e1L),
2531 boost::math::tools::evaluate_even_polynomial(n9c, static_cast<T>(0.75)),
2532 static_cast<T>(0.119936861679889261722564697265625e2L),
2535 boost::math::tools::evaluate_even_polynomial(n9c, static_cast<T>(1.0f - 1.0f/64.0f)),
2536 static_cast<T>(0.5392583642412261279423815221065846904997e2L),
2539 boost::math::tools::evaluate_even_polynomial(n9c, static_cast<T>(6.5f)),
2540 static_cast<T>(0.103274449934495763275146484375e15L),
2543 boost::math::tools::evaluate_even_polynomial(n9a, static_cast<T>(0.125)),
2544 static_cast<T>(0.3141392057908696244794555241242051124573e1L),
2547 boost::math::tools::evaluate_even_polynomial(n9a, static_cast<T>(0.25)),
2548 static_cast<T>(0.35764986560679972171783447265625e1L),
2551 boost::math::tools::evaluate_even_polynomial(n9a, static_cast<T>(0.75)),
2552 static_cast<T>(0.119936861679889261722564697265625e2L),
2555 boost::math::tools::evaluate_even_polynomial(n9a, static_cast<T>(1.0f - 1.0f/64.0f)),
2556 static_cast<T>(0.5392583642412261279423815221065846904997e2L),
2559 boost::math::tools::evaluate_even_polynomial(n9a, static_cast<T>(6.5f)),
2560 static_cast<T>(0.103274449934495763275146484375e15L),
2563 boost::math::tools::evaluate_odd_polynomial(n9c, static_cast<T>(0.125), 9),
2564 static_cast<T>(0.4131136463269569958356441929936408996582e1L),
2567 boost::math::tools::evaluate_odd_polynomial(n9c, static_cast<T>(0.25), 9),
2568 static_cast<T>(0.530599462427198886871337890625e1L),
2571 boost::math::tools::evaluate_odd_polynomial(n9c, static_cast<T>(0.75), 9),
2572 static_cast<T>(0.1499158155731856822967529296875e2L),
2575 boost::math::tools::evaluate_odd_polynomial(n9c, static_cast<T>(1.0f - 1.0f/64.0f), 9),
2576 static_cast<T>(0.5473418303402932093382923399178003205076e2L),
2579 boost::math::tools::evaluate_odd_polynomial(n9c, static_cast<T>(6.5f), 9),
2580 static_cast<T>(0.1588837691300188665771484375e14L),
2583 boost::math::tools::evaluate_odd_polynomial(n9c, static_cast<T>(0.125)),
2584 static_cast<T>(0.4131136463269569958356441929936408996582e1L),
2587 boost::math::tools::evaluate_odd_polynomial(n9c, static_cast<T>(0.25)),
2588 static_cast<T>(0.530599462427198886871337890625e1L),
2591 boost::math::tools::evaluate_odd_polynomial(n9c, static_cast<T>(0.75)),
2592 static_cast<T>(0.1499158155731856822967529296875e2L),
2595 boost::math::tools::evaluate_odd_polynomial(n9c, static_cast<T>(1.0f - 1.0f/64.0f)),
2596 static_cast<T>(0.5473418303402932093382923399178003205076e2L),
2599 boost::math::tools::evaluate_odd_polynomial(n9c, static_cast<T>(6.5f)),
2600 static_cast<T>(0.1588837691300188665771484375e14L),
2603 boost::math::tools::evaluate_odd_polynomial(n9a, static_cast<T>(0.125)),
2604 static_cast<T>(0.4131136463269569958356441929936408996582e1L),
2607 boost::math::tools::evaluate_odd_polynomial(n9a, static_cast<T>(0.25)),
2608 static_cast<T>(0.530599462427198886871337890625e1L),
2611 boost::math::tools::evaluate_odd_polynomial(n9a, static_cast<T>(0.75)),
2612 static_cast<T>(0.1499158155731856822967529296875e2L),
2615 boost::math::tools::evaluate_odd_polynomial(n9a, static_cast<T>(1.0f - 1.0f/64.0f)),
2616 static_cast<T>(0.5473418303402932093382923399178003205076e2L),
2619 boost::math::tools::evaluate_odd_polynomial(n9a, static_cast<T>(6.5f)),
2620 static_cast<T>(0.1588837691300188665771484375e14L),
2623 // Rational functions of order 8
2625 static const U d9c[9] = { 12, 3, 10, 4, 6, 6, 6, 10, 7 };
2626 static const boost::array<U, 9> d9a = {{ 12, 3, 10, 4, 6, 6, 6, 10, 7 }};
2628 boost::math::tools::evaluate_rational(n9c, d9c, static_cast<T>(0.125), 9),
2629 static_cast<T>(0.3341827920887278954826517708316980450243e0L),
2632 boost::math::tools::evaluate_rational(n9c, d9c, static_cast<T>(0.25), 9),
2633 static_cast<T>(0.4162555242250224594229316089330159747956e0L),
2636 boost::math::tools::evaluate_rational(n9c, d9c, static_cast<T>(0.75), 9),
2637 static_cast<T>(0.7844550246723573100342976024389406178802e0L),
2640 boost::math::tools::evaluate_rational(n9c, d9c, static_cast<T>(1.0f - 1.0f/64.0f), 9),
2641 static_cast<T>(0.959335028097323235424759017468360386113e0L),
2644 boost::math::tools::evaluate_rational(n9c, d9c, static_cast<T>(6.5f), 9),
2645 static_cast<T>(0.1302420407483849169746727326286868117535e1L),
2648 boost::math::tools::evaluate_rational(n9c, d9c, static_cast<T>(10247.25f), 9),
2649 static_cast<T>(0.1428469874366314841691622991213446692856e1L),
2653 boost::math::tools::evaluate_rational(n9c, d9c, static_cast<T>(0.125)),
2654 static_cast<T>(0.3341827920887278954826517708316980450243e0L),
2657 boost::math::tools::evaluate_rational(n9c, d9c, static_cast<T>(0.25)),
2658 static_cast<T>(0.4162555242250224594229316089330159747956e0L),
2661 boost::math::tools::evaluate_rational(n9c, d9c, static_cast<T>(0.75)),
2662 static_cast<T>(0.7844550246723573100342976024389406178802e0L),
2665 boost::math::tools::evaluate_rational(n9c, d9c, static_cast<T>(1.0f - 1.0f/64.0f)),
2666 static_cast<T>(0.959335028097323235424759017468360386113e0L),
2669 boost::math::tools::evaluate_rational(n9c, d9c, static_cast<T>(6.5f)),
2670 static_cast<T>(0.1302420407483849169746727326286868117535e1L),
2673 boost::math::tools::evaluate_rational(n9c, d9c, static_cast<T>(10247.25f)),
2674 static_cast<T>(0.1428469874366314841691622991213446692856e1L),
2678 boost::math::tools::evaluate_rational(n9a, d9a, static_cast<T>(0.125)),
2679 static_cast<T>(0.3341827920887278954826517708316980450243e0L),
2682 boost::math::tools::evaluate_rational(n9a, d9a, static_cast<T>(0.25)),
2683 static_cast<T>(0.4162555242250224594229316089330159747956e0L),
2686 boost::math::tools::evaluate_rational(n9a, d9a, static_cast<T>(0.75)),
2687 static_cast<T>(0.7844550246723573100342976024389406178802e0L),
2690 boost::math::tools::evaluate_rational(n9a, d9a, static_cast<T>(1.0f - 1.0f/64.0f)),
2691 static_cast<T>(0.959335028097323235424759017468360386113e0L),
2694 boost::math::tools::evaluate_rational(n9a, d9a, static_cast<T>(6.5f)),
2695 static_cast<T>(0.1302420407483849169746727326286868117535e1L),
2698 boost::math::tools::evaluate_rational(n9a, d9a, static_cast<T>(10247.25f)),
2699 static_cast<T>(0.1428469874366314841691622991213446692856e1L),
2703 template <class T, class U>
2704 void do_test_spots9(T, U)
2707 // Tolerance is 4 eps expressed as a persentage:
2709 T tolerance = boost::math::tools::epsilon<T>() * 4 * 100;
2712 // Polynomials of order 9
2714 static const U n10c[10] = { 3, 4, 2, 6, 8, 1, 2, 4, 8, 8 };
2715 static const boost::array<U, 10> n10a = {{ 3, 4, 2, 6, 8, 1, 2, 4, 8, 8 }};
2717 boost::math::tools::evaluate_polynomial(n10c, static_cast<T>(0.125), 10),
2718 static_cast<T>(0.3544962465763092041015625e1L),
2721 boost::math::tools::evaluate_polynomial(n10c, static_cast<T>(0.25), 10),
2722 static_cast<T>(0.4251861572265625e1L),
2725 boost::math::tools::evaluate_polynomial(n10c, static_cast<T>(0.75), 10),
2726 static_cast<T>(0.14716278076171875e2L),
2729 boost::math::tools::evaluate_polynomial(n10c, static_cast<T>(1.0f - 1.0f/64.0f), 10),
2730 static_cast<T>(0.4243246072286939307716124858416151255369e2L),
2733 boost::math::tools::evaluate_polynomial(n10c, static_cast<T>(6.5), 10),
2734 static_cast<T>(0.193326261328125e9L),
2737 boost::math::tools::evaluate_polynomial(n10c, static_cast<T>(10247.25), 10),
2738 static_cast<T>(0.9967777935240642903307419028007759631098e37L),
2742 boost::math::tools::evaluate_polynomial(n10c, static_cast<T>(0.125)),
2743 static_cast<T>(0.3544962465763092041015625e1L),
2746 boost::math::tools::evaluate_polynomial(n10c, static_cast<T>(0.25)),
2747 static_cast<T>(0.4251861572265625e1L),
2750 boost::math::tools::evaluate_polynomial(n10c, static_cast<T>(0.75)),
2751 static_cast<T>(0.14716278076171875e2L),
2754 boost::math::tools::evaluate_polynomial(n10c, static_cast<T>(1.0f - 1.0f/64.0f)),
2755 static_cast<T>(0.4243246072286939307716124858416151255369e2L),
2758 boost::math::tools::evaluate_polynomial(n10c, static_cast<T>(6.5)),
2759 static_cast<T>(0.193326261328125e9L),
2762 boost::math::tools::evaluate_polynomial(n10c, static_cast<T>(10247.25)),
2763 static_cast<T>(0.9967777935240642903307419028007759631098e37L),
2767 boost::math::tools::evaluate_polynomial(n10a, static_cast<T>(0.125)),
2768 static_cast<T>(0.3544962465763092041015625e1L),
2771 boost::math::tools::evaluate_polynomial(n10a, static_cast<T>(0.25)),
2772 static_cast<T>(0.4251861572265625e1L),
2775 boost::math::tools::evaluate_polynomial(n10a, static_cast<T>(0.75)),
2776 static_cast<T>(0.14716278076171875e2L),
2779 boost::math::tools::evaluate_polynomial(n10a, static_cast<T>(1.0f - 1.0f/64.0f)),
2780 static_cast<T>(0.4243246072286939307716124858416151255369e2L),
2783 boost::math::tools::evaluate_polynomial(n10a, static_cast<T>(6.5)),
2784 static_cast<T>(0.193326261328125e9L),
2787 boost::math::tools::evaluate_polynomial(n10a, static_cast<T>(10247.25)),
2788 static_cast<T>(0.9967777935240642903307419028007759631098e37L),
2792 boost::math::tools::evaluate_even_polynomial(n10c, static_cast<T>(0.125), 10),
2793 static_cast<T>(0.3063011647232116718697625401546247303486e1L),
2796 boost::math::tools::evaluate_even_polynomial(n10c, static_cast<T>(0.25), 10),
2797 static_cast<T>(0.3259400503826327621936798095703125e1L),
2800 boost::math::tools::evaluate_even_polynomial(n10c, static_cast<T>(0.75), 10),
2801 static_cast<T>(0.8067807371844537556171417236328125e1L),
2804 boost::math::tools::evaluate_even_polynomial(n10c, static_cast<T>(1.0f - 1.0f/64.0f), 10),
2805 static_cast<T>(0.3922779295817342542834377568121069117613e2L),
2808 boost::math::tools::evaluate_even_polynomial(n10c, static_cast<T>(6.5f), 10),
2809 static_cast<T>(0.3514067090785774022613525390625e16L),
2812 boost::math::tools::evaluate_even_polynomial(n10c, static_cast<T>(0.125)),
2813 static_cast<T>(0.3063011647232116718697625401546247303486e1L),
2816 boost::math::tools::evaluate_even_polynomial(n10c, static_cast<T>(0.25)),
2817 static_cast<T>(0.3259400503826327621936798095703125e1L),
2820 boost::math::tools::evaluate_even_polynomial(n10c, static_cast<T>(0.75)),
2821 static_cast<T>(0.8067807371844537556171417236328125e1L),
2824 boost::math::tools::evaluate_even_polynomial(n10c, static_cast<T>(1.0f - 1.0f/64.0f)),
2825 static_cast<T>(0.3922779295817342542834377568121069117613e2L),
2828 boost::math::tools::evaluate_even_polynomial(n10c, static_cast<T>(6.5f)),
2829 static_cast<T>(0.3514067090785774022613525390625e16L),
2832 boost::math::tools::evaluate_even_polynomial(n10a, static_cast<T>(0.125)),
2833 static_cast<T>(0.3063011647232116718697625401546247303486e1L),
2836 boost::math::tools::evaluate_even_polynomial(n10a, static_cast<T>(0.25)),
2837 static_cast<T>(0.3259400503826327621936798095703125e1L),
2840 boost::math::tools::evaluate_even_polynomial(n10a, static_cast<T>(0.75)),
2841 static_cast<T>(0.8067807371844537556171417236328125e1L),
2844 boost::math::tools::evaluate_even_polynomial(n10a, static_cast<T>(1.0f - 1.0f/64.0f)),
2845 static_cast<T>(0.3922779295817342542834377568121069117613e2L),
2848 boost::math::tools::evaluate_even_polynomial(n10a, static_cast<T>(6.5f)),
2849 static_cast<T>(0.3514067090785774022613525390625e16L),
2852 boost::math::tools::evaluate_odd_polynomial(n10c, static_cast<T>(0.125), 10),
2853 static_cast<T>(0.3504093177856933749581003212369978427887e1L),
2856 boost::math::tools::evaluate_odd_polynomial(n10c, static_cast<T>(0.25), 10),
2857 static_cast<T>(0.40376020153053104877471923828125e1L),
2860 boost::math::tools::evaluate_odd_polynomial(n10c, static_cast<T>(0.75), 10),
2861 static_cast<T>(0.97570764957927167415618896484375e1L),
2864 boost::math::tools::evaluate_odd_polynomial(n10c, static_cast<T>(1.0f - 1.0f/64.0f), 10),
2865 static_cast<T>(0.3980283729084284487958732767615054341702e2L),
2868 boost::math::tools::evaluate_odd_polynomial(n10c, static_cast<T>(6.5f), 10),
2869 static_cast<T>(0.54062570627473700347900390625e15L),
2872 boost::math::tools::evaluate_odd_polynomial(n10c, static_cast<T>(0.125)),
2873 static_cast<T>(0.3504093177856933749581003212369978427887e1L),
2876 boost::math::tools::evaluate_odd_polynomial(n10c, static_cast<T>(0.25)),
2877 static_cast<T>(0.40376020153053104877471923828125e1L),
2880 boost::math::tools::evaluate_odd_polynomial(n10c, static_cast<T>(0.75)),
2881 static_cast<T>(0.97570764957927167415618896484375e1L),
2884 boost::math::tools::evaluate_odd_polynomial(n10c, static_cast<T>(1.0f - 1.0f/64.0f)),
2885 static_cast<T>(0.3980283729084284487958732767615054341702e2L),
2888 boost::math::tools::evaluate_odd_polynomial(n10c, static_cast<T>(6.5f)),
2889 static_cast<T>(0.54062570627473700347900390625e15L),
2892 boost::math::tools::evaluate_odd_polynomial(n10a, static_cast<T>(0.125)),
2893 static_cast<T>(0.3504093177856933749581003212369978427887e1L),
2896 boost::math::tools::evaluate_odd_polynomial(n10a, static_cast<T>(0.25)),
2897 static_cast<T>(0.40376020153053104877471923828125e1L),
2900 boost::math::tools::evaluate_odd_polynomial(n10a, static_cast<T>(0.75)),
2901 static_cast<T>(0.97570764957927167415618896484375e1L),
2904 boost::math::tools::evaluate_odd_polynomial(n10a, static_cast<T>(1.0f - 1.0f/64.0f)),
2905 static_cast<T>(0.3980283729084284487958732767615054341702e2L),
2908 boost::math::tools::evaluate_odd_polynomial(n10a, static_cast<T>(6.5f)),
2909 static_cast<T>(0.54062570627473700347900390625e15L),
2912 // Rational functions of order 9
2914 static const U d10c[10] = { 3, 11, 1, 12, 8, 8, 7, 10, 8, 8 };
2915 static const boost::array<U, 10> d10a = {{ 3, 11, 1, 12, 8, 8, 7, 10, 8, 8 }};
2917 boost::math::tools::evaluate_rational(n10c, d10c, static_cast<T>(0.125), 10),
2918 static_cast<T>(0.8027011456035955638016996485812217742707e0L),
2921 boost::math::tools::evaluate_rational(n10c, d10c, static_cast<T>(0.25), 10),
2922 static_cast<T>(0.7037718026559713894599659542655668311705e0L),
2925 boost::math::tools::evaluate_rational(n10c, d10c, static_cast<T>(0.75), 10),
2926 static_cast<T>(0.5819711007563332500606442409694389231031e0L),
2929 boost::math::tools::evaluate_rational(n10c, d10c, static_cast<T>(1.0f - 1.0f/64.0f), 10),
2930 static_cast<T>(0.6021345078884753739086911192013079405483e0L),
2933 boost::math::tools::evaluate_rational(n10c, d10c, static_cast<T>(6.5f), 10),
2934 static_cast<T>(0.9827105949744728065574239430024037810213e0L),
2937 boost::math::tools::evaluate_rational(n10c, d10c, static_cast<T>(10247.25f), 10),
2938 static_cast<T>(0.9999999928576761766405011572543053028339e0L),
2942 boost::math::tools::evaluate_rational(n10c, d10c, static_cast<T>(0.125)),
2943 static_cast<T>(0.8027011456035955638016996485812217742707e0L),
2946 boost::math::tools::evaluate_rational(n10c, d10c, static_cast<T>(0.25)),
2947 static_cast<T>(0.7037718026559713894599659542655668311705e0L),
2950 boost::math::tools::evaluate_rational(n10c, d10c, static_cast<T>(0.75)),
2951 static_cast<T>(0.5819711007563332500606442409694389231031e0L),
2954 boost::math::tools::evaluate_rational(n10c, d10c, static_cast<T>(1.0f - 1.0f/64.0f)),
2955 static_cast<T>(0.6021345078884753739086911192013079405483e0L),
2958 boost::math::tools::evaluate_rational(n10c, d10c, static_cast<T>(6.5f)),
2959 static_cast<T>(0.9827105949744728065574239430024037810213e0L),
2962 boost::math::tools::evaluate_rational(n10c, d10c, static_cast<T>(10247.25f)),
2963 static_cast<T>(0.9999999928576761766405011572543053028339e0L),
2967 boost::math::tools::evaluate_rational(n10a, d10a, static_cast<T>(0.125)),
2968 static_cast<T>(0.8027011456035955638016996485812217742707e0L),
2971 boost::math::tools::evaluate_rational(n10a, d10a, static_cast<T>(0.25)),
2972 static_cast<T>(0.7037718026559713894599659542655668311705e0L),
2975 boost::math::tools::evaluate_rational(n10a, d10a, static_cast<T>(0.75)),
2976 static_cast<T>(0.5819711007563332500606442409694389231031e0L),
2979 boost::math::tools::evaluate_rational(n10a, d10a, static_cast<T>(1.0f - 1.0f/64.0f)),
2980 static_cast<T>(0.6021345078884753739086911192013079405483e0L),
2983 boost::math::tools::evaluate_rational(n10a, d10a, static_cast<T>(6.5f)),
2984 static_cast<T>(0.9827105949744728065574239430024037810213e0L),
2987 boost::math::tools::evaluate_rational(n10a, d10a, static_cast<T>(10247.25f)),
2988 static_cast<T>(0.9999999928576761766405011572543053028339e0L),
2992 template <class T, class U>
2993 void do_test_spots10(T, U)
2996 // Tolerance is 4 eps expressed as a persentage:
2998 T tolerance = boost::math::tools::epsilon<T>() * 4 * 100;
3001 // Polynomials of order 10
3003 static const U n11c[11] = { 2, 2, 8, 11, 3, 4, 10, 11, 5, 1, 6 };
3004 static const boost::array<U, 11> n11a = {{ 2, 2, 8, 11, 3, 4, 10, 11, 5, 1, 6 }};
3006 boost::math::tools::evaluate_polynomial(n11c, static_cast<T>(0.125), 11),
3007 static_cast<T>(0.239738257043063640594482421875e1L),
3010 boost::math::tools::evaluate_polynomial(n11c, static_cast<T>(0.25), 11),
3011 static_cast<T>(0.31906986236572265625e1L),
3014 boost::math::tools::evaluate_polynomial(n11c, static_cast<T>(0.75), 11),
3015 static_cast<T>(0.187007007598876953125e2L),
3018 boost::math::tools::evaluate_polynomial(n11c, static_cast<T>(1.0f - 1.0f/64.0f), 11),
3019 static_cast<T>(0.5807897685780276847943015550157497273176e2L),
3022 boost::math::tools::evaluate_polynomial(n11c, static_cast<T>(6.5), 11),
3023 static_cast<T>(0.85061053443359375e9L),
3026 boost::math::tools::evaluate_polynomial(n11c, static_cast<T>(0.125)),
3027 static_cast<T>(0.239738257043063640594482421875e1L),
3030 boost::math::tools::evaluate_polynomial(n11c, static_cast<T>(0.25)),
3031 static_cast<T>(0.31906986236572265625e1L),
3034 boost::math::tools::evaluate_polynomial(n11c, static_cast<T>(0.75)),
3035 static_cast<T>(0.187007007598876953125e2L),
3038 boost::math::tools::evaluate_polynomial(n11c, static_cast<T>(1.0f - 1.0f/64.0f)),
3039 static_cast<T>(0.5807897685780276847943015550157497273176e2L),
3042 boost::math::tools::evaluate_polynomial(n11c, static_cast<T>(6.5)),
3043 static_cast<T>(0.85061053443359375e9L),
3046 boost::math::tools::evaluate_polynomial(n11a, static_cast<T>(0.125)),
3047 static_cast<T>(0.239738257043063640594482421875e1L),
3050 boost::math::tools::evaluate_polynomial(n11a, static_cast<T>(0.25)),
3051 static_cast<T>(0.31906986236572265625e1L),
3054 boost::math::tools::evaluate_polynomial(n11a, static_cast<T>(0.75)),
3055 static_cast<T>(0.187007007598876953125e2L),
3058 boost::math::tools::evaluate_polynomial(n11a, static_cast<T>(1.0f - 1.0f/64.0f)),
3059 static_cast<T>(0.5807897685780276847943015550157497273176e2L),
3062 boost::math::tools::evaluate_polynomial(n11a, static_cast<T>(6.5)),
3063 static_cast<T>(0.85061053443359375e9L),
3066 boost::math::tools::evaluate_even_polynomial(n11c, static_cast<T>(0.125), 11),
3067 static_cast<T>(0.2033245269357184586631048794913567689946e1L),
3070 boost::math::tools::evaluate_even_polynomial(n11c, static_cast<T>(0.25), 11),
3071 static_cast<T>(0.2158985776148256263695657253265380859375e1L),
3074 boost::math::tools::evaluate_even_polynomial(n11c, static_cast<T>(0.75), 11),
3075 static_cast<T>(0.8727145384755203849636018276214599609375e1L),
3078 boost::math::tools::evaluate_even_polynomial(n11c, static_cast<T>(1.0f - 1.0f/64.0f), 11),
3079 static_cast<T>(0.5363972553738812062759598952966094072427e2L),
3082 boost::math::tools::evaluate_even_polynomial(n11c, static_cast<T>(6.5f), 11),
3083 static_cast<T>(0.1092297265410211371166019439697265625e18L),
3086 boost::math::tools::evaluate_even_polynomial(n11c, static_cast<T>(0.125)),
3087 static_cast<T>(0.2033245269357184586631048794913567689946e1L),
3090 boost::math::tools::evaluate_even_polynomial(n11c, static_cast<T>(0.25)),
3091 static_cast<T>(0.2158985776148256263695657253265380859375e1L),
3094 boost::math::tools::evaluate_even_polynomial(n11c, static_cast<T>(0.75)),
3095 static_cast<T>(0.8727145384755203849636018276214599609375e1L),
3098 boost::math::tools::evaluate_even_polynomial(n11c, static_cast<T>(1.0f - 1.0f/64.0f)),
3099 static_cast<T>(0.5363972553738812062759598952966094072427e2L),
3102 boost::math::tools::evaluate_even_polynomial(n11c, static_cast<T>(6.5f)),
3103 static_cast<T>(0.1092297265410211371166019439697265625e18L),
3106 boost::math::tools::evaluate_even_polynomial(n11a, static_cast<T>(0.125)),
3107 static_cast<T>(0.2033245269357184586631048794913567689946e1L),
3110 boost::math::tools::evaluate_even_polynomial(n11a, static_cast<T>(0.25)),
3111 static_cast<T>(0.2158985776148256263695657253265380859375e1L),
3114 boost::math::tools::evaluate_even_polynomial(n11a, static_cast<T>(0.75)),
3115 static_cast<T>(0.8727145384755203849636018276214599609375e1L),
3118 boost::math::tools::evaluate_even_polynomial(n11a, static_cast<T>(1.0f - 1.0f/64.0f)),
3119 static_cast<T>(0.5363972553738812062759598952966094072427e2L),
3122 boost::math::tools::evaluate_even_polynomial(n11a, static_cast<T>(6.5f)),
3123 static_cast<T>(0.1092297265410211371166019439697265625e18L),
3126 boost::math::tools::evaluate_odd_polynomial(n11c, static_cast<T>(0.125), 11),
3127 static_cast<T>(0.2265962154857476693048390359308541519567e1L),
3130 boost::math::tools::evaluate_odd_polynomial(n11c, static_cast<T>(0.25), 11),
3131 static_cast<T>(0.26359431045930250547826290130615234375e1L),
3134 boost::math::tools::evaluate_odd_polynomial(n11c, static_cast<T>(0.75), 11),
3135 static_cast<T>(0.109695271796736051328480243682861328125e2L),
3138 boost::math::tools::evaluate_odd_polynomial(n11c, static_cast<T>(1.0f - 1.0f/64.0f), 11),
3139 static_cast<T>(0.544594037205212653994625925380682572437e2L),
3142 boost::math::tools::evaluate_odd_polynomial(n11c, static_cast<T>(6.5f), 11),
3143 static_cast<T>(0.16804573314003253556400299072265625e17L),
3146 boost::math::tools::evaluate_odd_polynomial(n11c, static_cast<T>(0.125)),
3147 static_cast<T>(0.2265962154857476693048390359308541519567e1L),
3150 boost::math::tools::evaluate_odd_polynomial(n11c, static_cast<T>(0.25)),
3151 static_cast<T>(0.26359431045930250547826290130615234375e1L),
3154 boost::math::tools::evaluate_odd_polynomial(n11c, static_cast<T>(0.75)),
3155 static_cast<T>(0.109695271796736051328480243682861328125e2L),
3158 boost::math::tools::evaluate_odd_polynomial(n11c, static_cast<T>(1.0f - 1.0f/64.0f)),
3159 static_cast<T>(0.544594037205212653994625925380682572437e2L),
3162 boost::math::tools::evaluate_odd_polynomial(n11c, static_cast<T>(6.5f)),
3163 static_cast<T>(0.16804573314003253556400299072265625e17L),
3166 boost::math::tools::evaluate_odd_polynomial(n11a, static_cast<T>(0.125)),
3167 static_cast<T>(0.2265962154857476693048390359308541519567e1L),
3170 boost::math::tools::evaluate_odd_polynomial(n11a, static_cast<T>(0.25)),
3171 static_cast<T>(0.26359431045930250547826290130615234375e1L),
3174 boost::math::tools::evaluate_odd_polynomial(n11a, static_cast<T>(0.75)),
3175 static_cast<T>(0.109695271796736051328480243682861328125e2L),
3178 boost::math::tools::evaluate_odd_polynomial(n11a, static_cast<T>(1.0f - 1.0f/64.0f)),
3179 static_cast<T>(0.544594037205212653994625925380682572437e2L),
3182 boost::math::tools::evaluate_odd_polynomial(n11a, static_cast<T>(6.5f)),
3183 static_cast<T>(0.16804573314003253556400299072265625e17L),
3186 // Rational functions of order 10
3188 static const U d11c[11] = { 4, 1, 3, 9, 11, 8, 11, 2, 6, 6, 4 };
3189 static const boost::array<U, 11> d11a = {{ 4, 1, 3, 9, 11, 8, 11, 2, 6, 6, 4 }};
3191 boost::math::tools::evaluate_rational(n11c, d11c, static_cast<T>(0.125), 11),
3192 static_cast<T>(0.5718365676248588095654568811483084403598e0L),
3195 boost::math::tools::evaluate_rational(n11c, d11c, static_cast<T>(0.25), 11),
3196 static_cast<T>(0.6888631839546304707516922567568791812269e0L),
3199 boost::math::tools::evaluate_rational(n11c, d11c, static_cast<T>(0.75), 11),
3200 static_cast<T>(0.9783539912974912482969079012097816310129e0L),
3203 boost::math::tools::evaluate_rational(n11c, d11c, static_cast<T>(1.0f - 1.0f/64.0f), 11),
3204 static_cast<T>(0.9694017102874332007392886881642471036972e0L),
3207 boost::math::tools::evaluate_rational(n11c, d11c, static_cast<T>(6.5f), 11),
3208 static_cast<T>(0.1243900864392932237542421996384079347041e1L),
3211 boost::math::tools::evaluate_rational(n11c, d11c, static_cast<T>(10247.25f), 11),
3212 static_cast<T>(0.1499804844733304585200728061706913399511e1L),
3216 boost::math::tools::evaluate_rational(n11c, d11c, static_cast<T>(0.125)),
3217 static_cast<T>(0.5718365676248588095654568811483084403598e0L),
3220 boost::math::tools::evaluate_rational(n11c, d11c, static_cast<T>(0.25)),
3221 static_cast<T>(0.6888631839546304707516922567568791812269e0L),
3224 boost::math::tools::evaluate_rational(n11c, d11c, static_cast<T>(0.75)),
3225 static_cast<T>(0.9783539912974912482969079012097816310129e0L),
3228 boost::math::tools::evaluate_rational(n11c, d11c, static_cast<T>(1.0f - 1.0f/64.0f)),
3229 static_cast<T>(0.9694017102874332007392886881642471036972e0L),
3232 boost::math::tools::evaluate_rational(n11c, d11c, static_cast<T>(6.5f)),
3233 static_cast<T>(0.1243900864392932237542421996384079347041e1L),
3236 boost::math::tools::evaluate_rational(n11c, d11c, static_cast<T>(10247.25f)),
3237 static_cast<T>(0.1499804844733304585200728061706913399511e1L),
3241 boost::math::tools::evaluate_rational(n11a, d11a, static_cast<T>(0.125)),
3242 static_cast<T>(0.5718365676248588095654568811483084403598e0L),
3245 boost::math::tools::evaluate_rational(n11a, d11a, static_cast<T>(0.25)),
3246 static_cast<T>(0.6888631839546304707516922567568791812269e0L),
3249 boost::math::tools::evaluate_rational(n11a, d11a, static_cast<T>(0.75)),
3250 static_cast<T>(0.9783539912974912482969079012097816310129e0L),
3253 boost::math::tools::evaluate_rational(n11a, d11a, static_cast<T>(1.0f - 1.0f/64.0f)),
3254 static_cast<T>(0.9694017102874332007392886881642471036972e0L),
3257 boost::math::tools::evaluate_rational(n11a, d11a, static_cast<T>(6.5f)),
3258 static_cast<T>(0.1243900864392932237542421996384079347041e1L),
3261 boost::math::tools::evaluate_rational(n11a, d11a, static_cast<T>(10247.25f)),
3262 static_cast<T>(0.1499804844733304585200728061706913399511e1L),
3266 template <class T, class U>
3267 void do_test_spots11(T, U)
3270 // Tolerance is 4 eps expressed as a persentage:
3272 T tolerance = boost::math::tools::epsilon<T>() * 4 * 100;
3275 // Polynomials of order 11
3277 static const U n12c[12] = { 10, 12, 4, 1, 12, 7, 11, 5, 12, 5, 10, 6 };
3278 static const boost::array<U, 12> n12a = {{ 10, 12, 4, 1, 12, 7, 11, 5, 12, 5, 10, 6 }};
3280 boost::math::tools::evaluate_polynomial(n12c, static_cast<T>(0.125), 12),
3281 static_cast<T>(0.1156764154392294585704803466796875e2L),
3284 boost::math::tools::evaluate_polynomial(n12c, static_cast<T>(0.25), 12),
3285 static_cast<T>(0.13322539806365966796875e2L),
3288 boost::math::tools::evaluate_polynomial(n12c, static_cast<T>(0.75), 12),
3289 static_cast<T>(0.32148390293121337890625e2L),
3292 boost::math::tools::evaluate_polynomial(n12c, static_cast<T>(1.0f - 1.0f/64.0f), 12),
3293 static_cast<T>(0.8737331822870016474402916385744166660743e2L),
3296 boost::math::tools::evaluate_polynomial(n12c, static_cast<T>(6.5), 12),
3297 static_cast<T>(0.67419250750654296875e10L),
3300 boost::math::tools::evaluate_polynomial(n12c, static_cast<T>(0.125)),
3301 static_cast<T>(0.1156764154392294585704803466796875e2L),
3304 boost::math::tools::evaluate_polynomial(n12c, static_cast<T>(0.25)),
3305 static_cast<T>(0.13322539806365966796875e2L),
3308 boost::math::tools::evaluate_polynomial(n12c, static_cast<T>(0.75)),
3309 static_cast<T>(0.32148390293121337890625e2L),
3312 boost::math::tools::evaluate_polynomial(n12c, static_cast<T>(1.0f - 1.0f/64.0f)),
3313 static_cast<T>(0.8737331822870016474402916385744166660743e2L),
3316 boost::math::tools::evaluate_polynomial(n12c, static_cast<T>(6.5)),
3317 static_cast<T>(0.67419250750654296875e10L),
3320 boost::math::tools::evaluate_polynomial(n12a, static_cast<T>(0.125)),
3321 static_cast<T>(0.1156764154392294585704803466796875e2L),
3324 boost::math::tools::evaluate_polynomial(n12a, static_cast<T>(0.25)),
3325 static_cast<T>(0.13322539806365966796875e2L),
3328 boost::math::tools::evaluate_polynomial(n12a, static_cast<T>(0.75)),
3329 static_cast<T>(0.32148390293121337890625e2L),
3332 boost::math::tools::evaluate_polynomial(n12a, static_cast<T>(1.0f - 1.0f/64.0f)),
3333 static_cast<T>(0.8737331822870016474402916385744166660743e2L),
3336 boost::math::tools::evaluate_polynomial(n12a, static_cast<T>(6.5)),
3337 static_cast<T>(0.67419250750654296875e10L),
3340 boost::math::tools::evaluate_even_polynomial(n12c, static_cast<T>(0.125), 12),
3341 static_cast<T>(0.101884810991335118067599354446661763518e2L),
3344 boost::math::tools::evaluate_even_polynomial(n12c, static_cast<T>(0.25), 12),
3345 static_cast<T>(0.1076605959896767217287560924887657165527e2L),
3348 boost::math::tools::evaluate_even_polynomial(n12c, static_cast<T>(0.75), 12),
3349 static_cast<T>(0.2041755737073560794669901952147483825684e2L),
3352 boost::math::tools::evaluate_even_polynomial(n12c, static_cast<T>(1.0f - 1.0f/64.0f), 12),
3353 static_cast<T>(0.8060387357327405373376954971672611741429e2L),
3356 boost::math::tools::evaluate_even_polynomial(n12c, static_cast<T>(6.5f), 12),
3357 static_cast<T>(0.4778085851102157284559772014617919921875e19L),
3360 boost::math::tools::evaluate_even_polynomial(n12c, static_cast<T>(0.125)),
3361 static_cast<T>(0.101884810991335118067599354446661763518e2L),
3364 boost::math::tools::evaluate_even_polynomial(n12c, static_cast<T>(0.25)),
3365 static_cast<T>(0.1076605959896767217287560924887657165527e2L),
3368 boost::math::tools::evaluate_even_polynomial(n12c, static_cast<T>(0.75)),
3369 static_cast<T>(0.2041755737073560794669901952147483825684e2L),
3372 boost::math::tools::evaluate_even_polynomial(n12c, static_cast<T>(1.0f - 1.0f/64.0f)),
3373 static_cast<T>(0.8060387357327405373376954971672611741429e2L),
3376 boost::math::tools::evaluate_even_polynomial(n12c, static_cast<T>(6.5f)),
3377 static_cast<T>(0.4778085851102157284559772014617919921875e19L),
3380 boost::math::tools::evaluate_even_polynomial(n12a, static_cast<T>(0.125)),
3381 static_cast<T>(0.101884810991335118067599354446661763518e2L),
3384 boost::math::tools::evaluate_even_polynomial(n12a, static_cast<T>(0.25)),
3385 static_cast<T>(0.1076605959896767217287560924887657165527e2L),
3388 boost::math::tools::evaluate_even_polynomial(n12a, static_cast<T>(0.75)),
3389 static_cast<T>(0.2041755737073560794669901952147483825684e2L),
3392 boost::math::tools::evaluate_even_polynomial(n12a, static_cast<T>(1.0f - 1.0f/64.0f)),
3393 static_cast<T>(0.8060387357327405373376954971672611741429e2L),
3396 boost::math::tools::evaluate_even_polynomial(n12a, static_cast<T>(6.5f)),
3397 static_cast<T>(0.4778085851102157284559772014617919921875e19L),
3400 boost::math::tools::evaluate_odd_polynomial(n12c, static_cast<T>(0.125), 12),
3401 static_cast<T>(0.1150784879306809445407948355732941081442e2L),
3404 boost::math::tools::evaluate_odd_polynomial(n12c, static_cast<T>(0.25), 12),
3405 static_cast<T>(0.1306423839587068869150243699550628662109e2L),
3408 boost::math::tools::evaluate_odd_polynomial(n12c, static_cast<T>(0.75), 12),
3409 static_cast<T>(0.2389007649431414392893202602863311767578e2L),
3412 boost::math::tools::evaluate_odd_polynomial(n12c, static_cast<T>(1.0f - 1.0f/64.0f), 12),
3413 static_cast<T>(0.8172456997919903871367065368048367483356e2L),
3416 boost::math::tools::evaluate_odd_polynomial(n12c, static_cast<T>(6.5f), 12),
3417 static_cast<T>(0.73509013093879343685534954071044921875e18L),
3420 boost::math::tools::evaluate_odd_polynomial(n12c, static_cast<T>(0.125)),
3421 static_cast<T>(0.1150784879306809445407948355732941081442e2L),
3424 boost::math::tools::evaluate_odd_polynomial(n12c, static_cast<T>(0.25)),
3425 static_cast<T>(0.1306423839587068869150243699550628662109e2L),
3428 boost::math::tools::evaluate_odd_polynomial(n12c, static_cast<T>(0.75)),
3429 static_cast<T>(0.2389007649431414392893202602863311767578e2L),
3432 boost::math::tools::evaluate_odd_polynomial(n12c, static_cast<T>(1.0f - 1.0f/64.0f)),
3433 static_cast<T>(0.8172456997919903871367065368048367483356e2L),
3436 boost::math::tools::evaluate_odd_polynomial(n12c, static_cast<T>(6.5f)),
3437 static_cast<T>(0.73509013093879343685534954071044921875e18L),
3440 boost::math::tools::evaluate_odd_polynomial(n12a, static_cast<T>(0.125)),
3441 static_cast<T>(0.1150784879306809445407948355732941081442e2L),
3444 boost::math::tools::evaluate_odd_polynomial(n12a, static_cast<T>(0.25)),
3445 static_cast<T>(0.1306423839587068869150243699550628662109e2L),
3448 boost::math::tools::evaluate_odd_polynomial(n12a, static_cast<T>(0.75)),
3449 static_cast<T>(0.2389007649431414392893202602863311767578e2L),
3452 boost::math::tools::evaluate_odd_polynomial(n12a, static_cast<T>(1.0f - 1.0f/64.0f)),
3453 static_cast<T>(0.8172456997919903871367065368048367483356e2L),
3456 boost::math::tools::evaluate_odd_polynomial(n12a, static_cast<T>(6.5f)),
3457 static_cast<T>(0.73509013093879343685534954071044921875e18L),
3460 // Rational functions of order 11
3462 static const U d12c[12] = { 12, 5, 2, 8, 3, 2, 6, 9, 2, 8, 9, 12 };
3463 static const boost::array<U, 12> d12a = {{ 12, 5, 2, 8, 3, 2, 6, 9, 2, 8, 9, 12 }};
3465 boost::math::tools::evaluate_rational(n12c, d12c, static_cast<T>(0.125), 12),
3466 static_cast<T>(0.9128003783370762743953357962892418132189e0L),
3469 boost::math::tools::evaluate_rational(n12c, d12c, static_cast<T>(0.25), 12),
3470 static_cast<T>(0.9857041905689267091438933694601440838819e0L),
3473 boost::math::tools::evaluate_rational(n12c, d12c, static_cast<T>(0.75), 12),
3474 static_cast<T>(0.1248112763387283893598834927961632655902e1L),
3477 boost::math::tools::evaluate_rational(n12c, d12c, static_cast<T>(1.0f - 1.0f/64.0f), 12),
3478 static_cast<T>(0.1227813945781309965073515980672922656926e1L),
3481 boost::math::tools::evaluate_rational(n12c, d12c, static_cast<T>(6.5f), 12),
3482 static_cast<T>(0.5670462630528956417277364302989555872917e0L),
3485 boost::math::tools::evaluate_rational(n12c, d12c, static_cast<T>(10247.25f), 12),
3486 static_cast<T>(0.5000447249679368028702341332079904080375e0L),
3490 boost::math::tools::evaluate_rational(n12c, d12c, static_cast<T>(0.125)),
3491 static_cast<T>(0.9128003783370762743953357962892418132189e0L),
3494 boost::math::tools::evaluate_rational(n12c, d12c, static_cast<T>(0.25)),
3495 static_cast<T>(0.9857041905689267091438933694601440838819e0L),
3498 boost::math::tools::evaluate_rational(n12c, d12c, static_cast<T>(0.75)),
3499 static_cast<T>(0.1248112763387283893598834927961632655902e1L),
3502 boost::math::tools::evaluate_rational(n12c, d12c, static_cast<T>(1.0f - 1.0f/64.0f)),
3503 static_cast<T>(0.1227813945781309965073515980672922656926e1L),
3506 boost::math::tools::evaluate_rational(n12c, d12c, static_cast<T>(6.5f)),
3507 static_cast<T>(0.5670462630528956417277364302989555872917e0L),
3510 boost::math::tools::evaluate_rational(n12c, d12c, static_cast<T>(10247.25f)),
3511 static_cast<T>(0.5000447249679368028702341332079904080375e0L),
3515 boost::math::tools::evaluate_rational(n12a, d12a, static_cast<T>(0.125)),
3516 static_cast<T>(0.9128003783370762743953357962892418132189e0L),
3519 boost::math::tools::evaluate_rational(n12a, d12a, static_cast<T>(0.25)),
3520 static_cast<T>(0.9857041905689267091438933694601440838819e0L),
3523 boost::math::tools::evaluate_rational(n12a, d12a, static_cast<T>(0.75)),
3524 static_cast<T>(0.1248112763387283893598834927961632655902e1L),
3527 boost::math::tools::evaluate_rational(n12a, d12a, static_cast<T>(1.0f - 1.0f/64.0f)),
3528 static_cast<T>(0.1227813945781309965073515980672922656926e1L),
3531 boost::math::tools::evaluate_rational(n12a, d12a, static_cast<T>(6.5f)),
3532 static_cast<T>(0.5670462630528956417277364302989555872917e0L),
3535 boost::math::tools::evaluate_rational(n12a, d12a, static_cast<T>(10247.25f)),
3536 static_cast<T>(0.5000447249679368028702341332079904080375e0L),
3540 template <class T, class U>
3541 void do_test_spots12(T, U)
3544 // Tolerance is 4 eps expressed as a persentage:
3546 T tolerance = boost::math::tools::epsilon<T>() * 4 * 100;
3549 // Polynomials of order 12
3551 static const U n13c[13] = { 4, 11, 7, 1, 1, 1, 8, 11, 10, 12, 8, 2, 1 };
3552 static const boost::array<U, 13> n13a = {{ 4, 11, 7, 1, 1, 1, 8, 11, 10, 12, 8, 2, 1 }};
3554 boost::math::tools::evaluate_polynomial(n13c, static_cast<T>(0.125), 13),
3555 static_cast<T>(0.5486639239141368307173252105712890625e1L),
3558 boost::math::tools::evaluate_polynomial(n13c, static_cast<T>(0.25), 13),
3559 static_cast<T>(0.7210838854312896728515625e1L),
3562 boost::math::tools::evaluate_polynomial(n13c, static_cast<T>(0.75), 13),
3563 static_cast<T>(0.22524036943912506103515625e2L),
3566 boost::math::tools::evaluate_polynomial(n13c, static_cast<T>(1.0f - 1.0f/64.0f), 13),
3567 static_cast<T>(0.7013317633407797455061737623412208147977e2L),
3570 boost::math::tools::evaluate_polynomial(n13c, static_cast<T>(6.5), 13),
3571 static_cast<T>(0.8801602436469970703125e10L),
3574 boost::math::tools::evaluate_polynomial(n13c, static_cast<T>(0.125)),
3575 static_cast<T>(0.5486639239141368307173252105712890625e1L),
3578 boost::math::tools::evaluate_polynomial(n13c, static_cast<T>(0.25)),
3579 static_cast<T>(0.7210838854312896728515625e1L),
3582 boost::math::tools::evaluate_polynomial(n13c, static_cast<T>(0.75)),
3583 static_cast<T>(0.22524036943912506103515625e2L),
3586 boost::math::tools::evaluate_polynomial(n13c, static_cast<T>(1.0f - 1.0f/64.0f)),
3587 static_cast<T>(0.7013317633407797455061737623412208147977e2L),
3590 boost::math::tools::evaluate_polynomial(n13c, static_cast<T>(6.5)),
3591 static_cast<T>(0.8801602436469970703125e10L),
3594 boost::math::tools::evaluate_polynomial(n13a, static_cast<T>(0.125)),
3595 static_cast<T>(0.5486639239141368307173252105712890625e1L),
3598 boost::math::tools::evaluate_polynomial(n13a, static_cast<T>(0.25)),
3599 static_cast<T>(0.7210838854312896728515625e1L),
3602 boost::math::tools::evaluate_polynomial(n13a, static_cast<T>(0.75)),
3603 static_cast<T>(0.22524036943912506103515625e2L),
3606 boost::math::tools::evaluate_polynomial(n13a, static_cast<T>(1.0f - 1.0f/64.0f)),
3607 static_cast<T>(0.7013317633407797455061737623412208147977e2L),
3610 boost::math::tools::evaluate_polynomial(n13a, static_cast<T>(6.5)),
3611 static_cast<T>(0.8801602436469970703125e10L),
3614 boost::math::tools::evaluate_even_polynomial(n13c, static_cast<T>(0.125), 13),
3615 static_cast<T>(0.4173587859727185607499727379291788731397e1L),
3618 boost::math::tools::evaluate_even_polynomial(n13c, static_cast<T>(0.25), 13),
3619 static_cast<T>(0.4715104623414053008900737040676176548004e1L),
3622 boost::math::tools::evaluate_even_polynomial(n13c, static_cast<T>(0.75), 13),
3623 static_cast<T>(0.1338397611887558369403450342360883951187e2L),
3626 boost::math::tools::evaluate_even_polynomial(n13c, static_cast<T>(1.0f - 1.0f/64.0f), 13),
3627 static_cast<T>(0.6407202225497595548875186059951665936749e2L),
3630 boost::math::tools::evaluate_even_polynomial(n13c, static_cast<T>(6.5f), 13),
3631 static_cast<T>(0.3403521961549553788009664398431777954102e20L),
3634 boost::math::tools::evaluate_even_polynomial(n13c, static_cast<T>(0.125)),
3635 static_cast<T>(0.4173587859727185607499727379291788731397e1L),
3638 boost::math::tools::evaluate_even_polynomial(n13c, static_cast<T>(0.25)),
3639 static_cast<T>(0.4715104623414053008900737040676176548004e1L),
3642 boost::math::tools::evaluate_even_polynomial(n13c, static_cast<T>(0.75)),
3643 static_cast<T>(0.1338397611887558369403450342360883951187e2L),
3646 boost::math::tools::evaluate_even_polynomial(n13c, static_cast<T>(1.0f - 1.0f/64.0f)),
3647 static_cast<T>(0.6407202225497595548875186059951665936749e2L),
3650 boost::math::tools::evaluate_even_polynomial(n13c, static_cast<T>(6.5f)),
3651 static_cast<T>(0.3403521961549553788009664398431777954102e20L),
3654 boost::math::tools::evaluate_even_polynomial(n13a, static_cast<T>(0.125)),
3655 static_cast<T>(0.4173587859727185607499727379291788731397e1L),
3658 boost::math::tools::evaluate_even_polynomial(n13a, static_cast<T>(0.25)),
3659 static_cast<T>(0.4715104623414053008900737040676176548004e1L),
3662 boost::math::tools::evaluate_even_polynomial(n13a, static_cast<T>(0.75)),
3663 static_cast<T>(0.1338397611887558369403450342360883951187e2L),
3666 boost::math::tools::evaluate_even_polynomial(n13a, static_cast<T>(1.0f - 1.0f/64.0f)),
3667 static_cast<T>(0.6407202225497595548875186059951665936749e2L),
3670 boost::math::tools::evaluate_even_polynomial(n13a, static_cast<T>(6.5f)),
3671 static_cast<T>(0.3403521961549553788009664398431777954102e20L),
3674 boost::math::tools::evaluate_odd_polynomial(n13c, static_cast<T>(0.125), 13),
3675 static_cast<T>(0.5388702877817484859997819034334309851175e1L),
3678 boost::math::tools::evaluate_odd_polynomial(n13c, static_cast<T>(0.25), 13),
3679 static_cast<T>(0.6860418493656212035602948162704706192017e1L),
3682 boost::math::tools::evaluate_odd_polynomial(n13c, static_cast<T>(0.75), 13),
3683 static_cast<T>(0.165119681585007782587126712314784526825e2L),
3686 boost::math::tools::evaluate_odd_polynomial(n13c, static_cast<T>(1.0f - 1.0f/64.0f), 13),
3687 static_cast<T>(0.6502554641775335160762093775188993967491e2L),
3690 boost::math::tools::evaluate_odd_polynomial(n13c, static_cast<T>(6.5f), 13),
3691 static_cast<T>(0.5236187633153159677245637536048889160156e19L),
3694 boost::math::tools::evaluate_odd_polynomial(n13c, static_cast<T>(0.125)),
3695 static_cast<T>(0.5388702877817484859997819034334309851175e1L),
3698 boost::math::tools::evaluate_odd_polynomial(n13c, static_cast<T>(0.25)),
3699 static_cast<T>(0.6860418493656212035602948162704706192017e1L),
3702 boost::math::tools::evaluate_odd_polynomial(n13c, static_cast<T>(0.75)),
3703 static_cast<T>(0.165119681585007782587126712314784526825e2L),
3706 boost::math::tools::evaluate_odd_polynomial(n13c, static_cast<T>(1.0f - 1.0f/64.0f)),
3707 static_cast<T>(0.6502554641775335160762093775188993967491e2L),
3710 boost::math::tools::evaluate_odd_polynomial(n13c, static_cast<T>(6.5f)),
3711 static_cast<T>(0.5236187633153159677245637536048889160156e19L),
3714 boost::math::tools::evaluate_odd_polynomial(n13a, static_cast<T>(0.125)),
3715 static_cast<T>(0.5388702877817484859997819034334309851175e1L),
3718 boost::math::tools::evaluate_odd_polynomial(n13a, static_cast<T>(0.25)),
3719 static_cast<T>(0.6860418493656212035602948162704706192017e1L),
3722 boost::math::tools::evaluate_odd_polynomial(n13a, static_cast<T>(0.75)),
3723 static_cast<T>(0.165119681585007782587126712314784526825e2L),
3726 boost::math::tools::evaluate_odd_polynomial(n13a, static_cast<T>(1.0f - 1.0f/64.0f)),
3727 static_cast<T>(0.6502554641775335160762093775188993967491e2L),
3730 boost::math::tools::evaluate_odd_polynomial(n13a, static_cast<T>(6.5f)),
3731 static_cast<T>(0.5236187633153159677245637536048889160156e19L),
3734 // Rational functions of order 12
3736 static const U d13c[13] = { 4, 7, 1, 6, 11, 4, 9, 11, 1, 10, 1, 11, 12 };
3737 static const boost::array<U, 13> d13a = {{ 4, 7, 1, 6, 11, 4, 9, 11, 1, 10, 1, 11, 12 }};
3739 boost::math::tools::evaluate_rational(n13c, d13c, static_cast<T>(0.125), 13),
3740 static_cast<T>(0.1118537310443419140823936840990235560775e1L),
3743 boost::math::tools::evaluate_rational(n13c, d13c, static_cast<T>(0.25), 13),
3744 static_cast<T>(0.12106743933208147312270004711488386001e1L),
3747 boost::math::tools::evaluate_rational(n13c, d13c, static_cast<T>(0.75), 13),
3748 static_cast<T>(0.1042994706832119738384940706309786965245e1L),
3751 boost::math::tools::evaluate_rational(n13c, d13c, static_cast<T>(1.0f - 1.0f/64.0f), 13),
3752 static_cast<T>(0.8849937505065081554917467830175954168154e0L),
3755 boost::math::tools::evaluate_rational(n13c, d13c, static_cast<T>(6.5f), 13),
3756 static_cast<T>(0.1125049235146435310211414108934070096386e0L),
3759 boost::math::tools::evaluate_rational(n13c, d13c, static_cast<T>(10247.25f), 13),
3760 static_cast<T>(0.8334214878002966556152610218152238753709e-1L),
3764 boost::math::tools::evaluate_rational(n13c, d13c, static_cast<T>(0.125)),
3765 static_cast<T>(0.1118537310443419140823936840990235560775e1L),
3768 boost::math::tools::evaluate_rational(n13c, d13c, static_cast<T>(0.25)),
3769 static_cast<T>(0.12106743933208147312270004711488386001e1L),
3772 boost::math::tools::evaluate_rational(n13c, d13c, static_cast<T>(0.75)),
3773 static_cast<T>(0.1042994706832119738384940706309786965245e1L),
3776 boost::math::tools::evaluate_rational(n13c, d13c, static_cast<T>(1.0f - 1.0f/64.0f)),
3777 static_cast<T>(0.8849937505065081554917467830175954168154e0L),
3780 boost::math::tools::evaluate_rational(n13c, d13c, static_cast<T>(6.5f)),
3781 static_cast<T>(0.1125049235146435310211414108934070096386e0L),
3784 boost::math::tools::evaluate_rational(n13c, d13c, static_cast<T>(10247.25f)),
3785 static_cast<T>(0.8334214878002966556152610218152238753709e-1L),
3789 boost::math::tools::evaluate_rational(n13a, d13a, static_cast<T>(0.125)),
3790 static_cast<T>(0.1118537310443419140823936840990235560775e1L),
3793 boost::math::tools::evaluate_rational(n13a, d13a, static_cast<T>(0.25)),
3794 static_cast<T>(0.12106743933208147312270004711488386001e1L),
3797 boost::math::tools::evaluate_rational(n13a, d13a, static_cast<T>(0.75)),
3798 static_cast<T>(0.1042994706832119738384940706309786965245e1L),
3801 boost::math::tools::evaluate_rational(n13a, d13a, static_cast<T>(1.0f - 1.0f/64.0f)),
3802 static_cast<T>(0.8849937505065081554917467830175954168154e0L),
3805 boost::math::tools::evaluate_rational(n13a, d13a, static_cast<T>(6.5f)),
3806 static_cast<T>(0.1125049235146435310211414108934070096386e0L),
3809 boost::math::tools::evaluate_rational(n13a, d13a, static_cast<T>(10247.25f)),
3810 static_cast<T>(0.8334214878002966556152610218152238753709e-1L),
3813 template <class T, class U>
3814 void do_test_spots13(T, U)
3817 // Tolerance is 4 eps expressed as a persentage:
3819 T tolerance = boost::math::tools::epsilon<T>() * 4 * 100;
3822 // Polynomials of order 13
3824 static const U n14c[14] = { 5, 5, 3, 5, 12, 8, 10, 5, 5, 9, 2, 10, 3, 3 };
3825 static const boost::array<U, 14> n14a = {{ 5, 5, 3, 5, 12, 8, 10, 5, 5, 9, 2, 10, 3, 3 }};
3827 boost::math::tools::evaluate_polynomial(n14c, static_cast<T>(0.125), 14),
3828 static_cast<T>(0.5684855352437807596288621425628662109375e1L),
3831 boost::math::tools::evaluate_polynomial(n14c, static_cast<T>(0.25), 14),
3832 static_cast<T>(0.657317422330379486083984375e1L),
3835 boost::math::tools::evaluate_polynomial(n14c, static_cast<T>(0.75), 14),
3836 static_cast<T>(0.2256699807941913604736328125e2L),
3839 boost::math::tools::evaluate_polynomial(n14c, static_cast<T>(1.0f - 1.0f/64.0f), 14),
3840 static_cast<T>(0.7710103154409585858207746641830426369713e2L),
3843 boost::math::tools::evaluate_polynomial(n14c, static_cast<T>(6.5), 14),
3844 static_cast<T>(0.1372059025011920166015625e12L),
3847 boost::math::tools::evaluate_polynomial(n14c, static_cast<T>(0.125)),
3848 static_cast<T>(0.5684855352437807596288621425628662109375e1L),
3851 boost::math::tools::evaluate_polynomial(n14c, static_cast<T>(0.25)),
3852 static_cast<T>(0.657317422330379486083984375e1L),
3855 boost::math::tools::evaluate_polynomial(n14c, static_cast<T>(0.75)),
3856 static_cast<T>(0.2256699807941913604736328125e2L),
3859 boost::math::tools::evaluate_polynomial(n14c, static_cast<T>(1.0f - 1.0f/64.0f)),
3860 static_cast<T>(0.7710103154409585858207746641830426369713e2L),
3863 boost::math::tools::evaluate_polynomial(n14c, static_cast<T>(6.5)),
3864 static_cast<T>(0.1372059025011920166015625e12L),
3867 boost::math::tools::evaluate_polynomial(n14a, static_cast<T>(0.125)),
3868 static_cast<T>(0.5684855352437807596288621425628662109375e1L),
3871 boost::math::tools::evaluate_polynomial(n14a, static_cast<T>(0.25)),
3872 static_cast<T>(0.657317422330379486083984375e1L),
3875 boost::math::tools::evaluate_polynomial(n14a, static_cast<T>(0.75)),
3876 static_cast<T>(0.2256699807941913604736328125e2L),
3879 boost::math::tools::evaluate_polynomial(n14a, static_cast<T>(1.0f - 1.0f/64.0f)),
3880 static_cast<T>(0.7710103154409585858207746641830426369713e2L),
3883 boost::math::tools::evaluate_polynomial(n14a, static_cast<T>(6.5)),
3884 static_cast<T>(0.1372059025011920166015625e12L),
3887 boost::math::tools::evaluate_even_polynomial(n14c, static_cast<T>(0.125), 14),
3888 static_cast<T>(0.5078877218214320312311861835604176527818e1L),
3891 boost::math::tools::evaluate_even_polynomial(n14c, static_cast<T>(0.25), 14),
3892 static_cast<T>(0.5325630803958699699407475236512254923582e1L),
3895 boost::math::tools::evaluate_even_polynomial(n14c, static_cast<T>(0.75), 14),
3896 static_cast<T>(0.1183906394403697492911931021808413788676e2L),
3899 boost::math::tools::evaluate_even_polynomial(n14c, static_cast<T>(1.0f - 1.0f/64.0f), 14),
3900 static_cast<T>(0.7015764398304385537424317046920004042802e2L),
3903 boost::math::tools::evaluate_even_polynomial(n14c, static_cast<T>(6.5f), 14),
3904 static_cast<T>(0.4205557544065332561152158209905028343201e22L),
3907 boost::math::tools::evaluate_even_polynomial(n14c, static_cast<T>(0.125)),
3908 static_cast<T>(0.5078877218214320312311861835604176527818e1L),
3911 boost::math::tools::evaluate_even_polynomial(n14c, static_cast<T>(0.25)),
3912 static_cast<T>(0.5325630803958699699407475236512254923582e1L),
3915 boost::math::tools::evaluate_even_polynomial(n14c, static_cast<T>(0.75)),
3916 static_cast<T>(0.1183906394403697492911931021808413788676e2L),
3919 boost::math::tools::evaluate_even_polynomial(n14c, static_cast<T>(1.0f - 1.0f/64.0f)),
3920 static_cast<T>(0.7015764398304385537424317046920004042802e2L),
3923 boost::math::tools::evaluate_even_polynomial(n14c, static_cast<T>(6.5f)),
3924 static_cast<T>(0.4205557544065332561152158209905028343201e22L),
3927 boost::math::tools::evaluate_even_polynomial(n14a, static_cast<T>(0.125)),
3928 static_cast<T>(0.5078877218214320312311861835604176527818e1L),
3931 boost::math::tools::evaluate_even_polynomial(n14a, static_cast<T>(0.25)),
3932 static_cast<T>(0.5325630803958699699407475236512254923582e1L),
3935 boost::math::tools::evaluate_even_polynomial(n14a, static_cast<T>(0.75)),
3936 static_cast<T>(0.1183906394403697492911931021808413788676e2L),
3939 boost::math::tools::evaluate_even_polynomial(n14a, static_cast<T>(1.0f - 1.0f/64.0f)),
3940 static_cast<T>(0.7015764398304385537424317046920004042802e2L),
3943 boost::math::tools::evaluate_even_polynomial(n14a, static_cast<T>(6.5f)),
3944 static_cast<T>(0.4205557544065332561152158209905028343201e22L),
3947 boost::math::tools::evaluate_odd_polynomial(n14c, static_cast<T>(0.125), 14),
3948 static_cast<T>(0.5631017745714562498494894684833412222547e1L),
3951 boost::math::tools::evaluate_odd_polynomial(n14c, static_cast<T>(0.25), 14),
3952 static_cast<T>(0.6302523215834798797629900946049019694328e1L),
3955 boost::math::tools::evaluate_odd_polynomial(n14c, static_cast<T>(0.75), 14),
3956 static_cast<T>(0.1411875192538263323882574695744551718235e2L),
3959 boost::math::tools::evaluate_odd_polynomial(n14c, static_cast<T>(1.0f - 1.0f/64.0f), 14),
3960 static_cast<T>(0.7119189230023502768177083984172702519672e2L),
3963 boost::math::tools::evaluate_odd_polynomial(n14c, static_cast<T>(6.5f), 14),
3964 static_cast<T>(0.6470088529331280863353320322930812835693e21L),
3967 boost::math::tools::evaluate_odd_polynomial(n14c, static_cast<T>(0.125)),
3968 static_cast<T>(0.5631017745714562498494894684833412222547e1L),
3971 boost::math::tools::evaluate_odd_polynomial(n14c, static_cast<T>(0.25)),
3972 static_cast<T>(0.6302523215834798797629900946049019694328e1L),
3975 boost::math::tools::evaluate_odd_polynomial(n14c, static_cast<T>(0.75)),
3976 static_cast<T>(0.1411875192538263323882574695744551718235e2L),
3979 boost::math::tools::evaluate_odd_polynomial(n14c, static_cast<T>(1.0f - 1.0f/64.0f)),
3980 static_cast<T>(0.7119189230023502768177083984172702519672e2L),
3983 boost::math::tools::evaluate_odd_polynomial(n14c, static_cast<T>(6.5f)),
3984 static_cast<T>(0.6470088529331280863353320322930812835693e21L),
3987 boost::math::tools::evaluate_odd_polynomial(n14a, static_cast<T>(0.125)),
3988 static_cast<T>(0.5631017745714562498494894684833412222547e1L),
3991 boost::math::tools::evaluate_odd_polynomial(n14a, static_cast<T>(0.25)),
3992 static_cast<T>(0.6302523215834798797629900946049019694328e1L),
3995 boost::math::tools::evaluate_odd_polynomial(n14a, static_cast<T>(0.75)),
3996 static_cast<T>(0.1411875192538263323882574695744551718235e2L),
3999 boost::math::tools::evaluate_odd_polynomial(n14a, static_cast<T>(1.0f - 1.0f/64.0f)),
4000 static_cast<T>(0.7119189230023502768177083984172702519672e2L),
4003 boost::math::tools::evaluate_odd_polynomial(n14a, static_cast<T>(6.5f)),
4004 static_cast<T>(0.6470088529331280863353320322930812835693e21L),
4007 // Rational functions of order 13
4009 static const U d14c[14] = { 1, 2, 1, 8, 5, 8, 2, 11, 3, 6, 5, 9, 7, 10 };
4010 static const boost::array<U, 14> d14a = {{ 1, 2, 1, 8, 5, 8, 2, 11, 3, 6, 5, 9, 7, 10 }};
4012 boost::math::tools::evaluate_rational(n14c, d14c, static_cast<T>(0.125), 14),
4013 static_cast<T>(0.4431848049037056640776200482297774574883e1L),
4016 boost::math::tools::evaluate_rational(n14c, d14c, static_cast<T>(0.25), 14),
4017 static_cast<T>(0.3830343514018902583833597521450902906851e1L),
4020 boost::math::tools::evaluate_rational(n14c, d14c, static_cast<T>(0.75), 14),
4021 static_cast<T>(0.1657621200711495617835320787645038062003e1L),
4024 boost::math::tools::evaluate_rational(n14c, d14c, static_cast<T>(1.0f - 1.0f/64.0f), 14),
4025 static_cast<T>(0.1117985091800992684003226640313705018678e1L),
4028 boost::math::tools::evaluate_rational(n14c, d14c, static_cast<T>(6.5f), 14),
4029 static_cast<T>(0.3280672161259396135368350556553925507681e0L),
4032 boost::math::tools::evaluate_rational(n14c, d14c, static_cast<T>(10247.25f), 14),
4033 static_cast<T>(0.3000087891957249835881866421118445480875e0L),
4037 boost::math::tools::evaluate_rational(n14c, d14c, static_cast<T>(0.125)),
4038 static_cast<T>(0.4431848049037056640776200482297774574883e1L),
4041 boost::math::tools::evaluate_rational(n14c, d14c, static_cast<T>(0.25)),
4042 static_cast<T>(0.3830343514018902583833597521450902906851e1L),
4045 boost::math::tools::evaluate_rational(n14c, d14c, static_cast<T>(0.75)),
4046 static_cast<T>(0.1657621200711495617835320787645038062003e1L),
4049 boost::math::tools::evaluate_rational(n14c, d14c, static_cast<T>(1.0f - 1.0f/64.0f)),
4050 static_cast<T>(0.1117985091800992684003226640313705018678e1L),
4053 boost::math::tools::evaluate_rational(n14c, d14c, static_cast<T>(6.5f)),
4054 static_cast<T>(0.3280672161259396135368350556553925507681e0L),
4057 boost::math::tools::evaluate_rational(n14c, d14c, static_cast<T>(10247.25f)),
4058 static_cast<T>(0.3000087891957249835881866421118445480875e0L),
4062 boost::math::tools::evaluate_rational(n14a, d14a, static_cast<T>(0.125)),
4063 static_cast<T>(0.4431848049037056640776200482297774574883e1L),
4066 boost::math::tools::evaluate_rational(n14a, d14a, static_cast<T>(0.25)),
4067 static_cast<T>(0.3830343514018902583833597521450902906851e1L),
4070 boost::math::tools::evaluate_rational(n14a, d14a, static_cast<T>(0.75)),
4071 static_cast<T>(0.1657621200711495617835320787645038062003e1L),
4074 boost::math::tools::evaluate_rational(n14a, d14a, static_cast<T>(1.0f - 1.0f/64.0f)),
4075 static_cast<T>(0.1117985091800992684003226640313705018678e1L),
4078 boost::math::tools::evaluate_rational(n14a, d14a, static_cast<T>(6.5f)),
4079 static_cast<T>(0.3280672161259396135368350556553925507681e0L),
4082 boost::math::tools::evaluate_rational(n14a, d14a, static_cast<T>(10247.25f)),
4083 static_cast<T>(0.3000087891957249835881866421118445480875e0L),
4087 template <class T, class U>
4088 void do_test_spots14(T, U)
4091 // Tolerance is 4 eps expressed as a persentage:
4093 T tolerance = boost::math::tools::epsilon<T>() * 4 * 100;
4096 // Polynomials of order 14
4098 static const U n15c[15] = { 6, 2, 10, 2, 4, 11, 4, 6, 5, 5, 10, 12, 8, 6, 2 };
4099 static const boost::array<U, 15> n15a = {{ 6, 2, 10, 2, 4, 11, 4, 6, 5, 5, 10, 12, 8, 6, 2 }};
4101 boost::math::tools::evaluate_polynomial(n15c, static_cast<T>(0.125), 15),
4102 static_cast<T>(0.6411486971785507193999364972114562988281e1L),
4105 boost::math::tools::evaluate_polynomial(n15c, static_cast<T>(0.25), 15),
4106 static_cast<T>(0.7184068299829959869384765625e1L),
4109 boost::math::tools::evaluate_polynomial(n15c, static_cast<T>(0.75), 15),
4110 static_cast<T>(0.21735079027712345123291015625e2L),
4113 boost::math::tools::evaluate_polynomial(n15c, static_cast<T>(1.0f - 1.0f/64.0f), 15),
4114 static_cast<T>(0.8299984286646360949452954853655163780233e2L),
4117 boost::math::tools::evaluate_polynomial(n15c, static_cast<T>(6.5), 15),
4118 static_cast<T>(0.7599432765217742919921875e12L),
4121 boost::math::tools::evaluate_polynomial(n15c, static_cast<T>(0.125)),
4122 static_cast<T>(0.6411486971785507193999364972114562988281e1L),
4125 boost::math::tools::evaluate_polynomial(n15c, static_cast<T>(0.25)),
4126 static_cast<T>(0.7184068299829959869384765625e1L),
4129 boost::math::tools::evaluate_polynomial(n15c, static_cast<T>(0.75)),
4130 static_cast<T>(0.21735079027712345123291015625e2L),
4133 boost::math::tools::evaluate_polynomial(n15c, static_cast<T>(1.0f - 1.0f/64.0f)),
4134 static_cast<T>(0.8299984286646360949452954853655163780233e2L),
4137 boost::math::tools::evaluate_polynomial(n15c, static_cast<T>(6.5)),
4138 static_cast<T>(0.7599432765217742919921875e12L),
4141 boost::math::tools::evaluate_polynomial(n15a, static_cast<T>(0.125)),
4142 static_cast<T>(0.6411486971785507193999364972114562988281e1L),
4145 boost::math::tools::evaluate_polynomial(n15a, static_cast<T>(0.25)),
4146 static_cast<T>(0.7184068299829959869384765625e1L),
4149 boost::math::tools::evaluate_polynomial(n15a, static_cast<T>(0.75)),
4150 static_cast<T>(0.21735079027712345123291015625e2L),
4153 boost::math::tools::evaluate_polynomial(n15a, static_cast<T>(1.0f - 1.0f/64.0f)),
4154 static_cast<T>(0.8299984286646360949452954853655163780233e2L),
4157 boost::math::tools::evaluate_polynomial(n15a, static_cast<T>(6.5)),
4158 static_cast<T>(0.7599432765217742919921875e12L),
4161 boost::math::tools::evaluate_even_polynomial(n15c, static_cast<T>(0.125), 15),
4162 static_cast<T>(0.603369928436724862526100235763586452224e1L),
4165 boost::math::tools::evaluate_even_polynomial(n15c, static_cast<T>(0.25), 15),
4166 static_cast<T>(0.6164622568840771005271861326946236658841e1L),
4169 boost::math::tools::evaluate_even_polynomial(n15c, static_cast<T>(0.75), 15),
4170 static_cast<T>(0.1204200081304656236302896843426424311474e2L),
4173 boost::math::tools::evaluate_even_polynomial(n15c, static_cast<T>(1.0f - 1.0f/64.0f), 15),
4174 static_cast<T>(0.7438435296991670658675730793779505088179e2L),
4177 boost::math::tools::evaluate_even_polynomial(n15c, static_cast<T>(6.5f), 15),
4178 static_cast<T>(0.123975649339443727300884144392229616642e24L),
4181 boost::math::tools::evaluate_even_polynomial(n15c, static_cast<T>(0.125)),
4182 static_cast<T>(0.603369928436724862526100235763586452224e1L),
4185 boost::math::tools::evaluate_even_polynomial(n15c, static_cast<T>(0.25)),
4186 static_cast<T>(0.6164622568840771005271861326946236658841e1L),
4189 boost::math::tools::evaluate_even_polynomial(n15c, static_cast<T>(0.75)),
4190 static_cast<T>(0.1204200081304656236302896843426424311474e2L),
4193 boost::math::tools::evaluate_even_polynomial(n15c, static_cast<T>(1.0f - 1.0f/64.0f)),
4194 static_cast<T>(0.7438435296991670658675730793779505088179e2L),
4197 boost::math::tools::evaluate_even_polynomial(n15c, static_cast<T>(6.5f)),
4198 static_cast<T>(0.123975649339443727300884144392229616642e24L),
4201 boost::math::tools::evaluate_even_polynomial(n15a, static_cast<T>(0.125)),
4202 static_cast<T>(0.603369928436724862526100235763586452224e1L),
4205 boost::math::tools::evaluate_even_polynomial(n15a, static_cast<T>(0.25)),
4206 static_cast<T>(0.6164622568840771005271861326946236658841e1L),
4209 boost::math::tools::evaluate_even_polynomial(n15a, static_cast<T>(0.75)),
4210 static_cast<T>(0.1204200081304656236302896843426424311474e2L),
4213 boost::math::tools::evaluate_even_polynomial(n15a, static_cast<T>(1.0f - 1.0f/64.0f)),
4214 static_cast<T>(0.7438435296991670658675730793779505088179e2L),
4217 boost::math::tools::evaluate_even_polynomial(n15a, static_cast<T>(6.5f)),
4218 static_cast<T>(0.123975649339443727300884144392229616642e24L),
4221 boost::math::tools::evaluate_odd_polynomial(n15c, static_cast<T>(0.125), 15),
4222 static_cast<T>(0.6269594274937989002088018861086916177919e1L),
4225 boost::math::tools::evaluate_odd_polynomial(n15c, static_cast<T>(0.25), 15),
4226 static_cast<T>(0.6658490275363084021087445307784946635365e1L),
4229 boost::math::tools::evaluate_odd_polynomial(n15c, static_cast<T>(0.75), 15),
4230 static_cast<T>(0.1405600108406208315070529124568565748632e2L),
4233 boost::math::tools::evaluate_odd_polynomial(n15c, static_cast<T>(1.0f - 1.0f/64.0f), 15),
4234 static_cast<T>(0.7546981889007411462781694774633148026087e2L),
4237 boost::math::tools::evaluate_odd_polynomial(n15c, static_cast<T>(6.5f), 15),
4238 static_cast<T>(0.1907317682145288112321802221418917179108e23L),
4241 boost::math::tools::evaluate_odd_polynomial(n15c, static_cast<T>(0.125)),
4242 static_cast<T>(0.6269594274937989002088018861086916177919e1L),
4245 boost::math::tools::evaluate_odd_polynomial(n15c, static_cast<T>(0.25)),
4246 static_cast<T>(0.6658490275363084021087445307784946635365e1L),
4249 boost::math::tools::evaluate_odd_polynomial(n15c, static_cast<T>(0.75)),
4250 static_cast<T>(0.1405600108406208315070529124568565748632e2L),
4253 boost::math::tools::evaluate_odd_polynomial(n15c, static_cast<T>(1.0f - 1.0f/64.0f)),
4254 static_cast<T>(0.7546981889007411462781694774633148026087e2L),
4257 boost::math::tools::evaluate_odd_polynomial(n15c, static_cast<T>(6.5f)),
4258 static_cast<T>(0.1907317682145288112321802221418917179108e23L),
4261 boost::math::tools::evaluate_odd_polynomial(n15a, static_cast<T>(0.125)),
4262 static_cast<T>(0.6269594274937989002088018861086916177919e1L),
4265 boost::math::tools::evaluate_odd_polynomial(n15a, static_cast<T>(0.25)),
4266 static_cast<T>(0.6658490275363084021087445307784946635365e1L),
4269 boost::math::tools::evaluate_odd_polynomial(n15a, static_cast<T>(0.75)),
4270 static_cast<T>(0.1405600108406208315070529124568565748632e2L),
4273 boost::math::tools::evaluate_odd_polynomial(n15a, static_cast<T>(1.0f - 1.0f/64.0f)),
4274 static_cast<T>(0.7546981889007411462781694774633148026087e2L),
4277 boost::math::tools::evaluate_odd_polynomial(n15a, static_cast<T>(6.5f)),
4278 static_cast<T>(0.1907317682145288112321802221418917179108e23L),
4281 // Rational functions of order 14
4283 static const U d15c[15] = { 7, 10, 7, 1, 10, 11, 11, 10, 7, 1, 10, 9, 8, 2, 3 };
4284 static const boost::array<U, 15> d15a = {{ 7, 10, 7, 1, 10, 11, 11, 10, 7, 1, 10, 9, 8, 2, 3 }};
4286 boost::math::tools::evaluate_rational(n15c, d15c, static_cast<T>(0.125), 15),
4287 static_cast<T>(0.7665435387801205084357966990293734431712e0L),
4290 boost::math::tools::evaluate_rational(n15c, d15c, static_cast<T>(0.25), 15),
4291 static_cast<T>(0.7179510450452743437979498898508621162489e0L),
4294 boost::math::tools::evaluate_rational(n15c, d15c, static_cast<T>(0.75), 15),
4295 static_cast<T>(0.7245051156202447814210400449367214490615e0L),
4298 boost::math::tools::evaluate_rational(n15c, d15c, static_cast<T>(1.0f - 1.0f/64.0f), 15),
4299 static_cast<T>(0.8564567127146107292325365412425895512358e0L),
4302 boost::math::tools::evaluate_rational(n15c, d15c, static_cast<T>(6.5f), 15),
4303 static_cast<T>(0.8943937154363365123476971638815814742919e0L),
4306 boost::math::tools::evaluate_rational(n15c, d15c, static_cast<T>(10247.25f), 15),
4307 static_cast<T>(0.6668184674989563469735607034881326982176e0L),
4311 boost::math::tools::evaluate_rational(n15c, d15c, static_cast<T>(0.125)),
4312 static_cast<T>(0.7665435387801205084357966990293734431712e0L),
4315 boost::math::tools::evaluate_rational(n15c, d15c, static_cast<T>(0.25)),
4316 static_cast<T>(0.7179510450452743437979498898508621162489e0L),
4319 boost::math::tools::evaluate_rational(n15c, d15c, static_cast<T>(0.75)),
4320 static_cast<T>(0.7245051156202447814210400449367214490615e0L),
4323 boost::math::tools::evaluate_rational(n15c, d15c, static_cast<T>(1.0f - 1.0f/64.0f)),
4324 static_cast<T>(0.8564567127146107292325365412425895512358e0L),
4327 boost::math::tools::evaluate_rational(n15c, d15c, static_cast<T>(6.5f)),
4328 static_cast<T>(0.8943937154363365123476971638815814742919e0L),
4331 boost::math::tools::evaluate_rational(n15c, d15c, static_cast<T>(10247.25f)),
4332 static_cast<T>(0.6668184674989563469735607034881326982176e0L),
4336 boost::math::tools::evaluate_rational(n15a, d15a, static_cast<T>(0.125)),
4337 static_cast<T>(0.7665435387801205084357966990293734431712e0L),
4340 boost::math::tools::evaluate_rational(n15a, d15a, static_cast<T>(0.25)),
4341 static_cast<T>(0.7179510450452743437979498898508621162489e0L),
4344 boost::math::tools::evaluate_rational(n15a, d15a, static_cast<T>(0.75)),
4345 static_cast<T>(0.7245051156202447814210400449367214490615e0L),
4348 boost::math::tools::evaluate_rational(n15a, d15a, static_cast<T>(1.0f - 1.0f/64.0f)),
4349 static_cast<T>(0.8564567127146107292325365412425895512358e0L),
4352 boost::math::tools::evaluate_rational(n15a, d15a, static_cast<T>(6.5f)),
4353 static_cast<T>(0.8943937154363365123476971638815814742919e0L),
4356 boost::math::tools::evaluate_rational(n15a, d15a, static_cast<T>(10247.25f)),
4357 static_cast<T>(0.6668184674989563469735607034881326982176e0L),
4361 template <class T, class U>
4362 void do_test_spots15(T, U)
4365 // Tolerance is 4 eps expressed as a persentage:
4367 T tolerance = boost::math::tools::epsilon<T>() * 4 * 100;
4370 // Polynomials of order 15
4372 static const U n16c[16] = { 5, 3, 4, 6, 7, 9, 7, 6, 12, 12, 7, 12, 10, 3, 6, 2 };
4373 static const boost::array<U, 16> n16a = {{ 5, 3, 4, 6, 7, 9, 7, 6, 12, 12, 7, 12, 10, 3, 6, 2 }};
4375 boost::math::tools::evaluate_polynomial(n16c, static_cast<T>(0.125), 16),
4376 static_cast<T>(0.545123276921327715172083117067813873291e1L),
4379 boost::math::tools::evaluate_polynomial(n16c, static_cast<T>(0.25), 16),
4380 static_cast<T>(0.613219709135591983795166015625e1L),
4383 boost::math::tools::evaluate_polynomial(n16c, static_cast<T>(0.75), 16),
4384 static_cast<T>(0.2195364624075591564178466796875e2L),
4387 boost::math::tools::evaluate_polynomial(n16c, static_cast<T>(1.0f - 1.0f/64.0f), 16),
4388 static_cast<T>(0.9836568924934260045838041177111855604603e2L),
4391 boost::math::tools::evaluate_polynomial(n16c, static_cast<T>(6.5), 16),
4392 static_cast<T>(0.474557924297607818603515625e13L),
4395 boost::math::tools::evaluate_polynomial(n16c, static_cast<T>(0.125)),
4396 static_cast<T>(0.545123276921327715172083117067813873291e1L),
4399 boost::math::tools::evaluate_polynomial(n16c, static_cast<T>(0.25)),
4400 static_cast<T>(0.613219709135591983795166015625e1L),
4403 boost::math::tools::evaluate_polynomial(n16c, static_cast<T>(0.75)),
4404 static_cast<T>(0.2195364624075591564178466796875e2L),
4407 boost::math::tools::evaluate_polynomial(n16c, static_cast<T>(1.0f - 1.0f/64.0f)),
4408 static_cast<T>(0.9836568924934260045838041177111855604603e2L),
4411 boost::math::tools::evaluate_polynomial(n16c, static_cast<T>(6.5)),
4412 static_cast<T>(0.474557924297607818603515625e13L),
4415 boost::math::tools::evaluate_polynomial(n16a, static_cast<T>(0.125)),
4416 static_cast<T>(0.545123276921327715172083117067813873291e1L),
4419 boost::math::tools::evaluate_polynomial(n16a, static_cast<T>(0.25)),
4420 static_cast<T>(0.613219709135591983795166015625e1L),
4423 boost::math::tools::evaluate_polynomial(n16a, static_cast<T>(0.75)),
4424 static_cast<T>(0.2195364624075591564178466796875e2L),
4427 boost::math::tools::evaluate_polynomial(n16a, static_cast<T>(1.0f - 1.0f/64.0f)),
4428 static_cast<T>(0.9836568924934260045838041177111855604603e2L),
4431 boost::math::tools::evaluate_polynomial(n16a, static_cast<T>(6.5)),
4432 static_cast<T>(0.474557924297607818603515625e13L),
4435 boost::math::tools::evaluate_even_polynomial(n16c, static_cast<T>(0.125), 16),
4436 static_cast<T>(0.5047874876401281302859159688868887179229e1L),
4439 boost::math::tools::evaluate_even_polynomial(n16c, static_cast<T>(0.25), 16),
4440 static_cast<T>(0.5204705680902215943553490440365294489311e1L),
4443 boost::math::tools::evaluate_even_polynomial(n16c, static_cast<T>(0.75), 16),
4444 static_cast<T>(0.1080276729363941941482185615797106947866e2L),
4447 boost::math::tools::evaluate_even_polynomial(n16c, static_cast<T>(1.0f - 1.0f/64.0f), 16),
4448 static_cast<T>(0.8750139513999183433264859554731006794881e2L),
4451 boost::math::tools::evaluate_even_polynomial(n16c, static_cast<T>(6.5f), 16),
4452 static_cast<T>(0.5231073382834479254225049897383445873857e25L),
4455 boost::math::tools::evaluate_even_polynomial(n16c, static_cast<T>(0.125)),
4456 static_cast<T>(0.5047874876401281302859159688868887179229e1L),
4459 boost::math::tools::evaluate_even_polynomial(n16c, static_cast<T>(0.25)),
4460 static_cast<T>(0.5204705680902215943553490440365294489311e1L),
4463 boost::math::tools::evaluate_even_polynomial(n16c, static_cast<T>(0.75)),
4464 static_cast<T>(0.1080276729363941941482185615797106947866e2L),
4467 boost::math::tools::evaluate_even_polynomial(n16c, static_cast<T>(1.0f - 1.0f/64.0f)),
4468 static_cast<T>(0.8750139513999183433264859554731006794881e2L),
4471 boost::math::tools::evaluate_even_polynomial(n16c, static_cast<T>(6.5f)),
4472 static_cast<T>(0.5231073382834479254225049897383445873857e25L),
4475 boost::math::tools::evaluate_even_polynomial(n16a, static_cast<T>(0.125)),
4476 static_cast<T>(0.5047874876401281302859159688868887179229e1L),
4479 boost::math::tools::evaluate_even_polynomial(n16a, static_cast<T>(0.25)),
4480 static_cast<T>(0.5204705680902215943553490440365294489311e1L),
4483 boost::math::tools::evaluate_even_polynomial(n16a, static_cast<T>(0.75)),
4484 static_cast<T>(0.1080276729363941941482185615797106947866e2L),
4487 boost::math::tools::evaluate_even_polynomial(n16a, static_cast<T>(1.0f - 1.0f/64.0f)),
4488 static_cast<T>(0.8750139513999183433264859554731006794881e2L),
4491 boost::math::tools::evaluate_even_polynomial(n16a, static_cast<T>(6.5f)),
4492 static_cast<T>(0.5231073382834479254225049897383445873857e25L),
4495 boost::math::tools::evaluate_odd_polynomial(n16c, static_cast<T>(0.125), 16),
4496 static_cast<T>(0.5382999011210250422873277510951097433836e1L),
4499 boost::math::tools::evaluate_odd_polynomial(n16c, static_cast<T>(0.25), 16),
4500 static_cast<T>(0.5818822723608863774213961761461177957244e1L),
4503 boost::math::tools::evaluate_odd_polynomial(n16c, static_cast<T>(0.75), 16),
4504 static_cast<T>(0.1273702305818589255309580821062809263822e2L),
4507 boost::math::tools::evaluate_odd_polynomial(n16c, static_cast<T>(1.0f - 1.0f/64.0f), 16),
4508 static_cast<T>(0.8881094109459487932205571611155308490038e2L),
4511 boost::math::tools::evaluate_odd_polynomial(n16c, static_cast<T>(6.5f), 16),
4512 static_cast<T>(0.8047805204360737314192426765205301344395e24L),
4515 boost::math::tools::evaluate_odd_polynomial(n16c, static_cast<T>(0.125)),
4516 static_cast<T>(0.5382999011210250422873277510951097433836e1L),
4519 boost::math::tools::evaluate_odd_polynomial(n16c, static_cast<T>(0.25)),
4520 static_cast<T>(0.5818822723608863774213961761461177957244e1L),
4523 boost::math::tools::evaluate_odd_polynomial(n16c, static_cast<T>(0.75)),
4524 static_cast<T>(0.1273702305818589255309580821062809263822e2L),
4527 boost::math::tools::evaluate_odd_polynomial(n16c, static_cast<T>(1.0f - 1.0f/64.0f)),
4528 static_cast<T>(0.8881094109459487932205571611155308490038e2L),
4531 boost::math::tools::evaluate_odd_polynomial(n16c, static_cast<T>(6.5f)),
4532 static_cast<T>(0.8047805204360737314192426765205301344395e24L),
4535 boost::math::tools::evaluate_odd_polynomial(n16a, static_cast<T>(0.125)),
4536 static_cast<T>(0.5382999011210250422873277510951097433836e1L),
4539 boost::math::tools::evaluate_odd_polynomial(n16a, static_cast<T>(0.25)),
4540 static_cast<T>(0.5818822723608863774213961761461177957244e1L),
4543 boost::math::tools::evaluate_odd_polynomial(n16a, static_cast<T>(0.75)),
4544 static_cast<T>(0.1273702305818589255309580821062809263822e2L),
4547 boost::math::tools::evaluate_odd_polynomial(n16a, static_cast<T>(1.0f - 1.0f/64.0f)),
4548 static_cast<T>(0.8881094109459487932205571611155308490038e2L),
4551 boost::math::tools::evaluate_odd_polynomial(n16a, static_cast<T>(6.5f)),
4552 static_cast<T>(0.8047805204360737314192426765205301344395e24L),
4555 // Rational functions of order 15
4557 static const U d16c[16] = { 9, 5, 2, 4, 4, 12, 11, 5, 1, 4, 1, 7, 9, 6, 6, 10 };
4558 static const boost::array<U, 16> d16a = {{ 9, 5, 2, 4, 4, 12, 11, 5, 1, 4, 1, 7, 9, 6, 6, 10 }};
4560 boost::math::tools::evaluate_rational(n16c, d16c, static_cast<T>(0.125), 16),
4561 static_cast<T>(0.5639916333371058636233240074655101514789e0L),
4564 boost::math::tools::evaluate_rational(n16c, d16c, static_cast<T>(0.25), 16),
4565 static_cast<T>(0.5858114501425065583332351775671440891069e0L),
4568 boost::math::tools::evaluate_rational(n16c, d16c, static_cast<T>(0.75), 16),
4569 static_cast<T>(0.9254727283150680371198227978127749853934e0L),
4572 boost::math::tools::evaluate_rational(n16c, d16c, static_cast<T>(1.0f - 1.0f/64.0f), 16),
4573 static_cast<T>(0.1155192269792597191440811772688208898465e1L),
4576 boost::math::tools::evaluate_rational(n16c, d16c, static_cast<T>(6.5f), 16),
4577 static_cast<T>(0.2736469218296852258039959401695110274611e0L),
4580 boost::math::tools::evaluate_rational(n16c, d16c, static_cast<T>(10247.25f), 16),
4581 static_cast<T>(0.2000468408076577399196121638600795513365e0L),
4585 boost::math::tools::evaluate_rational(n16c, d16c, static_cast<T>(0.125)),
4586 static_cast<T>(0.5639916333371058636233240074655101514789e0L),
4589 boost::math::tools::evaluate_rational(n16c, d16c, static_cast<T>(0.25)),
4590 static_cast<T>(0.5858114501425065583332351775671440891069e0L),
4593 boost::math::tools::evaluate_rational(n16c, d16c, static_cast<T>(0.75)),
4594 static_cast<T>(0.9254727283150680371198227978127749853934e0L),
4597 boost::math::tools::evaluate_rational(n16c, d16c, static_cast<T>(1.0f - 1.0f/64.0f)),
4598 static_cast<T>(0.1155192269792597191440811772688208898465e1L),
4601 boost::math::tools::evaluate_rational(n16c, d16c, static_cast<T>(6.5f)),
4602 static_cast<T>(0.2736469218296852258039959401695110274611e0L),
4605 boost::math::tools::evaluate_rational(n16c, d16c, static_cast<T>(10247.25f)),
4606 static_cast<T>(0.2000468408076577399196121638600795513365e0L),
4610 boost::math::tools::evaluate_rational(n16a, d16a, static_cast<T>(0.125)),
4611 static_cast<T>(0.5639916333371058636233240074655101514789e0L),
4614 boost::math::tools::evaluate_rational(n16a, d16a, static_cast<T>(0.25)),
4615 static_cast<T>(0.5858114501425065583332351775671440891069e0L),
4618 boost::math::tools::evaluate_rational(n16a, d16a, static_cast<T>(0.75)),
4619 static_cast<T>(0.9254727283150680371198227978127749853934e0L),
4622 boost::math::tools::evaluate_rational(n16a, d16a, static_cast<T>(1.0f - 1.0f/64.0f)),
4623 static_cast<T>(0.1155192269792597191440811772688208898465e1L),
4626 boost::math::tools::evaluate_rational(n16a, d16a, static_cast<T>(6.5f)),
4627 static_cast<T>(0.2736469218296852258039959401695110274611e0L),
4630 boost::math::tools::evaluate_rational(n16a, d16a, static_cast<T>(10247.25f)),
4631 static_cast<T>(0.2000468408076577399196121638600795513365e0L),
4635 template <class T, class U>
4636 void do_test_spots16(T, U)
4639 // Tolerance is 4 eps expressed as a persentage:
4641 T tolerance = boost::math::tools::epsilon<T>() * 4 * 100;
4644 // Polynomials of order 16
4646 static const U n17c[17] = { 9, 6, 11, 2, 9, 10, 6, 3, 3, 3, 4, 9, 10, 2, 3, 2, 2 };
4647 static const boost::array<U, 17> n17a = {{ 9, 6, 11, 2, 9, 10, 6, 3, 3, 3, 4, 9, 10, 2, 3, 2, 2 }};
4649 boost::math::tools::evaluate_polynomial(n17c, static_cast<T>(0.125), 17),
4650 static_cast<T>(0.9928308216189925872185995103791356086731e1L),
4653 boost::math::tools::evaluate_polynomial(n17c, static_cast<T>(0.25), 17),
4654 static_cast<T>(0.112653836444951593875885009765625e2L),
4657 boost::math::tools::evaluate_polynomial(n17c, static_cast<T>(0.75), 17),
4658 static_cast<T>(0.288157429718412458896636962890625e2L),
4661 boost::math::tools::evaluate_polynomial(n17c, static_cast<T>(1.0f - 1.0f/64.0f), 17),
4662 static_cast<T>(0.8499409476622319741012411965028222548509e2L),
4665 boost::math::tools::evaluate_polynomial(n17c, static_cast<T>(6.5), 17),
4666 static_cast<T>(0.24291309657542805938720703125e14L),
4669 boost::math::tools::evaluate_polynomial(n17c, static_cast<T>(0.125)),
4670 static_cast<T>(0.9928308216189925872185995103791356086731e1L),
4673 boost::math::tools::evaluate_polynomial(n17c, static_cast<T>(0.25)),
4674 static_cast<T>(0.112653836444951593875885009765625e2L),
4677 boost::math::tools::evaluate_polynomial(n17c, static_cast<T>(0.75)),
4678 static_cast<T>(0.288157429718412458896636962890625e2L),
4681 boost::math::tools::evaluate_polynomial(n17c, static_cast<T>(1.0f - 1.0f/64.0f)),
4682 static_cast<T>(0.8499409476622319741012411965028222548509e2L),
4685 boost::math::tools::evaluate_polynomial(n17c, static_cast<T>(6.5)),
4686 static_cast<T>(0.24291309657542805938720703125e14L),
4689 boost::math::tools::evaluate_polynomial(n17a, static_cast<T>(0.125)),
4690 static_cast<T>(0.9928308216189925872185995103791356086731e1L),
4693 boost::math::tools::evaluate_polynomial(n17a, static_cast<T>(0.25)),
4694 static_cast<T>(0.112653836444951593875885009765625e2L),
4697 boost::math::tools::evaluate_polynomial(n17a, static_cast<T>(0.75)),
4698 static_cast<T>(0.288157429718412458896636962890625e2L),
4701 boost::math::tools::evaluate_polynomial(n17a, static_cast<T>(1.0f - 1.0f/64.0f)),
4702 static_cast<T>(0.8499409476622319741012411965028222548509e2L),
4705 boost::math::tools::evaluate_polynomial(n17a, static_cast<T>(6.5)),
4706 static_cast<T>(0.24291309657542805938720703125e14L),
4709 boost::math::tools::evaluate_even_polynomial(n17c, static_cast<T>(0.125), 17),
4710 static_cast<T>(0.9096443722112564415334975111453014308977e1L),
4713 boost::math::tools::evaluate_even_polynomial(n17c, static_cast<T>(0.25), 17),
4714 static_cast<T>(0.9418604266644799371155545586464796770088e1L),
4717 boost::math::tools::evaluate_even_polynomial(n17c, static_cast<T>(0.75), 17),
4718 static_cast<T>(0.1800748238050061998856161277204890325265e2L),
4721 boost::math::tools::evaluate_even_polynomial(n17c, static_cast<T>(1.0f - 1.0f/64.0f), 17),
4722 static_cast<T>(0.7725414891276907880696219594586980069116e2L),
4725 boost::math::tools::evaluate_even_polynomial(n17c, static_cast<T>(6.5f), 17),
4726 static_cast<T>(0.2112416072820759278619692697965107844211e27L),
4729 boost::math::tools::evaluate_even_polynomial(n17c, static_cast<T>(0.125)),
4730 static_cast<T>(0.9096443722112564415334975111453014308977e1L),
4733 boost::math::tools::evaluate_even_polynomial(n17c, static_cast<T>(0.25)),
4734 static_cast<T>(0.9418604266644799371155545586464796770088e1L),
4737 boost::math::tools::evaluate_even_polynomial(n17c, static_cast<T>(0.75)),
4738 static_cast<T>(0.1800748238050061998856161277204890325265e2L),
4741 boost::math::tools::evaluate_even_polynomial(n17c, static_cast<T>(1.0f - 1.0f/64.0f)),
4742 static_cast<T>(0.7725414891276907880696219594586980069116e2L),
4745 boost::math::tools::evaluate_even_polynomial(n17c, static_cast<T>(6.5f)),
4746 static_cast<T>(0.2112416072820759278619692697965107844211e27L),
4749 boost::math::tools::evaluate_even_polynomial(n17a, static_cast<T>(0.125)),
4750 static_cast<T>(0.9096443722112564415334975111453014308977e1L),
4753 boost::math::tools::evaluate_even_polynomial(n17a, static_cast<T>(0.25)),
4754 static_cast<T>(0.9418604266644799371155545586464796770088e1L),
4757 boost::math::tools::evaluate_even_polynomial(n17a, static_cast<T>(0.75)),
4758 static_cast<T>(0.1800748238050061998856161277204890325265e2L),
4761 boost::math::tools::evaluate_even_polynomial(n17a, static_cast<T>(1.0f - 1.0f/64.0f)),
4762 static_cast<T>(0.7725414891276907880696219594586980069116e2L),
4765 boost::math::tools::evaluate_even_polynomial(n17a, static_cast<T>(6.5f)),
4766 static_cast<T>(0.2112416072820759278619692697965107844211e27L),
4769 boost::math::tools::evaluate_odd_polynomial(n17c, static_cast<T>(0.125), 17),
4770 static_cast<T>(0.9771549776900515322679800891624114471814e1L),
4773 boost::math::tools::evaluate_odd_polynomial(n17c, static_cast<T>(0.25), 17),
4774 static_cast<T>(0.1067441706657919748462218234585918708035e2L),
4777 boost::math::tools::evaluate_odd_polynomial(n17c, static_cast<T>(0.75), 17),
4778 static_cast<T>(0.210099765073341599847488170293985376702e2L),
4781 boost::math::tools::evaluate_odd_polynomial(n17c, static_cast<T>(1.0f - 1.0f/64.0f), 17),
4782 static_cast<T>(0.7833754810186065148643778635770900387673e2L),
4785 boost::math::tools::evaluate_odd_polynomial(n17c, static_cast<T>(6.5f), 17),
4786 static_cast<T>(0.3249870881262706582491835681484781298786e26L),
4789 boost::math::tools::evaluate_odd_polynomial(n17c, static_cast<T>(0.125)),
4790 static_cast<T>(0.9771549776900515322679800891624114471814e1L),
4793 boost::math::tools::evaluate_odd_polynomial(n17c, static_cast<T>(0.25)),
4794 static_cast<T>(0.1067441706657919748462218234585918708035e2L),
4797 boost::math::tools::evaluate_odd_polynomial(n17c, static_cast<T>(0.75)),
4798 static_cast<T>(0.210099765073341599847488170293985376702e2L),
4801 boost::math::tools::evaluate_odd_polynomial(n17c, static_cast<T>(1.0f - 1.0f/64.0f)),
4802 static_cast<T>(0.7833754810186065148643778635770900387673e2L),
4805 boost::math::tools::evaluate_odd_polynomial(n17c, static_cast<T>(6.5f)),
4806 static_cast<T>(0.3249870881262706582491835681484781298786e26L),
4809 boost::math::tools::evaluate_odd_polynomial(n17a, static_cast<T>(0.125)),
4810 static_cast<T>(0.9771549776900515322679800891624114471814e1L),
4813 boost::math::tools::evaluate_odd_polynomial(n17a, static_cast<T>(0.25)),
4814 static_cast<T>(0.1067441706657919748462218234585918708035e2L),
4817 boost::math::tools::evaluate_odd_polynomial(n17a, static_cast<T>(0.75)),
4818 static_cast<T>(0.210099765073341599847488170293985376702e2L),
4821 boost::math::tools::evaluate_odd_polynomial(n17a, static_cast<T>(1.0f - 1.0f/64.0f)),
4822 static_cast<T>(0.7833754810186065148643778635770900387673e2L),
4825 boost::math::tools::evaluate_odd_polynomial(n17a, static_cast<T>(6.5f)),
4826 static_cast<T>(0.3249870881262706582491835681484781298786e26L),
4829 // Rational functions of order 16
4831 static const U d17c[17] = { 7, 12, 3, 11, 10, 2, 5, 10, 4, 11, 10, 6, 2, 12, 1, 2, 1 };
4832 static const boost::array<U, 17> d17a = {{ 7, 12, 3, 11, 10, 2, 5, 10, 4, 11, 10, 6, 2, 12, 1, 2, 1 }};
4834 boost::math::tools::evaluate_rational(n17c, d17c, static_cast<T>(0.125), 17),
4835 static_cast<T>(0.1158375951946763080209403673166347533318e1L),
4838 boost::math::tools::evaluate_rational(n17c, d17c, static_cast<T>(0.25), 17),
4839 static_cast<T>(0.1082966720285644924561131930917359028989e1L),
4842 boost::math::tools::evaluate_rational(n17c, d17c, static_cast<T>(0.75), 17),
4843 static_cast<T>(0.9405394059495731884564238556014726773139e0L),
4846 boost::math::tools::evaluate_rational(n17c, d17c, static_cast<T>(1.0f - 1.0f/64.0f), 17),
4847 static_cast<T>(0.8654376623250381987950547557864849720673e0L),
4850 boost::math::tools::evaluate_rational(n17c, d17c, static_cast<T>(6.5f), 17),
4851 static_cast<T>(0.1737601600028386310221746538845672721834e1L),
4854 boost::math::tools::evaluate_rational(n17c, d17c, static_cast<T>(10247.25f), 17),
4855 static_cast<T>(0.1999804873273333726353229695741031917586e1L),
4859 boost::math::tools::evaluate_rational(n17c, d17c, static_cast<T>(0.125)),
4860 static_cast<T>(0.1158375951946763080209403673166347533318e1L),
4863 boost::math::tools::evaluate_rational(n17c, d17c, static_cast<T>(0.25)),
4864 static_cast<T>(0.1082966720285644924561131930917359028989e1L),
4867 boost::math::tools::evaluate_rational(n17c, d17c, static_cast<T>(0.75)),
4868 static_cast<T>(0.9405394059495731884564238556014726773139e0L),
4871 boost::math::tools::evaluate_rational(n17c, d17c, static_cast<T>(1.0f - 1.0f/64.0f)),
4872 static_cast<T>(0.8654376623250381987950547557864849720673e0L),
4875 boost::math::tools::evaluate_rational(n17c, d17c, static_cast<T>(6.5f)),
4876 static_cast<T>(0.1737601600028386310221746538845672721834e1L),
4879 boost::math::tools::evaluate_rational(n17c, d17c, static_cast<T>(10247.25f)),
4880 static_cast<T>(0.1999804873273333726353229695741031917586e1L),
4884 boost::math::tools::evaluate_rational(n17a, d17a, static_cast<T>(0.125)),
4885 static_cast<T>(0.1158375951946763080209403673166347533318e1L),
4888 boost::math::tools::evaluate_rational(n17a, d17a, static_cast<T>(0.25)),
4889 static_cast<T>(0.1082966720285644924561131930917359028989e1L),
4892 boost::math::tools::evaluate_rational(n17a, d17a, static_cast<T>(0.75)),
4893 static_cast<T>(0.9405394059495731884564238556014726773139e0L),
4896 boost::math::tools::evaluate_rational(n17a, d17a, static_cast<T>(1.0f - 1.0f/64.0f)),
4897 static_cast<T>(0.8654376623250381987950547557864849720673e0L),
4900 boost::math::tools::evaluate_rational(n17a, d17a, static_cast<T>(6.5f)),
4901 static_cast<T>(0.1737601600028386310221746538845672721834e1L),
4904 boost::math::tools::evaluate_rational(n17a, d17a, static_cast<T>(10247.25f)),
4905 static_cast<T>(0.1999804873273333726353229695741031917586e1L),
4909 template <class T, class U>
4910 void do_test_spots17(T, U)
4913 // Tolerance is 4 eps expressed as a persentage:
4915 T tolerance = boost::math::tools::epsilon<T>() * 4 * 100;
4918 // Polynomials of order 17
4920 static const U n18c[18] = { 6, 5, 7, 8, 12, 9, 4, 1, 3, 5, 1, 5, 12, 8, 4, 6, 1, 10 };
4921 static const boost::array<U, 18> n18a = {{ 6, 5, 7, 8, 12, 9, 4, 1, 3, 5, 1, 5, 12, 8, 4, 6, 1, 10 }};
4923 boost::math::tools::evaluate_polynomial(n18c, static_cast<T>(0.125), 18),
4924 static_cast<T>(0.6753220299099845114199069939786568284035e1L),
4927 boost::math::tools::evaluate_polynomial(n18c, static_cast<T>(0.25), 18),
4928 static_cast<T>(0.7869269511546008288860321044921875e1L),
4931 boost::math::tools::evaluate_polynomial(n18c, static_cast<T>(0.75), 18),
4932 static_cast<T>(0.25590585466590709984302520751953125e2L),
4935 boost::math::tools::evaluate_polynomial(n18c, static_cast<T>(1.0f - 1.0f/64.0f), 18),
4936 static_cast<T>(0.9432688198514753127308115619023015607828e2L),
4939 boost::math::tools::evaluate_polynomial(n18c, static_cast<T>(6.5), 18),
4940 static_cast<T>(0.680830157865510950897216796875e15L),
4943 boost::math::tools::evaluate_polynomial(n18c, static_cast<T>(0.125)),
4944 static_cast<T>(0.6753220299099845114199069939786568284035e1L),
4947 boost::math::tools::evaluate_polynomial(n18c, static_cast<T>(0.25)),
4948 static_cast<T>(0.7869269511546008288860321044921875e1L),
4951 boost::math::tools::evaluate_polynomial(n18c, static_cast<T>(0.75)),
4952 static_cast<T>(0.25590585466590709984302520751953125e2L),
4955 boost::math::tools::evaluate_polynomial(n18c, static_cast<T>(1.0f - 1.0f/64.0f)),
4956 static_cast<T>(0.9432688198514753127308115619023015607828e2L),
4959 boost::math::tools::evaluate_polynomial(n18c, static_cast<T>(6.5)),
4960 static_cast<T>(0.680830157865510950897216796875e15L),
4963 boost::math::tools::evaluate_polynomial(n18a, static_cast<T>(0.125)),
4964 static_cast<T>(0.6753220299099845114199069939786568284035e1L),
4967 boost::math::tools::evaluate_polynomial(n18a, static_cast<T>(0.25)),
4968 static_cast<T>(0.7869269511546008288860321044921875e1L),
4971 boost::math::tools::evaluate_polynomial(n18a, static_cast<T>(0.75)),
4972 static_cast<T>(0.25590585466590709984302520751953125e2L),
4975 boost::math::tools::evaluate_polynomial(n18a, static_cast<T>(1.0f - 1.0f/64.0f)),
4976 static_cast<T>(0.9432688198514753127308115619023015607828e2L),
4979 boost::math::tools::evaluate_polynomial(n18a, static_cast<T>(6.5)),
4980 static_cast<T>(0.680830157865510950897216796875e15L),
4983 boost::math::tools::evaluate_even_polynomial(n18c, static_cast<T>(0.125), 18),
4984 static_cast<T>(0.6079865225649211447450201991749585071453e1L),
4987 boost::math::tools::evaluate_even_polynomial(n18c, static_cast<T>(0.25), 18),
4988 static_cast<T>(0.6341988806453956744898332268528529098717e1L),
4991 boost::math::tools::evaluate_even_polynomial(n18c, static_cast<T>(0.75), 18),
4992 static_cast<T>(0.1439378129034890784564674906867431936064e2L),
4995 boost::math::tools::evaluate_even_polynomial(n18c, static_cast<T>(1.0f - 1.0f/64.0f), 18),
4996 static_cast<T>(0.8374908316692411299816073455081075151876e2L),
4999 boost::math::tools::evaluate_even_polynomial(n18c, static_cast<T>(6.5f), 18),
5000 static_cast<T>(0.4367459075155664096657376949959960997093e29L),
5003 boost::math::tools::evaluate_even_polynomial(n18c, static_cast<T>(0.125)),
5004 static_cast<T>(0.6079865225649211447450201991749585071453e1L),
5007 boost::math::tools::evaluate_even_polynomial(n18c, static_cast<T>(0.25)),
5008 static_cast<T>(0.6341988806453956744898332268528529098717e1L),
5011 boost::math::tools::evaluate_even_polynomial(n18c, static_cast<T>(0.75)),
5012 static_cast<T>(0.1439378129034890784564674906867431936064e2L),
5015 boost::math::tools::evaluate_even_polynomial(n18c, static_cast<T>(1.0f - 1.0f/64.0f)),
5016 static_cast<T>(0.8374908316692411299816073455081075151876e2L),
5019 boost::math::tools::evaluate_even_polynomial(n18c, static_cast<T>(6.5f)),
5020 static_cast<T>(0.4367459075155664096657376949959960997093e29L),
5023 boost::math::tools::evaluate_even_polynomial(n18a, static_cast<T>(0.125)),
5024 static_cast<T>(0.6079865225649211447450201991749585071453e1L),
5027 boost::math::tools::evaluate_even_polynomial(n18a, static_cast<T>(0.25)),
5028 static_cast<T>(0.6341988806453956744898332268528529098717e1L),
5031 boost::math::tools::evaluate_even_polynomial(n18a, static_cast<T>(0.75)),
5032 static_cast<T>(0.1439378129034890784564674906867431936064e2L),
5035 boost::math::tools::evaluate_even_polynomial(n18a, static_cast<T>(1.0f - 1.0f/64.0f)),
5036 static_cast<T>(0.8374908316692411299816073455081075151876e2L),
5039 boost::math::tools::evaluate_even_polynomial(n18a, static_cast<T>(6.5f)),
5040 static_cast<T>(0.4367459075155664096657376949959960997093e29L),
5043 boost::math::tools::evaluate_odd_polynomial(n18c, static_cast<T>(0.125), 18),
5044 static_cast<T>(0.6638921805193691579601615933996680571626e1L),
5047 boost::math::tools::evaluate_odd_polynomial(n18c, static_cast<T>(0.25), 18),
5048 static_cast<T>(0.7367955225815826979593329074114116394867e1L),
5051 boost::math::tools::evaluate_odd_polynomial(n18c, static_cast<T>(0.75), 18),
5052 static_cast<T>(0.1719170838713187712752899875823242581419e2L),
5055 boost::math::tools::evaluate_odd_polynomial(n18c, static_cast<T>(1.0f - 1.0f/64.0f), 18),
5056 static_cast<T>(0.8498319559814513066479820652780774757461e2L),
5059 boost::math::tools::evaluate_odd_polynomial(n18c, static_cast<T>(6.5f), 18),
5060 static_cast<T>(0.6719167807931790917934426081938401533989e28L),
5063 boost::math::tools::evaluate_odd_polynomial(n18c, static_cast<T>(0.125)),
5064 static_cast<T>(0.6638921805193691579601615933996680571626e1L),
5067 boost::math::tools::evaluate_odd_polynomial(n18c, static_cast<T>(0.25)),
5068 static_cast<T>(0.7367955225815826979593329074114116394867e1L),
5071 boost::math::tools::evaluate_odd_polynomial(n18c, static_cast<T>(0.75)),
5072 static_cast<T>(0.1719170838713187712752899875823242581419e2L),
5075 boost::math::tools::evaluate_odd_polynomial(n18c, static_cast<T>(1.0f - 1.0f/64.0f)),
5076 static_cast<T>(0.8498319559814513066479820652780774757461e2L),
5079 boost::math::tools::evaluate_odd_polynomial(n18c, static_cast<T>(6.5f)),
5080 static_cast<T>(0.6719167807931790917934426081938401533989e28L),
5083 boost::math::tools::evaluate_odd_polynomial(n18a, static_cast<T>(0.125)),
5084 static_cast<T>(0.6638921805193691579601615933996680571626e1L),
5087 boost::math::tools::evaluate_odd_polynomial(n18a, static_cast<T>(0.25)),
5088 static_cast<T>(0.7367955225815826979593329074114116394867e1L),
5091 boost::math::tools::evaluate_odd_polynomial(n18a, static_cast<T>(0.75)),
5092 static_cast<T>(0.1719170838713187712752899875823242581419e2L),
5095 boost::math::tools::evaluate_odd_polynomial(n18a, static_cast<T>(1.0f - 1.0f/64.0f)),
5096 static_cast<T>(0.8498319559814513066479820652780774757461e2L),
5099 boost::math::tools::evaluate_odd_polynomial(n18a, static_cast<T>(6.5f)),
5100 static_cast<T>(0.6719167807931790917934426081938401533989e28L),
5103 // Rational functions of order 17
5105 static const U d18c[18] = { 6, 2, 11, 2, 12, 4, 1, 5, 7, 12, 5, 7, 5, 7, 5, 7, 2, 9 };
5106 static const boost::array<U, 18> d18a = {{ 6, 2, 11, 2, 12, 4, 1, 5, 7, 12, 5, 7, 5, 7, 5, 7, 2, 9 }};
5108 boost::math::tools::evaluate_rational(n18c, d18c, static_cast<T>(0.125), 18),
5109 static_cast<T>(0.1050457095586493221315235501384188635425e1L),
5112 boost::math::tools::evaluate_rational(n18c, d18c, static_cast<T>(0.25), 18),
5113 static_cast<T>(0.1082394733850278225180153358339433604182e1L),
5116 boost::math::tools::evaluate_rational(n18c, d18c, static_cast<T>(0.75), 18),
5117 static_cast<T>(0.1117650157149023587583496399377426188558e1L),
5120 boost::math::tools::evaluate_rational(n18c, d18c, static_cast<T>(1.0f - 1.0f/64.0f), 18),
5121 static_cast<T>(0.9882013696252427983431096654690843223851e0L),
5124 boost::math::tools::evaluate_rational(n18c, d18c, static_cast<T>(6.5f), 18),
5125 static_cast<T>(0.1086348665080997883580887205673821889245e1L),
5128 boost::math::tools::evaluate_rational(n18c, d18c, static_cast<T>(10247.25f), 18),
5129 static_cast<T>(0.1111097856940394090609547290690047016487e1L),
5133 boost::math::tools::evaluate_rational(n18c, d18c, static_cast<T>(0.125)),
5134 static_cast<T>(0.1050457095586493221315235501384188635425e1L),
5137 boost::math::tools::evaluate_rational(n18c, d18c, static_cast<T>(0.25)),
5138 static_cast<T>(0.1082394733850278225180153358339433604182e1L),
5141 boost::math::tools::evaluate_rational(n18c, d18c, static_cast<T>(0.75)),
5142 static_cast<T>(0.1117650157149023587583496399377426188558e1L),
5145 boost::math::tools::evaluate_rational(n18c, d18c, static_cast<T>(1.0f - 1.0f/64.0f)),
5146 static_cast<T>(0.9882013696252427983431096654690843223851e0L),
5149 boost::math::tools::evaluate_rational(n18c, d18c, static_cast<T>(6.5f)),
5150 static_cast<T>(0.1086348665080997883580887205673821889245e1L),
5153 boost::math::tools::evaluate_rational(n18c, d18c, static_cast<T>(10247.25f)),
5154 static_cast<T>(0.1111097856940394090609547290690047016487e1L),
5158 boost::math::tools::evaluate_rational(n18a, d18a, static_cast<T>(0.125)),
5159 static_cast<T>(0.1050457095586493221315235501384188635425e1L),
5162 boost::math::tools::evaluate_rational(n18a, d18a, static_cast<T>(0.25)),
5163 static_cast<T>(0.1082394733850278225180153358339433604182e1L),
5166 boost::math::tools::evaluate_rational(n18a, d18a, static_cast<T>(0.75)),
5167 static_cast<T>(0.1117650157149023587583496399377426188558e1L),
5170 boost::math::tools::evaluate_rational(n18a, d18a, static_cast<T>(1.0f - 1.0f/64.0f)),
5171 static_cast<T>(0.9882013696252427983431096654690843223851e0L),
5174 boost::math::tools::evaluate_rational(n18a, d18a, static_cast<T>(6.5f)),
5175 static_cast<T>(0.1086348665080997883580887205673821889245e1L),
5178 boost::math::tools::evaluate_rational(n18a, d18a, static_cast<T>(10247.25f)),
5179 static_cast<T>(0.1111097856940394090609547290690047016487e1L),
5183 template <class T, class U>
5184 void do_test_spots18(T, U)
5187 // Tolerance is 4 eps expressed as a persentage:
5189 T tolerance = boost::math::tools::epsilon<T>() * 4 * 100;
5192 // Polynomials of order 18
5194 static const U n19c[19] = { 7, 2, 4, 2, 4, 3, 9, 1, 9, 3, 7, 2, 10, 4, 2, 5, 11, 3, 9 };
5195 static const boost::array<U, 19> n19a = {{ 7, 2, 4, 2, 4, 3, 9, 1, 9, 3, 7, 2, 10, 4, 2, 5, 11, 3, 9 }};
5197 boost::math::tools::evaluate_polynomial(n19c, static_cast<T>(0.125), 19),
5198 static_cast<T>(0.7317509740045990140888676478425622917712e1L),
5201 boost::math::tools::evaluate_polynomial(n19c, static_cast<T>(0.25), 19),
5202 static_cast<T>(0.7802219584656995721161365509033203125e1L),
5205 boost::math::tools::evaluate_polynomial(n19c, static_cast<T>(0.75), 19),
5206 static_cast<T>(0.17609299321266007609665393829345703125e2L),
5209 boost::math::tools::evaluate_polynomial(n19c, static_cast<T>(1.0f - 1.0f/64.0f), 19),
5210 static_cast<T>(0.8327888521934174049333133442289010778727e2L),
5213 boost::math::tools::evaluate_polynomial(n19c, static_cast<T>(6.5), 19),
5214 static_cast<T>(0.4179028813935817562572479248046875e16L),
5217 boost::math::tools::evaluate_polynomial(n19c, static_cast<T>(0.125)),
5218 static_cast<T>(0.7317509740045990140888676478425622917712e1L),
5221 boost::math::tools::evaluate_polynomial(n19c, static_cast<T>(0.25)),
5222 static_cast<T>(0.7802219584656995721161365509033203125e1L),
5225 boost::math::tools::evaluate_polynomial(n19c, static_cast<T>(0.75)),
5226 static_cast<T>(0.17609299321266007609665393829345703125e2L),
5229 boost::math::tools::evaluate_polynomial(n19c, static_cast<T>(1.0f - 1.0f/64.0f)),
5230 static_cast<T>(0.8327888521934174049333133442289010778727e2L),
5233 boost::math::tools::evaluate_polynomial(n19c, static_cast<T>(6.5)),
5234 static_cast<T>(0.4179028813935817562572479248046875e16L),
5237 boost::math::tools::evaluate_polynomial(n19a, static_cast<T>(0.125)),
5238 static_cast<T>(0.7317509740045990140888676478425622917712e1L),
5241 boost::math::tools::evaluate_polynomial(n19a, static_cast<T>(0.25)),
5242 static_cast<T>(0.7802219584656995721161365509033203125e1L),
5245 boost::math::tools::evaluate_polynomial(n19a, static_cast<T>(0.75)),
5246 static_cast<T>(0.17609299321266007609665393829345703125e2L),
5249 boost::math::tools::evaluate_polynomial(n19a, static_cast<T>(1.0f - 1.0f/64.0f)),
5250 static_cast<T>(0.8327888521934174049333133442289010778727e2L),
5253 boost::math::tools::evaluate_polynomial(n19a, static_cast<T>(6.5)),
5254 static_cast<T>(0.4179028813935817562572479248046875e16L),
5257 boost::math::tools::evaluate_even_polynomial(n19c, static_cast<T>(0.125), 19),
5258 static_cast<T>(0.7032234433238304833197011488540991991734e1L),
5261 boost::math::tools::evaluate_even_polynomial(n19c, static_cast<T>(0.25), 19),
5262 static_cast<T>(0.7141177719741940632063571816842174888595e1L),
5265 boost::math::tools::evaluate_even_polynomial(n19c, static_cast<T>(0.75), 19),
5266 static_cast<T>(0.107671418972012709727788225142148040292e2L),
5269 boost::math::tools::evaluate_even_polynomial(n19c, static_cast<T>(1.0f - 1.0f/64.0f), 19),
5270 static_cast<T>(0.7205306905267900876445365429703520869133e2L),
5273 boost::math::tools::evaluate_even_polynomial(n19c, static_cast<T>(6.5f), 19),
5274 static_cast<T>(0.1670453627683043936397442394984734181614e31L),
5277 boost::math::tools::evaluate_even_polynomial(n19c, static_cast<T>(0.125)),
5278 static_cast<T>(0.7032234433238304833197011488540991991734e1L),
5281 boost::math::tools::evaluate_even_polynomial(n19c, static_cast<T>(0.25)),
5282 static_cast<T>(0.7141177719741940632063571816842174888595e1L),
5285 boost::math::tools::evaluate_even_polynomial(n19c, static_cast<T>(0.75)),
5286 static_cast<T>(0.107671418972012709727788225142148040292e2L),
5289 boost::math::tools::evaluate_even_polynomial(n19c, static_cast<T>(1.0f - 1.0f/64.0f)),
5290 static_cast<T>(0.7205306905267900876445365429703520869133e2L),
5293 boost::math::tools::evaluate_even_polynomial(n19c, static_cast<T>(6.5f)),
5294 static_cast<T>(0.1670453627683043936397442394984734181614e31L),
5297 boost::math::tools::evaluate_even_polynomial(n19a, static_cast<T>(0.125)),
5298 static_cast<T>(0.7032234433238304833197011488540991991734e1L),
5301 boost::math::tools::evaluate_even_polynomial(n19a, static_cast<T>(0.25)),
5302 static_cast<T>(0.7141177719741940632063571816842174888595e1L),
5305 boost::math::tools::evaluate_even_polynomial(n19a, static_cast<T>(0.75)),
5306 static_cast<T>(0.107671418972012709727788225142148040292e2L),
5309 boost::math::tools::evaluate_even_polynomial(n19a, static_cast<T>(1.0f - 1.0f/64.0f)),
5310 static_cast<T>(0.7205306905267900876445365429703520869133e2L),
5313 boost::math::tools::evaluate_even_polynomial(n19a, static_cast<T>(6.5f)),
5314 static_cast<T>(0.1670453627683043936397442394984734181614e31L),
5317 boost::math::tools::evaluate_odd_polynomial(n19c, static_cast<T>(0.125), 19),
5318 static_cast<T>(0.7257875465906438665576091908327935933871e1L),
5321 boost::math::tools::evaluate_odd_polynomial(n19c, static_cast<T>(0.25), 19),
5322 static_cast<T>(0.7564710878967762528254287267368699554382e1L),
5325 boost::math::tools::evaluate_odd_polynomial(n19c, static_cast<T>(0.75), 19),
5326 static_cast<T>(0.120228558629350279637050966856197387056e2L),
5329 boost::math::tools::evaluate_odd_polynomial(n19c, static_cast<T>(1.0f - 1.0f/64.0f), 19),
5330 static_cast<T>(0.7308565745034058033214339484143259295627e2L),
5333 boost::math::tools::evaluate_odd_polynomial(n19c, static_cast<T>(6.5f), 19),
5334 static_cast<T>(0.2569928657973913748303757530804975664022e30L),
5337 boost::math::tools::evaluate_odd_polynomial(n19c, static_cast<T>(0.125)),
5338 static_cast<T>(0.7257875465906438665576091908327935933871e1L),
5341 boost::math::tools::evaluate_odd_polynomial(n19c, static_cast<T>(0.25)),
5342 static_cast<T>(0.7564710878967762528254287267368699554382e1L),
5345 boost::math::tools::evaluate_odd_polynomial(n19c, static_cast<T>(0.75)),
5346 static_cast<T>(0.120228558629350279637050966856197387056e2L),
5349 boost::math::tools::evaluate_odd_polynomial(n19c, static_cast<T>(1.0f - 1.0f/64.0f)),
5350 static_cast<T>(0.7308565745034058033214339484143259295627e2L),
5353 boost::math::tools::evaluate_odd_polynomial(n19c, static_cast<T>(6.5f)),
5354 static_cast<T>(0.2569928657973913748303757530804975664022e30L),
5357 boost::math::tools::evaluate_odd_polynomial(n19a, static_cast<T>(0.125)),
5358 static_cast<T>(0.7257875465906438665576091908327935933871e1L),
5361 boost::math::tools::evaluate_odd_polynomial(n19a, static_cast<T>(0.25)),
5362 static_cast<T>(0.7564710878967762528254287267368699554382e1L),
5365 boost::math::tools::evaluate_odd_polynomial(n19a, static_cast<T>(0.75)),
5366 static_cast<T>(0.120228558629350279637050966856197387056e2L),
5369 boost::math::tools::evaluate_odd_polynomial(n19a, static_cast<T>(1.0f - 1.0f/64.0f)),
5370 static_cast<T>(0.7308565745034058033214339484143259295627e2L),
5373 boost::math::tools::evaluate_odd_polynomial(n19a, static_cast<T>(6.5f)),
5374 static_cast<T>(0.2569928657973913748303757530804975664022e30L),
5377 // Rational functions of order 18
5379 static const U d19c[19] = { 3, 2, 3, 3, 10, 6, 2, 6, 9, 8, 8, 10, 5, 7, 6, 4, 6, 9, 7 };
5380 static const boost::array<U, 19> d19a = {{ 3, 2, 3, 3, 10, 6, 2, 6, 9, 8, 8, 10, 5, 7, 6, 4, 6, 9, 7 }};
5382 boost::math::tools::evaluate_rational(n19c, d19c, static_cast<T>(0.125), 19),
5383 static_cast<T>(0.2213824709533496994632324982010106870288e1L),
5386 boost::math::tools::evaluate_rational(n19c, d19c, static_cast<T>(0.25), 19),
5387 static_cast<T>(0.2063899260318829004588039751781791436716e1L),
5390 boost::math::tools::evaluate_rational(n19c, d19c, static_cast<T>(0.75), 19),
5391 static_cast<T>(0.1085337280046506127330919833145641152667e1L),
5394 boost::math::tools::evaluate_rational(n19c, d19c, static_cast<T>(1.0f - 1.0f/64.0f), 19),
5395 static_cast<T>(0.8530644127293554041631338796773621506306e0L),
5398 boost::math::tools::evaluate_rational(n19c, d19c, static_cast<T>(6.5f), 19),
5399 static_cast<T>(0.1140014406058131768268407547610620204626e1L),
5402 boost::math::tools::evaluate_rational(n19c, d19c, static_cast<T>(10247.25f), 19),
5403 static_cast<T>(0.1285594810697167354761598106316532892359e1L),
5407 boost::math::tools::evaluate_rational(n19c, d19c, static_cast<T>(0.125)),
5408 static_cast<T>(0.2213824709533496994632324982010106870288e1L),
5411 boost::math::tools::evaluate_rational(n19c, d19c, static_cast<T>(0.25)),
5412 static_cast<T>(0.2063899260318829004588039751781791436716e1L),
5415 boost::math::tools::evaluate_rational(n19c, d19c, static_cast<T>(0.75)),
5416 static_cast<T>(0.1085337280046506127330919833145641152667e1L),
5419 boost::math::tools::evaluate_rational(n19c, d19c, static_cast<T>(1.0f - 1.0f/64.0f)),
5420 static_cast<T>(0.8530644127293554041631338796773621506306e0L),
5423 boost::math::tools::evaluate_rational(n19c, d19c, static_cast<T>(6.5f)),
5424 static_cast<T>(0.1140014406058131768268407547610620204626e1L),
5427 boost::math::tools::evaluate_rational(n19c, d19c, static_cast<T>(10247.25f)),
5428 static_cast<T>(0.1285594810697167354761598106316532892359e1L),
5432 boost::math::tools::evaluate_rational(n19a, d19a, static_cast<T>(0.125)),
5433 static_cast<T>(0.2213824709533496994632324982010106870288e1L),
5436 boost::math::tools::evaluate_rational(n19a, d19a, static_cast<T>(0.25)),
5437 static_cast<T>(0.2063899260318829004588039751781791436716e1L),
5440 boost::math::tools::evaluate_rational(n19a, d19a, static_cast<T>(0.75)),
5441 static_cast<T>(0.1085337280046506127330919833145641152667e1L),
5444 boost::math::tools::evaluate_rational(n19a, d19a, static_cast<T>(1.0f - 1.0f/64.0f)),
5445 static_cast<T>(0.8530644127293554041631338796773621506306e0L),
5448 boost::math::tools::evaluate_rational(n19a, d19a, static_cast<T>(6.5f)),
5449 static_cast<T>(0.1140014406058131768268407547610620204626e1L),
5452 boost::math::tools::evaluate_rational(n19a, d19a, static_cast<T>(10247.25f)),
5453 static_cast<T>(0.1285594810697167354761598106316532892359e1L),
5457 template <class T, class U>
5458 void do_test_spots(T t, U u)
5460 do_test_spots1(t, u);
5461 do_test_spots2(t, u);
5462 do_test_spots3(t, u);
5463 do_test_spots4(t, u);
5464 do_test_spots5(t, u);
5465 do_test_spots6(t, u);
5466 do_test_spots7(t, u);
5467 do_test_spots8(t, u);
5468 do_test_spots9(t, u);
5469 do_test_spots10(t, u);
5470 do_test_spots11(t, u);
5471 do_test_spots12(t, u);
5472 do_test_spots13(t, u);
5473 do_test_spots14(t, u);
5474 do_test_spots15(t, u);
5475 do_test_spots16(t, u);
5476 do_test_spots17(t, u);
5477 do_test_spots18(t, u);