\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\sin th \cdot \left(\sin ky \cdot \frac{1}{\sqrt{\sin kx \cdot \sin kx + \sin ky \cdot \sin ky}}\right)double f(double kx, double ky, double th) {
double r546251 = ky;
double r546252 = sin(r546251);
double r546253 = kx;
double r546254 = sin(r546253);
double r546255 = 2.0;
double r546256 = pow(r546254, r546255);
double r546257 = pow(r546252, r546255);
double r546258 = r546256 + r546257;
double r546259 = sqrt(r546258);
double r546260 = r546252 / r546259;
double r546261 = th;
double r546262 = sin(r546261);
double r546263 = r546260 * r546262;
return r546263;
}
double f(double kx, double ky, double th) {
double r546264 = th;
double r546265 = sin(r546264);
double r546266 = ky;
double r546267 = sin(r546266);
double r546268 = 1.0;
double r546269 = kx;
double r546270 = sin(r546269);
double r546271 = r546270 * r546270;
double r546272 = r546267 * r546267;
double r546273 = r546271 + r546272;
double r546274 = sqrt(r546273);
double r546275 = r546268 / r546274;
double r546276 = r546267 * r546275;
double r546277 = r546265 * r546276;
return r546277;
}



Bits error versus kx



Bits error versus ky



Bits error versus th
Results
Initial program 12.2
Simplified12.2
rmApplied div-inv12.3
Final simplification12.3
herbie shell --seed 2019132
(FPCore (kx ky th)
:name "Toniolo and Linder, Equation (3b), real"
(* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)))