\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}\;\ell \cdot \ell \le 3.189136844603174714378206980841417901046 \cdot 10^{-106}:\\
\;\;\;\;2 \cdot \left({\left(\frac{1}{{k}^{\left(\frac{2}{2}\right)} \cdot \left({k}^{\left(\frac{2}{2}\right)} \cdot {t}^{1}\right)}\right)}^{1} \cdot \left(\frac{\cos k}{\left|\sin k\right|} \cdot \frac{\ell}{\frac{\left|\sin k\right|}{\ell}}\right)\right)\\
\mathbf{elif}\;\ell \cdot \ell \le 1.734649247183787816649484170637657248271 \cdot 10^{297}:\\
\;\;\;\;2 \cdot \left({\left(\frac{1}{{k}^{\left(\frac{2}{2}\right)}}\right)}^{1} \cdot \left({\left(\frac{1}{{k}^{\left(\frac{2}{2}\right)} \cdot {t}^{1}}\right)}^{1} \cdot \frac{\cos k}{\frac{{\left(\sin k\right)}^{2}}{{\ell}^{2}}}\right)\right)\\
\mathbf{else}:\\
\;\;\;\;2 \cdot \log \left({\left(e^{{\left(\frac{1}{{t}^{1} \cdot {k}^{2}}\right)}^{1}}\right)}^{\left(\frac{\cos k \cdot {\ell}^{2}}{{\left(\sin k\right)}^{2}}\right)}\right)\\
\end{array}double f(double t, double l, double k) {
double r95313 = 2.0;
double r95314 = t;
double r95315 = 3.0;
double r95316 = pow(r95314, r95315);
double r95317 = l;
double r95318 = r95317 * r95317;
double r95319 = r95316 / r95318;
double r95320 = k;
double r95321 = sin(r95320);
double r95322 = r95319 * r95321;
double r95323 = tan(r95320);
double r95324 = r95322 * r95323;
double r95325 = 1.0;
double r95326 = r95320 / r95314;
double r95327 = pow(r95326, r95313);
double r95328 = r95325 + r95327;
double r95329 = r95328 - r95325;
double r95330 = r95324 * r95329;
double r95331 = r95313 / r95330;
return r95331;
}
double f(double t, double l, double k) {
double r95332 = l;
double r95333 = r95332 * r95332;
double r95334 = 3.1891368446031747e-106;
bool r95335 = r95333 <= r95334;
double r95336 = 2.0;
double r95337 = 1.0;
double r95338 = k;
double r95339 = 2.0;
double r95340 = r95336 / r95339;
double r95341 = pow(r95338, r95340);
double r95342 = t;
double r95343 = 1.0;
double r95344 = pow(r95342, r95343);
double r95345 = r95341 * r95344;
double r95346 = r95341 * r95345;
double r95347 = r95337 / r95346;
double r95348 = pow(r95347, r95343);
double r95349 = cos(r95338);
double r95350 = sin(r95338);
double r95351 = fabs(r95350);
double r95352 = r95349 / r95351;
double r95353 = r95351 / r95332;
double r95354 = r95332 / r95353;
double r95355 = r95352 * r95354;
double r95356 = r95348 * r95355;
double r95357 = r95336 * r95356;
double r95358 = 1.7346492471837878e+297;
bool r95359 = r95333 <= r95358;
double r95360 = r95337 / r95341;
double r95361 = pow(r95360, r95343);
double r95362 = r95337 / r95345;
double r95363 = pow(r95362, r95343);
double r95364 = pow(r95350, r95339);
double r95365 = pow(r95332, r95339);
double r95366 = r95364 / r95365;
double r95367 = r95349 / r95366;
double r95368 = r95363 * r95367;
double r95369 = r95361 * r95368;
double r95370 = r95336 * r95369;
double r95371 = pow(r95338, r95336);
double r95372 = r95344 * r95371;
double r95373 = r95337 / r95372;
double r95374 = pow(r95373, r95343);
double r95375 = exp(r95374);
double r95376 = r95349 * r95365;
double r95377 = r95376 / r95364;
double r95378 = pow(r95375, r95377);
double r95379 = log(r95378);
double r95380 = r95336 * r95379;
double r95381 = r95359 ? r95370 : r95380;
double r95382 = r95335 ? r95357 : r95381;
return r95382;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
if (* l l) < 3.1891368446031747e-106Initial program 45.9
Simplified36.2
Taylor expanded around inf 14.3
rmApplied sqr-pow14.3
Applied associate-*l*14.0
rmApplied add-sqr-sqrt14.0
Applied times-frac14.0
Simplified14.0
Simplified10.1
if 3.1891368446031747e-106 < (* l l) < 1.7346492471837878e+297Initial program 46.0
Simplified37.4
Taylor expanded around inf 15.6
rmApplied sqr-pow15.6
Applied associate-*l*9.7
rmApplied *-un-lft-identity9.7
Applied times-frac9.0
Applied unpow-prod-down9.0
Applied associate-*l*4.8
rmApplied associate-/l*4.8
if 1.7346492471837878e+297 < (* l l) Initial program 63.4
Simplified63.4
Taylor expanded around inf 62.9
rmApplied sqr-pow62.9
Applied associate-*l*62.5
rmApplied add-log-exp63.7
Simplified57.8
Final simplification15.7
herbie shell --seed 2019356 +o rules:numerics
(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))))