Average Error: 1.6 → 1.6
Time: 35.6s
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{\log \left(e^{\frac{\frac{1}{2}}{\sqrt{\left(\sin ky \cdot \sin ky + \sin kx \cdot \sin kx\right) \cdot \left(\frac{2 \cdot \ell}{Om} \cdot \frac{2 \cdot \ell}{Om}\right) + 1}}}\right) + \frac{1}{2}}\]
\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{\log \left(e^{\frac{\frac{1}{2}}{\sqrt{\left(\sin ky \cdot \sin ky + \sin kx \cdot \sin kx\right) \cdot \left(\frac{2 \cdot \ell}{Om} \cdot \frac{2 \cdot \ell}{Om}\right) + 1}}}\right) + \frac{1}{2}}
double f(double l, double Om, double kx, double ky) {
        double r1363731 = 1.0;
        double r1363732 = 2.0;
        double r1363733 = r1363731 / r1363732;
        double r1363734 = l;
        double r1363735 = r1363732 * r1363734;
        double r1363736 = Om;
        double r1363737 = r1363735 / r1363736;
        double r1363738 = pow(r1363737, r1363732);
        double r1363739 = kx;
        double r1363740 = sin(r1363739);
        double r1363741 = pow(r1363740, r1363732);
        double r1363742 = ky;
        double r1363743 = sin(r1363742);
        double r1363744 = pow(r1363743, r1363732);
        double r1363745 = r1363741 + r1363744;
        double r1363746 = r1363738 * r1363745;
        double r1363747 = r1363731 + r1363746;
        double r1363748 = sqrt(r1363747);
        double r1363749 = r1363731 / r1363748;
        double r1363750 = r1363731 + r1363749;
        double r1363751 = r1363733 * r1363750;
        double r1363752 = sqrt(r1363751);
        return r1363752;
}

double f(double l, double Om, double kx, double ky) {
        double r1363753 = 0.5;
        double r1363754 = ky;
        double r1363755 = sin(r1363754);
        double r1363756 = r1363755 * r1363755;
        double r1363757 = kx;
        double r1363758 = sin(r1363757);
        double r1363759 = r1363758 * r1363758;
        double r1363760 = r1363756 + r1363759;
        double r1363761 = 2.0;
        double r1363762 = l;
        double r1363763 = r1363761 * r1363762;
        double r1363764 = Om;
        double r1363765 = r1363763 / r1363764;
        double r1363766 = r1363765 * r1363765;
        double r1363767 = r1363760 * r1363766;
        double r1363768 = 1.0;
        double r1363769 = r1363767 + r1363768;
        double r1363770 = sqrt(r1363769);
        double r1363771 = r1363753 / r1363770;
        double r1363772 = exp(r1363771);
        double r1363773 = log(r1363772);
        double r1363774 = r1363773 + r1363753;
        double r1363775 = sqrt(r1363774);
        return r1363775;
}

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. Simplified1.6

    \[\leadsto \color{blue}{\sqrt{\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}} + \frac{1}{2}}}\]
  3. Using strategy rm
  4. Applied add-log-exp1.6

    \[\leadsto \sqrt{\color{blue}{\log \left(e^{\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}}}\right)} + \frac{1}{2}}\]
  5. Final simplification1.6

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

Reproduce

herbie shell --seed 2019151 
(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))))))))))