\frac{2}{\left(\left(\frac{{t}^{3}}{\ell \cdot \ell} \cdot \sin k\right) \cdot \tan k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)}\begin{array}{l}
\mathbf{if}\;t \leq -4.2577074819879283 \cdot 10^{-69} \lor \neg \left(t \leq 7.129027988873192 \cdot 10^{-121}\right):\\
\;\;\;\;\frac{2}{\left(\left(\frac{{\left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right)}^{\left(\frac{3}{2}\right)}}{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}} \cdot \left(\frac{{\left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right)}^{\left(\frac{3}{2}\right)}}{\sqrt[3]{\ell}} \cdot \left(\frac{{\left(\sqrt[3]{t}\right)}^{3}}{\ell} \cdot \sin k\right)\right)\right) \cdot \tan k\right) \cdot \left(1 + \left(1 + {\left(\frac{k}{t}\right)}^{2}\right)\right)}\\
\mathbf{else}:\\
\;\;\;\;\frac{2}{\frac{{\left(\sin k\right)}^{2}}{\ell \cdot \ell} \cdot \left(\frac{t \cdot \left(k \cdot k\right)}{\cos k} + 2 \cdot \frac{{t}^{3}}{\cos k}\right)}\\
\end{array}(FPCore (t l k) :precision binary64 (/ 2.0 (* (* (* (/ (pow t 3.0) (* l l)) (sin k)) (tan k)) (+ (+ 1.0 (pow (/ k t) 2.0)) 1.0))))
(FPCore (t l k)
:precision binary64
(if (or (<= t -4.2577074819879283e-69) (not (<= t 7.129027988873192e-121)))
(/
2.0
(*
(*
(*
(/ (pow (* (cbrt t) (cbrt t)) (/ 3.0 2.0)) (* (cbrt l) (cbrt l)))
(*
(/ (pow (* (cbrt t) (cbrt t)) (/ 3.0 2.0)) (cbrt l))
(* (/ (pow (cbrt t) 3.0) l) (sin k))))
(tan k))
(+ 1.0 (+ 1.0 (pow (/ k t) 2.0)))))
(/
2.0
(*
(/ (pow (sin k) 2.0) (* l l))
(+ (/ (* t (* k k)) (cos k)) (* 2.0 (/ (pow t 3.0) (cos k))))))))double code(double t, double l, double k) {
return (2.0 / ((double) (((double) (((double) ((((double) pow(t, 3.0)) / ((double) (l * l))) * ((double) sin(k)))) * ((double) tan(k)))) * ((double) (((double) (1.0 + ((double) pow((k / t), 2.0)))) + 1.0)))));
}
double code(double t, double l, double k) {
double tmp;
if (((t <= -4.2577074819879283e-69) || !(t <= 7.129027988873192e-121))) {
tmp = (2.0 / ((double) (((double) (((double) ((((double) pow(((double) (((double) cbrt(t)) * ((double) cbrt(t)))), (3.0 / 2.0))) / ((double) (((double) cbrt(l)) * ((double) cbrt(l))))) * ((double) ((((double) pow(((double) (((double) cbrt(t)) * ((double) cbrt(t)))), (3.0 / 2.0))) / ((double) cbrt(l))) * ((double) ((((double) pow(((double) cbrt(t)), 3.0)) / l) * ((double) sin(k)))))))) * ((double) tan(k)))) * ((double) (1.0 + ((double) (1.0 + ((double) pow((k / t), 2.0)))))))));
} else {
tmp = (2.0 / ((double) ((((double) pow(((double) sin(k)), 2.0)) / ((double) (l * l))) * ((double) ((((double) (t * ((double) (k * k)))) / ((double) cos(k))) + ((double) (2.0 * (((double) pow(t, 3.0)) / ((double) cos(k))))))))));
}
return tmp;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
if t < -4.25770748198792831e-69 or 7.12902798887319201e-121 < t Initial program 24.0
rmApplied add-cube-cbrt_binary6424.1
Applied unpow-prod-down_binary6424.1
Applied times-frac_binary6416.9
Applied associate-*l*_binary6414.5
rmApplied add-cube-cbrt_binary6414.5
Applied sqr-pow_binary6414.5
Applied times-frac_binary649.7
rmApplied associate-*l*_binary648.5
if -4.25770748198792831e-69 < t < 7.12902798887319201e-121Initial program 60.4
Taylor expanded around inf 39.4
Simplified25.9
Final simplification12.7
herbie shell --seed 2020205
(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))))