\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\left(\sqrt[3]{\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}}} \cdot \sqrt[3]{\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}}}\right) \cdot \left(\sqrt[3]{\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}}} \cdot \sin th\right)double f(double kx, double ky, double th) {
double r33381 = ky;
double r33382 = sin(r33381);
double r33383 = kx;
double r33384 = sin(r33383);
double r33385 = 2.0;
double r33386 = pow(r33384, r33385);
double r33387 = pow(r33382, r33385);
double r33388 = r33386 + r33387;
double r33389 = sqrt(r33388);
double r33390 = r33382 / r33389;
double r33391 = th;
double r33392 = sin(r33391);
double r33393 = r33390 * r33392;
return r33393;
}
double f(double kx, double ky, double th) {
double r33394 = ky;
double r33395 = sin(r33394);
double r33396 = kx;
double r33397 = sin(r33396);
double r33398 = 2.0;
double r33399 = pow(r33397, r33398);
double r33400 = pow(r33395, r33398);
double r33401 = r33399 + r33400;
double r33402 = sqrt(r33401);
double r33403 = r33395 / r33402;
double r33404 = cbrt(r33403);
double r33405 = r33404 * r33404;
double r33406 = th;
double r33407 = sin(r33406);
double r33408 = r33404 * r33407;
double r33409 = r33405 * r33408;
return r33409;
}



Bits error versus kx



Bits error versus ky



Bits error versus th
Results
Initial program 12.1
rmApplied add-cube-cbrt12.5
Applied associate-*l*12.5
Final simplification12.5
herbie shell --seed 2019208
(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)))