\frac{\left(\left(\left(\left(1 + 0.1049934947 \cdot \left(x \cdot x\right)\right) + 0.0424060604 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.0072644182 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 0.0005064034 \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) + 0.0001789971 \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.7715471019 \cdot \left(x \cdot x\right)\right) + 0.2909738639 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.0694555761 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 0.0140005442 \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) + 0.0008327945 \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 0.0001789971\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 -16841451316234332.0:\\
\;\;\;\;\frac{0.2514179000665375}{\left(x \cdot x\right) \cdot x} + \left(\frac{0.15298196345929327}{{x}^{5}} + \frac{0.5}{x}\right)\\
\mathbf{elif}\;x \le 691.9834722257133:\\
\;\;\;\;\left(x \cdot \sqrt{\frac{\sqrt{\left(\left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right)\right) \cdot \left(x \cdot x\right)\right) \cdot 0.0001789971 + \left(\left(0.0072644182 \cdot \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + \left(\left(1 + \left(x \cdot x\right) \cdot 0.1049934947\right) + 0.0424060604 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right)\right) + \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right)\right) \cdot 0.0005064034\right)}}{\frac{\left(\left(x \cdot x\right) \cdot \left(\left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right)\right) \cdot \left(x \cdot x\right)\right)\right) \cdot \left(2 \cdot 0.0001789971\right) + \left(\left(\left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right)\right) \cdot \left(x \cdot x\right)\right) \cdot 0.0008327945 + \left(\left(\left(\left(\left(x \cdot x\right) \cdot 0.7715471019 + 1\right) + 0.2909738639 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) \cdot 0.0694555761\right) + \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right)\right) \cdot 0.0140005442\right)\right)}{\sqrt{\left(\left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right)\right) \cdot \left(x \cdot x\right)\right) \cdot 0.0001789971 + \left(\left(0.0072644182 \cdot \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + \left(\left(1 + \left(x \cdot x\right) \cdot 0.1049934947\right) + 0.0424060604 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right)\right) + \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right)\right) \cdot 0.0005064034\right)}}}}\right) \cdot \sqrt{\frac{\left(\left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right)\right) \cdot \left(x \cdot x\right)\right) \cdot 0.0001789971 + \left(\left(0.0072644182 \cdot \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + \left(\left(1 + \left(x \cdot x\right) \cdot 0.1049934947\right) + 0.0424060604 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right)\right) + \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right)\right) \cdot 0.0005064034\right)}{\left(\left(x \cdot x\right) \cdot \left(\left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right)\right) \cdot \left(x \cdot x\right)\right)\right) \cdot \left(2 \cdot 0.0001789971\right) + \left(\left(\left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right)\right) \cdot \left(x \cdot x\right)\right) \cdot 0.0008327945 + \left(\left(\left(\left(\left(x \cdot x\right) \cdot 0.7715471019 + 1\right) + 0.2909738639 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) \cdot 0.0694555761\right) + \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right)\right) \cdot 0.0140005442\right)\right)}}\\
\mathbf{else}:\\
\;\;\;\;\frac{0.2514179000665375}{\left(x \cdot x\right) \cdot x} + \left(\frac{0.15298196345929327}{{x}^{5}} + \frac{0.5}{x}\right)\\
\end{array}double f(double x) {
double r8498727 = 1.0;
double r8498728 = 0.1049934947;
double r8498729 = x;
double r8498730 = r8498729 * r8498729;
double r8498731 = r8498728 * r8498730;
double r8498732 = r8498727 + r8498731;
double r8498733 = 0.0424060604;
double r8498734 = r8498730 * r8498730;
double r8498735 = r8498733 * r8498734;
double r8498736 = r8498732 + r8498735;
double r8498737 = 0.0072644182;
double r8498738 = r8498734 * r8498730;
double r8498739 = r8498737 * r8498738;
double r8498740 = r8498736 + r8498739;
double r8498741 = 0.0005064034;
double r8498742 = r8498738 * r8498730;
double r8498743 = r8498741 * r8498742;
double r8498744 = r8498740 + r8498743;
double r8498745 = 0.0001789971;
double r8498746 = r8498742 * r8498730;
double r8498747 = r8498745 * r8498746;
double r8498748 = r8498744 + r8498747;
double r8498749 = 0.7715471019;
double r8498750 = r8498749 * r8498730;
double r8498751 = r8498727 + r8498750;
double r8498752 = 0.2909738639;
double r8498753 = r8498752 * r8498734;
double r8498754 = r8498751 + r8498753;
double r8498755 = 0.0694555761;
double r8498756 = r8498755 * r8498738;
double r8498757 = r8498754 + r8498756;
double r8498758 = 0.0140005442;
double r8498759 = r8498758 * r8498742;
double r8498760 = r8498757 + r8498759;
double r8498761 = 0.0008327945;
double r8498762 = r8498761 * r8498746;
double r8498763 = r8498760 + r8498762;
double r8498764 = 2.0;
double r8498765 = r8498764 * r8498745;
double r8498766 = r8498746 * r8498730;
double r8498767 = r8498765 * r8498766;
double r8498768 = r8498763 + r8498767;
double r8498769 = r8498748 / r8498768;
double r8498770 = r8498769 * r8498729;
return r8498770;
}
double f(double x) {
double r8498771 = x;
double r8498772 = -16841451316234332.0;
bool r8498773 = r8498771 <= r8498772;
double r8498774 = 0.2514179000665375;
double r8498775 = r8498771 * r8498771;
double r8498776 = r8498775 * r8498771;
double r8498777 = r8498774 / r8498776;
double r8498778 = 0.15298196345929327;
double r8498779 = 5.0;
double r8498780 = pow(r8498771, r8498779);
double r8498781 = r8498778 / r8498780;
double r8498782 = 0.5;
double r8498783 = r8498782 / r8498771;
double r8498784 = r8498781 + r8498783;
double r8498785 = r8498777 + r8498784;
double r8498786 = 691.9834722257133;
bool r8498787 = r8498771 <= r8498786;
double r8498788 = r8498775 * r8498775;
double r8498789 = r8498775 * r8498788;
double r8498790 = r8498775 * r8498789;
double r8498791 = r8498790 * r8498775;
double r8498792 = 0.0001789971;
double r8498793 = r8498791 * r8498792;
double r8498794 = 0.0072644182;
double r8498795 = r8498794 * r8498789;
double r8498796 = 1.0;
double r8498797 = 0.1049934947;
double r8498798 = r8498775 * r8498797;
double r8498799 = r8498796 + r8498798;
double r8498800 = 0.0424060604;
double r8498801 = r8498800 * r8498788;
double r8498802 = r8498799 + r8498801;
double r8498803 = r8498795 + r8498802;
double r8498804 = 0.0005064034;
double r8498805 = r8498790 * r8498804;
double r8498806 = r8498803 + r8498805;
double r8498807 = r8498793 + r8498806;
double r8498808 = sqrt(r8498807);
double r8498809 = r8498775 * r8498791;
double r8498810 = 2.0;
double r8498811 = r8498810 * r8498792;
double r8498812 = r8498809 * r8498811;
double r8498813 = 0.0008327945;
double r8498814 = r8498791 * r8498813;
double r8498815 = 0.7715471019;
double r8498816 = r8498775 * r8498815;
double r8498817 = r8498816 + r8498796;
double r8498818 = 0.2909738639;
double r8498819 = r8498818 * r8498788;
double r8498820 = r8498817 + r8498819;
double r8498821 = 0.0694555761;
double r8498822 = r8498789 * r8498821;
double r8498823 = r8498820 + r8498822;
double r8498824 = 0.0140005442;
double r8498825 = r8498790 * r8498824;
double r8498826 = r8498823 + r8498825;
double r8498827 = r8498814 + r8498826;
double r8498828 = r8498812 + r8498827;
double r8498829 = r8498828 / r8498808;
double r8498830 = r8498808 / r8498829;
double r8498831 = sqrt(r8498830);
double r8498832 = r8498771 * r8498831;
double r8498833 = r8498807 / r8498828;
double r8498834 = sqrt(r8498833);
double r8498835 = r8498832 * r8498834;
double r8498836 = r8498787 ? r8498835 : r8498785;
double r8498837 = r8498773 ? r8498785 : r8498836;
return r8498837;
}



Bits error versus x
Results
if x < -16841451316234332.0 or 691.9834722257133 < x Initial program 59.7
Taylor expanded around -inf 0.0
Simplified0.0
if -16841451316234332.0 < x < 691.9834722257133Initial program 0.0
rmApplied add-sqr-sqrt0.0
Applied associate-*l*0.0
rmApplied add-sqr-sqrt0.0
Applied associate-/l*0.0
Final simplification0.0
herbie shell --seed 2019129 +o rules:numerics
(FPCore (x)
:name "Jmat.Real.dawson"
(* (/ (+ (+ (+ (+ (+ 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))