Average Error: 13.4 → 8.7
Time: 8.7m
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 -1.8424936337956476 \cdot 10^{+198}:\\ \;\;\;\;\sqrt{1 - \frac{\frac{D}{\frac{\frac{\ell}{h}}{D}}}{\frac{2 \cdot d}{M} \cdot \frac{2 \cdot d}{M}}} \cdot w0\\ \mathbf{elif}\;M \cdot D \le -7.825691937265843 \cdot 10^{-166}:\\ \;\;\;\;\sqrt{1 - \frac{\left(\left(M \cdot D\right) \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot h}{\left(2 \cdot d\right) \cdot \ell}} \cdot w0\\ \mathbf{elif}\;M \cdot D \le 1.0402309426226118 \cdot 10^{-169}:\\ \;\;\;\;\sqrt{1 - \frac{\sqrt[3]{h} \cdot \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)}{\ell}} \cdot w0\\ \mathbf{elif}\;M \cdot D \le 1.878928443575417 \cdot 10^{+74}:\\ \;\;\;\;\sqrt{1 - \frac{\left(\left(M \cdot D\right) \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot h}{\left(2 \cdot d\right) \cdot \ell}} \cdot w0\\ \mathbf{else}:\\ \;\;\;\;w0 \cdot \sqrt{1 - \frac{\sqrt[3]{h}}{\ell} \cdot \left(\left(\left(\sqrt[3]{h} \cdot D\right) \cdot \frac{1}{\frac{2 \cdot d}{M}}\right) \cdot \frac{\sqrt[3]{h} \cdot D}{\frac{2 \cdot d}{M}}\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}\;M \cdot D \le -1.8424936337956476 \cdot 10^{+198}:\\
\;\;\;\;\sqrt{1 - \frac{\frac{D}{\frac{\frac{\ell}{h}}{D}}}{\frac{2 \cdot d}{M} \cdot \frac{2 \cdot d}{M}}} \cdot w0\\

\mathbf{elif}\;M \cdot D \le -7.825691937265843 \cdot 10^{-166}:\\
\;\;\;\;\sqrt{1 - \frac{\left(\left(M \cdot D\right) \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot h}{\left(2 \cdot d\right) \cdot \ell}} \cdot w0\\

\mathbf{elif}\;M \cdot D \le 1.0402309426226118 \cdot 10^{-169}:\\
\;\;\;\;\sqrt{1 - \frac{\sqrt[3]{h} \cdot \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)}{\ell}} \cdot w0\\

\mathbf{elif}\;M \cdot D \le 1.878928443575417 \cdot 10^{+74}:\\
\;\;\;\;\sqrt{1 - \frac{\left(\left(M \cdot D\right) \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot h}{\left(2 \cdot d\right) \cdot \ell}} \cdot w0\\

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

\end{array}
double f(double w0, double M, double D, double h, double l, double d) {
        double r99703419 = w0;
        double r99703420 = 1.0;
        double r99703421 = M;
        double r99703422 = D;
        double r99703423 = r99703421 * r99703422;
        double r99703424 = 2.0;
        double r99703425 = d;
        double r99703426 = r99703424 * r99703425;
        double r99703427 = r99703423 / r99703426;
        double r99703428 = pow(r99703427, r99703424);
        double r99703429 = h;
        double r99703430 = l;
        double r99703431 = r99703429 / r99703430;
        double r99703432 = r99703428 * r99703431;
        double r99703433 = r99703420 - r99703432;
        double r99703434 = sqrt(r99703433);
        double r99703435 = r99703419 * r99703434;
        return r99703435;
}

double f(double w0, double M, double D, double h, double l, double d) {
        double r99703436 = M;
        double r99703437 = D;
        double r99703438 = r99703436 * r99703437;
        double r99703439 = -1.8424936337956476e+198;
        bool r99703440 = r99703438 <= r99703439;
        double r99703441 = 1.0;
        double r99703442 = l;
        double r99703443 = h;
        double r99703444 = r99703442 / r99703443;
        double r99703445 = r99703444 / r99703437;
        double r99703446 = r99703437 / r99703445;
        double r99703447 = 2.0;
        double r99703448 = d;
        double r99703449 = r99703447 * r99703448;
        double r99703450 = r99703449 / r99703436;
        double r99703451 = r99703450 * r99703450;
        double r99703452 = r99703446 / r99703451;
        double r99703453 = r99703441 - r99703452;
        double r99703454 = sqrt(r99703453);
        double r99703455 = w0;
        double r99703456 = r99703454 * r99703455;
        double r99703457 = -7.825691937265843e-166;
        bool r99703458 = r99703438 <= r99703457;
        double r99703459 = r99703438 / r99703449;
        double r99703460 = r99703438 * r99703459;
        double r99703461 = r99703460 * r99703443;
        double r99703462 = r99703449 * r99703442;
        double r99703463 = r99703461 / r99703462;
        double r99703464 = r99703441 - r99703463;
        double r99703465 = sqrt(r99703464);
        double r99703466 = r99703465 * r99703455;
        double r99703467 = 1.0402309426226118e-169;
        bool r99703468 = r99703438 <= r99703467;
        double r99703469 = cbrt(r99703443);
        double r99703470 = r99703459 * r99703469;
        double r99703471 = r99703470 * r99703470;
        double r99703472 = r99703469 * r99703471;
        double r99703473 = r99703472 / r99703442;
        double r99703474 = r99703441 - r99703473;
        double r99703475 = sqrt(r99703474);
        double r99703476 = r99703475 * r99703455;
        double r99703477 = 1.878928443575417e+74;
        bool r99703478 = r99703438 <= r99703477;
        double r99703479 = r99703469 / r99703442;
        double r99703480 = r99703469 * r99703437;
        double r99703481 = r99703441 / r99703450;
        double r99703482 = r99703480 * r99703481;
        double r99703483 = r99703480 / r99703450;
        double r99703484 = r99703482 * r99703483;
        double r99703485 = r99703479 * r99703484;
        double r99703486 = r99703441 - r99703485;
        double r99703487 = sqrt(r99703486);
        double r99703488 = r99703455 * r99703487;
        double r99703489 = r99703478 ? r99703466 : r99703488;
        double r99703490 = r99703468 ? r99703476 : r99703489;
        double r99703491 = r99703458 ? r99703466 : r99703490;
        double r99703492 = r99703440 ? r99703456 : r99703491;
        return r99703492;
}

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 4 regimes
  2. if (* M D) < -1.8424936337956476e+198

    1. Initial program 41.8

      \[w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}\]
    2. Simplified41.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 *-un-lft-identity41.8

      \[\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-cbrt41.8

      \[\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-frac41.8

      \[\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*42.3

      \[\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. Using strategy rm
    9. Applied associate-*r/42.3

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

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

      \[\leadsto \sqrt{1 - \frac{\color{blue}{\left(\frac{D \cdot \sqrt[3]{h}}{\frac{2 \cdot d}{M}} \cdot \frac{D \cdot \sqrt[3]{h}}{\frac{2 \cdot d}{M}}\right) \cdot \frac{\sqrt[3]{h}}{\ell}}}{1}} \cdot w0\]
    12. Using strategy rm
    13. Applied div-inv33.0

      \[\leadsto \sqrt{1 - \frac{\left(\frac{D \cdot \sqrt[3]{h}}{\frac{2 \cdot d}{M}} \cdot \color{blue}{\left(\left(D \cdot \sqrt[3]{h}\right) \cdot \frac{1}{\frac{2 \cdot d}{M}}\right)}\right) \cdot \frac{\sqrt[3]{h}}{\ell}}{1}} \cdot w0\]
    14. Using strategy rm
    15. Applied un-div-inv33.0

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

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

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

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

    if -1.8424936337956476e+198 < (* M D) < -7.825691937265843e-166 or 1.0402309426226118e-169 < (* M D) < 1.878928443575417e+74

    1. Initial program 12.5

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

      \[\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.6

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

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

    if -7.825691937265843e-166 < (* M D) < 1.0402309426226118e-169

    1. Initial program 6.9

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

      \[\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-identity6.9

      \[\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-cbrt6.9

      \[\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-frac6.9

      \[\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*2.9

      \[\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. Using strategy rm
    9. Applied associate-*r/2.9

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

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

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

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

    if 1.878928443575417e+74 < (* M D)

    1. Initial program 27.5

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

      \[\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.5

      \[\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.3

      \[\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. Using strategy rm
    9. Applied associate-*r/27.3

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

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

      \[\leadsto \sqrt{1 - \frac{\color{blue}{\left(\frac{D \cdot \sqrt[3]{h}}{\frac{2 \cdot d}{M}} \cdot \frac{D \cdot \sqrt[3]{h}}{\frac{2 \cdot d}{M}}\right) \cdot \frac{\sqrt[3]{h}}{\ell}}}{1}} \cdot w0\]
    12. Using strategy rm
    13. Applied div-inv23.6

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;M \cdot D \le -1.8424936337956476 \cdot 10^{+198}:\\ \;\;\;\;\sqrt{1 - \frac{\frac{D}{\frac{\frac{\ell}{h}}{D}}}{\frac{2 \cdot d}{M} \cdot \frac{2 \cdot d}{M}}} \cdot w0\\ \mathbf{elif}\;M \cdot D \le -7.825691937265843 \cdot 10^{-166}:\\ \;\;\;\;\sqrt{1 - \frac{\left(\left(M \cdot D\right) \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot h}{\left(2 \cdot d\right) \cdot \ell}} \cdot w0\\ \mathbf{elif}\;M \cdot D \le 1.0402309426226118 \cdot 10^{-169}:\\ \;\;\;\;\sqrt{1 - \frac{\sqrt[3]{h} \cdot \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)}{\ell}} \cdot w0\\ \mathbf{elif}\;M \cdot D \le 1.878928443575417 \cdot 10^{+74}:\\ \;\;\;\;\sqrt{1 - \frac{\left(\left(M \cdot D\right) \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot h}{\left(2 \cdot d\right) \cdot \ell}} \cdot w0\\ \mathbf{else}:\\ \;\;\;\;w0 \cdot \sqrt{1 - \frac{\sqrt[3]{h}}{\ell} \cdot \left(\left(\left(\sqrt[3]{h} \cdot D\right) \cdot \frac{1}{\frac{2 \cdot d}{M}}\right) \cdot \frac{\sqrt[3]{h} \cdot D}{\frac{2 \cdot d}{M}}\right)}\\ \end{array}\]

Reproduce

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