Average Error: 13.8 → 8.4
Time: 1.9m
Precision: 64
\[w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}\]
\[w0 \cdot \sqrt{1 - \frac{\left(\left(\sqrt[3]{\frac{D \cdot M}{2 \cdot d}} \cdot \sqrt[3]{\frac{D \cdot M}{2 \cdot d}}\right) \cdot \sqrt[3]{\frac{D \cdot M}{2 \cdot d}}\right) \cdot h}{\ell} \cdot \frac{D \cdot M}{2 \cdot d}}\]
w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}
w0 \cdot \sqrt{1 - \frac{\left(\left(\sqrt[3]{\frac{D \cdot M}{2 \cdot d}} \cdot \sqrt[3]{\frac{D \cdot M}{2 \cdot d}}\right) \cdot \sqrt[3]{\frac{D \cdot M}{2 \cdot d}}\right) \cdot h}{\ell} \cdot \frac{D \cdot M}{2 \cdot d}}
double f(double w0, double M, double D, double h, double l, double d) {
        double r26036499 = w0;
        double r26036500 = 1.0;
        double r26036501 = M;
        double r26036502 = D;
        double r26036503 = r26036501 * r26036502;
        double r26036504 = 2.0;
        double r26036505 = d;
        double r26036506 = r26036504 * r26036505;
        double r26036507 = r26036503 / r26036506;
        double r26036508 = pow(r26036507, r26036504);
        double r26036509 = h;
        double r26036510 = l;
        double r26036511 = r26036509 / r26036510;
        double r26036512 = r26036508 * r26036511;
        double r26036513 = r26036500 - r26036512;
        double r26036514 = sqrt(r26036513);
        double r26036515 = r26036499 * r26036514;
        return r26036515;
}

double f(double w0, double M, double D, double h, double l, double d) {
        double r26036516 = w0;
        double r26036517 = 1.0;
        double r26036518 = D;
        double r26036519 = M;
        double r26036520 = r26036518 * r26036519;
        double r26036521 = 2.0;
        double r26036522 = d;
        double r26036523 = r26036521 * r26036522;
        double r26036524 = r26036520 / r26036523;
        double r26036525 = cbrt(r26036524);
        double r26036526 = r26036525 * r26036525;
        double r26036527 = r26036526 * r26036525;
        double r26036528 = h;
        double r26036529 = r26036527 * r26036528;
        double r26036530 = l;
        double r26036531 = r26036529 / r26036530;
        double r26036532 = r26036531 * r26036524;
        double r26036533 = r26036517 - r26036532;
        double r26036534 = sqrt(r26036533);
        double r26036535 = r26036516 * r26036534;
        return r26036535;
}

Error

Bits error versus w0

Bits error versus M

Bits error versus D

Bits error versus h

Bits error versus l

Bits error versus d

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 13.8

    \[w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}\]
  2. Simplified13.8

    \[\leadsto \color{blue}{\sqrt{1 - \left(\frac{M \cdot D}{2 \cdot d} \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot \frac{h}{\ell}} \cdot w0}\]
  3. Using strategy rm
  4. Applied associate-*l*12.2

    \[\leadsto \sqrt{1 - \color{blue}{\frac{M \cdot D}{2 \cdot d} \cdot \left(\frac{M \cdot D}{2 \cdot d} \cdot \frac{h}{\ell}\right)}} \cdot w0\]
  5. Using strategy rm
  6. Applied associate-*r/8.4

    \[\leadsto \sqrt{1 - \frac{M \cdot D}{2 \cdot d} \cdot \color{blue}{\frac{\frac{M \cdot D}{2 \cdot d} \cdot h}{\ell}}} \cdot w0\]
  7. Using strategy rm
  8. Applied add-cube-cbrt8.4

    \[\leadsto \sqrt{1 - \frac{M \cdot D}{2 \cdot d} \cdot \frac{\color{blue}{\left(\left(\sqrt[3]{\frac{M \cdot D}{2 \cdot d}} \cdot \sqrt[3]{\frac{M \cdot D}{2 \cdot d}}\right) \cdot \sqrt[3]{\frac{M \cdot D}{2 \cdot d}}\right)} \cdot h}{\ell}} \cdot w0\]
  9. Final simplification8.4

    \[\leadsto w0 \cdot \sqrt{1 - \frac{\left(\left(\sqrt[3]{\frac{D \cdot M}{2 \cdot d}} \cdot \sqrt[3]{\frac{D \cdot M}{2 \cdot d}}\right) \cdot \sqrt[3]{\frac{D \cdot M}{2 \cdot d}}\right) \cdot h}{\ell} \cdot \frac{D \cdot M}{2 \cdot d}}\]

Reproduce

herbie shell --seed 2019119 
(FPCore (w0 M D h l d)
  :name "Henrywood and Agarwal, Equation (9a)"
  (* w0 (sqrt (- 1 (* (pow (/ (* M D) (* 2 d)) 2) (/ h l))))))