\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\sin ky \cdot \frac{\sin th}{\mathsf{hypot}\left(\sin ky, \sin kx\right)}double f(double kx, double ky, double th) {
double r41465 = ky;
double r41466 = sin(r41465);
double r41467 = kx;
double r41468 = sin(r41467);
double r41469 = 2.0;
double r41470 = pow(r41468, r41469);
double r41471 = pow(r41466, r41469);
double r41472 = r41470 + r41471;
double r41473 = sqrt(r41472);
double r41474 = r41466 / r41473;
double r41475 = th;
double r41476 = sin(r41475);
double r41477 = r41474 * r41476;
return r41477;
}
double f(double kx, double ky, double th) {
double r41478 = ky;
double r41479 = sin(r41478);
double r41480 = th;
double r41481 = sin(r41480);
double r41482 = kx;
double r41483 = sin(r41482);
double r41484 = hypot(r41479, r41483);
double r41485 = r41481 / r41484;
double r41486 = r41479 * r41485;
return r41486;
}



Bits error versus kx



Bits error versus ky



Bits error versus th
Results
Initial program 12.8
Taylor expanded around inf 12.8
Simplified8.8
rmApplied div-inv8.9
Applied associate-*l*8.9
Simplified8.8
Final simplification8.8
herbie shell --seed 2019362 +o rules:numerics
(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)))