c0 \cdot \sqrt{\frac{A}{V \cdot \ell}}\left(\left|\frac{\frac{\sqrt[3]{A}}{\sqrt[3]{\ell}}}{\sqrt[3]{V}}\right| \cdot c0\right) \cdot \sqrt{\frac{\frac{\left(\sqrt[3]{\sqrt[3]{A}} \cdot \sqrt[3]{\sqrt[3]{A}}\right) \cdot \sqrt[3]{\sqrt[3]{A}}}{\sqrt[3]{\ell}}}{\sqrt[3]{V}}}double f(double c0, double A, double V, double l) {
double r128385 = c0;
double r128386 = A;
double r128387 = V;
double r128388 = l;
double r128389 = r128387 * r128388;
double r128390 = r128386 / r128389;
double r128391 = sqrt(r128390);
double r128392 = r128385 * r128391;
return r128392;
}
double f(double c0, double A, double V, double l) {
double r128393 = A;
double r128394 = cbrt(r128393);
double r128395 = l;
double r128396 = cbrt(r128395);
double r128397 = r128394 / r128396;
double r128398 = V;
double r128399 = cbrt(r128398);
double r128400 = r128397 / r128399;
double r128401 = fabs(r128400);
double r128402 = c0;
double r128403 = r128401 * r128402;
double r128404 = cbrt(r128394);
double r128405 = r128404 * r128404;
double r128406 = r128405 * r128404;
double r128407 = r128406 / r128396;
double r128408 = r128407 / r128399;
double r128409 = sqrt(r128408);
double r128410 = r128403 * r128409;
return r128410;
}



Bits error versus c0



Bits error versus A



Bits error versus V



Bits error versus l
Results
Initial program 19.4
rmApplied add-cube-cbrt19.7
Applied times-frac18.3
rmApplied associate-*l/19.5
Simplified19.2
rmApplied add-cube-cbrt19.5
Applied add-cube-cbrt19.6
Applied add-cube-cbrt19.7
Applied times-frac19.7
Applied times-frac15.6
Applied sqrt-prod7.1
Applied associate-*r*7.1
Simplified1.2
rmApplied add-cube-cbrt1.3
Final simplification1.3
herbie shell --seed 2019325
(FPCore (c0 A V l)
:name "Henrywood and Agarwal, Equation (3)"
:precision binary64
(* c0 (sqrt (/ A (* V l)))))