w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}w0 \cdot \sqrt{1 - \frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)}}{\sqrt[3]{\ell}} \cdot \frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot h}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}}double f(double w0, double M, double D, double h, double l, double d) {
double r197573 = w0;
double r197574 = 1.0;
double r197575 = M;
double r197576 = D;
double r197577 = r197575 * r197576;
double r197578 = 2.0;
double r197579 = d;
double r197580 = r197578 * r197579;
double r197581 = r197577 / r197580;
double r197582 = pow(r197581, r197578);
double r197583 = h;
double r197584 = l;
double r197585 = r197583 / r197584;
double r197586 = r197582 * r197585;
double r197587 = r197574 - r197586;
double r197588 = sqrt(r197587);
double r197589 = r197573 * r197588;
return r197589;
}
double f(double w0, double M, double D, double h, double l, double d) {
double r197590 = w0;
double r197591 = 1.0;
double r197592 = M;
double r197593 = D;
double r197594 = r197592 * r197593;
double r197595 = 2.0;
double r197596 = d;
double r197597 = r197595 * r197596;
double r197598 = r197594 / r197597;
double r197599 = 2.0;
double r197600 = r197595 / r197599;
double r197601 = pow(r197598, r197600);
double r197602 = l;
double r197603 = cbrt(r197602);
double r197604 = r197601 / r197603;
double r197605 = h;
double r197606 = r197601 * r197605;
double r197607 = r197603 * r197603;
double r197608 = r197606 / r197607;
double r197609 = r197604 * r197608;
double r197610 = r197591 - r197609;
double r197611 = sqrt(r197610);
double r197612 = r197590 * r197611;
return r197612;
}



Bits error versus w0



Bits error versus M



Bits error versus D



Bits error versus h



Bits error versus l



Bits error versus d
Results
Initial program 14.2
rmApplied add-cube-cbrt14.2
Applied *-un-lft-identity14.2
Applied times-frac14.2
Applied associate-*r*11.7
Simplified11.7
rmApplied sqr-pow11.7
Applied times-frac10.6
Applied associate-*l*9.3
rmApplied frac-times8.4
Final simplification8.4
herbie shell --seed 2019362
(FPCore (w0 M D h l d)
:name "Henrywood and Agarwal, Equation (9a)"
:precision binary64
(* w0 (sqrt (- 1 (* (pow (/ (* M D) (* 2 d)) 2) (/ h l))))))