Average Error: 13.8 → 8.1
Time: 33.3s
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}\;\frac{h}{\ell} = -\infty:\\ \;\;\;\;\sqrt[3]{\sqrt{1 - \frac{\frac{D \cdot M}{2}}{d} \cdot \frac{\left(\frac{\sqrt[3]{\frac{D \cdot M}{2}} \cdot \sqrt[3]{\frac{D \cdot M}{2}}}{\sqrt[3]{d} \cdot \sqrt[3]{d}} \cdot \frac{\sqrt[3]{\frac{D \cdot M}{2}}}{\sqrt[3]{d}}\right) \cdot h}{\ell}} \cdot \left(1 - \frac{\frac{D \cdot M}{2}}{d} \cdot \frac{\frac{\frac{D \cdot M}{2}}{d} \cdot h}{\ell}\right)} \cdot w0\\ \mathbf{elif}\;\frac{h}{\ell} \le -2.308843356560576 \cdot 10^{-249}:\\ \;\;\;\;\sqrt{1 - \frac{D \cdot M}{d \cdot 2} \cdot \left(\frac{h}{\ell} \cdot \frac{D \cdot M}{d \cdot 2}\right)} \cdot w0\\ \mathbf{else}:\\ \;\;\;\;\sqrt[3]{\left(1 - \frac{\frac{D \cdot M}{2}}{d} \cdot \frac{\frac{\frac{D \cdot M}{2}}{d} \cdot h}{\ell}\right) \cdot \sqrt{1 - \frac{h \cdot \left(\left(\sqrt[3]{\frac{D \cdot M}{2}} \cdot \sqrt[3]{\frac{D \cdot M}{2}}\right) \cdot \frac{\sqrt[3]{\frac{D \cdot M}{2}}}{d}\right)}{\ell} \cdot \frac{\frac{D \cdot M}{2}}{d}}} \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}\;\frac{h}{\ell} = -\infty:\\
\;\;\;\;\sqrt[3]{\sqrt{1 - \frac{\frac{D \cdot M}{2}}{d} \cdot \frac{\left(\frac{\sqrt[3]{\frac{D \cdot M}{2}} \cdot \sqrt[3]{\frac{D \cdot M}{2}}}{\sqrt[3]{d} \cdot \sqrt[3]{d}} \cdot \frac{\sqrt[3]{\frac{D \cdot M}{2}}}{\sqrt[3]{d}}\right) \cdot h}{\ell}} \cdot \left(1 - \frac{\frac{D \cdot M}{2}}{d} \cdot \frac{\frac{\frac{D \cdot M}{2}}{d} \cdot h}{\ell}\right)} \cdot w0\\

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

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

\end{array}
double f(double w0, double M, double D, double h, double l, double d) {
        double r4928429 = w0;
        double r4928430 = 1.0;
        double r4928431 = M;
        double r4928432 = D;
        double r4928433 = r4928431 * r4928432;
        double r4928434 = 2.0;
        double r4928435 = d;
        double r4928436 = r4928434 * r4928435;
        double r4928437 = r4928433 / r4928436;
        double r4928438 = pow(r4928437, r4928434);
        double r4928439 = h;
        double r4928440 = l;
        double r4928441 = r4928439 / r4928440;
        double r4928442 = r4928438 * r4928441;
        double r4928443 = r4928430 - r4928442;
        double r4928444 = sqrt(r4928443);
        double r4928445 = r4928429 * r4928444;
        return r4928445;
}

double f(double w0, double M, double D, double h, double l, double d) {
        double r4928446 = h;
        double r4928447 = l;
        double r4928448 = r4928446 / r4928447;
        double r4928449 = -inf.0;
        bool r4928450 = r4928448 <= r4928449;
        double r4928451 = 1.0;
        double r4928452 = D;
        double r4928453 = M;
        double r4928454 = r4928452 * r4928453;
        double r4928455 = 2.0;
        double r4928456 = r4928454 / r4928455;
        double r4928457 = d;
        double r4928458 = r4928456 / r4928457;
        double r4928459 = cbrt(r4928456);
        double r4928460 = r4928459 * r4928459;
        double r4928461 = cbrt(r4928457);
        double r4928462 = r4928461 * r4928461;
        double r4928463 = r4928460 / r4928462;
        double r4928464 = r4928459 / r4928461;
        double r4928465 = r4928463 * r4928464;
        double r4928466 = r4928465 * r4928446;
        double r4928467 = r4928466 / r4928447;
        double r4928468 = r4928458 * r4928467;
        double r4928469 = r4928451 - r4928468;
        double r4928470 = sqrt(r4928469);
        double r4928471 = r4928458 * r4928446;
        double r4928472 = r4928471 / r4928447;
        double r4928473 = r4928458 * r4928472;
        double r4928474 = r4928451 - r4928473;
        double r4928475 = r4928470 * r4928474;
        double r4928476 = cbrt(r4928475);
        double r4928477 = w0;
        double r4928478 = r4928476 * r4928477;
        double r4928479 = -2.308843356560576e-249;
        bool r4928480 = r4928448 <= r4928479;
        double r4928481 = r4928457 * r4928455;
        double r4928482 = r4928454 / r4928481;
        double r4928483 = r4928448 * r4928482;
        double r4928484 = r4928482 * r4928483;
        double r4928485 = r4928451 - r4928484;
        double r4928486 = sqrt(r4928485);
        double r4928487 = r4928486 * r4928477;
        double r4928488 = r4928459 / r4928457;
        double r4928489 = r4928460 * r4928488;
        double r4928490 = r4928446 * r4928489;
        double r4928491 = r4928490 / r4928447;
        double r4928492 = r4928491 * r4928458;
        double r4928493 = r4928451 - r4928492;
        double r4928494 = sqrt(r4928493);
        double r4928495 = r4928474 * r4928494;
        double r4928496 = cbrt(r4928495);
        double r4928497 = r4928496 * r4928477;
        double r4928498 = r4928480 ? r4928487 : r4928497;
        double r4928499 = r4928450 ? r4928478 : r4928498;
        return r4928499;
}

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 3 regimes
  2. if (/ h l) < -inf.0

    1. Initial program 61.8

      \[w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}\]
    2. Simplified61.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 add-cbrt-cube61.8

      \[\leadsto \color{blue}{\sqrt[3]{\left(\sqrt{1 - \left(\frac{M \cdot D}{2 \cdot d} \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot \frac{h}{\ell}} \cdot \sqrt{1 - \left(\frac{M \cdot D}{2 \cdot d} \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot \frac{h}{\ell}}\right) \cdot \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\]
    5. Simplified23.8

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

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

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

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

    if -inf.0 < (/ h l) < -2.308843356560576e-249

    1. Initial program 13.6

      \[w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}\]
    2. Simplified13.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 associate-*l*12.1

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

    if -2.308843356560576e-249 < (/ h l)

    1. Initial program 8.2

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

      \[\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 add-cbrt-cube8.2

      \[\leadsto \color{blue}{\sqrt[3]{\left(\sqrt{1 - \left(\frac{M \cdot D}{2 \cdot d} \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot \frac{h}{\ell}} \cdot \sqrt{1 - \left(\frac{M \cdot D}{2 \cdot d} \cdot \frac{M \cdot D}{2 \cdot d}\right) \cdot \frac{h}{\ell}}\right) \cdot \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\]
    5. Simplified2.8

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

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

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

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

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

Reproduce

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