Average Error: 1.6 → 1.6
Time: 10.4s
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 + \left(\sqrt[3]{\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)}}} \cdot \sqrt[3]{\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) \cdot \sqrt[3]{\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{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 + \left(\sqrt[3]{\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)}}} \cdot \sqrt[3]{\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) \cdot \sqrt[3]{\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)}
double f(double l, double Om, double kx, double ky) {
        double r59397 = 1.0;
        double r59398 = 2.0;
        double r59399 = r59397 / r59398;
        double r59400 = l;
        double r59401 = r59398 * r59400;
        double r59402 = Om;
        double r59403 = r59401 / r59402;
        double r59404 = pow(r59403, r59398);
        double r59405 = kx;
        double r59406 = sin(r59405);
        double r59407 = pow(r59406, r59398);
        double r59408 = ky;
        double r59409 = sin(r59408);
        double r59410 = pow(r59409, r59398);
        double r59411 = r59407 + r59410;
        double r59412 = r59404 * r59411;
        double r59413 = r59397 + r59412;
        double r59414 = sqrt(r59413);
        double r59415 = r59397 / r59414;
        double r59416 = r59397 + r59415;
        double r59417 = r59399 * r59416;
        double r59418 = sqrt(r59417);
        return r59418;
}

double f(double l, double Om, double kx, double ky) {
        double r59419 = 1.0;
        double r59420 = 2.0;
        double r59421 = r59419 / r59420;
        double r59422 = l;
        double r59423 = r59420 * r59422;
        double r59424 = Om;
        double r59425 = r59423 / r59424;
        double r59426 = pow(r59425, r59420);
        double r59427 = kx;
        double r59428 = sin(r59427);
        double r59429 = pow(r59428, r59420);
        double r59430 = ky;
        double r59431 = sin(r59430);
        double r59432 = pow(r59431, r59420);
        double r59433 = r59429 + r59432;
        double r59434 = r59426 * r59433;
        double r59435 = r59419 + r59434;
        double r59436 = sqrt(r59435);
        double r59437 = r59419 / r59436;
        double r59438 = cbrt(r59437);
        double r59439 = r59438 * r59438;
        double r59440 = r59439 * r59438;
        double r59441 = r59419 + r59440;
        double r59442 = r59421 * r59441;
        double r59443 = sqrt(r59442);
        return r59443;
}

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-cube-cbrt1.6

    \[\leadsto \sqrt{\frac{1}{2} \cdot \left(1 + \color{blue}{\left(\sqrt[3]{\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)}}} \cdot \sqrt[3]{\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) \cdot \sqrt[3]{\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)}\]
  4. Final simplification1.6

    \[\leadsto \sqrt{\frac{1}{2} \cdot \left(1 + \left(\sqrt[3]{\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)}}} \cdot \sqrt[3]{\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) \cdot \sqrt[3]{\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)}\]

Reproduce

herbie shell --seed 2019356 +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))))))))))