\frac{\left(\left(\left(\left(1 + 0.1049934947 \cdot \left(x \cdot x\right)\right) + 0.042406060400000001 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.00726441819999999999 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 5.0640340000000002 \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.789971 \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.77154710189999998 \cdot \left(x \cdot x\right)\right) + 0.29097386390000002 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.069455576099999999 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 0.014000544199999999 \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.32794500000000044 \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.789971 \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 -831.685430895974719 \lor \neg \left(x \le 2168.52278018713832\right):\\
\;\;\;\;\mathsf{fma}\left(0.25141790006653753, \frac{1}{{x}^{3}}, \mathsf{fma}\left(0.1529819634592933, \frac{1}{{x}^{5}}, \frac{0.5}{x}\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\sqrt{\frac{\left(\left(\left(\left(1 + 0.1049934947 \cdot \left(x \cdot x\right)\right) + 0.042406060400000001 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.00726441819999999999 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 5.0640340000000002 \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.789971 \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.77154710189999998 \cdot \left(x \cdot x\right)\right) + 0.29097386390000002 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.069455576099999999 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 0.014000544199999999 \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.32794500000000044 \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.789971 \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 \sqrt{\frac{\left(\left(\left(\left(1 + 0.1049934947 \cdot \left(x \cdot x\right)\right) + 0.042406060400000001 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.00726441819999999999 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 5.0640340000000002 \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.789971 \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.77154710189999998 \cdot \left(x \cdot x\right)\right) + 0.29097386390000002 \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + 0.069455576099999999 \cdot \left(\left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right) \cdot \left(x \cdot x\right)\right)\right) + 0.014000544199999999 \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.32794500000000044 \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.789971 \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)}}\right) \cdot x\\
\end{array}double f(double x) {
double r172062 = 1.0;
double r172063 = 0.1049934947;
double r172064 = x;
double r172065 = r172064 * r172064;
double r172066 = r172063 * r172065;
double r172067 = r172062 + r172066;
double r172068 = 0.0424060604;
double r172069 = r172065 * r172065;
double r172070 = r172068 * r172069;
double r172071 = r172067 + r172070;
double r172072 = 0.0072644182;
double r172073 = r172069 * r172065;
double r172074 = r172072 * r172073;
double r172075 = r172071 + r172074;
double r172076 = 0.0005064034;
double r172077 = r172073 * r172065;
double r172078 = r172076 * r172077;
double r172079 = r172075 + r172078;
double r172080 = 0.0001789971;
double r172081 = r172077 * r172065;
double r172082 = r172080 * r172081;
double r172083 = r172079 + r172082;
double r172084 = 0.7715471019;
double r172085 = r172084 * r172065;
double r172086 = r172062 + r172085;
double r172087 = 0.2909738639;
double r172088 = r172087 * r172069;
double r172089 = r172086 + r172088;
double r172090 = 0.0694555761;
double r172091 = r172090 * r172073;
double r172092 = r172089 + r172091;
double r172093 = 0.0140005442;
double r172094 = r172093 * r172077;
double r172095 = r172092 + r172094;
double r172096 = 0.0008327945;
double r172097 = r172096 * r172081;
double r172098 = r172095 + r172097;
double r172099 = 2.0;
double r172100 = r172099 * r172080;
double r172101 = r172081 * r172065;
double r172102 = r172100 * r172101;
double r172103 = r172098 + r172102;
double r172104 = r172083 / r172103;
double r172105 = r172104 * r172064;
return r172105;
}
double f(double x) {
double r172106 = x;
double r172107 = -831.6854308959747;
bool r172108 = r172106 <= r172107;
double r172109 = 2168.5227801871383;
bool r172110 = r172106 <= r172109;
double r172111 = !r172110;
bool r172112 = r172108 || r172111;
double r172113 = 0.2514179000665375;
double r172114 = 1.0;
double r172115 = 3.0;
double r172116 = pow(r172106, r172115);
double r172117 = r172114 / r172116;
double r172118 = 0.15298196345929327;
double r172119 = 5.0;
double r172120 = pow(r172106, r172119);
double r172121 = r172114 / r172120;
double r172122 = 0.5;
double r172123 = r172122 / r172106;
double r172124 = fma(r172118, r172121, r172123);
double r172125 = fma(r172113, r172117, r172124);
double r172126 = 1.0;
double r172127 = 0.1049934947;
double r172128 = r172106 * r172106;
double r172129 = r172127 * r172128;
double r172130 = r172126 + r172129;
double r172131 = 0.0424060604;
double r172132 = r172128 * r172128;
double r172133 = r172131 * r172132;
double r172134 = r172130 + r172133;
double r172135 = 0.0072644182;
double r172136 = r172132 * r172128;
double r172137 = r172135 * r172136;
double r172138 = r172134 + r172137;
double r172139 = 0.0005064034;
double r172140 = r172136 * r172128;
double r172141 = r172139 * r172140;
double r172142 = r172138 + r172141;
double r172143 = 0.0001789971;
double r172144 = r172140 * r172128;
double r172145 = r172143 * r172144;
double r172146 = r172142 + r172145;
double r172147 = 0.7715471019;
double r172148 = r172147 * r172128;
double r172149 = r172126 + r172148;
double r172150 = 0.2909738639;
double r172151 = r172150 * r172132;
double r172152 = r172149 + r172151;
double r172153 = 0.0694555761;
double r172154 = r172153 * r172136;
double r172155 = r172152 + r172154;
double r172156 = 0.0140005442;
double r172157 = r172156 * r172140;
double r172158 = r172155 + r172157;
double r172159 = 0.0008327945;
double r172160 = r172159 * r172144;
double r172161 = r172158 + r172160;
double r172162 = 2.0;
double r172163 = r172162 * r172143;
double r172164 = r172144 * r172128;
double r172165 = r172163 * r172164;
double r172166 = r172161 + r172165;
double r172167 = r172146 / r172166;
double r172168 = sqrt(r172167);
double r172169 = r172168 * r172168;
double r172170 = r172169 * r172106;
double r172171 = r172112 ? r172125 : r172170;
return r172171;
}



Bits error versus x
if x < -831.6854308959747 or 2168.5227801871383 < x Initial program 59.4
Taylor expanded around inf 0.0
Simplified0.0
if -831.6854308959747 < x < 2168.5227801871383Initial program 0.0
rmApplied add-sqr-sqrt0.0
Final simplification0.0
herbie shell --seed 2020047 +o rules:numerics
(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))