\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\sin th \cdot \frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}}double f(double kx, double ky, double th) {
double r34405 = ky;
double r34406 = sin(r34405);
double r34407 = kx;
double r34408 = sin(r34407);
double r34409 = 2.0;
double r34410 = pow(r34408, r34409);
double r34411 = pow(r34406, r34409);
double r34412 = r34410 + r34411;
double r34413 = sqrt(r34412);
double r34414 = r34406 / r34413;
double r34415 = th;
double r34416 = sin(r34415);
double r34417 = r34414 * r34416;
return r34417;
}
double f(double kx, double ky, double th) {
double r34418 = th;
double r34419 = sin(r34418);
double r34420 = ky;
double r34421 = sin(r34420);
double r34422 = kx;
double r34423 = sin(r34422);
double r34424 = 2.0;
double r34425 = pow(r34423, r34424);
double r34426 = pow(r34421, r34424);
double r34427 = r34425 + r34426;
double r34428 = sqrt(r34427);
double r34429 = r34421 / r34428;
double r34430 = r34419 * r34429;
return r34430;
}



Bits error versus kx



Bits error versus ky



Bits error versus th
Results
Initial program 12.2
rmApplied clear-num12.2
rmApplied div-inv12.3
Applied associate-/r*12.2
rmApplied *-un-lft-identity12.2
Applied add-cube-cbrt12.2
Applied times-frac12.2
Applied *-un-lft-identity12.2
Applied sqrt-prod12.2
Applied add-cube-cbrt12.2
Applied times-frac12.2
Applied times-frac12.2
Simplified12.2
Simplified12.2
Final simplification12.2
herbie shell --seed 2019347
(FPCore (kx ky th)
:name "Toniolo and Linder, Equation (3b), real"
:precision binary64
(* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)))