Average Error: 14.3 → 9.0
Time: 36.5s
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(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)}}{\ell} \cdot \left({\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot h\right)}\]
w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}
w0 \cdot \sqrt{1 - \frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)}}{\ell} \cdot \left({\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot h\right)}
double f(double w0, double M, double D, double h, double l, double d) {
        double r137546 = w0;
        double r137547 = 1.0;
        double r137548 = M;
        double r137549 = D;
        double r137550 = r137548 * r137549;
        double r137551 = 2.0;
        double r137552 = d;
        double r137553 = r137551 * r137552;
        double r137554 = r137550 / r137553;
        double r137555 = pow(r137554, r137551);
        double r137556 = h;
        double r137557 = l;
        double r137558 = r137556 / r137557;
        double r137559 = r137555 * r137558;
        double r137560 = r137547 - r137559;
        double r137561 = sqrt(r137560);
        double r137562 = r137546 * r137561;
        return r137562;
}

double f(double w0, double M, double D, double h, double l, double d) {
        double r137563 = w0;
        double r137564 = 1.0;
        double r137565 = M;
        double r137566 = D;
        double r137567 = r137565 * r137566;
        double r137568 = 2.0;
        double r137569 = d;
        double r137570 = r137568 * r137569;
        double r137571 = r137567 / r137570;
        double r137572 = 2.0;
        double r137573 = r137568 / r137572;
        double r137574 = pow(r137571, r137573);
        double r137575 = l;
        double r137576 = r137574 / r137575;
        double r137577 = h;
        double r137578 = r137574 * r137577;
        double r137579 = r137576 * r137578;
        double r137580 = r137564 - r137579;
        double r137581 = sqrt(r137580);
        double r137582 = r137563 * r137581;
        return r137582;
}

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 14.3

    \[w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}\]
  2. Using strategy rm
  3. Applied associate-*r/11.0

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

    \[\leadsto w0 \cdot \sqrt{1 - \color{blue}{\frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2}}{\frac{\ell}{h}}}}\]
  6. Using strategy rm
  7. Applied div-inv13.8

    \[\leadsto w0 \cdot \sqrt{1 - \frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2}}{\color{blue}{\ell \cdot \frac{1}{h}}}}\]
  8. Applied sqr-pow13.8

    \[\leadsto w0 \cdot \sqrt{1 - \frac{\color{blue}{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)}}}{\ell \cdot \frac{1}{h}}}\]
  9. Applied times-frac9.0

    \[\leadsto w0 \cdot \sqrt{1 - \color{blue}{\frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)}}{\ell} \cdot \frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)}}{\frac{1}{h}}}}\]
  10. Simplified9.0

    \[\leadsto w0 \cdot \sqrt{1 - \frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)}}{\ell} \cdot \color{blue}{\left({\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot h\right)}}\]
  11. Final simplification9.0

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

Reproduce

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