Average Error: 12.0 → 12.3
Time: 45.1s
Precision: 64
\[\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\]
\[\sin th \cdot \frac{\frac{\sin ky}{\sqrt{\sqrt{\sin ky \cdot \sin ky + \sin kx \cdot \sin kx}}}}{\sqrt{\sqrt{\sin ky \cdot \sin ky + \sin kx \cdot \sin kx}}}\]
\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th
\sin th \cdot \frac{\frac{\sin ky}{\sqrt{\sqrt{\sin ky \cdot \sin ky + \sin kx \cdot \sin kx}}}}{\sqrt{\sqrt{\sin ky \cdot \sin ky + \sin kx \cdot \sin kx}}}
double f(double kx, double ky, double th) {
        double r1145436 = ky;
        double r1145437 = sin(r1145436);
        double r1145438 = kx;
        double r1145439 = sin(r1145438);
        double r1145440 = 2.0;
        double r1145441 = pow(r1145439, r1145440);
        double r1145442 = pow(r1145437, r1145440);
        double r1145443 = r1145441 + r1145442;
        double r1145444 = sqrt(r1145443);
        double r1145445 = r1145437 / r1145444;
        double r1145446 = th;
        double r1145447 = sin(r1145446);
        double r1145448 = r1145445 * r1145447;
        return r1145448;
}

double f(double kx, double ky, double th) {
        double r1145449 = th;
        double r1145450 = sin(r1145449);
        double r1145451 = ky;
        double r1145452 = sin(r1145451);
        double r1145453 = r1145452 * r1145452;
        double r1145454 = kx;
        double r1145455 = sin(r1145454);
        double r1145456 = r1145455 * r1145455;
        double r1145457 = r1145453 + r1145456;
        double r1145458 = sqrt(r1145457);
        double r1145459 = sqrt(r1145458);
        double r1145460 = r1145452 / r1145459;
        double r1145461 = r1145460 / r1145459;
        double r1145462 = r1145450 * r1145461;
        return r1145462;
}

Error

Bits error versus kx

Bits error versus ky

Bits error versus th

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 12.0

    \[\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\]
  2. Simplified12.0

    \[\leadsto \color{blue}{\sin th \cdot \frac{\sin ky}{\sqrt{\sin kx \cdot \sin kx + \sin ky \cdot \sin ky}}}\]
  3. Using strategy rm
  4. Applied add-sqr-sqrt12.0

    \[\leadsto \sin th \cdot \frac{\sin ky}{\sqrt{\color{blue}{\sqrt{\sin kx \cdot \sin kx + \sin ky \cdot \sin ky} \cdot \sqrt{\sin kx \cdot \sin kx + \sin ky \cdot \sin ky}}}}\]
  5. Applied sqrt-prod12.3

    \[\leadsto \sin th \cdot \frac{\sin ky}{\color{blue}{\sqrt{\sqrt{\sin kx \cdot \sin kx + \sin ky \cdot \sin ky}} \cdot \sqrt{\sqrt{\sin kx \cdot \sin kx + \sin ky \cdot \sin ky}}}}\]
  6. Applied associate-/r*12.3

    \[\leadsto \sin th \cdot \color{blue}{\frac{\frac{\sin ky}{\sqrt{\sqrt{\sin kx \cdot \sin kx + \sin ky \cdot \sin ky}}}}{\sqrt{\sqrt{\sin kx \cdot \sin kx + \sin ky \cdot \sin ky}}}}\]
  7. Final simplification12.3

    \[\leadsto \sin th \cdot \frac{\frac{\sin ky}{\sqrt{\sqrt{\sin ky \cdot \sin ky + \sin kx \cdot \sin kx}}}}{\sqrt{\sqrt{\sin ky \cdot \sin ky + \sin kx \cdot \sin kx}}}\]

Reproduce

herbie shell --seed 2019146 
(FPCore (kx ky th)
  :name "Toniolo and Linder, Equation (3b), real"
  (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)))