w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}w0 \cdot \sqrt{1 - \frac{\sqrt[3]{h}}{\sqrt[3]{\ell}} \cdot \left(\left(\frac{D \cdot M}{2 \cdot d} \cdot \frac{\sqrt[3]{h}}{\sqrt[3]{\ell}}\right) \cdot \left(\frac{1}{\sqrt[3]{\sqrt[3]{\ell}} \cdot \sqrt[3]{\sqrt[3]{\ell}}} \cdot \left(\frac{D \cdot M}{2 \cdot d} \cdot \frac{\sqrt[3]{h}}{\sqrt[3]{\sqrt[3]{\ell}}}\right)\right)\right)}double f(double w0, double M, double D, double h, double l, double d) {
double r4380793 = w0;
double r4380794 = 1.0;
double r4380795 = M;
double r4380796 = D;
double r4380797 = r4380795 * r4380796;
double r4380798 = 2.0;
double r4380799 = d;
double r4380800 = r4380798 * r4380799;
double r4380801 = r4380797 / r4380800;
double r4380802 = pow(r4380801, r4380798);
double r4380803 = h;
double r4380804 = l;
double r4380805 = r4380803 / r4380804;
double r4380806 = r4380802 * r4380805;
double r4380807 = r4380794 - r4380806;
double r4380808 = sqrt(r4380807);
double r4380809 = r4380793 * r4380808;
return r4380809;
}
double f(double w0, double M, double D, double h, double l, double d) {
double r4380810 = w0;
double r4380811 = 1.0;
double r4380812 = h;
double r4380813 = cbrt(r4380812);
double r4380814 = l;
double r4380815 = cbrt(r4380814);
double r4380816 = r4380813 / r4380815;
double r4380817 = D;
double r4380818 = M;
double r4380819 = r4380817 * r4380818;
double r4380820 = 2.0;
double r4380821 = d;
double r4380822 = r4380820 * r4380821;
double r4380823 = r4380819 / r4380822;
double r4380824 = r4380823 * r4380816;
double r4380825 = cbrt(r4380815);
double r4380826 = r4380825 * r4380825;
double r4380827 = r4380811 / r4380826;
double r4380828 = r4380813 / r4380825;
double r4380829 = r4380823 * r4380828;
double r4380830 = r4380827 * r4380829;
double r4380831 = r4380824 * r4380830;
double r4380832 = r4380816 * r4380831;
double r4380833 = r4380811 - r4380832;
double r4380834 = sqrt(r4380833);
double r4380835 = r4380810 * r4380834;
return r4380835;
}



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 13.4
Simplified13.4
rmApplied add-cube-cbrt13.4
Applied add-cube-cbrt13.4
Applied times-frac13.4
Applied associate-*r*10.4
Simplified7.9
rmApplied add-cube-cbrt7.9
Applied *-un-lft-identity7.9
Applied times-frac7.9
Applied associate-*l*7.9
Final simplification7.9
herbie shell --seed 2019133
(FPCore (w0 M D h l d)
:name "Henrywood and Agarwal, Equation (9a)"
(* w0 (sqrt (- 1 (* (pow (/ (* M D) (* 2 d)) 2) (/ h l))))))