\frac{c0}{2 \cdot w} \cdot \left(\frac{c0 \cdot \left(d \cdot d\right)}{\left(w \cdot h\right) \cdot \left(D \cdot D\right)} + \sqrt{\frac{c0 \cdot \left(d \cdot d\right)}{\left(w \cdot h\right) \cdot \left(D \cdot D\right)} \cdot \frac{c0 \cdot \left(d \cdot d\right)}{\left(w \cdot h\right) \cdot \left(D \cdot D\right)} - M \cdot M}\right)0
double f(double c0, double w, double h, double D, double d, double M) {
double r218705 = c0;
double r218706 = 2.0;
double r218707 = w;
double r218708 = r218706 * r218707;
double r218709 = r218705 / r218708;
double r218710 = d;
double r218711 = r218710 * r218710;
double r218712 = r218705 * r218711;
double r218713 = h;
double r218714 = r218707 * r218713;
double r218715 = D;
double r218716 = r218715 * r218715;
double r218717 = r218714 * r218716;
double r218718 = r218712 / r218717;
double r218719 = r218718 * r218718;
double r218720 = M;
double r218721 = r218720 * r218720;
double r218722 = r218719 - r218721;
double r218723 = sqrt(r218722);
double r218724 = r218718 + r218723;
double r218725 = r218709 * r218724;
return r218725;
}
double f(double __attribute__((unused)) c0, double __attribute__((unused)) w, double __attribute__((unused)) h, double __attribute__((unused)) D, double __attribute__((unused)) d, double __attribute__((unused)) M) {
double r218726 = 0.0;
return r218726;
}



Bits error versus c0



Bits error versus w



Bits error versus h



Bits error versus D



Bits error versus d



Bits error versus M
Results
Initial program 59.4
Taylor expanded around inf 36.2
rmApplied add-cube-cbrt36.2
Simplified36.2
Simplified34.4
Final simplification34.4
herbie shell --seed 2019199
(FPCore (c0 w h D d M)
:name "Henrywood and Agarwal, Equation (13)"
(* (/ c0 (* 2.0 w)) (+ (/ (* c0 (* d d)) (* (* w h) (* D D))) (sqrt (- (* (/ (* c0 (* d d)) (* (* w h) (* D D))) (/ (* c0 (* d d)) (* (* w h) (* D D)))) (* M M))))))