\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 \le -6.8634795139646475 \cdot 10^{154} \lor \neg \left(\ell \le 8.1738399818387598 \cdot 10^{150}\right):\\
\;\;\;\;\frac{\frac{2}{\left(\left(\frac{{\left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right)}^{3}}{\ell} \cdot \frac{{\left(\sqrt[3]{t}\right)}^{3}}{\ell}\right) \cdot \sin k\right) \cdot \tan k}}{{\left(\frac{k}{t}\right)}^{2}}\\
\mathbf{else}:\\
\;\;\;\;2 \cdot \left({\left(\frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{{k}^{\left(\frac{2}{2}\right)}}\right)}^{1} \cdot \left(\left({\left(\frac{1}{{k}^{\left(\frac{2}{2}\right)} \cdot {t}^{1}}\right)}^{1} \cdot \frac{\cos k}{\sin k}\right) \cdot \frac{{\ell}^{2}}{\sin k}\right)\right)\\
\end{array}double f(double t, double l, double k) {
double r110885 = 2.0;
double r110886 = t;
double r110887 = 3.0;
double r110888 = pow(r110886, r110887);
double r110889 = l;
double r110890 = r110889 * r110889;
double r110891 = r110888 / r110890;
double r110892 = k;
double r110893 = sin(r110892);
double r110894 = r110891 * r110893;
double r110895 = tan(r110892);
double r110896 = r110894 * r110895;
double r110897 = 1.0;
double r110898 = r110892 / r110886;
double r110899 = pow(r110898, r110885);
double r110900 = r110897 + r110899;
double r110901 = r110900 - r110897;
double r110902 = r110896 * r110901;
double r110903 = r110885 / r110902;
return r110903;
}
double f(double t, double l, double k) {
double r110904 = l;
double r110905 = -6.863479513964647e+154;
bool r110906 = r110904 <= r110905;
double r110907 = 8.17383998183876e+150;
bool r110908 = r110904 <= r110907;
double r110909 = !r110908;
bool r110910 = r110906 || r110909;
double r110911 = 2.0;
double r110912 = t;
double r110913 = cbrt(r110912);
double r110914 = r110913 * r110913;
double r110915 = 3.0;
double r110916 = pow(r110914, r110915);
double r110917 = r110916 / r110904;
double r110918 = pow(r110913, r110915);
double r110919 = r110918 / r110904;
double r110920 = r110917 * r110919;
double r110921 = k;
double r110922 = sin(r110921);
double r110923 = r110920 * r110922;
double r110924 = tan(r110921);
double r110925 = r110923 * r110924;
double r110926 = r110911 / r110925;
double r110927 = r110921 / r110912;
double r110928 = pow(r110927, r110911);
double r110929 = r110926 / r110928;
double r110930 = 1.0;
double r110931 = cbrt(r110930);
double r110932 = r110931 * r110931;
double r110933 = 2.0;
double r110934 = r110911 / r110933;
double r110935 = pow(r110921, r110934);
double r110936 = r110932 / r110935;
double r110937 = 1.0;
double r110938 = pow(r110936, r110937);
double r110939 = pow(r110912, r110937);
double r110940 = r110935 * r110939;
double r110941 = r110930 / r110940;
double r110942 = pow(r110941, r110937);
double r110943 = cos(r110921);
double r110944 = r110943 / r110922;
double r110945 = r110942 * r110944;
double r110946 = pow(r110904, r110933);
double r110947 = r110946 / r110922;
double r110948 = r110945 * r110947;
double r110949 = r110938 * r110948;
double r110950 = r110911 * r110949;
double r110951 = r110910 ? r110929 : r110950;
return r110951;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
if l < -6.863479513964647e+154 or 8.17383998183876e+150 < l Initial program 63.7
Simplified63.6
rmApplied add-cube-cbrt63.6
Applied unpow-prod-down63.6
Applied times-frac48.5
if -6.863479513964647e+154 < l < 8.17383998183876e+150Initial program 45.4
Simplified36.3
Taylor expanded around inf 15.0
rmApplied sqr-pow15.0
Applied associate-*l*12.5
rmApplied add-cube-cbrt12.5
Applied times-frac12.3
Applied unpow-prod-down12.3
Applied associate-*l*10.5
Simplified10.5
rmApplied unpow210.5
Applied times-frac10.1
Applied associate-*r*10.2
Final simplification16.2
herbie shell --seed 2020042 +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))))