\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 -8.9864574956088768 \cdot 10^{-105} \lor \neg \left(t \le 3.6480188607512227 \cdot 10^{-258}\right):\\
\;\;\;\;\frac{2}{\left({\left(\sqrt[3]{t}\right)}^{3} \cdot \left(\frac{{\left(\sqrt[3]{t}\right)}^{3}}{\ell} \cdot \sin k\right)\right) \cdot \left(\tan k \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)\right)} \cdot \frac{\ell}{{\left(\sqrt[3]{t}\right)}^{3}}\\
\mathbf{else}:\\
\;\;\;\;\frac{2}{\frac{{k}^{2} \cdot \left(t \cdot {\left(\sin k\right)}^{2}\right)}{\cos k \cdot {\ell}^{2}} + 2 \cdot \frac{{t}^{3} \cdot {\left(\sin k\right)}^{2}}{\cos k \cdot {\ell}^{2}}}\\
\end{array}double f(double t, double l, double k) {
double r127498 = 2.0;
double r127499 = t;
double r127500 = 3.0;
double r127501 = pow(r127499, r127500);
double r127502 = l;
double r127503 = r127502 * r127502;
double r127504 = r127501 / r127503;
double r127505 = k;
double r127506 = sin(r127505);
double r127507 = r127504 * r127506;
double r127508 = tan(r127505);
double r127509 = r127507 * r127508;
double r127510 = 1.0;
double r127511 = r127505 / r127499;
double r127512 = pow(r127511, r127498);
double r127513 = r127510 + r127512;
double r127514 = r127513 + r127510;
double r127515 = r127509 * r127514;
double r127516 = r127498 / r127515;
return r127516;
}
double f(double t, double l, double k) {
double r127517 = t;
double r127518 = -8.986457495608877e-105;
bool r127519 = r127517 <= r127518;
double r127520 = 3.6480188607512227e-258;
bool r127521 = r127517 <= r127520;
double r127522 = !r127521;
bool r127523 = r127519 || r127522;
double r127524 = 2.0;
double r127525 = cbrt(r127517);
double r127526 = 3.0;
double r127527 = pow(r127525, r127526);
double r127528 = l;
double r127529 = r127527 / r127528;
double r127530 = k;
double r127531 = sin(r127530);
double r127532 = r127529 * r127531;
double r127533 = r127527 * r127532;
double r127534 = tan(r127530);
double r127535 = 1.0;
double r127536 = r127530 / r127517;
double r127537 = pow(r127536, r127524);
double r127538 = r127535 + r127537;
double r127539 = r127538 + r127535;
double r127540 = r127534 * r127539;
double r127541 = r127533 * r127540;
double r127542 = r127524 / r127541;
double r127543 = r127528 / r127527;
double r127544 = r127542 * r127543;
double r127545 = 2.0;
double r127546 = pow(r127530, r127545);
double r127547 = pow(r127531, r127545);
double r127548 = r127517 * r127547;
double r127549 = r127546 * r127548;
double r127550 = cos(r127530);
double r127551 = pow(r127528, r127545);
double r127552 = r127550 * r127551;
double r127553 = r127549 / r127552;
double r127554 = 3.0;
double r127555 = pow(r127517, r127554);
double r127556 = r127555 * r127547;
double r127557 = r127556 / r127552;
double r127558 = r127524 * r127557;
double r127559 = r127553 + r127558;
double r127560 = r127524 / r127559;
double r127561 = r127523 ? r127544 : r127560;
return r127561;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
if t < -8.986457495608877e-105 or 3.6480188607512227e-258 < t Initial program 27.8
rmApplied add-cube-cbrt27.9
Applied unpow-prod-down27.9
Applied times-frac20.8
Applied associate-*l*18.8
rmApplied unpow-prod-down18.8
Applied associate-/l*13.4
rmApplied associate-*l*13.3
rmApplied associate-*l/12.3
Applied associate-*l/9.5
Applied associate-/r/9.4
if -8.986457495608877e-105 < t < 3.6480188607512227e-258Initial program 63.7
Taylor expanded around inf 41.3
Final simplification13.7
herbie shell --seed 2020042
(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))))