\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}\;k \le -4.57723594555655645 \cdot 10^{139} \lor \neg \left(k \le -2.7057282491360021 \cdot 10^{-140} \lor \neg \left(k \le 7.6001933799401753 \cdot 10^{-155} \lor \neg \left(k \le 1.15121578543094186 \cdot 10^{132}\right)\right)\right):\\
\;\;\;\;2 \cdot \frac{{\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 \ell\right)}{\frac{\left|\sin k\right|}{\ell}}\\
\mathbf{else}:\\
\;\;\;\;2 \cdot \frac{{\left(\frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{{k}^{2}}\right)}^{1} \cdot \left({\left(\frac{\sqrt[3]{1}}{{t}^{1}}\right)}^{1} \cdot \left(\frac{\cos k}{\left|\sin k\right|} \cdot \ell\right)\right)}{\frac{\left|\sin k\right|}{\ell}}\\
\end{array}double f(double t, double l, double k) {
double r87492 = 2.0;
double r87493 = t;
double r87494 = 3.0;
double r87495 = pow(r87493, r87494);
double r87496 = l;
double r87497 = r87496 * r87496;
double r87498 = r87495 / r87497;
double r87499 = k;
double r87500 = sin(r87499);
double r87501 = r87498 * r87500;
double r87502 = tan(r87499);
double r87503 = r87501 * r87502;
double r87504 = 1.0;
double r87505 = r87499 / r87493;
double r87506 = pow(r87505, r87492);
double r87507 = r87504 + r87506;
double r87508 = r87507 - r87504;
double r87509 = r87503 * r87508;
double r87510 = r87492 / r87509;
return r87510;
}
double f(double t, double l, double k) {
double r87511 = k;
double r87512 = -4.5772359455565565e+139;
bool r87513 = r87511 <= r87512;
double r87514 = -2.705728249136002e-140;
bool r87515 = r87511 <= r87514;
double r87516 = 7.600193379940175e-155;
bool r87517 = r87511 <= r87516;
double r87518 = 1.1512157854309419e+132;
bool r87519 = r87511 <= r87518;
double r87520 = !r87519;
bool r87521 = r87517 || r87520;
double r87522 = !r87521;
bool r87523 = r87515 || r87522;
double r87524 = !r87523;
bool r87525 = r87513 || r87524;
double r87526 = 2.0;
double r87527 = 1.0;
double r87528 = 2.0;
double r87529 = r87526 / r87528;
double r87530 = pow(r87511, r87529);
double r87531 = t;
double r87532 = 1.0;
double r87533 = pow(r87531, r87532);
double r87534 = r87530 * r87533;
double r87535 = r87530 * r87534;
double r87536 = r87527 / r87535;
double r87537 = pow(r87536, r87532);
double r87538 = cos(r87511);
double r87539 = sin(r87511);
double r87540 = fabs(r87539);
double r87541 = r87538 / r87540;
double r87542 = l;
double r87543 = r87541 * r87542;
double r87544 = r87537 * r87543;
double r87545 = r87540 / r87542;
double r87546 = r87544 / r87545;
double r87547 = r87526 * r87546;
double r87548 = cbrt(r87527);
double r87549 = r87548 * r87548;
double r87550 = pow(r87511, r87526);
double r87551 = r87549 / r87550;
double r87552 = pow(r87551, r87532);
double r87553 = r87548 / r87533;
double r87554 = pow(r87553, r87532);
double r87555 = r87554 * r87543;
double r87556 = r87552 * r87555;
double r87557 = r87556 / r87545;
double r87558 = r87526 * r87557;
double r87559 = r87525 ? r87547 : r87558;
return r87559;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
if k < -4.5772359455565565e+139 or -2.705728249136002e-140 < k < 7.600193379940175e-155 or 1.1512157854309419e+132 < k Initial program 42.0
Simplified36.9
Taylor expanded around inf 26.4
rmApplied add-sqr-sqrt26.4
Applied times-frac26.4
Simplified26.4
Simplified26.2
rmApplied associate-*r/25.8
Applied associate-*r/23.9
rmApplied sqr-pow23.9
Applied associate-*l*14.6
if -4.5772359455565565e+139 < k < -2.705728249136002e-140 or 7.600193379940175e-155 < k < 1.1512157854309419e+132Initial program 54.8
Simplified43.8
Taylor expanded around inf 18.5
rmApplied add-sqr-sqrt18.5
Applied times-frac18.5
Simplified18.5
Simplified16.9
rmApplied associate-*r/15.5
Applied associate-*r/8.3
rmApplied add-cube-cbrt8.3
Applied times-frac8.0
Applied unpow-prod-down8.0
Applied associate-*l*3.4
Final simplification8.9
herbie shell --seed 2020062
(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))))