Average Error: 13.4 → 8.9
Time: 11.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 - \left({\left(\left(M \cdot D\right) \cdot \frac{1}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot \left({\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot h\right)\right) \cdot \frac{1}{\ell}}\]
w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}
w0 \cdot \sqrt{1 - \left({\left(\left(M \cdot D\right) \cdot \frac{1}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot \left({\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot h\right)\right) \cdot \frac{1}{\ell}}
double f(double w0, double M, double D, double h, double l, double d) {
        double r204574 = w0;
        double r204575 = 1.0;
        double r204576 = M;
        double r204577 = D;
        double r204578 = r204576 * r204577;
        double r204579 = 2.0;
        double r204580 = d;
        double r204581 = r204579 * r204580;
        double r204582 = r204578 / r204581;
        double r204583 = pow(r204582, r204579);
        double r204584 = h;
        double r204585 = l;
        double r204586 = r204584 / r204585;
        double r204587 = r204583 * r204586;
        double r204588 = r204575 - r204587;
        double r204589 = sqrt(r204588);
        double r204590 = r204574 * r204589;
        return r204590;
}

double f(double w0, double M, double D, double h, double l, double d) {
        double r204591 = w0;
        double r204592 = 1.0;
        double r204593 = M;
        double r204594 = D;
        double r204595 = r204593 * r204594;
        double r204596 = 1.0;
        double r204597 = 2.0;
        double r204598 = d;
        double r204599 = r204597 * r204598;
        double r204600 = r204596 / r204599;
        double r204601 = r204595 * r204600;
        double r204602 = 2.0;
        double r204603 = r204597 / r204602;
        double r204604 = pow(r204601, r204603);
        double r204605 = r204595 / r204599;
        double r204606 = pow(r204605, r204603);
        double r204607 = h;
        double r204608 = r204606 * r204607;
        double r204609 = r204604 * r204608;
        double r204610 = l;
        double r204611 = r204596 / r204610;
        double r204612 = r204609 * r204611;
        double r204613 = r204592 - r204612;
        double r204614 = sqrt(r204613);
        double r204615 = r204591 * r204614;
        return r204615;
}

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.4

    \[w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}\]
  2. Using strategy rm
  3. Applied div-inv13.4

    \[\leadsto w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \color{blue}{\left(h \cdot \frac{1}{\ell}\right)}}\]
  4. Applied associate-*r*10.4

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

    \[\leadsto w0 \cdot \sqrt{1 - \left(\color{blue}{\left({\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)}\right)} \cdot h\right) \cdot \frac{1}{\ell}}\]
  7. Applied associate-*l*8.9

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

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

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

Reproduce

herbie shell --seed 2020018 +o rules:numerics
(FPCore (w0 M D h l d)
  :name "Henrywood and Agarwal, Equation (9a)"
  :precision binary64
  (* w0 (sqrt (- 1 (* (pow (/ (* M D) (* 2 d)) 2) (/ h l))))))