Average Error: 13.7 → 8.5
Time: 18.7s
Precision: 64
\[w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}\]
\[\begin{array}{l} \mathbf{if}\;D \le -3.827325132878031076153933281201222059758 \cdot 10^{158}:\\ \;\;\;\;w0 \cdot \sqrt{1 - {\left(\frac{M}{2} \cdot \frac{D}{d}\right)}^{2} \cdot \frac{h}{\ell}}\\ \mathbf{else}:\\ \;\;\;\;w0 \cdot \left(\sqrt{\sqrt{1 - \frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)}}{\sqrt[3]{\ell}} \cdot \left(\frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(\sqrt[3]{h} \cdot \sqrt[3]{h}\right)}{\sqrt[3]{\ell}} \cdot \frac{\sqrt[3]{h}}{\sqrt[3]{\ell}}\right)}} \cdot \sqrt{\sqrt{1 - \frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)}}{\sqrt[3]{\ell}} \cdot \left(\frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(\sqrt[3]{h} \cdot \sqrt[3]{h}\right)}{\sqrt[3]{\ell}} \cdot \frac{\sqrt[3]{h}}{\sqrt[3]{\ell}}\right)}}\right)\\ \end{array}\]
w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}
\begin{array}{l}
\mathbf{if}\;D \le -3.827325132878031076153933281201222059758 \cdot 10^{158}:\\
\;\;\;\;w0 \cdot \sqrt{1 - {\left(\frac{M}{2} \cdot \frac{D}{d}\right)}^{2} \cdot \frac{h}{\ell}}\\

\mathbf{else}:\\
\;\;\;\;w0 \cdot \left(\sqrt{\sqrt{1 - \frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)}}{\sqrt[3]{\ell}} \cdot \left(\frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(\sqrt[3]{h} \cdot \sqrt[3]{h}\right)}{\sqrt[3]{\ell}} \cdot \frac{\sqrt[3]{h}}{\sqrt[3]{\ell}}\right)}} \cdot \sqrt{\sqrt{1 - \frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)}}{\sqrt[3]{\ell}} \cdot \left(\frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(\sqrt[3]{h} \cdot \sqrt[3]{h}\right)}{\sqrt[3]{\ell}} \cdot \frac{\sqrt[3]{h}}{\sqrt[3]{\ell}}\right)}}\right)\\

\end{array}
double f(double w0, double M, double D, double h, double l, double d) {
        double r149520 = w0;
        double r149521 = 1.0;
        double r149522 = M;
        double r149523 = D;
        double r149524 = r149522 * r149523;
        double r149525 = 2.0;
        double r149526 = d;
        double r149527 = r149525 * r149526;
        double r149528 = r149524 / r149527;
        double r149529 = pow(r149528, r149525);
        double r149530 = h;
        double r149531 = l;
        double r149532 = r149530 / r149531;
        double r149533 = r149529 * r149532;
        double r149534 = r149521 - r149533;
        double r149535 = sqrt(r149534);
        double r149536 = r149520 * r149535;
        return r149536;
}

double f(double w0, double M, double D, double h, double l, double d) {
        double r149537 = D;
        double r149538 = -3.827325132878031e+158;
        bool r149539 = r149537 <= r149538;
        double r149540 = w0;
        double r149541 = 1.0;
        double r149542 = M;
        double r149543 = 2.0;
        double r149544 = r149542 / r149543;
        double r149545 = d;
        double r149546 = r149537 / r149545;
        double r149547 = r149544 * r149546;
        double r149548 = pow(r149547, r149543);
        double r149549 = h;
        double r149550 = l;
        double r149551 = r149549 / r149550;
        double r149552 = r149548 * r149551;
        double r149553 = r149541 - r149552;
        double r149554 = sqrt(r149553);
        double r149555 = r149540 * r149554;
        double r149556 = r149542 * r149537;
        double r149557 = r149543 * r149545;
        double r149558 = r149556 / r149557;
        double r149559 = 2.0;
        double r149560 = r149543 / r149559;
        double r149561 = pow(r149558, r149560);
        double r149562 = cbrt(r149550);
        double r149563 = r149561 / r149562;
        double r149564 = cbrt(r149549);
        double r149565 = r149564 * r149564;
        double r149566 = r149561 * r149565;
        double r149567 = r149566 / r149562;
        double r149568 = r149564 / r149562;
        double r149569 = r149567 * r149568;
        double r149570 = r149563 * r149569;
        double r149571 = r149541 - r149570;
        double r149572 = sqrt(r149571);
        double r149573 = sqrt(r149572);
        double r149574 = r149573 * r149573;
        double r149575 = r149540 * r149574;
        double r149576 = r149539 ? r149555 : r149575;
        return r149576;
}

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. Split input into 2 regimes
  2. if D < -3.827325132878031e+158

    1. Initial program 24.1

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

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

    if -3.827325132878031e+158 < D

    1. Initial program 12.9

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

      \[\leadsto w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\color{blue}{\left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right) \cdot \sqrt[3]{\ell}}}}\]
    4. Applied *-un-lft-identity12.9

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

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

      \[\leadsto w0 \cdot \sqrt{1 - \color{blue}{\left({\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{1}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}\right) \cdot \frac{h}{\sqrt[3]{\ell}}}}\]
    7. Simplified10.6

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

      \[\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)}}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}} \cdot \frac{h}{\sqrt[3]{\ell}}}\]
    10. Applied times-frac9.6

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

      \[\leadsto w0 \cdot \sqrt{1 - \color{blue}{\frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)}}{\sqrt[3]{\ell}} \cdot \left(\frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)}}{\sqrt[3]{\ell}} \cdot \frac{h}{\sqrt[3]{\ell}}\right)}}\]
    12. Using strategy rm
    13. Applied *-un-lft-identity8.7

      \[\leadsto w0 \cdot \sqrt{1 - \frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)}}{\sqrt[3]{\ell}} \cdot \left(\frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)}}{\sqrt[3]{\ell}} \cdot \frac{h}{\color{blue}{1 \cdot \sqrt[3]{\ell}}}\right)}\]
    14. Applied add-cube-cbrt8.7

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

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

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

      \[\leadsto w0 \cdot \sqrt{1 - \frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)}}{\sqrt[3]{\ell}} \cdot \left(\color{blue}{\frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(\sqrt[3]{h} \cdot \sqrt[3]{h}\right)}{\sqrt[3]{\ell}}} \cdot \frac{\sqrt[3]{h}}{\sqrt[3]{\ell}}\right)}\]
    18. Using strategy rm
    19. Applied add-sqr-sqrt7.3

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

      \[\leadsto w0 \cdot \color{blue}{\left(\sqrt{\sqrt{1 - \frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)}}{\sqrt[3]{\ell}} \cdot \left(\frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(\sqrt[3]{h} \cdot \sqrt[3]{h}\right)}{\sqrt[3]{\ell}} \cdot \frac{\sqrt[3]{h}}{\sqrt[3]{\ell}}\right)}} \cdot \sqrt{\sqrt{1 - \frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)}}{\sqrt[3]{\ell}} \cdot \left(\frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(\sqrt[3]{h} \cdot \sqrt[3]{h}\right)}{\sqrt[3]{\ell}} \cdot \frac{\sqrt[3]{h}}{\sqrt[3]{\ell}}\right)}}\right)}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification8.5

    \[\leadsto \begin{array}{l} \mathbf{if}\;D \le -3.827325132878031076153933281201222059758 \cdot 10^{158}:\\ \;\;\;\;w0 \cdot \sqrt{1 - {\left(\frac{M}{2} \cdot \frac{D}{d}\right)}^{2} \cdot \frac{h}{\ell}}\\ \mathbf{else}:\\ \;\;\;\;w0 \cdot \left(\sqrt{\sqrt{1 - \frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)}}{\sqrt[3]{\ell}} \cdot \left(\frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(\sqrt[3]{h} \cdot \sqrt[3]{h}\right)}{\sqrt[3]{\ell}} \cdot \frac{\sqrt[3]{h}}{\sqrt[3]{\ell}}\right)}} \cdot \sqrt{\sqrt{1 - \frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)}}{\sqrt[3]{\ell}} \cdot \left(\frac{{\left(\frac{M \cdot D}{2 \cdot d}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(\sqrt[3]{h} \cdot \sqrt[3]{h}\right)}{\sqrt[3]{\ell}} \cdot \frac{\sqrt[3]{h}}{\sqrt[3]{\ell}}\right)}}\right)\\ \end{array}\]

Reproduce

herbie shell --seed 2019308 
(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))))))