\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 \le -3.2960043834370989 \cdot 10^{-99}:\\
\;\;\;\;\frac{2}{\frac{\frac{\left(\left({\left(\sqrt[3]{t}\right)}^{3} \cdot \left(\frac{{\left(\sqrt[3]{t}\right)}^{3}}{\ell} \cdot \sin k\right)\right) \cdot \tan k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)}{\sqrt[3]{\frac{\ell}{{\left(\sqrt[3]{t}\right)}^{3}}} \cdot \sqrt[3]{\frac{\ell}{{\left(\sqrt[3]{t}\right)}^{3}}}}}{\sqrt[3]{\frac{\ell}{{\left(\sqrt[3]{t}\right)}^{3}}}}}\\
\mathbf{elif}\;t \le 3.01176032494024291 \cdot 10^{-118}:\\
\;\;\;\;\frac{2}{\frac{\frac{{k}^{2} \cdot {\left(\sin k\right)}^{2}}{\cos k \cdot \ell} + 2 \cdot \frac{{t}^{2} \cdot {\left(\sin k\right)}^{2}}{\cos k \cdot \ell}}{\frac{\ell}{{\left(\sqrt[3]{t}\right)}^{3}}}}\\
\mathbf{else}:\\
\;\;\;\;\frac{2}{\frac{\left(\left({\left(\sqrt[3]{t}\right)}^{3} \cdot \left(\left(\sqrt[3]{\frac{{\left(\sqrt[3]{t}\right)}^{3}}{\ell}} \cdot \sqrt[3]{\frac{{\left(\sqrt[3]{t}\right)}^{3}}{\ell}}\right) \cdot \left(\sqrt[3]{\frac{{\left(\sqrt[3]{t}\right)}^{3}}{\ell}} \cdot \sin k\right)\right)\right) \cdot \tan k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)}{\frac{\ell}{{\left(\sqrt[3]{t}\right)}^{3}}}}\\
\end{array}double f(double t, double l, double k) {
double r154212 = 2.0;
double r154213 = t;
double r154214 = 3.0;
double r154215 = pow(r154213, r154214);
double r154216 = l;
double r154217 = r154216 * r154216;
double r154218 = r154215 / r154217;
double r154219 = k;
double r154220 = sin(r154219);
double r154221 = r154218 * r154220;
double r154222 = tan(r154219);
double r154223 = r154221 * r154222;
double r154224 = 1.0;
double r154225 = r154219 / r154213;
double r154226 = pow(r154225, r154212);
double r154227 = r154224 + r154226;
double r154228 = r154227 + r154224;
double r154229 = r154223 * r154228;
double r154230 = r154212 / r154229;
return r154230;
}
double f(double t, double l, double k) {
double r154231 = t;
double r154232 = -3.296004383437099e-99;
bool r154233 = r154231 <= r154232;
double r154234 = 2.0;
double r154235 = cbrt(r154231);
double r154236 = 3.0;
double r154237 = pow(r154235, r154236);
double r154238 = l;
double r154239 = r154237 / r154238;
double r154240 = k;
double r154241 = sin(r154240);
double r154242 = r154239 * r154241;
double r154243 = r154237 * r154242;
double r154244 = tan(r154240);
double r154245 = r154243 * r154244;
double r154246 = 1.0;
double r154247 = r154240 / r154231;
double r154248 = pow(r154247, r154234);
double r154249 = r154246 + r154248;
double r154250 = r154249 + r154246;
double r154251 = r154245 * r154250;
double r154252 = r154238 / r154237;
double r154253 = cbrt(r154252);
double r154254 = r154253 * r154253;
double r154255 = r154251 / r154254;
double r154256 = r154255 / r154253;
double r154257 = r154234 / r154256;
double r154258 = 3.011760324940243e-118;
bool r154259 = r154231 <= r154258;
double r154260 = 2.0;
double r154261 = pow(r154240, r154260);
double r154262 = pow(r154241, r154260);
double r154263 = r154261 * r154262;
double r154264 = cos(r154240);
double r154265 = r154264 * r154238;
double r154266 = r154263 / r154265;
double r154267 = pow(r154231, r154260);
double r154268 = r154267 * r154262;
double r154269 = r154268 / r154265;
double r154270 = r154234 * r154269;
double r154271 = r154266 + r154270;
double r154272 = r154271 / r154252;
double r154273 = r154234 / r154272;
double r154274 = cbrt(r154239);
double r154275 = r154274 * r154274;
double r154276 = r154274 * r154241;
double r154277 = r154275 * r154276;
double r154278 = r154237 * r154277;
double r154279 = r154278 * r154244;
double r154280 = r154279 * r154250;
double r154281 = r154280 / r154252;
double r154282 = r154234 / r154281;
double r154283 = r154259 ? r154273 : r154282;
double r154284 = r154233 ? r154257 : r154283;
return r154284;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
if t < -3.296004383437099e-99Initial program 23.0
rmApplied add-cube-cbrt23.2
Applied unpow-prod-down23.2
Applied times-frac16.8
Applied associate-*l*14.1
rmApplied unpow-prod-down14.1
Applied associate-/l*9.7
rmApplied associate-*l/8.4
Applied associate-*l/7.0
Applied associate-*l/6.3
rmApplied add-cube-cbrt6.3
Applied associate-/r*6.3
if -3.296004383437099e-99 < t < 3.011760324940243e-118Initial program 63.1
rmApplied add-cube-cbrt63.1
Applied unpow-prod-down63.1
Applied times-frac53.9
Applied associate-*l*53.9
rmApplied unpow-prod-down53.9
Applied associate-/l*44.9
rmApplied associate-*l/44.9
Applied associate-*l/45.9
Applied associate-*l/42.5
Taylor expanded around inf 24.1
if 3.011760324940243e-118 < t Initial program 23.9
rmApplied add-cube-cbrt24.1
Applied unpow-prod-down24.1
Applied times-frac17.7
Applied associate-*l*16.1
rmApplied unpow-prod-down16.1
Applied associate-/l*11.3
rmApplied associate-*l/10.3
Applied associate-*l/8.2
Applied associate-*l/7.2
rmApplied add-cube-cbrt7.2
Applied associate-*l*7.2
Final simplification10.7
herbie shell --seed 2020036
(FPCore (t l k)
:name "Toniolo and Linder, Equation (10+)"
:precision binary64
(/ 2 (* (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) (+ (+ 1 (pow (/ k t) 2)) 1))))