w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}w0 \cdot \sqrt{1 - \left({\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot \left({\left(\frac{1}{\frac{2 \cdot d}{M \cdot D}}\right)}^{\left(\frac{2}{2}\right)} \cdot h\right)\right) \cdot \frac{1}{\ell}}double f(double w0, double M, double D, double h, double l, double d) {
double r223689 = w0;
double r223690 = 1.0;
double r223691 = M;
double r223692 = D;
double r223693 = r223691 * r223692;
double r223694 = 2.0;
double r223695 = d;
double r223696 = r223694 * r223695;
double r223697 = r223693 / r223696;
double r223698 = pow(r223697, r223694);
double r223699 = h;
double r223700 = l;
double r223701 = r223699 / r223700;
double r223702 = r223698 * r223701;
double r223703 = r223690 - r223702;
double r223704 = sqrt(r223703);
double r223705 = r223689 * r223704;
return r223705;
}
double f(double w0, double M, double D, double h, double l, double d) {
double r223706 = w0;
double r223707 = 1.0;
double r223708 = M;
double r223709 = D;
double r223710 = r223708 * r223709;
double r223711 = 2.0;
double r223712 = d;
double r223713 = r223711 * r223712;
double r223714 = r223710 / r223713;
double r223715 = 2.0;
double r223716 = r223711 / r223715;
double r223717 = pow(r223714, r223716);
double r223718 = 1.0;
double r223719 = r223713 / r223710;
double r223720 = r223718 / r223719;
double r223721 = pow(r223720, r223716);
double r223722 = h;
double r223723 = r223721 * r223722;
double r223724 = r223717 * r223723;
double r223725 = l;
double r223726 = r223718 / r223725;
double r223727 = r223724 * r223726;
double r223728 = r223707 - r223727;
double r223729 = sqrt(r223728);
double r223730 = r223706 * r223729;
return r223730;
}



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.2
Applied associate-*r*10.7
rmApplied sqr-pow10.7
Applied associate-*l*9.2
rmApplied clear-num9.2
Final simplification9.2
herbie shell --seed 2020021 +o rules:numerics
(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))))))