Average Error: 13.6 → 9.1
Time: 53.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}\;M \cdot D \le -2.0051469694348648 \cdot 10^{+137}:\\ \;\;\;\;\sqrt{1 - \sqrt[3]{\frac{\sqrt[3]{h}}{\ell}} \cdot \left(\left(\left(\frac{D}{d} \cdot \left(\frac{M}{2} \cdot \sqrt[3]{h}\right)\right) \cdot \sqrt[3]{\frac{\sqrt[3]{h}}{\ell}}\right) \cdot \left(\left(\frac{D}{d} \cdot \left(\frac{M}{2} \cdot \sqrt[3]{h}\right)\right) \cdot \sqrt[3]{\frac{\sqrt[3]{h}}{\ell}}\right)\right)} \cdot w0\\ \mathbf{elif}\;M \cdot D \le 355.80150624990387:\\ \;\;\;\;w0 \cdot \sqrt{1 - \frac{\frac{\frac{\left(M \cdot \left(D \cdot \sqrt[3]{h}\right)\right) \cdot \left(M \cdot \left(D \cdot \sqrt[3]{h}\right)\right)}{d \cdot 2} \cdot \sqrt[3]{h}}{\ell}}{d \cdot 2}}\\ \mathbf{else}:\\ \;\;\;\;\sqrt{1 - \sqrt[3]{\frac{\sqrt[3]{h}}{\ell}} \cdot \left(\left(\left(\frac{D}{d} \cdot \left(\frac{M}{2} \cdot \sqrt[3]{h}\right)\right) \cdot \sqrt[3]{\frac{\sqrt[3]{h}}{\ell}}\right) \cdot \left(\left(\frac{D}{d} \cdot \left(\frac{M}{2} \cdot \sqrt[3]{h}\right)\right) \cdot \sqrt[3]{\frac{\sqrt[3]{h}}{\ell}}\right)\right)} \cdot w0\\ \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}\;M \cdot D \le -2.0051469694348648 \cdot 10^{+137}:\\
\;\;\;\;\sqrt{1 - \sqrt[3]{\frac{\sqrt[3]{h}}{\ell}} \cdot \left(\left(\left(\frac{D}{d} \cdot \left(\frac{M}{2} \cdot \sqrt[3]{h}\right)\right) \cdot \sqrt[3]{\frac{\sqrt[3]{h}}{\ell}}\right) \cdot \left(\left(\frac{D}{d} \cdot \left(\frac{M}{2} \cdot \sqrt[3]{h}\right)\right) \cdot \sqrt[3]{\frac{\sqrt[3]{h}}{\ell}}\right)\right)} \cdot w0\\

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

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

\end{array}
double f(double w0, double M, double D, double h, double l, double d) {
        double r6001601 = w0;
        double r6001602 = 1.0;
        double r6001603 = M;
        double r6001604 = D;
        double r6001605 = r6001603 * r6001604;
        double r6001606 = 2.0;
        double r6001607 = d;
        double r6001608 = r6001606 * r6001607;
        double r6001609 = r6001605 / r6001608;
        double r6001610 = pow(r6001609, r6001606);
        double r6001611 = h;
        double r6001612 = l;
        double r6001613 = r6001611 / r6001612;
        double r6001614 = r6001610 * r6001613;
        double r6001615 = r6001602 - r6001614;
        double r6001616 = sqrt(r6001615);
        double r6001617 = r6001601 * r6001616;
        return r6001617;
}

double f(double w0, double M, double D, double h, double l, double d) {
        double r6001618 = M;
        double r6001619 = D;
        double r6001620 = r6001618 * r6001619;
        double r6001621 = -2.0051469694348648e+137;
        bool r6001622 = r6001620 <= r6001621;
        double r6001623 = 1.0;
        double r6001624 = h;
        double r6001625 = cbrt(r6001624);
        double r6001626 = l;
        double r6001627 = r6001625 / r6001626;
        double r6001628 = cbrt(r6001627);
        double r6001629 = d;
        double r6001630 = r6001619 / r6001629;
        double r6001631 = 2.0;
        double r6001632 = r6001618 / r6001631;
        double r6001633 = r6001632 * r6001625;
        double r6001634 = r6001630 * r6001633;
        double r6001635 = r6001634 * r6001628;
        double r6001636 = r6001635 * r6001635;
        double r6001637 = r6001628 * r6001636;
        double r6001638 = r6001623 - r6001637;
        double r6001639 = sqrt(r6001638);
        double r6001640 = w0;
        double r6001641 = r6001639 * r6001640;
        double r6001642 = 355.80150624990387;
        bool r6001643 = r6001620 <= r6001642;
        double r6001644 = r6001619 * r6001625;
        double r6001645 = r6001618 * r6001644;
        double r6001646 = r6001645 * r6001645;
        double r6001647 = r6001629 * r6001631;
        double r6001648 = r6001646 / r6001647;
        double r6001649 = r6001648 * r6001625;
        double r6001650 = r6001649 / r6001626;
        double r6001651 = r6001650 / r6001647;
        double r6001652 = r6001623 - r6001651;
        double r6001653 = sqrt(r6001652);
        double r6001654 = r6001640 * r6001653;
        double r6001655 = r6001643 ? r6001654 : r6001641;
        double r6001656 = r6001622 ? r6001641 : r6001655;
        return r6001656;
}

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 (* M D) < -2.0051469694348648e+137 or 355.80150624990387 < (* M D)

    1. Initial program 27.6

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

      \[\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 *-un-lft-identity27.6

      \[\leadsto \sqrt{1 - \left(\frac{M \cdot D}{2 \cdot d} \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot \frac{h}{\color{blue}{1 \cdot \ell}}} \cdot w0\]
    5. Applied add-cube-cbrt27.6

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

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

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

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

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

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

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

    if -2.0051469694348648e+137 < (* M D) < 355.80150624990387

    1. Initial program 9.1

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

      \[\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 *-un-lft-identity9.1

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

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

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

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

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

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

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

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

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

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

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

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

Reproduce

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