w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}w0 \cdot \sqrt{1 - \frac{\left(\sqrt[3]{\frac{M \cdot D}{2 \cdot d}} \cdot \left(\sqrt[3]{\frac{M \cdot D}{2 \cdot d}} \cdot \sqrt[3]{\frac{M \cdot D}{2 \cdot d}}\right)\right) \cdot h}{\ell} \cdot \frac{M \cdot D}{2 \cdot d}}double f(double w0, double M, double D, double h, double l, double d) {
double r16896251 = w0;
double r16896252 = 1.0;
double r16896253 = M;
double r16896254 = D;
double r16896255 = r16896253 * r16896254;
double r16896256 = 2.0;
double r16896257 = d;
double r16896258 = r16896256 * r16896257;
double r16896259 = r16896255 / r16896258;
double r16896260 = pow(r16896259, r16896256);
double r16896261 = h;
double r16896262 = l;
double r16896263 = r16896261 / r16896262;
double r16896264 = r16896260 * r16896263;
double r16896265 = r16896252 - r16896264;
double r16896266 = sqrt(r16896265);
double r16896267 = r16896251 * r16896266;
return r16896267;
}
double f(double w0, double M, double D, double h, double l, double d) {
double r16896268 = w0;
double r16896269 = 1.0;
double r16896270 = M;
double r16896271 = D;
double r16896272 = r16896270 * r16896271;
double r16896273 = 2.0;
double r16896274 = d;
double r16896275 = r16896273 * r16896274;
double r16896276 = r16896272 / r16896275;
double r16896277 = cbrt(r16896276);
double r16896278 = r16896277 * r16896277;
double r16896279 = r16896277 * r16896278;
double r16896280 = h;
double r16896281 = r16896279 * r16896280;
double r16896282 = l;
double r16896283 = r16896281 / r16896282;
double r16896284 = r16896283 * r16896276;
double r16896285 = r16896269 - r16896284;
double r16896286 = sqrt(r16896285);
double r16896287 = r16896268 * r16896286;
return r16896287;
}



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.8
Simplified12.2
rmApplied associate-*l/8.4
rmApplied add-cube-cbrt8.4
Final simplification8.4
herbie shell --seed 2019119 +o rules:numerics
(FPCore (w0 M D h l d)
:name "Henrywood and Agarwal, Equation (9a)"
(* w0 (sqrt (- 1 (* (pow (/ (* M D) (* 2 d)) 2) (/ h l))))))