\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\sin th \cdot \frac{1}{\frac{\sqrt{\sin kx \cdot \sin kx + \sin ky \cdot \sin ky}}{\sin ky}}double f(double kx, double ky, double th) {
double r699852 = ky;
double r699853 = sin(r699852);
double r699854 = kx;
double r699855 = sin(r699854);
double r699856 = 2.0;
double r699857 = pow(r699855, r699856);
double r699858 = pow(r699853, r699856);
double r699859 = r699857 + r699858;
double r699860 = sqrt(r699859);
double r699861 = r699853 / r699860;
double r699862 = th;
double r699863 = sin(r699862);
double r699864 = r699861 * r699863;
return r699864;
}
double f(double kx, double ky, double th) {
double r699865 = th;
double r699866 = sin(r699865);
double r699867 = 1.0;
double r699868 = kx;
double r699869 = sin(r699868);
double r699870 = r699869 * r699869;
double r699871 = ky;
double r699872 = sin(r699871);
double r699873 = r699872 * r699872;
double r699874 = r699870 + r699873;
double r699875 = sqrt(r699874);
double r699876 = r699875 / r699872;
double r699877 = r699867 / r699876;
double r699878 = r699866 * r699877;
return r699878;
}



Bits error versus kx



Bits error versus ky



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