\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(\left(\sqrt[3]{\frac{\sqrt[3]{\sin ky} \cdot \sqrt[3]{\sin ky}}{\sqrt[3]{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sqrt[3]{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}}}} \cdot \sqrt[3]{\frac{\sqrt[3]{\sin ky}}{\sqrt[3]{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}}}}\right) \cdot \sin th\right)double f(double kx, double ky, double th) {
double r35971 = ky;
double r35972 = sin(r35971);
double r35973 = kx;
double r35974 = sin(r35973);
double r35975 = 2.0;
double r35976 = pow(r35974, r35975);
double r35977 = pow(r35972, r35975);
double r35978 = r35976 + r35977;
double r35979 = sqrt(r35978);
double r35980 = r35972 / r35979;
double r35981 = th;
double r35982 = sin(r35981);
double r35983 = r35980 * r35982;
return r35983;
}
double f(double kx, double ky, double th) {
double r35984 = ky;
double r35985 = sin(r35984);
double r35986 = kx;
double r35987 = sin(r35986);
double r35988 = 2.0;
double r35989 = pow(r35987, r35988);
double r35990 = pow(r35985, r35988);
double r35991 = r35989 + r35990;
double r35992 = sqrt(r35991);
double r35993 = r35985 / r35992;
double r35994 = cbrt(r35993);
double r35995 = r35994 * r35994;
double r35996 = cbrt(r35985);
double r35997 = r35996 * r35996;
double r35998 = cbrt(r35992);
double r35999 = r35998 * r35998;
double r36000 = r35997 / r35999;
double r36001 = cbrt(r36000);
double r36002 = r35996 / r35998;
double r36003 = cbrt(r36002);
double r36004 = r36001 * r36003;
double r36005 = th;
double r36006 = sin(r36005);
double r36007 = r36004 * r36006;
double r36008 = r35995 * r36007;
return r36008;
}



Bits error versus kx



Bits error versus ky



Bits error versus th
Results
Initial program 12.5
rmApplied add-cube-cbrt12.8
Applied associate-*l*12.8
rmApplied add-cube-cbrt12.8
Applied add-cube-cbrt12.8
Applied times-frac12.8
Applied cbrt-prod12.8
Final simplification12.8
herbie shell --seed 2019346
(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)))