Mercurial > hg > vamp-build-and-test
comparison DEPENDENCIES/generic/include/boost/math/special_functions/expint.hpp @ 101:c530137014c0
Update Boost headers (1.58.0)
author | Chris Cannam |
---|---|
date | Mon, 07 Sep 2015 11:12:49 +0100 |
parents | 2665513ce2d3 |
children |
comparison
equal
deleted
inserted
replaced
100:793467b5e61c | 101:c530137014c0 |
---|---|
13 #include <boost/math/tools/precision.hpp> | 13 #include <boost/math/tools/precision.hpp> |
14 #include <boost/math/tools/promotion.hpp> | 14 #include <boost/math/tools/promotion.hpp> |
15 #include <boost/math/tools/fraction.hpp> | 15 #include <boost/math/tools/fraction.hpp> |
16 #include <boost/math/tools/series.hpp> | 16 #include <boost/math/tools/series.hpp> |
17 #include <boost/math/policies/error_handling.hpp> | 17 #include <boost/math/policies/error_handling.hpp> |
18 #include <boost/math/special_functions/math_fwd.hpp> | |
18 #include <boost/math/special_functions/digamma.hpp> | 19 #include <boost/math/special_functions/digamma.hpp> |
19 #include <boost/math/special_functions/log1p.hpp> | 20 #include <boost/math/special_functions/log1p.hpp> |
20 #include <boost/math/special_functions/pow.hpp> | 21 #include <boost/math/special_functions/pow.hpp> |
21 | 22 |
22 namespace boost{ namespace math{ | 23 namespace boost{ namespace math{ |
53 BOOST_MATH_BIG_CONSTANT(T, 53, -0.0368031736257943745142), | 54 BOOST_MATH_BIG_CONSTANT(T, 53, -0.0368031736257943745142), |
54 BOOST_MATH_BIG_CONSTANT(T, 53, -0.00399167106081113256961), | 55 BOOST_MATH_BIG_CONSTANT(T, 53, -0.00399167106081113256961), |
55 BOOST_MATH_BIG_CONSTANT(T, 53, -0.000111507792921197858394) | 56 BOOST_MATH_BIG_CONSTANT(T, 53, -0.000111507792921197858394) |
56 }; | 57 }; |
57 static const T Q[6] = { | 58 static const T Q[6] = { |
58 BOOST_MATH_BIG_CONSTANT(T, 53, 1), | 59 BOOST_MATH_BIG_CONSTANT(T, 53, 1.0), |
59 BOOST_MATH_BIG_CONSTANT(T, 53, 0.37091387659397013215), | 60 BOOST_MATH_BIG_CONSTANT(T, 53, 0.37091387659397013215), |
60 BOOST_MATH_BIG_CONSTANT(T, 53, 0.056770677104207528384), | 61 BOOST_MATH_BIG_CONSTANT(T, 53, 0.056770677104207528384), |
61 BOOST_MATH_BIG_CONSTANT(T, 53, 0.00427347600017103698101), | 62 BOOST_MATH_BIG_CONSTANT(T, 53, 0.00427347600017103698101), |
62 BOOST_MATH_BIG_CONSTANT(T, 53, 0.000131049900798434683324), | 63 BOOST_MATH_BIG_CONSTANT(T, 53, 0.000131049900798434683324), |
63 BOOST_MATH_BIG_CONSTANT(T, 53, -0.528611029520217142048e-6) | 64 BOOST_MATH_BIG_CONSTANT(T, 53, -0.528611029520217142048e-6) |
82 BOOST_MATH_BIG_CONSTANT(T, 53, -54844.4587226402067411), | 83 BOOST_MATH_BIG_CONSTANT(T, 53, -54844.4587226402067411), |
83 BOOST_MATH_BIG_CONSTANT(T, 53, -14751.4895786128450662), | 84 BOOST_MATH_BIG_CONSTANT(T, 53, -14751.4895786128450662), |
84 BOOST_MATH_BIG_CONSTANT(T, 53, -1185.45720315201027667) | 85 BOOST_MATH_BIG_CONSTANT(T, 53, -1185.45720315201027667) |
85 }; | 86 }; |
86 static const T Q[12] = { | 87 static const T Q[12] = { |
87 BOOST_MATH_BIG_CONSTANT(T, 53, 1), | 88 BOOST_MATH_BIG_CONSTANT(T, 53, 1.0), |
88 BOOST_MATH_BIG_CONSTANT(T, 53, 45.3058660811801465927), | 89 BOOST_MATH_BIG_CONSTANT(T, 53, 45.3058660811801465927), |
89 BOOST_MATH_BIG_CONSTANT(T, 53, 809.193214954550328455), | 90 BOOST_MATH_BIG_CONSTANT(T, 53, 809.193214954550328455), |
90 BOOST_MATH_BIG_CONSTANT(T, 53, 7417.37624454689546708), | 91 BOOST_MATH_BIG_CONSTANT(T, 53, 7417.37624454689546708), |
91 BOOST_MATH_BIG_CONSTANT(T, 53, 38129.5594484818471461), | 92 BOOST_MATH_BIG_CONSTANT(T, 53, 38129.5594484818471461), |
92 BOOST_MATH_BIG_CONSTANT(T, 53, 113057.05869159631492), | 93 BOOST_MATH_BIG_CONSTANT(T, 53, 113057.05869159631492), |
128 BOOST_MATH_BIG_CONSTANT(T, 64, -0.0237624819878732642231), | 129 BOOST_MATH_BIG_CONSTANT(T, 64, -0.0237624819878732642231), |
129 BOOST_MATH_BIG_CONSTANT(T, 64, -0.00259113319641673986276), | 130 BOOST_MATH_BIG_CONSTANT(T, 64, -0.00259113319641673986276), |
130 BOOST_MATH_BIG_CONSTANT(T, 64, 0.30853660894346057053e-4) | 131 BOOST_MATH_BIG_CONSTANT(T, 64, 0.30853660894346057053e-4) |
131 }; | 132 }; |
132 static const T Q[7] = { | 133 static const T Q[7] = { |
133 BOOST_MATH_BIG_CONSTANT(T, 64, 1), | 134 BOOST_MATH_BIG_CONSTANT(T, 64, 1.0), |
134 BOOST_MATH_BIG_CONSTANT(T, 64, 0.317978365797784100273), | 135 BOOST_MATH_BIG_CONSTANT(T, 64, 0.317978365797784100273), |
135 BOOST_MATH_BIG_CONSTANT(T, 64, 0.0393622602554758722511), | 136 BOOST_MATH_BIG_CONSTANT(T, 64, 0.0393622602554758722511), |
136 BOOST_MATH_BIG_CONSTANT(T, 64, 0.00204062029115966323229), | 137 BOOST_MATH_BIG_CONSTANT(T, 64, 0.00204062029115966323229), |
137 BOOST_MATH_BIG_CONSTANT(T, 64, 0.732512107100088047854e-5), | 138 BOOST_MATH_BIG_CONSTANT(T, 64, 0.732512107100088047854e-5), |
138 BOOST_MATH_BIG_CONSTANT(T, 64, -0.202872781770207871975e-5), | 139 BOOST_MATH_BIG_CONSTANT(T, 64, -0.202872781770207871975e-5), |
161 BOOST_MATH_BIG_CONSTANT(T, 64, -584705.537139793925189), | 162 BOOST_MATH_BIG_CONSTANT(T, 64, -584705.537139793925189), |
162 BOOST_MATH_BIG_CONSTANT(T, 64, -65815.2605361889477244), | 163 BOOST_MATH_BIG_CONSTANT(T, 64, -65815.2605361889477244), |
163 BOOST_MATH_BIG_CONSTANT(T, 64, -2038.82870680427258038) | 164 BOOST_MATH_BIG_CONSTANT(T, 64, -2038.82870680427258038) |
164 }; | 165 }; |
165 static const T Q[14] = { | 166 static const T Q[14] = { |
166 BOOST_MATH_BIG_CONSTANT(T, 64, 1), | 167 BOOST_MATH_BIG_CONSTANT(T, 64, 1.0), |
167 BOOST_MATH_BIG_CONSTANT(T, 64, 64.1517806091379399478), | 168 BOOST_MATH_BIG_CONSTANT(T, 64, 64.1517806091379399478), |
168 BOOST_MATH_BIG_CONSTANT(T, 64, 1690.76044393722763785), | 169 BOOST_MATH_BIG_CONSTANT(T, 64, 1690.76044393722763785), |
169 BOOST_MATH_BIG_CONSTANT(T, 64, 24035.9534033068949426), | 170 BOOST_MATH_BIG_CONSTANT(T, 64, 24035.9534033068949426), |
170 BOOST_MATH_BIG_CONSTANT(T, 64, 203679.998633572361706), | 171 BOOST_MATH_BIG_CONSTANT(T, 64, 203679.998633572361706), |
171 BOOST_MATH_BIG_CONSTANT(T, 64, 1074661.58459976978285), | 172 BOOST_MATH_BIG_CONSTANT(T, 64, 1074661.58459976978285), |
213 BOOST_MATH_BIG_CONSTANT(T, 113, -0.136528159460768830763009294683628406e-5), | 214 BOOST_MATH_BIG_CONSTANT(T, 113, -0.136528159460768830763009294683628406e-5), |
214 BOOST_MATH_BIG_CONSTANT(T, 113, -0.346839106212658259681029388908658618e-7), | 215 BOOST_MATH_BIG_CONSTANT(T, 113, -0.346839106212658259681029388908658618e-7), |
215 BOOST_MATH_BIG_CONSTANT(T, 113, -0.340500302777838063940402160594523429e-9) | 216 BOOST_MATH_BIG_CONSTANT(T, 113, -0.340500302777838063940402160594523429e-9) |
216 }; | 217 }; |
217 static const T Q[10] = { | 218 static const T Q[10] = { |
218 BOOST_MATH_BIG_CONSTANT(T, 113, 1), | 219 BOOST_MATH_BIG_CONSTANT(T, 113, 1.0), |
219 BOOST_MATH_BIG_CONSTANT(T, 113, 0.426568827778942588160423015589537302), | 220 BOOST_MATH_BIG_CONSTANT(T, 113, 0.426568827778942588160423015589537302), |
220 BOOST_MATH_BIG_CONSTANT(T, 113, 0.0841384046470893490592450881447510148), | 221 BOOST_MATH_BIG_CONSTANT(T, 113, 0.0841384046470893490592450881447510148), |
221 BOOST_MATH_BIG_CONSTANT(T, 113, 0.0100557215850668029618957359471132995), | 222 BOOST_MATH_BIG_CONSTANT(T, 113, 0.0100557215850668029618957359471132995), |
222 BOOST_MATH_BIG_CONSTANT(T, 113, 0.000799334870474627021737357294799839363), | 223 BOOST_MATH_BIG_CONSTANT(T, 113, 0.000799334870474627021737357294799839363), |
223 BOOST_MATH_BIG_CONSTANT(T, 113, 0.434452090903862735242423068552687688e-4), | 224 BOOST_MATH_BIG_CONSTANT(T, 113, 0.434452090903862735242423068552687688e-4), |
254 BOOST_MATH_BIG_CONSTANT(T, 113, -2226.64251774578542836725386936102339), | 255 BOOST_MATH_BIG_CONSTANT(T, 113, -2226.64251774578542836725386936102339), |
255 BOOST_MATH_BIG_CONSTANT(T, 113, -109.009437301400845902228611986479816), | 256 BOOST_MATH_BIG_CONSTANT(T, 113, -109.009437301400845902228611986479816), |
256 BOOST_MATH_BIG_CONSTANT(T, 113, -1.51492042209561411434644938098833499) | 257 BOOST_MATH_BIG_CONSTANT(T, 113, -1.51492042209561411434644938098833499) |
257 }; | 258 }; |
258 static const T Q[16] = { | 259 static const T Q[16] = { |
259 BOOST_MATH_BIG_CONSTANT(T, 113, 1), | 260 BOOST_MATH_BIG_CONSTANT(T, 113, 1.0), |
260 BOOST_MATH_BIG_CONSTANT(T, 113, 46.734521442032505570517810766704587), | 261 BOOST_MATH_BIG_CONSTANT(T, 113, 46.734521442032505570517810766704587), |
261 BOOST_MATH_BIG_CONSTANT(T, 113, 908.694714348462269000247450058595655), | 262 BOOST_MATH_BIG_CONSTANT(T, 113, 908.694714348462269000247450058595655), |
262 BOOST_MATH_BIG_CONSTANT(T, 113, 9701.76053033673927362784882748513195), | 263 BOOST_MATH_BIG_CONSTANT(T, 113, 9701.76053033673927362784882748513195), |
263 BOOST_MATH_BIG_CONSTANT(T, 113, 63254.2815292641314236625196594947774), | 264 BOOST_MATH_BIG_CONSTANT(T, 113, 63254.2815292641314236625196594947774), |
264 BOOST_MATH_BIG_CONSTANT(T, 113, 265115.641285880437335106541757711092), | 265 BOOST_MATH_BIG_CONSTANT(T, 113, 265115.641285880437335106541757711092), |
303 BOOST_MATH_BIG_CONSTANT(T, 113, -5737221535080.30569711574295785864903), | 304 BOOST_MATH_BIG_CONSTANT(T, 113, -5737221535080.30569711574295785864903), |
304 BOOST_MATH_BIG_CONSTANT(T, 113, -1077042281708.42654526404581272546244), | 305 BOOST_MATH_BIG_CONSTANT(T, 113, -1077042281708.42654526404581272546244), |
305 BOOST_MATH_BIG_CONSTANT(T, 113, -68028222642.1941480871395695677675137) | 306 BOOST_MATH_BIG_CONSTANT(T, 113, -68028222642.1941480871395695677675137) |
306 }; | 307 }; |
307 static const T Q[20] = { | 308 static const T Q[20] = { |
308 BOOST_MATH_BIG_CONSTANT(T, 113, 1), | 309 BOOST_MATH_BIG_CONSTANT(T, 113, 1.0), |
309 BOOST_MATH_BIG_CONSTANT(T, 113, 168.542326331163836642960118190147311), | 310 BOOST_MATH_BIG_CONSTANT(T, 113, 168.542326331163836642960118190147311), |
310 BOOST_MATH_BIG_CONSTANT(T, 113, 12535.7237814586576783518249115343619), | 311 BOOST_MATH_BIG_CONSTANT(T, 113, 12535.7237814586576783518249115343619), |
311 BOOST_MATH_BIG_CONSTANT(T, 113, 544891.263372016404143120911148640627), | 312 BOOST_MATH_BIG_CONSTANT(T, 113, 544891.263372016404143120911148640627), |
312 BOOST_MATH_BIG_CONSTANT(T, 113, 15454474.7241010258634446523045237762), | 313 BOOST_MATH_BIG_CONSTANT(T, 113, 15454474.7241010258634446523045237762), |
313 BOOST_MATH_BIG_CONSTANT(T, 113, 302495899.896629522673410325891717381), | 314 BOOST_MATH_BIG_CONSTANT(T, 113, 302495899.896629522673410325891717381), |
539 BOOST_MATH_BIG_CONSTANT(T, 53, 0.000116419523609765200999), | 540 BOOST_MATH_BIG_CONSTANT(T, 53, 0.000116419523609765200999), |
540 BOOST_MATH_BIG_CONSTANT(T, 53, 0.798296365679269702435e-5), | 541 BOOST_MATH_BIG_CONSTANT(T, 53, 0.798296365679269702435e-5), |
541 BOOST_MATH_BIG_CONSTANT(T, 53, 0.2777056254402008721e-6) | 542 BOOST_MATH_BIG_CONSTANT(T, 53, 0.2777056254402008721e-6) |
542 }; | 543 }; |
543 static const T Q[8] = { | 544 static const T Q[8] = { |
544 BOOST_MATH_BIG_CONSTANT(T, 53, 1), | 545 BOOST_MATH_BIG_CONSTANT(T, 53, 1.0), |
545 BOOST_MATH_BIG_CONSTANT(T, 53, -1.17090412365413911947), | 546 BOOST_MATH_BIG_CONSTANT(T, 53, -1.17090412365413911947), |
546 BOOST_MATH_BIG_CONSTANT(T, 53, 0.62215109846016746276), | 547 BOOST_MATH_BIG_CONSTANT(T, 53, 0.62215109846016746276), |
547 BOOST_MATH_BIG_CONSTANT(T, 53, -0.195114782069495403315), | 548 BOOST_MATH_BIG_CONSTANT(T, 53, -0.195114782069495403315), |
548 BOOST_MATH_BIG_CONSTANT(T, 53, 0.0391523431392967238166), | 549 BOOST_MATH_BIG_CONSTANT(T, 53, 0.0391523431392967238166), |
549 BOOST_MATH_BIG_CONSTANT(T, 53, -0.00504800158663705747345), | 550 BOOST_MATH_BIG_CONSTANT(T, 53, -0.00504800158663705747345), |
561 / tools::evaluate_polynomial(Q, t); | 562 / tools::evaluate_polynomial(Q, t); |
562 t = (z - r1) - r2; | 563 t = (z - r1) - r2; |
563 result *= t; | 564 result *= t; |
564 if(fabs(t) < 0.1) | 565 if(fabs(t) < 0.1) |
565 { | 566 { |
566 result += boost::math::log1p(t / r); | 567 result += boost::math::log1p(t / r, pol); |
567 } | 568 } |
568 else | 569 else |
569 { | 570 { |
570 result += log(z / r); | 571 result += log(z / r); |
571 } | 572 } |
585 BOOST_MATH_BIG_CONSTANT(T, 53, -0.000374885917942100256775), | 586 BOOST_MATH_BIG_CONSTANT(T, 53, -0.000374885917942100256775), |
586 BOOST_MATH_BIG_CONSTANT(T, 53, -0.554086272024881826253e-4), | 587 BOOST_MATH_BIG_CONSTANT(T, 53, -0.554086272024881826253e-4), |
587 BOOST_MATH_BIG_CONSTANT(T, 53, -0.396487648924804510056e-5) | 588 BOOST_MATH_BIG_CONSTANT(T, 53, -0.396487648924804510056e-5) |
588 }; | 589 }; |
589 static const T Q[8] = { | 590 static const T Q[8] = { |
590 BOOST_MATH_BIG_CONSTANT(T, 53, 1), | 591 BOOST_MATH_BIG_CONSTANT(T, 53, 1.0), |
591 BOOST_MATH_BIG_CONSTANT(T, 53, 0.744625566823272107711), | 592 BOOST_MATH_BIG_CONSTANT(T, 53, 0.744625566823272107711), |
592 BOOST_MATH_BIG_CONSTANT(T, 53, 0.329061095011767059236), | 593 BOOST_MATH_BIG_CONSTANT(T, 53, 0.329061095011767059236), |
593 BOOST_MATH_BIG_CONSTANT(T, 53, 0.100128624977313872323), | 594 BOOST_MATH_BIG_CONSTANT(T, 53, 0.100128624977313872323), |
594 BOOST_MATH_BIG_CONSTANT(T, 53, 0.0223851099128506347278), | 595 BOOST_MATH_BIG_CONSTANT(T, 53, 0.0223851099128506347278), |
595 BOOST_MATH_BIG_CONSTANT(T, 53, 0.00365334190742316650106), | 596 BOOST_MATH_BIG_CONSTANT(T, 53, 0.00365334190742316650106), |
619 BOOST_MATH_BIG_CONSTANT(T, 53, -0.00155941947035972031334), | 620 BOOST_MATH_BIG_CONSTANT(T, 53, -0.00155941947035972031334), |
620 BOOST_MATH_BIG_CONSTANT(T, 53, -0.000209750022660200888349), | 621 BOOST_MATH_BIG_CONSTANT(T, 53, -0.000209750022660200888349), |
621 BOOST_MATH_BIG_CONSTANT(T, 53, -0.138652200349182596186e-4) | 622 BOOST_MATH_BIG_CONSTANT(T, 53, -0.138652200349182596186e-4) |
622 }; | 623 }; |
623 static const T Q[9] = { | 624 static const T Q[9] = { |
624 BOOST_MATH_BIG_CONSTANT(T, 53, 1), | 625 BOOST_MATH_BIG_CONSTANT(T, 53, 1.0), |
625 BOOST_MATH_BIG_CONSTANT(T, 53, 1.97017214039061194971), | 626 BOOST_MATH_BIG_CONSTANT(T, 53, 1.97017214039061194971), |
626 BOOST_MATH_BIG_CONSTANT(T, 53, 1.86232465043073157508), | 627 BOOST_MATH_BIG_CONSTANT(T, 53, 1.86232465043073157508), |
627 BOOST_MATH_BIG_CONSTANT(T, 53, 1.09601437090337519977), | 628 BOOST_MATH_BIG_CONSTANT(T, 53, 1.09601437090337519977), |
628 BOOST_MATH_BIG_CONSTANT(T, 53, 0.438873285773088870812), | 629 BOOST_MATH_BIG_CONSTANT(T, 53, 0.438873285773088870812), |
629 BOOST_MATH_BIG_CONSTANT(T, 53, 0.122537731979686102756), | 630 BOOST_MATH_BIG_CONSTANT(T, 53, 0.122537731979686102756), |
655 BOOST_MATH_BIG_CONSTANT(T, 53, -0.00207592267812291726961), | 656 BOOST_MATH_BIG_CONSTANT(T, 53, -0.00207592267812291726961), |
656 BOOST_MATH_BIG_CONSTANT(T, 53, -0.000192178045857733706044), | 657 BOOST_MATH_BIG_CONSTANT(T, 53, -0.000192178045857733706044), |
657 BOOST_MATH_BIG_CONSTANT(T, 53, -0.113161784705911400295e-9) | 658 BOOST_MATH_BIG_CONSTANT(T, 53, -0.113161784705911400295e-9) |
658 }; | 659 }; |
659 static const T Q[9] = { | 660 static const T Q[9] = { |
660 BOOST_MATH_BIG_CONSTANT(T, 53, 1), | 661 BOOST_MATH_BIG_CONSTANT(T, 53, 1.0), |
661 BOOST_MATH_BIG_CONSTANT(T, 53, 2.84354408840148561131), | 662 BOOST_MATH_BIG_CONSTANT(T, 53, 2.84354408840148561131), |
662 BOOST_MATH_BIG_CONSTANT(T, 53, 3.6599610090072393012), | 663 BOOST_MATH_BIG_CONSTANT(T, 53, 3.6599610090072393012), |
663 BOOST_MATH_BIG_CONSTANT(T, 53, 2.75088464344293083595), | 664 BOOST_MATH_BIG_CONSTANT(T, 53, 2.75088464344293083595), |
664 BOOST_MATH_BIG_CONSTANT(T, 53, 1.2985244073998398643), | 665 BOOST_MATH_BIG_CONSTANT(T, 53, 1.2985244073998398643), |
665 BOOST_MATH_BIG_CONSTANT(T, 53, 0.383213198510794507409), | 666 BOOST_MATH_BIG_CONSTANT(T, 53, 0.383213198510794507409), |
684 BOOST_MATH_BIG_CONSTANT(T, 53, -2516.35323679844256203), | 685 BOOST_MATH_BIG_CONSTANT(T, 53, -2516.35323679844256203), |
685 BOOST_MATH_BIG_CONSTANT(T, 53, 18932.0850014925993025), | 686 BOOST_MATH_BIG_CONSTANT(T, 53, 18932.0850014925993025), |
686 BOOST_MATH_BIG_CONSTANT(T, 53, -38703.1431362056714134) | 687 BOOST_MATH_BIG_CONSTANT(T, 53, -38703.1431362056714134) |
687 }; | 688 }; |
688 static const T Q[7] = { | 689 static const T Q[7] = { |
689 BOOST_MATH_BIG_CONSTANT(T, 53, 1), | 690 BOOST_MATH_BIG_CONSTANT(T, 53, 1.0), |
690 BOOST_MATH_BIG_CONSTANT(T, 53, 61.9733592849439884145), | 691 BOOST_MATH_BIG_CONSTANT(T, 53, 61.9733592849439884145), |
691 BOOST_MATH_BIG_CONSTANT(T, 53, -2354.56211323420194283), | 692 BOOST_MATH_BIG_CONSTANT(T, 53, -2354.56211323420194283), |
692 BOOST_MATH_BIG_CONSTANT(T, 53, 22329.1459489893079041), | 693 BOOST_MATH_BIG_CONSTANT(T, 53, 22329.1459489893079041), |
693 BOOST_MATH_BIG_CONSTANT(T, 53, -70126.245140396567133), | 694 BOOST_MATH_BIG_CONSTANT(T, 53, -70126.245140396567133), |
694 BOOST_MATH_BIG_CONSTANT(T, 53, 54738.2833147775537106), | 695 BOOST_MATH_BIG_CONSTANT(T, 53, 54738.2833147775537106), |
755 BOOST_MATH_BIG_CONSTANT(T, 64, 0.11293331317982763165e-4), | 756 BOOST_MATH_BIG_CONSTANT(T, 64, 0.11293331317982763165e-4), |
756 BOOST_MATH_BIG_CONSTANT(T, 64, 0.629499283139417444244e-6), | 757 BOOST_MATH_BIG_CONSTANT(T, 64, 0.629499283139417444244e-6), |
757 BOOST_MATH_BIG_CONSTANT(T, 64, 0.177833045143692498221e-7) | 758 BOOST_MATH_BIG_CONSTANT(T, 64, 0.177833045143692498221e-7) |
758 }; | 759 }; |
759 static const T Q[9] = { | 760 static const T Q[9] = { |
760 BOOST_MATH_BIG_CONSTANT(T, 64, 1), | 761 BOOST_MATH_BIG_CONSTANT(T, 64, 1.0), |
761 BOOST_MATH_BIG_CONSTANT(T, 64, -1.20352377969742325748), | 762 BOOST_MATH_BIG_CONSTANT(T, 64, -1.20352377969742325748), |
762 BOOST_MATH_BIG_CONSTANT(T, 64, 0.66707904942606479811), | 763 BOOST_MATH_BIG_CONSTANT(T, 64, 0.66707904942606479811), |
763 BOOST_MATH_BIG_CONSTANT(T, 64, -0.223014531629140771914), | 764 BOOST_MATH_BIG_CONSTANT(T, 64, -0.223014531629140771914), |
764 BOOST_MATH_BIG_CONSTANT(T, 64, 0.0493340022262908008636), | 765 BOOST_MATH_BIG_CONSTANT(T, 64, 0.0493340022262908008636), |
765 BOOST_MATH_BIG_CONSTANT(T, 64, -0.00741934273050807310677), | 766 BOOST_MATH_BIG_CONSTANT(T, 64, -0.00741934273050807310677), |
778 / tools::evaluate_polynomial(Q, t); | 779 / tools::evaluate_polynomial(Q, t); |
779 t = (z - r1) - r2; | 780 t = (z - r1) - r2; |
780 result *= t; | 781 result *= t; |
781 if(fabs(t) < 0.1) | 782 if(fabs(t) < 0.1) |
782 { | 783 { |
783 result += boost::math::log1p(t / r); | 784 result += boost::math::log1p(t / r, pol); |
784 } | 785 } |
785 else | 786 else |
786 { | 787 { |
787 result += log(z / r); | 788 result += log(z / r); |
788 } | 789 } |
804 BOOST_MATH_BIG_CONSTANT(T, 64, -0.877310384591205930343e-4), | 805 BOOST_MATH_BIG_CONSTANT(T, 64, -0.877310384591205930343e-4), |
805 BOOST_MATH_BIG_CONSTANT(T, 64, -0.623067256376494930067e-5), | 806 BOOST_MATH_BIG_CONSTANT(T, 64, -0.623067256376494930067e-5), |
806 BOOST_MATH_BIG_CONSTANT(T, 64, -0.377246883283337141444e-6) | 807 BOOST_MATH_BIG_CONSTANT(T, 64, -0.377246883283337141444e-6) |
807 }; | 808 }; |
808 static const T Q[10] = { | 809 static const T Q[10] = { |
809 BOOST_MATH_BIG_CONSTANT(T, 64, 1), | 810 BOOST_MATH_BIG_CONSTANT(T, 64, 1.0), |
810 BOOST_MATH_BIG_CONSTANT(T, 64, 1.08073635708902053767), | 811 BOOST_MATH_BIG_CONSTANT(T, 64, 1.08073635708902053767), |
811 BOOST_MATH_BIG_CONSTANT(T, 64, 0.553681133533942532909), | 812 BOOST_MATH_BIG_CONSTANT(T, 64, 0.553681133533942532909), |
812 BOOST_MATH_BIG_CONSTANT(T, 64, 0.176763647137553797451), | 813 BOOST_MATH_BIG_CONSTANT(T, 64, 0.176763647137553797451), |
813 BOOST_MATH_BIG_CONSTANT(T, 64, 0.0387891748253869928121), | 814 BOOST_MATH_BIG_CONSTANT(T, 64, 0.0387891748253869928121), |
814 BOOST_MATH_BIG_CONSTANT(T, 64, 0.0060603004848394727017), | 815 BOOST_MATH_BIG_CONSTANT(T, 64, 0.0060603004848394727017), |
842 BOOST_MATH_BIG_CONSTANT(T, 64, -0.000392477245911296982776), | 843 BOOST_MATH_BIG_CONSTANT(T, 64, -0.000392477245911296982776), |
843 BOOST_MATH_BIG_CONSTANT(T, 64, -0.44424044184395578775e-4), | 844 BOOST_MATH_BIG_CONSTANT(T, 64, -0.44424044184395578775e-4), |
844 BOOST_MATH_BIG_CONSTANT(T, 64, -0.252788029251437017959e-5) | 845 BOOST_MATH_BIG_CONSTANT(T, 64, -0.252788029251437017959e-5) |
845 }; | 846 }; |
846 static const T Q[10] = { | 847 static const T Q[10] = { |
847 BOOST_MATH_BIG_CONSTANT(T, 64, 1), | 848 BOOST_MATH_BIG_CONSTANT(T, 64, 1.0), |
848 BOOST_MATH_BIG_CONSTANT(T, 64, 2.00323265503572414261), | 849 BOOST_MATH_BIG_CONSTANT(T, 64, 2.00323265503572414261), |
849 BOOST_MATH_BIG_CONSTANT(T, 64, 1.94688958187256383178), | 850 BOOST_MATH_BIG_CONSTANT(T, 64, 1.94688958187256383178), |
850 BOOST_MATH_BIG_CONSTANT(T, 64, 1.19733638134417472296), | 851 BOOST_MATH_BIG_CONSTANT(T, 64, 1.19733638134417472296), |
851 BOOST_MATH_BIG_CONSTANT(T, 64, 0.513137726038353385661), | 852 BOOST_MATH_BIG_CONSTANT(T, 64, 0.513137726038353385661), |
852 BOOST_MATH_BIG_CONSTANT(T, 64, 0.159135395578007264547), | 853 BOOST_MATH_BIG_CONSTANT(T, 64, 0.159135395578007264547), |
881 BOOST_MATH_BIG_CONSTANT(T, 64, -0.504623302166487346677e-9), | 882 BOOST_MATH_BIG_CONSTANT(T, 64, -0.504623302166487346677e-9), |
882 BOOST_MATH_BIG_CONSTANT(T, 64, 0.712662196671896837736e-10), | 883 BOOST_MATH_BIG_CONSTANT(T, 64, 0.712662196671896837736e-10), |
883 BOOST_MATH_BIG_CONSTANT(T, 64, -0.533769629702262072175e-11) | 884 BOOST_MATH_BIG_CONSTANT(T, 64, -0.533769629702262072175e-11) |
884 }; | 885 }; |
885 static const T Q[9] = { | 886 static const T Q[9] = { |
886 BOOST_MATH_BIG_CONSTANT(T, 64, 1), | 887 BOOST_MATH_BIG_CONSTANT(T, 64, 1.0), |
887 BOOST_MATH_BIG_CONSTANT(T, 64, 3.13286733695729715455), | 888 BOOST_MATH_BIG_CONSTANT(T, 64, 3.13286733695729715455), |
888 BOOST_MATH_BIG_CONSTANT(T, 64, 4.49281223045653491929), | 889 BOOST_MATH_BIG_CONSTANT(T, 64, 4.49281223045653491929), |
889 BOOST_MATH_BIG_CONSTANT(T, 64, 3.84900294427622911374), | 890 BOOST_MATH_BIG_CONSTANT(T, 64, 3.84900294427622911374), |
890 BOOST_MATH_BIG_CONSTANT(T, 64, 2.15205199043580378211), | 891 BOOST_MATH_BIG_CONSTANT(T, 64, 2.15205199043580378211), |
891 BOOST_MATH_BIG_CONSTANT(T, 64, 0.802912186540269232424), | 892 BOOST_MATH_BIG_CONSTANT(T, 64, 0.802912186540269232424), |
919 BOOST_MATH_BIG_CONSTANT(T, 64, 53732298.8764767916542), | 920 BOOST_MATH_BIG_CONSTANT(T, 64, 53732298.8764767916542), |
920 BOOST_MATH_BIG_CONSTANT(T, 64, -160695051.957997452509), | 921 BOOST_MATH_BIG_CONSTANT(T, 64, -160695051.957997452509), |
921 BOOST_MATH_BIG_CONSTANT(T, 64, 137839271.592778020028) | 922 BOOST_MATH_BIG_CONSTANT(T, 64, 137839271.592778020028) |
922 }; | 923 }; |
923 static const T Q[9] = { | 924 static const T Q[9] = { |
924 BOOST_MATH_BIG_CONSTANT(T, 64, 1), | 925 BOOST_MATH_BIG_CONSTANT(T, 64, 1.0), |
925 BOOST_MATH_BIG_CONSTANT(T, 64, 27.2103343964943718802), | 926 BOOST_MATH_BIG_CONSTANT(T, 64, 27.2103343964943718802), |
926 BOOST_MATH_BIG_CONSTANT(T, 64, -8785.48528692879413676), | 927 BOOST_MATH_BIG_CONSTANT(T, 64, -8785.48528692879413676), |
927 BOOST_MATH_BIG_CONSTANT(T, 64, 397530.290000322626766), | 928 BOOST_MATH_BIG_CONSTANT(T, 64, 397530.290000322626766), |
928 BOOST_MATH_BIG_CONSTANT(T, 64, -7356441.34957799368252), | 929 BOOST_MATH_BIG_CONSTANT(T, 64, -7356441.34957799368252), |
929 BOOST_MATH_BIG_CONSTANT(T, 64, 63050914.5343400957524), | 930 BOOST_MATH_BIG_CONSTANT(T, 64, 63050914.5343400957524), |
960 result += z; | 961 result += z; |
961 } | 962 } |
962 return result; | 963 return result; |
963 } | 964 } |
964 | 965 |
965 template <class T> | 966 template <class T, class Policy> |
966 void expint_i_imp_113a(T& result, const T& z) | 967 void expint_i_imp_113a(T& result, const T& z, const Policy& pol) |
967 { | 968 { |
968 BOOST_MATH_STD_USING | 969 BOOST_MATH_STD_USING |
969 // Maximum Deviation Found: 1.230e-36 | 970 // Maximum Deviation Found: 1.230e-36 |
970 // Expected Error Term: -1.230e-36 | 971 // Expected Error Term: -1.230e-36 |
971 // Max Error found at long double precision = Poly: 4.355299e-34 Cheb: 7.512581e-34 | 972 // Max Error found at long double precision = Poly: 4.355299e-34 Cheb: 7.512581e-34 |
987 BOOST_MATH_BIG_CONSTANT(T, 113, 0.154646053060262871360159325115980023e-9), | 988 BOOST_MATH_BIG_CONSTANT(T, 113, 0.154646053060262871360159325115980023e-9), |
988 BOOST_MATH_BIG_CONSTANT(T, 113, 0.143971277122049197323415503594302307e-11), | 989 BOOST_MATH_BIG_CONSTANT(T, 113, 0.143971277122049197323415503594302307e-11), |
989 BOOST_MATH_BIG_CONSTANT(T, 113, 0.306243138978114692252817805327426657e-13) | 990 BOOST_MATH_BIG_CONSTANT(T, 113, 0.306243138978114692252817805327426657e-13) |
990 }; | 991 }; |
991 static const T Q[15] = { | 992 static const T Q[15] = { |
992 BOOST_MATH_BIG_CONSTANT(T, 113, 1), | 993 BOOST_MATH_BIG_CONSTANT(T, 113, 1.0), |
993 BOOST_MATH_BIG_CONSTANT(T, 113, -1.40178870313943798705491944989231793), | 994 BOOST_MATH_BIG_CONSTANT(T, 113, -1.40178870313943798705491944989231793), |
994 BOOST_MATH_BIG_CONSTANT(T, 113, 0.943810968269701047641218856758605284), | 995 BOOST_MATH_BIG_CONSTANT(T, 113, 0.943810968269701047641218856758605284), |
995 BOOST_MATH_BIG_CONSTANT(T, 113, -0.405026631534345064600850391026113165), | 996 BOOST_MATH_BIG_CONSTANT(T, 113, -0.405026631534345064600850391026113165), |
996 BOOST_MATH_BIG_CONSTANT(T, 113, 0.123924153524614086482627660399122762), | 997 BOOST_MATH_BIG_CONSTANT(T, 113, 0.123924153524614086482627660399122762), |
997 BOOST_MATH_BIG_CONSTANT(T, 113, -0.0286364505373369439591132549624317707), | 998 BOOST_MATH_BIG_CONSTANT(T, 113, -0.0286364505373369439591132549624317707), |
1020 / tools::evaluate_polynomial(Q, t); | 1021 / tools::evaluate_polynomial(Q, t); |
1021 t = ((z - r1) - r2) - r3; | 1022 t = ((z - r1) - r2) - r3; |
1022 result *= t; | 1023 result *= t; |
1023 if(fabs(t) < 0.1) | 1024 if(fabs(t) < 0.1) |
1024 { | 1025 { |
1025 result += boost::math::log1p(t / r); | 1026 result += boost::math::log1p(t / r, pol); |
1026 } | 1027 } |
1027 else | 1028 else |
1028 { | 1029 { |
1029 result += log(z / r); | 1030 result += log(z / r); |
1030 } | 1031 } |
1055 BOOST_MATH_BIG_CONSTANT(T, 113, -0.635187358949437991465353268374523944e-9), | 1056 BOOST_MATH_BIG_CONSTANT(T, 113, -0.635187358949437991465353268374523944e-9), |
1056 BOOST_MATH_BIG_CONSTANT(T, 113, -0.203015132965870311935118337194860863e-10), | 1057 BOOST_MATH_BIG_CONSTANT(T, 113, -0.203015132965870311935118337194860863e-10), |
1057 BOOST_MATH_BIG_CONSTANT(T, 113, -0.384276705503357655108096065452950822e-12) | 1058 BOOST_MATH_BIG_CONSTANT(T, 113, -0.384276705503357655108096065452950822e-12) |
1058 }; | 1059 }; |
1059 static const T Q[15] = { | 1060 static const T Q[15] = { |
1060 BOOST_MATH_BIG_CONSTANT(T, 113, 1), | 1061 BOOST_MATH_BIG_CONSTANT(T, 113, 1.0), |
1061 BOOST_MATH_BIG_CONSTANT(T, 113, 1.58784732785354597996617046880946257), | 1062 BOOST_MATH_BIG_CONSTANT(T, 113, 1.58784732785354597996617046880946257), |
1062 BOOST_MATH_BIG_CONSTANT(T, 113, 1.18550755302279446339364262338114098), | 1063 BOOST_MATH_BIG_CONSTANT(T, 113, 1.18550755302279446339364262338114098), |
1063 BOOST_MATH_BIG_CONSTANT(T, 113, 0.55598993549661368604527040349702836), | 1064 BOOST_MATH_BIG_CONSTANT(T, 113, 0.55598993549661368604527040349702836), |
1064 BOOST_MATH_BIG_CONSTANT(T, 113, 0.184290888380564236919107835030984453), | 1065 BOOST_MATH_BIG_CONSTANT(T, 113, 0.184290888380564236919107835030984453), |
1065 BOOST_MATH_BIG_CONSTANT(T, 113, 0.0459658051803613282360464632326866113), | 1066 BOOST_MATH_BIG_CONSTANT(T, 113, 0.0459658051803613282360464632326866113), |
1108 BOOST_MATH_BIG_CONSTANT(T, 113, -0.502538501472133913417609379765434153e-10), | 1109 BOOST_MATH_BIG_CONSTANT(T, 113, -0.502538501472133913417609379765434153e-10), |
1109 BOOST_MATH_BIG_CONSTANT(T, 113, -0.326283053716799774936661568391296584e-13), | 1110 BOOST_MATH_BIG_CONSTANT(T, 113, -0.326283053716799774936661568391296584e-13), |
1110 BOOST_MATH_BIG_CONSTANT(T, 113, 0.869226483473172853557775877908693647e-15) | 1111 BOOST_MATH_BIG_CONSTANT(T, 113, 0.869226483473172853557775877908693647e-15) |
1111 }; | 1112 }; |
1112 static const T Q[15] = { | 1113 static const T Q[15] = { |
1113 BOOST_MATH_BIG_CONSTANT(T, 113, 1), | 1114 BOOST_MATH_BIG_CONSTANT(T, 113, 1.0), |
1114 BOOST_MATH_BIG_CONSTANT(T, 113, 2.23227220874479061894038229141871087), | 1115 BOOST_MATH_BIG_CONSTANT(T, 113, 2.23227220874479061894038229141871087), |
1115 BOOST_MATH_BIG_CONSTANT(T, 113, 2.40221000361027971895657505660959863), | 1116 BOOST_MATH_BIG_CONSTANT(T, 113, 2.40221000361027971895657505660959863), |
1116 BOOST_MATH_BIG_CONSTANT(T, 113, 1.65476320985936174728238416007084214), | 1117 BOOST_MATH_BIG_CONSTANT(T, 113, 1.65476320985936174728238416007084214), |
1117 BOOST_MATH_BIG_CONSTANT(T, 113, 0.816828602963895720369875535001248227), | 1118 BOOST_MATH_BIG_CONSTANT(T, 113, 0.816828602963895720369875535001248227), |
1118 BOOST_MATH_BIG_CONSTANT(T, 113, 0.306337922909446903672123418670921066), | 1119 BOOST_MATH_BIG_CONSTANT(T, 113, 0.306337922909446903672123418670921066), |
1157 BOOST_MATH_BIG_CONSTANT(T, 113, -0.133291168587253145439184028259772437e-7), | 1158 BOOST_MATH_BIG_CONSTANT(T, 113, -0.133291168587253145439184028259772437e-7), |
1158 BOOST_MATH_BIG_CONSTANT(T, 113, -0.595500337089495614285777067722823397e-9), | 1159 BOOST_MATH_BIG_CONSTANT(T, 113, -0.595500337089495614285777067722823397e-9), |
1159 BOOST_MATH_BIG_CONSTANT(T, 113, -0.133141358866324100955927979606981328e-10) | 1160 BOOST_MATH_BIG_CONSTANT(T, 113, -0.133141358866324100955927979606981328e-10) |
1160 }; | 1161 }; |
1161 static const T Q[14] = { | 1162 static const T Q[14] = { |
1162 BOOST_MATH_BIG_CONSTANT(T, 113, 1), | 1163 BOOST_MATH_BIG_CONSTANT(T, 113, 1.0), |
1163 BOOST_MATH_BIG_CONSTANT(T, 113, 1.72490783907582654629537013560044682), | 1164 BOOST_MATH_BIG_CONSTANT(T, 113, 1.72490783907582654629537013560044682), |
1164 BOOST_MATH_BIG_CONSTANT(T, 113, 1.44524329516800613088375685659759765), | 1165 BOOST_MATH_BIG_CONSTANT(T, 113, 1.44524329516800613088375685659759765), |
1165 BOOST_MATH_BIG_CONSTANT(T, 113, 0.778241785539308257585068744978050181), | 1166 BOOST_MATH_BIG_CONSTANT(T, 113, 0.778241785539308257585068744978050181), |
1166 BOOST_MATH_BIG_CONSTANT(T, 113, 0.300520486589206605184097270225725584), | 1167 BOOST_MATH_BIG_CONSTANT(T, 113, 0.300520486589206605184097270225725584), |
1167 BOOST_MATH_BIG_CONSTANT(T, 113, 0.0879346899691339661394537806057953957), | 1168 BOOST_MATH_BIG_CONSTANT(T, 113, 0.0879346899691339661394537806057953957), |
1209 BOOST_MATH_BIG_CONSTANT(T, 113, -0.565697065670893984610852937110819467e-6), | 1210 BOOST_MATH_BIG_CONSTANT(T, 113, -0.565697065670893984610852937110819467e-6), |
1210 BOOST_MATH_BIG_CONSTANT(T, 113, -0.350233957364028523971768887437839573e-7), | 1211 BOOST_MATH_BIG_CONSTANT(T, 113, -0.350233957364028523971768887437839573e-7), |
1211 BOOST_MATH_BIG_CONSTANT(T, 113, -0.105428907085424234504608142258423505e-8) | 1212 BOOST_MATH_BIG_CONSTANT(T, 113, -0.105428907085424234504608142258423505e-8) |
1212 }; | 1213 }; |
1213 static const T Q[16] = { | 1214 static const T Q[16] = { |
1214 BOOST_MATH_BIG_CONSTANT(T, 113, 1), | 1215 BOOST_MATH_BIG_CONSTANT(T, 113, 1.0), |
1215 BOOST_MATH_BIG_CONSTANT(T, 113, 3.17261315255467581204685605414005525), | 1216 BOOST_MATH_BIG_CONSTANT(T, 113, 3.17261315255467581204685605414005525), |
1216 BOOST_MATH_BIG_CONSTANT(T, 113, 4.85267952971640525245338392887217426), | 1217 BOOST_MATH_BIG_CONSTANT(T, 113, 4.85267952971640525245338392887217426), |
1217 BOOST_MATH_BIG_CONSTANT(T, 113, 4.74341914912439861451492872946725151), | 1218 BOOST_MATH_BIG_CONSTANT(T, 113, 4.74341914912439861451492872946725151), |
1218 BOOST_MATH_BIG_CONSTANT(T, 113, 3.31108463283559911602405970817931801), | 1219 BOOST_MATH_BIG_CONSTANT(T, 113, 3.31108463283559911602405970817931801), |
1219 BOOST_MATH_BIG_CONSTANT(T, 113, 1.74657006336994649386607925179848899), | 1220 BOOST_MATH_BIG_CONSTANT(T, 113, 1.74657006336994649386607925179848899), |
1260 BOOST_MATH_BIG_CONSTANT(T, 113, -0.794712243338068631557849449519994144e-6), | 1261 BOOST_MATH_BIG_CONSTANT(T, 113, -0.794712243338068631557849449519994144e-6), |
1261 BOOST_MATH_BIG_CONSTANT(T, 113, -0.434084023639508143975983454830954835e-7), | 1262 BOOST_MATH_BIG_CONSTANT(T, 113, -0.434084023639508143975983454830954835e-7), |
1262 BOOST_MATH_BIG_CONSTANT(T, 113, -0.107839681938752337160494412638656696e-8) | 1263 BOOST_MATH_BIG_CONSTANT(T, 113, -0.107839681938752337160494412638656696e-8) |
1263 }; | 1264 }; |
1264 static const T Q[12] = { | 1265 static const T Q[12] = { |
1265 BOOST_MATH_BIG_CONSTANT(T, 113, 1), | 1266 BOOST_MATH_BIG_CONSTANT(T, 113, 1.0), |
1266 BOOST_MATH_BIG_CONSTANT(T, 113, 2.09913805456661084097134805151524958), | 1267 BOOST_MATH_BIG_CONSTANT(T, 113, 2.09913805456661084097134805151524958), |
1267 BOOST_MATH_BIG_CONSTANT(T, 113, 2.07041755535439919593503171320431849), | 1268 BOOST_MATH_BIG_CONSTANT(T, 113, 2.07041755535439919593503171320431849), |
1268 BOOST_MATH_BIG_CONSTANT(T, 113, 1.26406517226052371320416108604874734), | 1269 BOOST_MATH_BIG_CONSTANT(T, 113, 1.26406517226052371320416108604874734), |
1269 BOOST_MATH_BIG_CONSTANT(T, 113, 0.529689923703770353961553223973435569), | 1270 BOOST_MATH_BIG_CONSTANT(T, 113, 0.529689923703770353961553223973435569), |
1270 BOOST_MATH_BIG_CONSTANT(T, 113, 0.159578150879536711042269658656115746), | 1271 BOOST_MATH_BIG_CONSTANT(T, 113, 0.159578150879536711042269658656115746), |
1306 BOOST_MATH_BIG_CONSTANT(T, 113, -0.29462181955852860250359064291292577e-4), | 1307 BOOST_MATH_BIG_CONSTANT(T, 113, -0.29462181955852860250359064291292577e-4), |
1307 BOOST_MATH_BIG_CONSTANT(T, 113, -0.21972450610957417963227028788460299e-5), | 1308 BOOST_MATH_BIG_CONSTANT(T, 113, -0.21972450610957417963227028788460299e-5), |
1308 BOOST_MATH_BIG_CONSTANT(T, 113, -0.720558173805289167524715527536874694e-7) | 1309 BOOST_MATH_BIG_CONSTANT(T, 113, -0.720558173805289167524715527536874694e-7) |
1309 }; | 1310 }; |
1310 static const T Q[11] = { | 1311 static const T Q[11] = { |
1311 BOOST_MATH_BIG_CONSTANT(T, 113, 1), | 1312 BOOST_MATH_BIG_CONSTANT(T, 113, 1.0), |
1312 BOOST_MATH_BIG_CONSTANT(T, 113, 2.95918362458402597039366979529287095), | 1313 BOOST_MATH_BIG_CONSTANT(T, 113, 2.95918362458402597039366979529287095), |
1313 BOOST_MATH_BIG_CONSTANT(T, 113, 3.96472247520659077944638411856748924), | 1314 BOOST_MATH_BIG_CONSTANT(T, 113, 3.96472247520659077944638411856748924), |
1314 BOOST_MATH_BIG_CONSTANT(T, 113, 3.15563251550528513747923714884142131), | 1315 BOOST_MATH_BIG_CONSTANT(T, 113, 3.15563251550528513747923714884142131), |
1315 BOOST_MATH_BIG_CONSTANT(T, 113, 1.64674612007093983894215359287448334), | 1316 BOOST_MATH_BIG_CONSTANT(T, 113, 1.64674612007093983894215359287448334), |
1316 BOOST_MATH_BIG_CONSTANT(T, 113, 0.58695020129846594405856226787156424), | 1317 BOOST_MATH_BIG_CONSTANT(T, 113, 0.58695020129846594405856226787156424), |
1349 BOOST_MATH_BIG_CONSTANT(T, 113, -3661928.69330208734947103004900349266), | 1350 BOOST_MATH_BIG_CONSTANT(T, 113, -3661928.69330208734947103004900349266), |
1350 BOOST_MATH_BIG_CONSTANT(T, 113, 8570600.041606912735872059184527855), | 1351 BOOST_MATH_BIG_CONSTANT(T, 113, 8570600.041606912735872059184527855), |
1351 BOOST_MATH_BIG_CONSTANT(T, 113, -6758379.93672362080947905580906028645) | 1352 BOOST_MATH_BIG_CONSTANT(T, 113, -6758379.93672362080947905580906028645) |
1352 }; | 1353 }; |
1353 static const T Q[10] = { | 1354 static const T Q[10] = { |
1354 BOOST_MATH_BIG_CONSTANT(T, 113, 1), | 1355 BOOST_MATH_BIG_CONSTANT(T, 113, 1.0), |
1355 BOOST_MATH_BIG_CONSTANT(T, 113, -99.4868026047611434569541483506091713), | 1356 BOOST_MATH_BIG_CONSTANT(T, 113, -99.4868026047611434569541483506091713), |
1356 BOOST_MATH_BIG_CONSTANT(T, 113, 3879.67753690517114249705089803055473), | 1357 BOOST_MATH_BIG_CONSTANT(T, 113, 3879.67753690517114249705089803055473), |
1357 BOOST_MATH_BIG_CONSTANT(T, 113, -76495.82413252517165830203774900806), | 1358 BOOST_MATH_BIG_CONSTANT(T, 113, -76495.82413252517165830203774900806), |
1358 BOOST_MATH_BIG_CONSTANT(T, 113, 820773.726408311894342553758526282667), | 1359 BOOST_MATH_BIG_CONSTANT(T, 113, 820773.726408311894342553758526282667), |
1359 BOOST_MATH_BIG_CONSTANT(T, 113, -4803087.64956923577571031564909646579), | 1360 BOOST_MATH_BIG_CONSTANT(T, 113, -4803087.64956923577571031564909646579), |
1381 | 1382 |
1382 T result; | 1383 T result; |
1383 | 1384 |
1384 if(z <= 6) | 1385 if(z <= 6) |
1385 { | 1386 { |
1386 expint_i_imp_113a(result, z); | 1387 expint_i_imp_113a(result, z, pol); |
1387 } | 1388 } |
1388 else if (z <= 10) | 1389 else if (z <= 10) |
1389 { | 1390 { |
1390 expint_i_113b(result, z); | 1391 expint_i_113b(result, z); |
1391 } | 1392 } |
1430 BOOST_MATH_BIG_CONSTANT(T, 113, 93632.6567462673524739954389166550069), | 1431 BOOST_MATH_BIG_CONSTANT(T, 113, 93632.6567462673524739954389166550069), |
1431 BOOST_MATH_BIG_CONSTANT(T, 113, -225025.189335919133214440347510936787), | 1432 BOOST_MATH_BIG_CONSTANT(T, 113, -225025.189335919133214440347510936787), |
1432 BOOST_MATH_BIG_CONSTANT(T, 113, 175864.614717440010942804684741336853) | 1433 BOOST_MATH_BIG_CONSTANT(T, 113, 175864.614717440010942804684741336853) |
1433 }; | 1434 }; |
1434 static const T Q[9] = { | 1435 static const T Q[9] = { |
1435 BOOST_MATH_BIG_CONSTANT(T, 113, 1), | 1436 BOOST_MATH_BIG_CONSTANT(T, 113, 1.0), |
1436 BOOST_MATH_BIG_CONSTANT(T, 113, -65.6998869881600212224652719706425129), | 1437 BOOST_MATH_BIG_CONSTANT(T, 113, -65.6998869881600212224652719706425129), |
1437 BOOST_MATH_BIG_CONSTANT(T, 113, 1642.73850032324014781607859416890077), | 1438 BOOST_MATH_BIG_CONSTANT(T, 113, 1642.73850032324014781607859416890077), |
1438 BOOST_MATH_BIG_CONSTANT(T, 113, -19937.2610222467322481947237312818575), | 1439 BOOST_MATH_BIG_CONSTANT(T, 113, -19937.2610222467322481947237312818575), |
1439 BOOST_MATH_BIG_CONSTANT(T, 113, 124136.267326632742667972126625064538), | 1440 BOOST_MATH_BIG_CONSTANT(T, 113, 124136.267326632742667972126625064538), |
1440 BOOST_MATH_BIG_CONSTANT(T, 113, -384614.251466704550678760562965502293), | 1441 BOOST_MATH_BIG_CONSTANT(T, 113, -384614.251466704550678760562965502293), |