\frac{\left(\left(\left(\left(1 + 0.1049934946999999951788851149103720672429 \cdot \left(x \cdot x\right)\right) + 0.04240606040000000076517494562722276896238 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.007264418199999999985194687468492702464573 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 5.064034000000000243502107366566633572802 \cdot 10^{-4} \cdot \left(\left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 1.789971000000000009994005623070734145585 \cdot 10^{-4} \cdot \left(\left(\left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)}{\left(\left(\left(\left(\left(1 + 0.7715471018999999763821051601553335785866 \cdot \left(x \cdot x\right)\right) + 0.2909738639000000182122107617033179849386 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.06945557609999999937322456844412954524159 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 0.01400054419999999938406531896362139377743 \cdot \left(\left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 8.327945000000000442749725770852364803432 \cdot 10^{-4} \cdot \left(\left(\left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + \left(2 \cdot 1.789971000000000009994005623070734145585 \cdot 10^{-4}\right) \cdot \left(\left(\left(\left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)} \cdot x\begin{array}{l}
\mathbf{if}\;x \le -244114386.9095483124256134033203125 \lor \neg \left(x \le 684.1945566995898388995556160807609558105\right):\\
\;\;\;\;\frac{0.5}{x} + \left(\frac{0.1529819634592932686700805788859724998474}{{x}^{5}} + \frac{0.2514179000665375252054900556686334311962}{{x}^{3}}\right)\\
\mathbf{else}:\\
\;\;\;\;\frac{\left(\left(\left(\left(1 + 0.1049934946999999951788851149103720672429 \cdot \left(x \cdot x\right)\right) + 0.04240606040000000076517494562722276896238 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.007264418199999999985194687468492702464573 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 5.064034000000000243502107366566633572802 \cdot 10^{-4} \cdot \left(\left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 1.789971000000000009994005623070734145585 \cdot 10^{-4} \cdot \left(\left(\left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)}{\left(\left(\left(\left(\left(1 + 0.7715471018999999763821051601553335785866 \cdot \left(x \cdot x\right)\right) + 0.2909738639000000182122107617033179849386 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.06945557609999999937322456844412954524159 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 0.01400054419999999938406531896362139377743 \cdot \left(\left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 8.327945000000000442749725770852364803432 \cdot 10^{-4} \cdot \left(\left(\left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + \left(2 \cdot 1.789971000000000009994005623070734145585 \cdot 10^{-4}\right) \cdot \left(\left(\left(\left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)} \cdot x\\
\end{array}double f(double x) {
double r221652 = 1.0;
double r221653 = 0.1049934947;
double r221654 = x;
double r221655 = r221654 * r221654;
double r221656 = r221653 * r221655;
double r221657 = r221652 + r221656;
double r221658 = 0.0424060604;
double r221659 = r221655 * r221655;
double r221660 = r221658 * r221659;
double r221661 = r221657 + r221660;
double r221662 = 0.0072644182;
double r221663 = r221659 * r221655;
double r221664 = r221662 * r221663;
double r221665 = r221661 + r221664;
double r221666 = 0.0005064034;
double r221667 = r221663 * r221655;
double r221668 = r221666 * r221667;
double r221669 = r221665 + r221668;
double r221670 = 0.0001789971;
double r221671 = r221667 * r221655;
double r221672 = r221670 * r221671;
double r221673 = r221669 + r221672;
double r221674 = 0.7715471019;
double r221675 = r221674 * r221655;
double r221676 = r221652 + r221675;
double r221677 = 0.2909738639;
double r221678 = r221677 * r221659;
double r221679 = r221676 + r221678;
double r221680 = 0.0694555761;
double r221681 = r221680 * r221663;
double r221682 = r221679 + r221681;
double r221683 = 0.0140005442;
double r221684 = r221683 * r221667;
double r221685 = r221682 + r221684;
double r221686 = 0.0008327945;
double r221687 = r221686 * r221671;
double r221688 = r221685 + r221687;
double r221689 = 2.0;
double r221690 = r221689 * r221670;
double r221691 = r221671 * r221655;
double r221692 = r221690 * r221691;
double r221693 = r221688 + r221692;
double r221694 = r221673 / r221693;
double r221695 = r221694 * r221654;
return r221695;
}
double f(double x) {
double r221696 = x;
double r221697 = -244114386.9095483;
bool r221698 = r221696 <= r221697;
double r221699 = 684.1945566995898;
bool r221700 = r221696 <= r221699;
double r221701 = !r221700;
bool r221702 = r221698 || r221701;
double r221703 = 0.5;
double r221704 = r221703 / r221696;
double r221705 = 0.15298196345929327;
double r221706 = 5.0;
double r221707 = pow(r221696, r221706);
double r221708 = r221705 / r221707;
double r221709 = 0.2514179000665375;
double r221710 = 3.0;
double r221711 = pow(r221696, r221710);
double r221712 = r221709 / r221711;
double r221713 = r221708 + r221712;
double r221714 = r221704 + r221713;
double r221715 = 1.0;
double r221716 = 0.1049934947;
double r221717 = r221696 * r221696;
double r221718 = r221716 * r221717;
double r221719 = r221715 + r221718;
double r221720 = 0.0424060604;
double r221721 = r221717 * r221717;
double r221722 = r221720 * r221721;
double r221723 = r221719 + r221722;
double r221724 = 0.0072644182;
double r221725 = r221721 * r221717;
double r221726 = r221724 * r221725;
double r221727 = r221723 + r221726;
double r221728 = 0.0005064034;
double r221729 = r221725 * r221717;
double r221730 = r221728 * r221729;
double r221731 = r221727 + r221730;
double r221732 = 0.0001789971;
double r221733 = r221729 * r221717;
double r221734 = r221732 * r221733;
double r221735 = r221731 + r221734;
double r221736 = 0.7715471019;
double r221737 = r221736 * r221717;
double r221738 = r221715 + r221737;
double r221739 = 0.2909738639;
double r221740 = r221739 * r221721;
double r221741 = r221738 + r221740;
double r221742 = 0.0694555761;
double r221743 = r221742 * r221725;
double r221744 = r221741 + r221743;
double r221745 = 0.0140005442;
double r221746 = r221745 * r221729;
double r221747 = r221744 + r221746;
double r221748 = 0.0008327945;
double r221749 = r221748 * r221733;
double r221750 = r221747 + r221749;
double r221751 = 2.0;
double r221752 = r221751 * r221732;
double r221753 = r221733 * r221717;
double r221754 = r221752 * r221753;
double r221755 = r221750 + r221754;
double r221756 = r221735 / r221755;
double r221757 = r221756 * r221696;
double r221758 = r221702 ? r221714 : r221757;
return r221758;
}



Bits error versus x
Results
if x < -244114386.9095483 or 684.1945566995898 < x Initial program 59.7
Simplified59.6
Taylor expanded around inf 0.0
Simplified0.0
if -244114386.9095483 < x < 684.1945566995898Initial program 0.0
Final simplification0.0
herbie shell --seed 2019323
(FPCore (x)
:name "Jmat.Real.dawson"
:precision binary64
(* (/ (+ (+ (+ (+ (+ 1 (* 0.1049934947 (* x x))) (* 0.0424060604 (* (* x x) (* x x)))) (* 0.0072644182 (* (* (* x x) (* x x)) (* x x)))) (* 0.0005064034 (* (* (* (* x x) (* x x)) (* x x)) (* x x)))) (* 0.0001789971 (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)))) (+ (+ (+ (+ (+ (+ 1 (* 0.7715471019 (* x x))) (* 0.2909738639 (* (* x x) (* x x)))) (* 0.0694555761 (* (* (* x x) (* x x)) (* x x)))) (* 0.0140005442 (* (* (* (* x x) (* x x)) (* x x)) (* x x)))) (* 0.0008327945 (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)))) (* (* 2 0.0001789971) (* (* (* (* (* (* x x) (* x x)) (* x x)) (* x x)) (* x x)) (* x x))))) x))