\left({\left(\frac{d}{h}\right)}^{\left(\frac{1}{2}\right)} \cdot {\left(\frac{d}{\ell}\right)}^{\left(\frac{1}{2}\right)}\right) \cdot \left(1 - \left(\frac{1}{2} \cdot {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2}\right) \cdot \frac{h}{\ell}\right)\left(\left({\left(\frac{\sqrt[3]{d} \cdot \sqrt[3]{d}}{\sqrt[3]{h} \cdot \sqrt[3]{h}}\right)}^{\left(\frac{1}{2}\right)} \cdot {\left(\frac{\sqrt[3]{d}}{\sqrt[3]{h}}\right)}^{\left(\frac{1}{2}\right)}\right) \cdot \left(\left({\left(\frac{\sqrt[3]{d} \cdot \sqrt[3]{d}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}\right)}^{\left(\frac{\frac{1}{2}}{2}\right)} \cdot {\left(\frac{\sqrt[3]{d} \cdot \sqrt[3]{d}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}\right)}^{\left(\frac{\frac{1}{2}}{2}\right)}\right) \cdot {\left(\frac{\sqrt[3]{d}}{\sqrt[3]{\ell}}\right)}^{\left(\frac{1}{2}\right)}\right)\right) \cdot \left(1 - \left(\left(\frac{1}{2} \cdot {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2}\right) \cdot \frac{\sqrt[3]{h} \cdot \sqrt[3]{h}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}\right) \cdot \frac{\sqrt[3]{h}}{\sqrt[3]{\ell}}\right)double f(double d, double h, double l, double M, double D) {
double r330181 = d;
double r330182 = h;
double r330183 = r330181 / r330182;
double r330184 = 1.0;
double r330185 = 2.0;
double r330186 = r330184 / r330185;
double r330187 = pow(r330183, r330186);
double r330188 = l;
double r330189 = r330181 / r330188;
double r330190 = pow(r330189, r330186);
double r330191 = r330187 * r330190;
double r330192 = M;
double r330193 = D;
double r330194 = r330192 * r330193;
double r330195 = r330185 * r330181;
double r330196 = r330194 / r330195;
double r330197 = pow(r330196, r330185);
double r330198 = r330186 * r330197;
double r330199 = r330182 / r330188;
double r330200 = r330198 * r330199;
double r330201 = r330184 - r330200;
double r330202 = r330191 * r330201;
return r330202;
}
double f(double d, double h, double l, double M, double D) {
double r330203 = d;
double r330204 = cbrt(r330203);
double r330205 = r330204 * r330204;
double r330206 = h;
double r330207 = cbrt(r330206);
double r330208 = r330207 * r330207;
double r330209 = r330205 / r330208;
double r330210 = 1.0;
double r330211 = 2.0;
double r330212 = r330210 / r330211;
double r330213 = pow(r330209, r330212);
double r330214 = r330204 / r330207;
double r330215 = pow(r330214, r330212);
double r330216 = r330213 * r330215;
double r330217 = l;
double r330218 = cbrt(r330217);
double r330219 = r330218 * r330218;
double r330220 = r330205 / r330219;
double r330221 = 2.0;
double r330222 = r330212 / r330221;
double r330223 = pow(r330220, r330222);
double r330224 = r330223 * r330223;
double r330225 = r330204 / r330218;
double r330226 = pow(r330225, r330212);
double r330227 = r330224 * r330226;
double r330228 = r330216 * r330227;
double r330229 = M;
double r330230 = D;
double r330231 = r330229 * r330230;
double r330232 = r330211 * r330203;
double r330233 = r330231 / r330232;
double r330234 = pow(r330233, r330211);
double r330235 = r330212 * r330234;
double r330236 = r330208 / r330219;
double r330237 = r330235 * r330236;
double r330238 = r330207 / r330218;
double r330239 = r330237 * r330238;
double r330240 = r330210 - r330239;
double r330241 = r330228 * r330240;
return r330241;
}



Bits error versus d



Bits error versus h



Bits error versus l



Bits error versus M



Bits error versus D
Results
Initial program 26.4
rmApplied add-cube-cbrt26.7
Applied add-cube-cbrt26.8
Applied times-frac26.7
Applied unpow-prod-down21.1
rmApplied add-cube-cbrt21.2
Applied add-cube-cbrt21.4
Applied times-frac21.4
Applied unpow-prod-down17.5
rmApplied add-cube-cbrt17.5
Applied add-cube-cbrt17.5
Applied times-frac17.5
Applied associate-*r*14.8
rmApplied sqr-pow14.8
Final simplification14.8
herbie shell --seed 2020042
(FPCore (d h l M D)
:name "Henrywood and Agarwal, Equation (12)"
:precision binary64
(* (* (pow (/ d h) (/ 1 2)) (pow (/ d l) (/ 1 2))) (- 1 (* (* (/ 1 2) (pow (/ (* M D) (* 2 d)) 2)) (/ h l)))))