\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 -5.9339280297435067 \cdot 10^{-38}:\\
\;\;\;\;\frac{2}{\frac{\left(\left({\left(\sqrt[3]{t}\right)}^{3} \cdot \frac{{\left(\sqrt[3]{t}\right)}^{3} \cdot \sin k}{\ell}\right) \cdot \sin k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)}{\frac{\ell}{{\left(\sqrt[3]{t}\right)}^{3}} \cdot \cos k}}\\
\mathbf{elif}\;t \le 1.4716678417993841 \cdot 10^{-86}:\\
\;\;\;\;\frac{2}{\frac{2 \cdot \left({\left(\frac{1}{{-1}^{2}}\right)}^{1} \cdot \frac{{t}^{2} \cdot {\left(\sin k\right)}^{2}}{\ell}\right) + {\left(\frac{1}{{-1}^{2}}\right)}^{1} \cdot \frac{{k}^{2} \cdot {\left(\sin k\right)}^{2}}{\ell}}{\frac{\ell}{{\left(\sqrt[3]{t}\right)}^{3}} \cdot \cos k}}\\
\mathbf{else}:\\
\;\;\;\;\frac{2}{\left(\sqrt[3]{\frac{\left(\left({\left(\sqrt[3]{t}\right)}^{3} \cdot \left(\frac{{\left(\sqrt[3]{t}\right)}^{3}}{\ell} \cdot \sin k\right)\right) \cdot \sin k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)}{\frac{\ell}{{\left(\sqrt[3]{t}\right)}^{3}} \cdot \cos k}} \cdot \sqrt[3]{\frac{\left(\left({\left(\sqrt[3]{t}\right)}^{3} \cdot \left(\frac{{\left(\sqrt[3]{t}\right)}^{3}}{\ell} \cdot \sin k\right)\right) \cdot \sin k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)}{\frac{\ell}{{\left(\sqrt[3]{t}\right)}^{3}} \cdot \cos k}}\right) \cdot \sqrt[3]{\frac{\left(\left({\left(\sqrt[3]{t}\right)}^{3} \cdot \left(\frac{{\left(\sqrt[3]{t}\right)}^{3}}{\ell} \cdot \sin k\right)\right) \cdot \sin k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)}{\frac{\ell}{{\left(\sqrt[3]{t}\right)}^{3}} \cdot \cos k}}}\\
\end{array}double f(double t, double l, double k) {
double r124867 = 2.0;
double r124868 = t;
double r124869 = 3.0;
double r124870 = pow(r124868, r124869);
double r124871 = l;
double r124872 = r124871 * r124871;
double r124873 = r124870 / r124872;
double r124874 = k;
double r124875 = sin(r124874);
double r124876 = r124873 * r124875;
double r124877 = tan(r124874);
double r124878 = r124876 * r124877;
double r124879 = 1.0;
double r124880 = r124874 / r124868;
double r124881 = pow(r124880, r124867);
double r124882 = r124879 + r124881;
double r124883 = r124882 + r124879;
double r124884 = r124878 * r124883;
double r124885 = r124867 / r124884;
return r124885;
}
double f(double t, double l, double k) {
double r124886 = t;
double r124887 = -5.933928029743507e-38;
bool r124888 = r124886 <= r124887;
double r124889 = 2.0;
double r124890 = cbrt(r124886);
double r124891 = 3.0;
double r124892 = pow(r124890, r124891);
double r124893 = k;
double r124894 = sin(r124893);
double r124895 = r124892 * r124894;
double r124896 = l;
double r124897 = r124895 / r124896;
double r124898 = r124892 * r124897;
double r124899 = r124898 * r124894;
double r124900 = 1.0;
double r124901 = r124893 / r124886;
double r124902 = pow(r124901, r124889);
double r124903 = r124900 + r124902;
double r124904 = r124903 + r124900;
double r124905 = r124899 * r124904;
double r124906 = r124896 / r124892;
double r124907 = cos(r124893);
double r124908 = r124906 * r124907;
double r124909 = r124905 / r124908;
double r124910 = r124889 / r124909;
double r124911 = 1.4716678417993841e-86;
bool r124912 = r124886 <= r124911;
double r124913 = 1.0;
double r124914 = -1.0;
double r124915 = pow(r124914, r124889);
double r124916 = r124913 / r124915;
double r124917 = pow(r124916, r124900);
double r124918 = 2.0;
double r124919 = pow(r124886, r124918);
double r124920 = pow(r124894, r124918);
double r124921 = r124919 * r124920;
double r124922 = r124921 / r124896;
double r124923 = r124917 * r124922;
double r124924 = r124889 * r124923;
double r124925 = pow(r124893, r124918);
double r124926 = r124925 * r124920;
double r124927 = r124926 / r124896;
double r124928 = r124917 * r124927;
double r124929 = r124924 + r124928;
double r124930 = r124929 / r124908;
double r124931 = r124889 / r124930;
double r124932 = r124892 / r124896;
double r124933 = r124932 * r124894;
double r124934 = r124892 * r124933;
double r124935 = r124934 * r124894;
double r124936 = r124935 * r124904;
double r124937 = r124936 / r124908;
double r124938 = cbrt(r124937);
double r124939 = r124938 * r124938;
double r124940 = r124939 * r124938;
double r124941 = r124889 / r124940;
double r124942 = r124912 ? r124931 : r124941;
double r124943 = r124888 ? r124910 : r124942;
return r124943;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
if t < -5.933928029743507e-38Initial program 22.9
rmApplied add-cube-cbrt23.1
Applied unpow-prod-down23.1
Applied times-frac16.4
Applied associate-*l*14.3
rmApplied unpow-prod-down14.3
Applied associate-/l*8.4
rmApplied tan-quot8.4
Applied associate-*l/7.2
Applied frac-times4.6
Applied associate-*l/3.9
rmApplied associate-*l/3.9
if -5.933928029743507e-38 < t < 1.4716678417993841e-86Initial program 57.2
rmApplied add-cube-cbrt57.2
Applied unpow-prod-down57.2
Applied times-frac48.3
Applied associate-*l*47.8
rmApplied unpow-prod-down47.8
Applied associate-/l*40.5
rmApplied tan-quot40.5
Applied associate-*l/40.6
Applied frac-times41.8
Applied associate-*l/38.2
Taylor expanded around -inf 23.0
if 1.4716678417993841e-86 < t Initial program 23.1
rmApplied add-cube-cbrt23.3
Applied unpow-prod-down23.3
Applied times-frac16.9
Applied associate-*l*14.5
rmApplied unpow-prod-down14.5
Applied associate-/l*9.7
rmApplied tan-quot9.7
Applied associate-*l/8.6
Applied frac-times7.1
Applied associate-*l/6.4
rmApplied add-cube-cbrt6.4
Final simplification10.3
herbie shell --seed 2020081
(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))))