\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\sin th \cdot \left(\frac{\sqrt[3]{\sin ky}}{\sqrt[3]{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}}} \cdot \left(\sqrt[3]{\sqrt{\frac{1}{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin ky} \cdot \sqrt[3]{\sqrt{\frac{1}{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin ky}\right)\right)double f(double kx, double ky, double th) {
double r34833 = ky;
double r34834 = sin(r34833);
double r34835 = kx;
double r34836 = sin(r34835);
double r34837 = 2.0;
double r34838 = pow(r34836, r34837);
double r34839 = pow(r34834, r34837);
double r34840 = r34838 + r34839;
double r34841 = sqrt(r34840);
double r34842 = r34834 / r34841;
double r34843 = th;
double r34844 = sin(r34843);
double r34845 = r34842 * r34844;
return r34845;
}
double f(double kx, double ky, double th) {
double r34846 = th;
double r34847 = sin(r34846);
double r34848 = ky;
double r34849 = sin(r34848);
double r34850 = cbrt(r34849);
double r34851 = kx;
double r34852 = sin(r34851);
double r34853 = 2.0;
double r34854 = pow(r34852, r34853);
double r34855 = pow(r34849, r34853);
double r34856 = r34854 + r34855;
double r34857 = sqrt(r34856);
double r34858 = cbrt(r34857);
double r34859 = r34850 / r34858;
double r34860 = 1.0;
double r34861 = r34860 / r34856;
double r34862 = sqrt(r34861);
double r34863 = r34862 * r34849;
double r34864 = cbrt(r34863);
double r34865 = r34864 * r34864;
double r34866 = r34859 * r34865;
double r34867 = r34847 * r34866;
return r34867;
}



Bits error versus kx



Bits error versus ky



Bits error versus th
Results
Initial program 12.3
Taylor expanded around inf 12.6
rmApplied add-cube-cbrt12.8
Simplified12.8
Simplified12.8
rmApplied sqrt-div12.8
Applied associate-*r/12.8
Applied cbrt-div12.8
Simplified12.8
Final simplification12.8
herbie shell --seed 2019174
(FPCore (kx ky th)
:name "Toniolo and Linder, Equation (3b), real"
(* (/ (sin ky) (sqrt (+ (pow (sin kx) 2.0) (pow (sin ky) 2.0)))) (sin th)))