w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}w0 \cdot \sqrt{1 - {\left(\frac{1}{\frac{2 \cdot d}{M \cdot D}}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(\left({\left(\left(M \cdot D\right) \cdot \frac{1}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot h\right) \cdot \frac{1}{\ell}\right)}double f(double w0, double M, double D, double h, double l, double d) {
double r177803 = w0;
double r177804 = 1.0;
double r177805 = M;
double r177806 = D;
double r177807 = r177805 * r177806;
double r177808 = 2.0;
double r177809 = d;
double r177810 = r177808 * r177809;
double r177811 = r177807 / r177810;
double r177812 = pow(r177811, r177808);
double r177813 = h;
double r177814 = l;
double r177815 = r177813 / r177814;
double r177816 = r177812 * r177815;
double r177817 = r177804 - r177816;
double r177818 = sqrt(r177817);
double r177819 = r177803 * r177818;
return r177819;
}
double f(double w0, double M, double D, double h, double l, double d) {
double r177820 = w0;
double r177821 = 1.0;
double r177822 = 1.0;
double r177823 = 2.0;
double r177824 = d;
double r177825 = r177823 * r177824;
double r177826 = M;
double r177827 = D;
double r177828 = r177826 * r177827;
double r177829 = r177825 / r177828;
double r177830 = r177822 / r177829;
double r177831 = 2.0;
double r177832 = r177823 / r177831;
double r177833 = pow(r177830, r177832);
double r177834 = r177822 / r177825;
double r177835 = r177828 * r177834;
double r177836 = pow(r177835, r177832);
double r177837 = h;
double r177838 = r177836 * r177837;
double r177839 = l;
double r177840 = r177822 / r177839;
double r177841 = r177838 * r177840;
double r177842 = r177833 * r177841;
double r177843 = r177821 - r177842;
double r177844 = sqrt(r177843);
double r177845 = r177820 * r177844;
return r177845;
}



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.4
rmApplied sqr-pow14.4
Applied associate-*l*12.6
rmApplied div-inv12.6
Applied associate-*r*8.8
rmApplied clear-num8.8
rmApplied div-inv8.8
Final simplification8.8
herbie shell --seed 2019325
(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))))))