\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\sin th \cdot \frac{\sin ky}{\sqrt{\sin ky \cdot \sin ky + \left(\sqrt[3]{\sin kx} \cdot \sqrt[3]{\sin kx}\right) \cdot \left(\sin kx \cdot \sqrt[3]{\sin kx}\right)}}double f(double kx, double ky, double th) {
double r512894 = ky;
double r512895 = sin(r512894);
double r512896 = kx;
double r512897 = sin(r512896);
double r512898 = 2.0;
double r512899 = pow(r512897, r512898);
double r512900 = pow(r512895, r512898);
double r512901 = r512899 + r512900;
double r512902 = sqrt(r512901);
double r512903 = r512895 / r512902;
double r512904 = th;
double r512905 = sin(r512904);
double r512906 = r512903 * r512905;
return r512906;
}
double f(double kx, double ky, double th) {
double r512907 = th;
double r512908 = sin(r512907);
double r512909 = ky;
double r512910 = sin(r512909);
double r512911 = r512910 * r512910;
double r512912 = kx;
double r512913 = sin(r512912);
double r512914 = cbrt(r512913);
double r512915 = r512914 * r512914;
double r512916 = r512913 * r512914;
double r512917 = r512915 * r512916;
double r512918 = r512911 + r512917;
double r512919 = sqrt(r512918);
double r512920 = r512910 / r512919;
double r512921 = r512908 * r512920;
return r512921;
}



Bits error versus kx



Bits error versus ky



Bits error versus th
Results
Initial program 12.4
Simplified12.4
rmApplied add-cube-cbrt12.5
Applied associate-*l*12.5
Final simplification12.5
herbie shell --seed 2019152
(FPCore (kx ky th)
:name "Toniolo and Linder, Equation (3b), real"
(* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)))