Average Error: 1.1 → 0.8
Time: 5.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{1 + {\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)}\]
\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{1 + {\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)}
double f(double l, double Om, double kx, double ky) {
        double r36501 = 1.0;
        double r36502 = 2.0;
        double r36503 = r36501 / r36502;
        double r36504 = l;
        double r36505 = r36502 * r36504;
        double r36506 = Om;
        double r36507 = r36505 / r36506;
        double r36508 = pow(r36507, r36502);
        double r36509 = kx;
        double r36510 = sin(r36509);
        double r36511 = pow(r36510, r36502);
        double r36512 = ky;
        double r36513 = sin(r36512);
        double r36514 = pow(r36513, r36502);
        double r36515 = r36511 + r36514;
        double r36516 = r36508 * r36515;
        double r36517 = r36501 + r36516;
        double r36518 = sqrt(r36517);
        double r36519 = r36501 / r36518;
        double r36520 = r36501 + r36519;
        double r36521 = r36503 * r36520;
        double r36522 = sqrt(r36521);
        return r36522;
}

double f(double l, double Om, double kx, double ky) {
        double r36523 = 1.0;
        double r36524 = 2.0;
        double r36525 = r36523 / r36524;
        double r36526 = l;
        double r36527 = r36524 * r36526;
        double r36528 = Om;
        double r36529 = r36527 / r36528;
        double r36530 = 2.0;
        double r36531 = r36524 / r36530;
        double r36532 = pow(r36529, r36531);
        double r36533 = kx;
        double r36534 = sin(r36533);
        double r36535 = pow(r36534, r36524);
        double r36536 = ky;
        double r36537 = sin(r36536);
        double r36538 = pow(r36537, r36524);
        double r36539 = r36535 + r36538;
        double r36540 = r36532 * r36539;
        double r36541 = r36532 * r36540;
        double r36542 = r36523 + r36541;
        double r36543 = sqrt(r36542);
        double r36544 = r36523 / r36543;
        double r36545 = r36523 + r36544;
        double r36546 = r36525 * r36545;
        double r36547 = sqrt(r36546);
        return r36547;
}

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.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)}\]
  2. Using strategy rm
  3. Applied sqr-pow1.1

    \[\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*0.8

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

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

Reproduce

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