\frac{\left(5.99999999999999947 \cdot 10^{-4} + 0.050000000000000003 \cdot {r}^{2}\right) + 2 \cdot {r}^{4}}{2 \cdot {\left(0.0100000000000000002 + {r}^{2}\right)}^{\left(\frac{5}{2}\right)}}\frac{\left(5.99999999999999947 \cdot 10^{-4} + 0.050000000000000003 \cdot {r}^{2}\right) + 2 \cdot {r}^{4}}{2 \cdot {\left(0.0100000000000000002 + {r}^{2}\right)}^{\left(\frac{5}{2}\right)}}double code(double r) {
return ((double) (((double) (((double) (0.0006 + ((double) (0.05 * ((double) pow(r, 2.0)))))) + ((double) (2.0 * ((double) pow(r, 4.0)))))) / ((double) (2.0 * ((double) pow(((double) (0.01 + ((double) pow(r, 2.0)))), ((double) (5.0 / 2.0))))))));
}
double code(double r) {
return ((double) (((double) (((double) (0.0006 + ((double) (0.05 * ((double) pow(r, 2.0)))))) + ((double) (2.0 * ((double) pow(r, 4.0)))))) / ((double) (2.0 * ((double) pow(((double) (0.01 + ((double) pow(r, 2.0)))), ((double) (5.0 / 2.0))))))));
}



Bits error versus r
Results
Initial program 25.7
Final simplification25.7
herbie shell --seed 2020153
(FPCore (r)
:name "(/ (+ (+ 0.0006 (* 0.05 (pow r 2))) (* 2 (pow r 4))) (* 2 (pow (+ 0.01 (pow r 2)) (/ 5 2))))"
:precision binary64
(/ (+ (+ 0.0006 (* 0.05 (pow r 2.0))) (* 2.0 (pow r 4.0))) (* 2.0 (pow (+ 0.01 (pow r 2.0)) (/ 5.0 2.0)))))