\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\sin th \cdot \frac{\sin ky}{\mathsf{hypot}\left(\sin ky, \sin kx\right)}double f(double kx, double ky, double th) {
double r1108282 = ky;
double r1108283 = sin(r1108282);
double r1108284 = kx;
double r1108285 = sin(r1108284);
double r1108286 = 2.0;
double r1108287 = pow(r1108285, r1108286);
double r1108288 = pow(r1108283, r1108286);
double r1108289 = r1108287 + r1108288;
double r1108290 = sqrt(r1108289);
double r1108291 = r1108283 / r1108290;
double r1108292 = th;
double r1108293 = sin(r1108292);
double r1108294 = r1108291 * r1108293;
return r1108294;
}
double f(double kx, double ky, double th) {
double r1108295 = th;
double r1108296 = sin(r1108295);
double r1108297 = ky;
double r1108298 = sin(r1108297);
double r1108299 = kx;
double r1108300 = sin(r1108299);
double r1108301 = hypot(r1108298, r1108300);
double r1108302 = r1108298 / r1108301;
double r1108303 = r1108296 * r1108302;
return r1108303;
}



Bits error versus kx



Bits error versus ky



Bits error versus th
Results
Initial program 12.6
Simplified8.9
rmApplied *-un-lft-identity8.9
Final simplification8.9
herbie shell --seed 2019168 +o rules:numerics
(FPCore (kx ky th)
:name "Toniolo and Linder, Equation (3b), real"
(* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)))