Average Error: 1.6 → 1.3
Time: 20.7s
Precision: 64
\[\sqrt{\frac{1}{2} \cdot \left(1 + \frac{1}{\sqrt{1 + {\left(\frac{2 \cdot \ell}{Om}\right)}^{2} \cdot \left({\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}\right)}}\right)}\]
\[\sqrt{\frac{1}{2} \cdot \left(1 + \frac{1}{\sqrt{\left({\left(\frac{\ell \cdot 2}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left({\left(\sin ky\right)}^{2} + {\left(\sin kx\right)}^{2}\right)\right) \cdot {\left(\frac{\ell \cdot 2}{Om}\right)}^{\left(\frac{2}{2}\right)} + 1}}\right)}\]
\sqrt{\frac{1}{2} \cdot \left(1 + \frac{1}{\sqrt{1 + {\left(\frac{2 \cdot \ell}{Om}\right)}^{2} \cdot \left({\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}\right)}}\right)}
\sqrt{\frac{1}{2} \cdot \left(1 + \frac{1}{\sqrt{\left({\left(\frac{\ell \cdot 2}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left({\left(\sin ky\right)}^{2} + {\left(\sin kx\right)}^{2}\right)\right) \cdot {\left(\frac{\ell \cdot 2}{Om}\right)}^{\left(\frac{2}{2}\right)} + 1}}\right)}
double f(double l, double Om, double kx, double ky) {
        double r1247699 = 1.0;
        double r1247700 = 2.0;
        double r1247701 = r1247699 / r1247700;
        double r1247702 = l;
        double r1247703 = r1247700 * r1247702;
        double r1247704 = Om;
        double r1247705 = r1247703 / r1247704;
        double r1247706 = pow(r1247705, r1247700);
        double r1247707 = kx;
        double r1247708 = sin(r1247707);
        double r1247709 = pow(r1247708, r1247700);
        double r1247710 = ky;
        double r1247711 = sin(r1247710);
        double r1247712 = pow(r1247711, r1247700);
        double r1247713 = r1247709 + r1247712;
        double r1247714 = r1247706 * r1247713;
        double r1247715 = r1247699 + r1247714;
        double r1247716 = sqrt(r1247715);
        double r1247717 = r1247699 / r1247716;
        double r1247718 = r1247699 + r1247717;
        double r1247719 = r1247701 * r1247718;
        double r1247720 = sqrt(r1247719);
        return r1247720;
}

double f(double l, double Om, double kx, double ky) {
        double r1247721 = 1.0;
        double r1247722 = 2.0;
        double r1247723 = r1247721 / r1247722;
        double r1247724 = l;
        double r1247725 = r1247724 * r1247722;
        double r1247726 = Om;
        double r1247727 = r1247725 / r1247726;
        double r1247728 = 2.0;
        double r1247729 = r1247722 / r1247728;
        double r1247730 = pow(r1247727, r1247729);
        double r1247731 = ky;
        double r1247732 = sin(r1247731);
        double r1247733 = pow(r1247732, r1247722);
        double r1247734 = kx;
        double r1247735 = sin(r1247734);
        double r1247736 = pow(r1247735, r1247722);
        double r1247737 = r1247733 + r1247736;
        double r1247738 = r1247730 * r1247737;
        double r1247739 = r1247738 * r1247730;
        double r1247740 = r1247739 + r1247721;
        double r1247741 = sqrt(r1247740);
        double r1247742 = r1247721 / r1247741;
        double r1247743 = r1247721 + r1247742;
        double r1247744 = r1247723 * r1247743;
        double r1247745 = sqrt(r1247744);
        return r1247745;
}

Error

Bits error versus l

Bits error versus Om

Bits error versus kx

Bits error versus ky

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 1.6

    \[\sqrt{\frac{1}{2} \cdot \left(1 + \frac{1}{\sqrt{1 + {\left(\frac{2 \cdot \ell}{Om}\right)}^{2} \cdot \left({\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}\right)}}\right)}\]
  2. Using strategy rm
  3. Applied sqr-pow1.6

    \[\leadsto \sqrt{\frac{1}{2} \cdot \left(1 + \frac{1}{\sqrt{1 + \color{blue}{\left({\left(\frac{2 \cdot \ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot {\left(\frac{2 \cdot \ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right)} \cdot \left({\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}\right)}}\right)}\]
  4. Applied associate-*l*1.3

    \[\leadsto \sqrt{\frac{1}{2} \cdot \left(1 + \frac{1}{\sqrt{1 + \color{blue}{{\left(\frac{2 \cdot \ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left({\left(\frac{2 \cdot \ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left({\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}\right)\right)}}}\right)}\]
  5. Final simplification1.3

    \[\leadsto \sqrt{\frac{1}{2} \cdot \left(1 + \frac{1}{\sqrt{\left({\left(\frac{\ell \cdot 2}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left({\left(\sin ky\right)}^{2} + {\left(\sin kx\right)}^{2}\right)\right) \cdot {\left(\frac{\ell \cdot 2}{Om}\right)}^{\left(\frac{2}{2}\right)} + 1}}\right)}\]

Reproduce

herbie shell --seed 2019171 
(FPCore (l Om kx ky)
  :name "Toniolo and Linder, Equation (3a)"
  (sqrt (* (/ 1.0 2.0) (+ 1.0 (/ 1.0 (sqrt (+ 1.0 (* (pow (/ (* 2.0 l) Om) 2.0) (+ (pow (sin kx) 2.0) (pow (sin ky) 2.0))))))))))