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 r177833 = w0;
double r177834 = 1.0;
double r177835 = M;
double r177836 = D;
double r177837 = r177835 * r177836;
double r177838 = 2.0;
double r177839 = d;
double r177840 = r177838 * r177839;
double r177841 = r177837 / r177840;
double r177842 = pow(r177841, r177838);
double r177843 = h;
double r177844 = l;
double r177845 = r177843 / r177844;
double r177846 = r177842 * r177845;
double r177847 = r177834 - r177846;
double r177848 = sqrt(r177847);
double r177849 = r177833 * r177848;
return r177849;
}
double f(double w0, double M, double D, double h, double l, double d) {
double r177850 = w0;
double r177851 = 1.0;
double r177852 = 1.0;
double r177853 = 2.0;
double r177854 = d;
double r177855 = r177853 * r177854;
double r177856 = M;
double r177857 = D;
double r177858 = r177856 * r177857;
double r177859 = r177855 / r177858;
double r177860 = r177852 / r177859;
double r177861 = 2.0;
double r177862 = r177853 / r177861;
double r177863 = pow(r177860, r177862);
double r177864 = r177852 / r177855;
double r177865 = r177858 * r177864;
double r177866 = pow(r177865, r177862);
double r177867 = h;
double r177868 = r177866 * r177867;
double r177869 = l;
double r177870 = r177852 / r177869;
double r177871 = r177868 * r177870;
double r177872 = r177863 * r177871;
double r177873 = r177851 - r177872;
double r177874 = sqrt(r177873);
double r177875 = r177850 * r177874;
return r177875;
}



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))))))