Average Error: 59.5 → 33.7
Time: 49.9s
Precision: 64
\[\frac{c0}{2 \cdot w} \cdot \left(\frac{c0 \cdot \left(d \cdot d\right)}{\left(w \cdot h\right) \cdot \left(D \cdot D\right)} + \sqrt{\frac{c0 \cdot \left(d \cdot d\right)}{\left(w \cdot h\right) \cdot \left(D \cdot D\right)} \cdot \frac{c0 \cdot \left(d \cdot d\right)}{\left(w \cdot h\right) \cdot \left(D \cdot D\right)} - M \cdot M}\right)\]
\[\begin{array}{l} \mathbf{if}\;d \le -5.629048561142467075757424854093711272673 \cdot 10^{-98}:\\ \;\;\;\;0\\ \mathbf{elif}\;d \le 1.005607342248347511278327377708312147419 \cdot 10^{-125}:\\ \;\;\;\;\frac{c0}{2 \cdot w} \cdot \left(\left(\sqrt[3]{\sqrt{\left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) \cdot \left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) - M \cdot M} + \frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)} \cdot \sqrt[3]{\sqrt{\left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) \cdot \left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) - M \cdot M} + \frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)}\right) \cdot \sqrt[3]{\sqrt{\left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) \cdot \left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) - M \cdot M} + \frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)}\right)\\ \mathbf{else}:\\ \;\;\;\;0\\ \end{array}\]
\frac{c0}{2 \cdot w} \cdot \left(\frac{c0 \cdot \left(d \cdot d\right)}{\left(w \cdot h\right) \cdot \left(D \cdot D\right)} + \sqrt{\frac{c0 \cdot \left(d \cdot d\right)}{\left(w \cdot h\right) \cdot \left(D \cdot D\right)} \cdot \frac{c0 \cdot \left(d \cdot d\right)}{\left(w \cdot h\right) \cdot \left(D \cdot D\right)} - M \cdot M}\right)
\begin{array}{l}
\mathbf{if}\;d \le -5.629048561142467075757424854093711272673 \cdot 10^{-98}:\\
\;\;\;\;0\\

\mathbf{elif}\;d \le 1.005607342248347511278327377708312147419 \cdot 10^{-125}:\\
\;\;\;\;\frac{c0}{2 \cdot w} \cdot \left(\left(\sqrt[3]{\sqrt{\left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) \cdot \left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) - M \cdot M} + \frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)} \cdot \sqrt[3]{\sqrt{\left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) \cdot \left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) - M \cdot M} + \frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)}\right) \cdot \sqrt[3]{\sqrt{\left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) \cdot \left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) - M \cdot M} + \frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)}\right)\\

\mathbf{else}:\\
\;\;\;\;0\\

\end{array}
double f(double c0, double w, double h, double D, double d, double M) {
        double r13193988 = c0;
        double r13193989 = 2.0;
        double r13193990 = w;
        double r13193991 = r13193989 * r13193990;
        double r13193992 = r13193988 / r13193991;
        double r13193993 = d;
        double r13193994 = r13193993 * r13193993;
        double r13193995 = r13193988 * r13193994;
        double r13193996 = h;
        double r13193997 = r13193990 * r13193996;
        double r13193998 = D;
        double r13193999 = r13193998 * r13193998;
        double r13194000 = r13193997 * r13193999;
        double r13194001 = r13193995 / r13194000;
        double r13194002 = r13194001 * r13194001;
        double r13194003 = M;
        double r13194004 = r13194003 * r13194003;
        double r13194005 = r13194002 - r13194004;
        double r13194006 = sqrt(r13194005);
        double r13194007 = r13194001 + r13194006;
        double r13194008 = r13193992 * r13194007;
        return r13194008;
}

double f(double c0, double w, double h, double D, double d, double M) {
        double r13194009 = d;
        double r13194010 = -5.629048561142467e-98;
        bool r13194011 = r13194009 <= r13194010;
        double r13194012 = 0.0;
        double r13194013 = 1.0056073422483475e-125;
        bool r13194014 = r13194009 <= r13194013;
        double r13194015 = c0;
        double r13194016 = 2.0;
        double r13194017 = w;
        double r13194018 = r13194016 * r13194017;
        double r13194019 = r13194015 / r13194018;
        double r13194020 = h;
        double r13194021 = r13194017 * r13194020;
        double r13194022 = r13194015 / r13194021;
        double r13194023 = D;
        double r13194024 = r13194009 / r13194023;
        double r13194025 = r13194024 * r13194024;
        double r13194026 = r13194022 * r13194025;
        double r13194027 = r13194026 * r13194026;
        double r13194028 = M;
        double r13194029 = r13194028 * r13194028;
        double r13194030 = r13194027 - r13194029;
        double r13194031 = sqrt(r13194030);
        double r13194032 = r13194031 + r13194026;
        double r13194033 = cbrt(r13194032);
        double r13194034 = r13194033 * r13194033;
        double r13194035 = r13194034 * r13194033;
        double r13194036 = r13194019 * r13194035;
        double r13194037 = r13194014 ? r13194036 : r13194012;
        double r13194038 = r13194011 ? r13194012 : r13194037;
        return r13194038;
}

Error

Bits error versus c0

Bits error versus w

Bits error versus h

Bits error versus D

Bits error versus d

Bits error versus M

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 2 regimes
  2. if d < -5.629048561142467e-98 or 1.0056073422483475e-125 < d

    1. Initial program 59.2

      \[\frac{c0}{2 \cdot w} \cdot \left(\frac{c0 \cdot \left(d \cdot d\right)}{\left(w \cdot h\right) \cdot \left(D \cdot D\right)} + \sqrt{\frac{c0 \cdot \left(d \cdot d\right)}{\left(w \cdot h\right) \cdot \left(D \cdot D\right)} \cdot \frac{c0 \cdot \left(d \cdot d\right)}{\left(w \cdot h\right) \cdot \left(D \cdot D\right)} - M \cdot M}\right)\]
    2. Simplified55.7

      \[\leadsto \color{blue}{\frac{c0}{2 \cdot w} \cdot \left(\sqrt{\left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) \cdot \left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) - M \cdot M} + \frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right)}\]
    3. Taylor expanded around inf 33.1

      \[\leadsto \frac{c0}{2 \cdot w} \cdot \color{blue}{0}\]
    4. Using strategy rm
    5. Applied mul031.4

      \[\leadsto \color{blue}{0}\]

    if -5.629048561142467e-98 < d < 1.0056073422483475e-125

    1. Initial program 61.4

      \[\frac{c0}{2 \cdot w} \cdot \left(\frac{c0 \cdot \left(d \cdot d\right)}{\left(w \cdot h\right) \cdot \left(D \cdot D\right)} + \sqrt{\frac{c0 \cdot \left(d \cdot d\right)}{\left(w \cdot h\right) \cdot \left(D \cdot D\right)} \cdot \frac{c0 \cdot \left(d \cdot d\right)}{\left(w \cdot h\right) \cdot \left(D \cdot D\right)} - M \cdot M}\right)\]
    2. Simplified45.8

      \[\leadsto \color{blue}{\frac{c0}{2 \cdot w} \cdot \left(\sqrt{\left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) \cdot \left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) - M \cdot M} + \frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right)}\]
    3. Using strategy rm
    4. Applied add-cube-cbrt45.9

      \[\leadsto \frac{c0}{2 \cdot w} \cdot \color{blue}{\left(\left(\sqrt[3]{\sqrt{\left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) \cdot \left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) - M \cdot M} + \frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)} \cdot \sqrt[3]{\sqrt{\left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) \cdot \left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) - M \cdot M} + \frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)}\right) \cdot \sqrt[3]{\sqrt{\left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) \cdot \left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) - M \cdot M} + \frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)}\right)}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification33.7

    \[\leadsto \begin{array}{l} \mathbf{if}\;d \le -5.629048561142467075757424854093711272673 \cdot 10^{-98}:\\ \;\;\;\;0\\ \mathbf{elif}\;d \le 1.005607342248347511278327377708312147419 \cdot 10^{-125}:\\ \;\;\;\;\frac{c0}{2 \cdot w} \cdot \left(\left(\sqrt[3]{\sqrt{\left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) \cdot \left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) - M \cdot M} + \frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)} \cdot \sqrt[3]{\sqrt{\left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) \cdot \left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) - M \cdot M} + \frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)}\right) \cdot \sqrt[3]{\sqrt{\left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) \cdot \left(\frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)\right) - M \cdot M} + \frac{c0}{w \cdot h} \cdot \left(\frac{d}{D} \cdot \frac{d}{D}\right)}\right)\\ \mathbf{else}:\\ \;\;\;\;0\\ \end{array}\]

Reproduce

herbie shell --seed 2019173 
(FPCore (c0 w h D d M)
  :name "Henrywood and Agarwal, Equation (13)"
  (* (/ c0 (* 2.0 w)) (+ (/ (* c0 (* d d)) (* (* w h) (* D D))) (sqrt (- (* (/ (* c0 (* d d)) (* (* w h) (* D D))) (/ (* c0 (* d d)) (* (* w h) (* D D)))) (* M M))))))