Average Error: 58.2 → 32.8
Time: 1.1m
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}\;\frac{c0}{w \cdot 2} \cdot \left(\sqrt{\frac{c0 \cdot \left(d \cdot d\right)}{\left(D \cdot D\right) \cdot \left(w \cdot h\right)} \cdot \frac{c0 \cdot \left(d \cdot d\right)}{\left(D \cdot D\right) \cdot \left(w \cdot h\right)} - M \cdot M} + \frac{c0 \cdot \left(d \cdot d\right)}{\left(D \cdot D\right) \cdot \left(w \cdot h\right)}\right) \le 3.9339264335359494 \cdot 10^{+223}:\\ \;\;\;\;\frac{c0}{2} \cdot \frac{\frac{c0 \cdot \frac{d}{D}}{\frac{w \cdot h}{\frac{d}{D}}} + \sqrt{\left(\frac{c0 \cdot \frac{d}{D}}{\frac{w \cdot h}{\frac{d}{D}}} - M\right) \cdot \left(M + \frac{\frac{d}{D} \cdot \left(c0 \cdot \frac{d}{D}\right)}{w \cdot h}\right)}}{w}\\ \mathbf{else}:\\ \;\;\;\;\frac{c0}{2} \cdot \frac{0}{w}\\ \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}\;\frac{c0}{w \cdot 2} \cdot \left(\sqrt{\frac{c0 \cdot \left(d \cdot d\right)}{\left(D \cdot D\right) \cdot \left(w \cdot h\right)} \cdot \frac{c0 \cdot \left(d \cdot d\right)}{\left(D \cdot D\right) \cdot \left(w \cdot h\right)} - M \cdot M} + \frac{c0 \cdot \left(d \cdot d\right)}{\left(D \cdot D\right) \cdot \left(w \cdot h\right)}\right) \le 3.9339264335359494 \cdot 10^{+223}:\\
\;\;\;\;\frac{c0}{2} \cdot \frac{\frac{c0 \cdot \frac{d}{D}}{\frac{w \cdot h}{\frac{d}{D}}} + \sqrt{\left(\frac{c0 \cdot \frac{d}{D}}{\frac{w \cdot h}{\frac{d}{D}}} - M\right) \cdot \left(M + \frac{\frac{d}{D} \cdot \left(c0 \cdot \frac{d}{D}\right)}{w \cdot h}\right)}}{w}\\

\mathbf{else}:\\
\;\;\;\;\frac{c0}{2} \cdot \frac{0}{w}\\

\end{array}
double f(double c0, double w, double h, double D, double d, double M) {
        double r7034815 = c0;
        double r7034816 = 2.0;
        double r7034817 = w;
        double r7034818 = r7034816 * r7034817;
        double r7034819 = r7034815 / r7034818;
        double r7034820 = d;
        double r7034821 = r7034820 * r7034820;
        double r7034822 = r7034815 * r7034821;
        double r7034823 = h;
        double r7034824 = r7034817 * r7034823;
        double r7034825 = D;
        double r7034826 = r7034825 * r7034825;
        double r7034827 = r7034824 * r7034826;
        double r7034828 = r7034822 / r7034827;
        double r7034829 = r7034828 * r7034828;
        double r7034830 = M;
        double r7034831 = r7034830 * r7034830;
        double r7034832 = r7034829 - r7034831;
        double r7034833 = sqrt(r7034832);
        double r7034834 = r7034828 + r7034833;
        double r7034835 = r7034819 * r7034834;
        return r7034835;
}

double f(double c0, double w, double h, double D, double d, double M) {
        double r7034836 = c0;
        double r7034837 = w;
        double r7034838 = 2.0;
        double r7034839 = r7034837 * r7034838;
        double r7034840 = r7034836 / r7034839;
        double r7034841 = d;
        double r7034842 = r7034841 * r7034841;
        double r7034843 = r7034836 * r7034842;
        double r7034844 = D;
        double r7034845 = r7034844 * r7034844;
        double r7034846 = h;
        double r7034847 = r7034837 * r7034846;
        double r7034848 = r7034845 * r7034847;
        double r7034849 = r7034843 / r7034848;
        double r7034850 = r7034849 * r7034849;
        double r7034851 = M;
        double r7034852 = r7034851 * r7034851;
        double r7034853 = r7034850 - r7034852;
        double r7034854 = sqrt(r7034853);
        double r7034855 = r7034854 + r7034849;
        double r7034856 = r7034840 * r7034855;
        double r7034857 = 3.9339264335359494e+223;
        bool r7034858 = r7034856 <= r7034857;
        double r7034859 = r7034836 / r7034838;
        double r7034860 = r7034841 / r7034844;
        double r7034861 = r7034836 * r7034860;
        double r7034862 = r7034847 / r7034860;
        double r7034863 = r7034861 / r7034862;
        double r7034864 = r7034863 - r7034851;
        double r7034865 = r7034860 * r7034861;
        double r7034866 = r7034865 / r7034847;
        double r7034867 = r7034851 + r7034866;
        double r7034868 = r7034864 * r7034867;
        double r7034869 = sqrt(r7034868);
        double r7034870 = r7034863 + r7034869;
        double r7034871 = r7034870 / r7034837;
        double r7034872 = r7034859 * r7034871;
        double r7034873 = 0.0;
        double r7034874 = r7034873 / r7034837;
        double r7034875 = r7034859 * r7034874;
        double r7034876 = r7034858 ? r7034872 : r7034875;
        return r7034876;
}

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 (* (/ c0 (* 2 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))))) < 3.9339264335359494e+223

    1. Initial program 35.3

      \[\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. Simplified34.2

      \[\leadsto \color{blue}{\frac{c0}{2} \cdot \frac{\sqrt{\left(M + \frac{\left(c0 \cdot \frac{d}{D}\right) \cdot \frac{d}{D}}{w \cdot h}\right) \cdot \left(\frac{\left(c0 \cdot \frac{d}{D}\right) \cdot \frac{d}{D}}{w \cdot h} - M\right)} + \frac{\left(c0 \cdot \frac{d}{D}\right) \cdot \frac{d}{D}}{w \cdot h}}{w}}\]
    3. Using strategy rm
    4. Applied associate-/l*35.6

      \[\leadsto \frac{c0}{2} \cdot \frac{\sqrt{\left(M + \frac{\left(c0 \cdot \frac{d}{D}\right) \cdot \frac{d}{D}}{w \cdot h}\right) \cdot \left(\color{blue}{\frac{c0 \cdot \frac{d}{D}}{\frac{w \cdot h}{\frac{d}{D}}}} - M\right)} + \frac{\left(c0 \cdot \frac{d}{D}\right) \cdot \frac{d}{D}}{w \cdot h}}{w}\]
    5. Using strategy rm
    6. Applied associate-/l*35.2

      \[\leadsto \frac{c0}{2} \cdot \frac{\sqrt{\left(M + \frac{\left(c0 \cdot \frac{d}{D}\right) \cdot \frac{d}{D}}{w \cdot h}\right) \cdot \left(\frac{c0 \cdot \frac{d}{D}}{\frac{w \cdot h}{\frac{d}{D}}} - M\right)} + \color{blue}{\frac{c0 \cdot \frac{d}{D}}{\frac{w \cdot h}{\frac{d}{D}}}}}{w}\]

    if 3.9339264335359494e+223 < (* (/ c0 (* 2 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)))))

    1. Initial program 62.6

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

      \[\leadsto \color{blue}{\frac{c0}{2} \cdot \frac{\sqrt{\left(M + \frac{\left(c0 \cdot \frac{d}{D}\right) \cdot \frac{d}{D}}{w \cdot h}\right) \cdot \left(\frac{\left(c0 \cdot \frac{d}{D}\right) \cdot \frac{d}{D}}{w \cdot h} - M\right)} + \frac{\left(c0 \cdot \frac{d}{D}\right) \cdot \frac{d}{D}}{w \cdot h}}{w}}\]
    3. Using strategy rm
    4. Applied associate-/l*56.1

      \[\leadsto \frac{c0}{2} \cdot \frac{\sqrt{\left(M + \frac{\left(c0 \cdot \frac{d}{D}\right) \cdot \frac{d}{D}}{w \cdot h}\right) \cdot \left(\color{blue}{\frac{c0 \cdot \frac{d}{D}}{\frac{w \cdot h}{\frac{d}{D}}}} - M\right)} + \frac{\left(c0 \cdot \frac{d}{D}\right) \cdot \frac{d}{D}}{w \cdot h}}{w}\]
    5. Using strategy rm
    6. Applied *-un-lft-identity56.1

      \[\leadsto \frac{c0}{2} \cdot \frac{\sqrt{\left(M + \frac{\left(c0 \cdot \frac{d}{D}\right) \cdot \frac{d}{D}}{w \cdot h}\right) \cdot \left(\frac{c0 \cdot \frac{d}{D}}{\frac{w \cdot h}{\frac{d}{D}}} - M\right)} + \color{blue}{1 \cdot \frac{\left(c0 \cdot \frac{d}{D}\right) \cdot \frac{d}{D}}{w \cdot h}}}{w}\]
    7. Applied *-un-lft-identity56.1

      \[\leadsto \frac{c0}{2} \cdot \frac{\color{blue}{1 \cdot \sqrt{\left(M + \frac{\left(c0 \cdot \frac{d}{D}\right) \cdot \frac{d}{D}}{w \cdot h}\right) \cdot \left(\frac{c0 \cdot \frac{d}{D}}{\frac{w \cdot h}{\frac{d}{D}}} - M\right)}} + 1 \cdot \frac{\left(c0 \cdot \frac{d}{D}\right) \cdot \frac{d}{D}}{w \cdot h}}{w}\]
    8. Applied distribute-lft-out56.1

      \[\leadsto \frac{c0}{2} \cdot \frac{\color{blue}{1 \cdot \left(\sqrt{\left(M + \frac{\left(c0 \cdot \frac{d}{D}\right) \cdot \frac{d}{D}}{w \cdot h}\right) \cdot \left(\frac{c0 \cdot \frac{d}{D}}{\frac{w \cdot h}{\frac{d}{D}}} - M\right)} + \frac{\left(c0 \cdot \frac{d}{D}\right) \cdot \frac{d}{D}}{w \cdot h}\right)}}{w}\]
    9. Simplified55.9

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

      \[\leadsto \frac{c0}{2} \cdot \frac{1 \cdot \color{blue}{0}}{w}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification32.8

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

Reproduce

herbie shell --seed 2019163 
(FPCore (c0 w h D d M)
  :name "Henrywood and Agarwal, Equation (13)"
  (* (/ c0 (* 2 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))))))