\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 -7.3219154401390226 \cdot 10^{-234}:\\
\;\;\;\;\frac{2}{\left(\left(\frac{{\left(\sqrt[3]{t}\right)}^{3}}{\frac{\ell}{{\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)}\\
\mathbf{elif}\;t \le 9.31487464079908344 \cdot 10^{-123}:\\
\;\;\;\;\frac{2}{2 \cdot \frac{{t}^{3} \cdot {\left(\sin k\right)}^{2}}{\cos k \cdot {\ell}^{2}} - {\left(\frac{1}{{-1}^{3}}\right)}^{1} \cdot \frac{t \cdot \left({k}^{2} \cdot {\left(\sin k\right)}^{2}\right)}{\cos k \cdot {\ell}^{2}}}\\
\mathbf{else}:\\
\;\;\;\;\frac{2}{\left({\left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right)}^{\left(\frac{3}{2}\right)} \cdot \left(\left(\frac{{\left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right)}^{\left(\frac{3}{2}\right)}}{\ell} \cdot \left(\frac{{\left(\sqrt[3]{t}\right)}^{3}}{\ell} \cdot \sin k\right)\right) \cdot \tan k\right)\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)}\\
\end{array}double f(double t, double l, double k) {
double r128364 = 2.0;
double r128365 = t;
double r128366 = 3.0;
double r128367 = pow(r128365, r128366);
double r128368 = l;
double r128369 = r128368 * r128368;
double r128370 = r128367 / r128369;
double r128371 = k;
double r128372 = sin(r128371);
double r128373 = r128370 * r128372;
double r128374 = tan(r128371);
double r128375 = r128373 * r128374;
double r128376 = 1.0;
double r128377 = r128371 / r128365;
double r128378 = pow(r128377, r128364);
double r128379 = r128376 + r128378;
double r128380 = r128379 + r128376;
double r128381 = r128375 * r128380;
double r128382 = r128364 / r128381;
return r128382;
}
double f(double t, double l, double k) {
double r128383 = t;
double r128384 = -7.321915440139023e-234;
bool r128385 = r128383 <= r128384;
double r128386 = 2.0;
double r128387 = cbrt(r128383);
double r128388 = 3.0;
double r128389 = pow(r128387, r128388);
double r128390 = l;
double r128391 = r128390 / r128389;
double r128392 = r128389 / r128391;
double r128393 = r128389 / r128390;
double r128394 = k;
double r128395 = sin(r128394);
double r128396 = r128393 * r128395;
double r128397 = r128392 * r128396;
double r128398 = tan(r128394);
double r128399 = r128397 * r128398;
double r128400 = 1.0;
double r128401 = r128394 / r128383;
double r128402 = pow(r128401, r128386);
double r128403 = r128400 + r128402;
double r128404 = r128403 + r128400;
double r128405 = r128399 * r128404;
double r128406 = r128386 / r128405;
double r128407 = 9.314874640799083e-123;
bool r128408 = r128383 <= r128407;
double r128409 = 3.0;
double r128410 = pow(r128383, r128409);
double r128411 = 2.0;
double r128412 = pow(r128395, r128411);
double r128413 = r128410 * r128412;
double r128414 = cos(r128394);
double r128415 = pow(r128390, r128411);
double r128416 = r128414 * r128415;
double r128417 = r128413 / r128416;
double r128418 = r128386 * r128417;
double r128419 = 1.0;
double r128420 = -1.0;
double r128421 = pow(r128420, r128388);
double r128422 = r128419 / r128421;
double r128423 = pow(r128422, r128400);
double r128424 = pow(r128394, r128411);
double r128425 = r128424 * r128412;
double r128426 = r128383 * r128425;
double r128427 = r128426 / r128416;
double r128428 = r128423 * r128427;
double r128429 = r128418 - r128428;
double r128430 = r128386 / r128429;
double r128431 = r128387 * r128387;
double r128432 = r128388 / r128411;
double r128433 = pow(r128431, r128432);
double r128434 = r128433 / r128390;
double r128435 = r128434 * r128396;
double r128436 = r128435 * r128398;
double r128437 = r128433 * r128436;
double r128438 = r128437 * r128404;
double r128439 = r128386 / r128438;
double r128440 = r128408 ? r128430 : r128439;
double r128441 = r128385 ? r128406 : r128440;
return r128441;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
if t < -7.321915440139023e-234Initial program 29.1
rmApplied add-cube-cbrt29.3
Applied unpow-prod-down29.3
Applied times-frac22.1
Applied associate-*l*20.1
rmApplied unpow-prod-down20.1
Applied associate-/l*14.8
if -7.321915440139023e-234 < t < 9.314874640799083e-123Initial program 64.0
Taylor expanded around -inf 41.3
if 9.314874640799083e-123 < t Initial program 24.2
rmApplied add-cube-cbrt24.3
Applied unpow-prod-down24.3
Applied times-frac17.8
Applied associate-*l*15.8
rmApplied *-un-lft-identity15.8
Applied sqr-pow15.8
Applied times-frac11.3
Simplified11.3
rmApplied associate-*l*10.6
rmApplied associate-*l*10.6
Final simplification16.7
herbie shell --seed 2020060
(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))))