Average Error: 1.6 → 1.6
Time: 7.9s
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{\sqrt{1 + {\left(\frac{2 \cdot \ell}{Om}\right)}^{2} \cdot \left({\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}\right)}}} \cdot \frac{1}{\sqrt{\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{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{\sqrt{1 + {\left(\frac{2 \cdot \ell}{Om}\right)}^{2} \cdot \left({\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}\right)}}} \cdot \frac{1}{\sqrt{\sqrt{1 + {\left(\frac{2 \cdot \ell}{Om}\right)}^{2} \cdot \left({\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}\right)}}}\right)}
double f(double l, double Om, double kx, double ky) {
        double r49149 = 1.0;
        double r49150 = 2.0;
        double r49151 = r49149 / r49150;
        double r49152 = l;
        double r49153 = r49150 * r49152;
        double r49154 = Om;
        double r49155 = r49153 / r49154;
        double r49156 = pow(r49155, r49150);
        double r49157 = kx;
        double r49158 = sin(r49157);
        double r49159 = pow(r49158, r49150);
        double r49160 = ky;
        double r49161 = sin(r49160);
        double r49162 = pow(r49161, r49150);
        double r49163 = r49159 + r49162;
        double r49164 = r49156 * r49163;
        double r49165 = r49149 + r49164;
        double r49166 = sqrt(r49165);
        double r49167 = r49149 / r49166;
        double r49168 = r49149 + r49167;
        double r49169 = r49151 * r49168;
        double r49170 = sqrt(r49169);
        return r49170;
}

double f(double l, double Om, double kx, double ky) {
        double r49171 = 1.0;
        double r49172 = 2.0;
        double r49173 = r49171 / r49172;
        double r49174 = 1.0;
        double r49175 = l;
        double r49176 = r49172 * r49175;
        double r49177 = Om;
        double r49178 = r49176 / r49177;
        double r49179 = pow(r49178, r49172);
        double r49180 = kx;
        double r49181 = sin(r49180);
        double r49182 = pow(r49181, r49172);
        double r49183 = ky;
        double r49184 = sin(r49183);
        double r49185 = pow(r49184, r49172);
        double r49186 = r49182 + r49185;
        double r49187 = r49179 * r49186;
        double r49188 = r49171 + r49187;
        double r49189 = sqrt(r49188);
        double r49190 = sqrt(r49189);
        double r49191 = r49174 / r49190;
        double r49192 = r49171 / r49190;
        double r49193 = r49191 * r49192;
        double r49194 = r49171 + r49193;
        double r49195 = r49173 * r49194;
        double r49196 = sqrt(r49195);
        return r49196;
}

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 add-sqr-sqrt1.6

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

    \[\leadsto \sqrt{\frac{1}{2} \cdot \left(1 + \frac{1}{\color{blue}{\sqrt{\sqrt{1 + {\left(\frac{2 \cdot \ell}{Om}\right)}^{2} \cdot \left({\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}\right)}} \cdot \sqrt{\sqrt{1 + {\left(\frac{2 \cdot \ell}{Om}\right)}^{2} \cdot \left({\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}\right)}}}}\right)}\]
  5. Applied *-un-lft-identity1.6

    \[\leadsto \sqrt{\frac{1}{2} \cdot \left(1 + \frac{\color{blue}{1 \cdot 1}}{\sqrt{\sqrt{1 + {\left(\frac{2 \cdot \ell}{Om}\right)}^{2} \cdot \left({\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}\right)}} \cdot \sqrt{\sqrt{1 + {\left(\frac{2 \cdot \ell}{Om}\right)}^{2} \cdot \left({\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}\right)}}}\right)}\]
  6. Applied times-frac1.6

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

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

Reproduce

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