Average Error: 13.3 → 8.2
Time: 3.1m
Precision: 64
\[w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}\]
\[{\left(1 - \frac{\frac{D \cdot M}{2 \cdot d}}{\ell} \cdot \left(\frac{D \cdot M}{2 \cdot d} \cdot h\right)\right)}^{\frac{1}{2}} \cdot w0\]
w0 \cdot \sqrt{1 - {\left(\frac{M \cdot D}{2 \cdot d}\right)}^{2} \cdot \frac{h}{\ell}}
{\left(1 - \frac{\frac{D \cdot M}{2 \cdot d}}{\ell} \cdot \left(\frac{D \cdot M}{2 \cdot d} \cdot h\right)\right)}^{\frac{1}{2}} \cdot w0
double f(double w0, double M, double D, double h, double l, double d) {
        double r38116886 = w0;
        double r38116887 = 1.0;
        double r38116888 = M;
        double r38116889 = D;
        double r38116890 = r38116888 * r38116889;
        double r38116891 = 2.0;
        double r38116892 = d;
        double r38116893 = r38116891 * r38116892;
        double r38116894 = r38116890 / r38116893;
        double r38116895 = pow(r38116894, r38116891);
        double r38116896 = h;
        double r38116897 = l;
        double r38116898 = r38116896 / r38116897;
        double r38116899 = r38116895 * r38116898;
        double r38116900 = r38116887 - r38116899;
        double r38116901 = sqrt(r38116900);
        double r38116902 = r38116886 * r38116901;
        return r38116902;
}

double f(double w0, double M, double D, double h, double l, double d) {
        double r38116903 = 1.0;
        double r38116904 = D;
        double r38116905 = M;
        double r38116906 = r38116904 * r38116905;
        double r38116907 = 2.0;
        double r38116908 = d;
        double r38116909 = r38116907 * r38116908;
        double r38116910 = r38116906 / r38116909;
        double r38116911 = l;
        double r38116912 = r38116910 / r38116911;
        double r38116913 = h;
        double r38116914 = r38116910 * r38116913;
        double r38116915 = r38116912 * r38116914;
        double r38116916 = r38116903 - r38116915;
        double r38116917 = 0.5;
        double r38116918 = pow(r38116916, r38116917);
        double r38116919 = w0;
        double r38116920 = r38116918 * r38116919;
        return r38116920;
}

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. Initial program 13.3

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

    \[\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/13.9

    \[\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-times12.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\]
  6. Using strategy rm
  7. Applied associate-/r*10.9

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

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

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

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

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

Reproduce

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