double code(double t, double l, double k) {
return ((double) (2.0 / ((double) (((double) (((double) (((double) (((double) pow(t, 3.0)) / ((double) (l * l)))) * ((double) sin(k)))) * ((double) tan(k)))) * ((double) (((double) (1.0 + ((double) pow(((double) (k / t)), 2.0)))) + 1.0))))));
}
double code(double t, double l, double k) {
double VAR;
if ((t <= -4.278232628469712e+22)) {
VAR = ((double) (2.0 / ((double) (((double) (((double) (((double) (((double) (((double) pow(((double) cbrt(t)), 3.0)) / ((double) (((double) cbrt(l)) * ((double) cbrt(l)))))) * ((double) (((double) pow(((double) cbrt(t)), 3.0)) / ((double) cbrt(l)))))) * ((double) (((double) (((double) cbrt(((double) (((double) pow(((double) cbrt(t)), 3.0)) / l)))) * ((double) cbrt(((double) (((double) pow(((double) cbrt(t)), 3.0)) / l)))))) * ((double) (((double) cbrt(((double) (((double) pow(((double) cbrt(t)), 3.0)) / l)))) * ((double) sin(k)))))))) * ((double) tan(k)))) * ((double) (1.0 + ((double) (1.0 + ((double) pow(((double) (k / t)), 2.0))))))))));
} else {
double VAR_1;
if ((t <= 9.759191564357316e-84)) {
VAR_1 = ((double) (2.0 / ((double) (((double) (((double) (((double) pow(((double) cbrt(t)), 3.0)) / ((double) (((double) cbrt(l)) * ((double) cbrt(l)))))) * ((double) (((double) pow(((double) cbrt(t)), 3.0)) / ((double) cbrt(l)))))) * ((double) (((double) (((double) pow(((double) cbrt(t)), 3.0)) / l)) * ((double) (((double) sin(k)) * ((double) (((double) tan(k)) * ((double) (1.0 + ((double) (1.0 + ((double) pow(((double) (k / t)), 2.0))))))))))))))));
} else {
VAR_1 = ((double) (2.0 / ((double) (((double) (1.0 + ((double) (1.0 + ((double) pow(((double) (k / t)), 2.0)))))) * ((double) (((double) tan(k)) * ((double) (((double) (((double) pow(t, ((double) (3.0 / 2.0)))) / l)) * ((double) (((double) sin(k)) * ((double) (((double) pow(t, ((double) (3.0 / 2.0)))) / l))))))))))));
}
VAR = VAR_1;
}
return VAR;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
if t < -4.2782326284697117e22Initial program 23.2
rmApplied add-cube-cbrt23.3
Applied unpow-prod-down23.3
Applied times-frac16.1
Applied associate-*l*14.2
rmApplied add-cube-cbrt14.2
Applied unpow-prod-down14.2
Applied times-frac8.1
rmApplied add-cube-cbrt8.1
Applied associate-*l*8.1
Simplified8.1
if -4.2782326284697117e22 < t < 9.75919156435731628e-84Initial program 51.9
rmApplied add-cube-cbrt52.0
Applied unpow-prod-down52.0
Applied times-frac44.1
Applied associate-*l*42.8
rmApplied add-cube-cbrt42.8
Applied unpow-prod-down42.8
Applied times-frac36.6
rmApplied associate-*l*35.8
Simplified35.8
rmApplied associate-*l*32.2
Simplified34.0
if 9.75919156435731628e-84 < t Initial program 23.1
rmApplied sqr-pow23.1
Applied times-frac14.4
Applied associate-*l*11.1
Final simplification17.8
herbie shell --seed 2020179
(FPCore (t l k)
:name "Toniolo and Linder, Equation (10+)"
:precision binary64
(/ 2.0 (* (* (* (/ (pow t 3.0) (* l l)) (sin k)) (tan k)) (+ (+ 1.0 (pow (/ k t) 2.0)) 1.0))))