w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(\left(\left(\sqrt[3]{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot h} \cdot \sqrt[3]{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot h}\right) \cdot \sqrt[3]{{\left(\frac{M \cdot D}{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 r197987 = w0;
double r197988 = 1.0;
double r197989 = M;
double r197990 = D;
double r197991 = r197989 * r197990;
double r197992 = 2.0;
double r197993 = d;
double r197994 = r197992 * r197993;
double r197995 = r197991 / r197994;
double r197996 = pow(r197995, r197992);
double r197997 = h;
double r197998 = l;
double r197999 = r197997 / r197998;
double r198000 = r197996 * r197999;
double r198001 = r197988 - r198000;
double r198002 = sqrt(r198001);
double r198003 = r197987 * r198002;
return r198003;
}
double f(double w0, double M, double D, double h, double l, double d) {
double r198004 = w0;
double r198005 = 1.0;
double r198006 = M;
double r198007 = D;
double r198008 = r198006 * r198007;
double r198009 = 2.0;
double r198010 = d;
double r198011 = r198009 * r198010;
double r198012 = r198008 / r198011;
double r198013 = 2.0;
double r198014 = r198009 / r198013;
double r198015 = pow(r198012, r198014);
double r198016 = h;
double r198017 = r198015 * r198016;
double r198018 = cbrt(r198017);
double r198019 = r198018 * r198018;
double r198020 = r198019 * r198018;
double r198021 = 1.0;
double r198022 = l;
double r198023 = r198021 / r198022;
double r198024 = r198020 * r198023;
double r198025 = r198015 * r198024;
double r198026 = r198005 - r198025;
double r198027 = sqrt(r198026);
double r198028 = r198004 * r198027;
return r198028;
}



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 div-inv14.3
Applied associate-*r*10.9
rmApplied sqr-pow10.9
Applied associate-*l*9.4
rmApplied associate-*l*8.7
rmApplied add-cube-cbrt8.7
Final simplification8.7
herbie shell --seed 2020033
(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))))))