\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 1.084960617494571136532106729940016148301 \cdot 10^{-276}:\\
\;\;\;\;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 \mathsf{fma}\left(\frac{\ell}{k}, \frac{\ell}{k}, {\ell}^{2} \cdot \frac{-1}{6}\right)\right)\\
\mathbf{elif}\;\ell \cdot \ell \le 1.064294734521519693928254286704808478679 \cdot 10^{294}:\\
\;\;\;\;\left(\left(\frac{{\ell}^{2}}{\sin k} \cdot \frac{\cos k \cdot {\left(\frac{1}{{k}^{\left(\frac{2}{2}\right)} \cdot {t}^{1}}\right)}^{1}}{\sin k}\right) \cdot {\left(\frac{1}{{k}^{\left(\frac{2}{2}\right)}}\right)}^{1}\right) \cdot 2\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{2}{\left(\left(\frac{{\left(\sqrt{t}\right)}^{3}}{\ell} \cdot \frac{{\left(\sqrt{t}\right)}^{3}}{\ell}\right) \cdot \sin k\right) \cdot \tan k}}{{\left(\frac{k}{t}\right)}^{2}}\\
\end{array}double f(double t, double l, double k) {
double r101637 = 2.0;
double r101638 = t;
double r101639 = 3.0;
double r101640 = pow(r101638, r101639);
double r101641 = l;
double r101642 = r101641 * r101641;
double r101643 = r101640 / r101642;
double r101644 = k;
double r101645 = sin(r101644);
double r101646 = r101643 * r101645;
double r101647 = tan(r101644);
double r101648 = r101646 * r101647;
double r101649 = 1.0;
double r101650 = r101644 / r101638;
double r101651 = pow(r101650, r101637);
double r101652 = r101649 + r101651;
double r101653 = r101652 - r101649;
double r101654 = r101648 * r101653;
double r101655 = r101637 / r101654;
return r101655;
}
double f(double t, double l, double k) {
double r101656 = l;
double r101657 = r101656 * r101656;
double r101658 = 1.0849606174945711e-276;
bool r101659 = r101657 <= r101658;
double r101660 = 2.0;
double r101661 = 1.0;
double r101662 = k;
double r101663 = 2.0;
double r101664 = r101660 / r101663;
double r101665 = pow(r101662, r101664);
double r101666 = t;
double r101667 = 1.0;
double r101668 = pow(r101666, r101667);
double r101669 = r101665 * r101668;
double r101670 = r101665 * r101669;
double r101671 = r101661 / r101670;
double r101672 = pow(r101671, r101667);
double r101673 = r101656 / r101662;
double r101674 = pow(r101656, r101663);
double r101675 = -0.16666666666666666;
double r101676 = r101674 * r101675;
double r101677 = fma(r101673, r101673, r101676);
double r101678 = r101672 * r101677;
double r101679 = r101660 * r101678;
double r101680 = 1.0642947345215197e+294;
bool r101681 = r101657 <= r101680;
double r101682 = sin(r101662);
double r101683 = r101674 / r101682;
double r101684 = cos(r101662);
double r101685 = r101661 / r101669;
double r101686 = pow(r101685, r101667);
double r101687 = r101684 * r101686;
double r101688 = r101687 / r101682;
double r101689 = r101683 * r101688;
double r101690 = r101661 / r101665;
double r101691 = pow(r101690, r101667);
double r101692 = r101689 * r101691;
double r101693 = r101692 * r101660;
double r101694 = sqrt(r101666);
double r101695 = 3.0;
double r101696 = pow(r101694, r101695);
double r101697 = r101696 / r101656;
double r101698 = r101697 * r101697;
double r101699 = r101698 * r101682;
double r101700 = tan(r101662);
double r101701 = r101699 * r101700;
double r101702 = r101660 / r101701;
double r101703 = r101662 / r101666;
double r101704 = pow(r101703, r101660);
double r101705 = r101702 / r101704;
double r101706 = r101681 ? r101693 : r101705;
double r101707 = r101659 ? r101679 : r101706;
return r101707;
}



Bits error versus t



Bits error versus l



Bits error versus k
if (* l l) < 1.0849606174945711e-276Initial program 45.5
Simplified36.7
Taylor expanded around inf 18.4
rmApplied sqr-pow18.4
Applied associate-*l*18.4
Taylor expanded around 0 19.0
Simplified10.1
if 1.0849606174945711e-276 < (* l l) < 1.0642947345215197e+294Initial program 44.7
Simplified35.6
Taylor expanded around inf 10.9
rmApplied sqr-pow10.9
Applied associate-*l*6.7
rmApplied add-cube-cbrt6.7
Applied times-frac6.3
Applied unpow-prod-down6.3
Applied associate-*l*3.5
Simplified3.5
rmApplied sqr-pow3.5
Applied times-frac3.1
Applied associate-*r*3.0
Simplified3.0
if 1.0642947345215197e+294 < (* l l) Initial program 63.3
Simplified63.1
rmApplied add-sqr-sqrt63.6
Applied unpow-prod-down63.6
Applied times-frac53.5
Final simplification13.9
herbie shell --seed 2019303 +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))))