\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\left(\sin th \cdot \left(\sqrt[3]{\sqrt[3]{\frac{\sin ky}{\mathsf{hypot}\left(\sin ky, \sin kx\right)}} \cdot \sqrt[3]{\frac{\sin ky}{\mathsf{hypot}\left(\sin ky, \sin kx\right)}}} \cdot \left(\sqrt[3]{\sqrt[3]{\frac{\sin ky}{\mathsf{hypot}\left(\sin ky, \sin kx\right)}} \cdot \sqrt[3]{\frac{\sin ky}{\mathsf{hypot}\left(\sin ky, \sin kx\right)}}} \cdot \sqrt[3]{\sqrt[3]{\frac{\sin ky}{\mathsf{hypot}\left(\sin ky, \sin kx\right)}} \cdot \sqrt[3]{\frac{\sin ky}{\mathsf{hypot}\left(\sin ky, \sin kx\right)}}}\right)\right)\right) \cdot \sqrt[3]{\frac{\sin ky}{\mathsf{hypot}\left(\sin ky, \sin kx\right)}}double f(double kx, double ky, double th) {
double r467735 = ky;
double r467736 = sin(r467735);
double r467737 = kx;
double r467738 = sin(r467737);
double r467739 = 2.0;
double r467740 = pow(r467738, r467739);
double r467741 = pow(r467736, r467739);
double r467742 = r467740 + r467741;
double r467743 = sqrt(r467742);
double r467744 = r467736 / r467743;
double r467745 = th;
double r467746 = sin(r467745);
double r467747 = r467744 * r467746;
return r467747;
}
double f(double kx, double ky, double th) {
double r467748 = th;
double r467749 = sin(r467748);
double r467750 = ky;
double r467751 = sin(r467750);
double r467752 = kx;
double r467753 = sin(r467752);
double r467754 = hypot(r467751, r467753);
double r467755 = r467751 / r467754;
double r467756 = cbrt(r467755);
double r467757 = r467756 * r467756;
double r467758 = cbrt(r467757);
double r467759 = r467758 * r467758;
double r467760 = r467758 * r467759;
double r467761 = r467749 * r467760;
double r467762 = r467761 * r467756;
return r467762;
}



Bits error versus kx



Bits error versus ky



Bits error versus th
Results
Initial program 12.8
Simplified8.9
rmApplied add-cube-cbrt9.3
Applied associate-*r*9.3
rmApplied add-cube-cbrt9.4
Final simplification9.4
herbie shell --seed 2019154 +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)))