double f(double kx, double ky, double th) {
double r1581331 = ky;
double r1581332 = sin(r1581331);
double r1581333 = kx;
double r1581334 = sin(r1581333);
double r1581335 = 2.0;
double r1581336 = pow(r1581334, r1581335);
double r1581337 = pow(r1581332, r1581335);
double r1581338 = r1581336 + r1581337;
double r1581339 = sqrt(r1581338);
double r1581340 = r1581332 / r1581339;
double r1581341 = th;
double r1581342 = sin(r1581341);
double r1581343 = r1581340 * r1581342;
return r1581343;
}
double f(double kx, double ky, double th) {
double r1581344 = th;
double r1581345 = sin(r1581344);
double r1581346 = ky;
double r1581347 = sin(r1581346);
double r1581348 = r1581347 * r1581347;
double r1581349 = kx;
double r1581350 = sin(r1581349);
double r1581351 = r1581350 * r1581350;
double r1581352 = r1581348 + r1581351;
double r1581353 = sqrt(r1581352);
double r1581354 = sqrt(r1581353);
double r1581355 = r1581354 * r1581354;
double r1581356 = r1581347 / r1581355;
double r1581357 = r1581345 * r1581356;
return r1581357;
}
\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\sin th \cdot \frac{\sin ky}{\sqrt{\sqrt{\sin ky \cdot \sin ky + \sin kx \cdot \sin kx}} \cdot \sqrt{\sqrt{\sin ky \cdot \sin ky + \sin kx \cdot \sin kx}}}


Bits error versus kx



Bits error versus ky



Bits error versus th
Initial program 12.1
Simplified12.1
rmApplied add-sqr-sqrt12.4
Final simplification12.4
herbie shell --seed 2019102
(FPCore (kx ky th)
:name "Toniolo and Linder, Equation (3b), real"
(* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)))