\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\frac{\frac{1}{\sqrt[3]{\frac{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}}{\sin ky}} \cdot \sqrt[3]{\frac{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}}{\sin ky}}}}{\sqrt[3]{\frac{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}}{\sin ky}}} \cdot \sin thdouble f(double kx, double ky, double th) {
double r37282 = ky;
double r37283 = sin(r37282);
double r37284 = kx;
double r37285 = sin(r37284);
double r37286 = 2.0;
double r37287 = pow(r37285, r37286);
double r37288 = pow(r37283, r37286);
double r37289 = r37287 + r37288;
double r37290 = sqrt(r37289);
double r37291 = r37283 / r37290;
double r37292 = th;
double r37293 = sin(r37292);
double r37294 = r37291 * r37293;
return r37294;
}
double f(double kx, double ky, double th) {
double r37295 = 1.0;
double r37296 = kx;
double r37297 = sin(r37296);
double r37298 = 2.0;
double r37299 = pow(r37297, r37298);
double r37300 = ky;
double r37301 = sin(r37300);
double r37302 = pow(r37301, r37298);
double r37303 = r37299 + r37302;
double r37304 = sqrt(r37303);
double r37305 = r37304 / r37301;
double r37306 = cbrt(r37305);
double r37307 = r37306 * r37306;
double r37308 = r37295 / r37307;
double r37309 = r37308 / r37306;
double r37310 = th;
double r37311 = sin(r37310);
double r37312 = r37309 * r37311;
return r37312;
}



Bits error versus kx



Bits error versus ky



Bits error versus th
Results
Initial program 12.1
rmApplied clear-num12.1
rmApplied add-cube-cbrt12.4
Applied associate-/r*12.4
Final simplification12.4
herbie shell --seed 2019303
(FPCore (kx ky th)
:name "Toniolo and Linder, Equation (3b), real"
:precision binary64
(* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)))