Average Error: 1.8 → 1.5
Time: 33.0s
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} + \frac{\frac{1}{2}}{\sqrt{\left(\frac{\ell \cdot 2}{Om} \cdot \sqrt{\sin ky \cdot \sin ky + \sin kx \cdot \sin kx}\right) \cdot \left(\frac{\ell \cdot 2}{Om} \cdot \sqrt{\sin ky \cdot \sin ky + \sin kx \cdot \sin kx}\right) + 1}}}\]
\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} + \frac{\frac{1}{2}}{\sqrt{\left(\frac{\ell \cdot 2}{Om} \cdot \sqrt{\sin ky \cdot \sin ky + \sin kx \cdot \sin kx}\right) \cdot \left(\frac{\ell \cdot 2}{Om} \cdot \sqrt{\sin ky \cdot \sin ky + \sin kx \cdot \sin kx}\right) + 1}}}
double f(double l, double Om, double kx, double ky) {
        double r1261608 = 1.0;
        double r1261609 = 2.0;
        double r1261610 = r1261608 / r1261609;
        double r1261611 = l;
        double r1261612 = r1261609 * r1261611;
        double r1261613 = Om;
        double r1261614 = r1261612 / r1261613;
        double r1261615 = pow(r1261614, r1261609);
        double r1261616 = kx;
        double r1261617 = sin(r1261616);
        double r1261618 = pow(r1261617, r1261609);
        double r1261619 = ky;
        double r1261620 = sin(r1261619);
        double r1261621 = pow(r1261620, r1261609);
        double r1261622 = r1261618 + r1261621;
        double r1261623 = r1261615 * r1261622;
        double r1261624 = r1261608 + r1261623;
        double r1261625 = sqrt(r1261624);
        double r1261626 = r1261608 / r1261625;
        double r1261627 = r1261608 + r1261626;
        double r1261628 = r1261610 * r1261627;
        double r1261629 = sqrt(r1261628);
        return r1261629;
}

double f(double l, double Om, double kx, double ky) {
        double r1261630 = 0.5;
        double r1261631 = l;
        double r1261632 = 2.0;
        double r1261633 = r1261631 * r1261632;
        double r1261634 = Om;
        double r1261635 = r1261633 / r1261634;
        double r1261636 = ky;
        double r1261637 = sin(r1261636);
        double r1261638 = r1261637 * r1261637;
        double r1261639 = kx;
        double r1261640 = sin(r1261639);
        double r1261641 = r1261640 * r1261640;
        double r1261642 = r1261638 + r1261641;
        double r1261643 = sqrt(r1261642);
        double r1261644 = r1261635 * r1261643;
        double r1261645 = r1261644 * r1261644;
        double r1261646 = 1.0;
        double r1261647 = r1261645 + r1261646;
        double r1261648 = sqrt(r1261647);
        double r1261649 = r1261630 / r1261648;
        double r1261650 = r1261630 + r1261649;
        double r1261651 = sqrt(r1261650);
        return r1261651;
}

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.8

    \[\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. Simplified1.8

    \[\leadsto \color{blue}{\sqrt{\frac{1}{2} + \frac{\frac{1}{2}}{\sqrt{\left(\sin ky \cdot \sin ky + \sin kx \cdot \sin kx\right) \cdot \left(\frac{\ell \cdot 2}{Om} \cdot \frac{\ell \cdot 2}{Om}\right) + 1}}}}\]
  3. Using strategy rm
  4. Applied add-sqr-sqrt1.8

    \[\leadsto \sqrt{\frac{1}{2} + \frac{\frac{1}{2}}{\sqrt{\color{blue}{\left(\sqrt{\sin ky \cdot \sin ky + \sin kx \cdot \sin kx} \cdot \sqrt{\sin ky \cdot \sin ky + \sin kx \cdot \sin kx}\right)} \cdot \left(\frac{\ell \cdot 2}{Om} \cdot \frac{\ell \cdot 2}{Om}\right) + 1}}}\]
  5. Applied unswap-sqr1.5

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

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

Reproduce

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