\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 2.6145740768465546 \cdot 10^{-212}:\\
\;\;\;\;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 \frac{\frac{\cos k}{\sin k} \cdot \ell}{\frac{\sin k}{\ell}}\right)\\
\mathbf{elif}\;\ell \cdot \ell \le 8.3711679961397521 \cdot 10^{265}:\\
\;\;\;\;2 \cdot \left({\left(\frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{{k}^{\left(\frac{2}{2}\right)}}\right)}^{1} \cdot \left({\left(\frac{\sqrt[3]{1}}{{k}^{\left(\frac{2}{2}\right)} \cdot {t}^{1}}\right)}^{1} \cdot \left(\frac{\cos k}{\sin k} \cdot \frac{\ell}{\frac{\sin k}{\ell}}\right)\right)\right)\\
\mathbf{else}:\\
\;\;\;\;2 \cdot \frac{\left({\left(\frac{1}{{k}^{2} \cdot {t}^{1}}\right)}^{1} \cdot \ell\right) \cdot \cos k}{\sin k \cdot \frac{\sin k}{\ell}}\\
\end{array}double f(double t, double l, double k) {
double r84017 = 2.0;
double r84018 = t;
double r84019 = 3.0;
double r84020 = pow(r84018, r84019);
double r84021 = l;
double r84022 = r84021 * r84021;
double r84023 = r84020 / r84022;
double r84024 = k;
double r84025 = sin(r84024);
double r84026 = r84023 * r84025;
double r84027 = tan(r84024);
double r84028 = r84026 * r84027;
double r84029 = 1.0;
double r84030 = r84024 / r84018;
double r84031 = pow(r84030, r84017);
double r84032 = r84029 + r84031;
double r84033 = r84032 - r84029;
double r84034 = r84028 * r84033;
double r84035 = r84017 / r84034;
return r84035;
}
double f(double t, double l, double k) {
double r84036 = l;
double r84037 = r84036 * r84036;
double r84038 = 2.6145740768465546e-212;
bool r84039 = r84037 <= r84038;
double r84040 = 2.0;
double r84041 = 1.0;
double r84042 = k;
double r84043 = 2.0;
double r84044 = r84040 / r84043;
double r84045 = pow(r84042, r84044);
double r84046 = t;
double r84047 = 1.0;
double r84048 = pow(r84046, r84047);
double r84049 = r84045 * r84048;
double r84050 = r84045 * r84049;
double r84051 = r84041 / r84050;
double r84052 = pow(r84051, r84047);
double r84053 = cos(r84042);
double r84054 = sin(r84042);
double r84055 = r84053 / r84054;
double r84056 = r84055 * r84036;
double r84057 = r84054 / r84036;
double r84058 = r84056 / r84057;
double r84059 = r84052 * r84058;
double r84060 = r84040 * r84059;
double r84061 = 8.371167996139752e+265;
bool r84062 = r84037 <= r84061;
double r84063 = cbrt(r84041);
double r84064 = r84063 * r84063;
double r84065 = r84064 / r84045;
double r84066 = pow(r84065, r84047);
double r84067 = r84063 / r84049;
double r84068 = pow(r84067, r84047);
double r84069 = r84036 / r84057;
double r84070 = r84055 * r84069;
double r84071 = r84068 * r84070;
double r84072 = r84066 * r84071;
double r84073 = r84040 * r84072;
double r84074 = pow(r84042, r84040);
double r84075 = r84074 * r84048;
double r84076 = r84041 / r84075;
double r84077 = pow(r84076, r84047);
double r84078 = r84077 * r84036;
double r84079 = r84078 * r84053;
double r84080 = r84054 * r84057;
double r84081 = r84079 / r84080;
double r84082 = r84040 * r84081;
double r84083 = r84062 ? r84073 : r84082;
double r84084 = r84039 ? r84060 : r84083;
return r84084;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
if (* l l) < 2.6145740768465546e-212Initial program 46.2
Simplified36.8
Taylor expanded around inf 16.3
rmApplied sqr-pow16.3
Applied associate-*l*16.3
rmApplied add-sqr-sqrt40.3
Applied unpow-prod-down40.3
Applied times-frac40.0
Simplified40.0
Simplified11.6
rmApplied associate-*r/8.6
if 2.6145740768465546e-212 < (* l l) < 8.371167996139752e+265Initial program 43.9
Simplified34.7
Taylor expanded around inf 11.5
rmApplied sqr-pow11.5
Applied associate-*l*7.1
rmApplied add-sqr-sqrt34.8
Applied unpow-prod-down34.8
Applied times-frac34.7
Simplified34.6
Simplified7.0
rmApplied add-cube-cbrt7.0
Applied times-frac6.4
Applied unpow-prod-down6.4
Applied associate-*l*2.9
if 8.371167996139752e+265 < (* l l) Initial program 61.7
Simplified60.6
Taylor expanded around inf 58.8
rmApplied sqr-pow58.8
Applied associate-*l*57.7
rmApplied add-sqr-sqrt60.8
Applied unpow-prod-down60.8
Applied times-frac60.8
Simplified60.8
Simplified57.7
rmApplied frac-times57.7
Applied associate-*r/36.7
Simplified44.3
Final simplification12.7
herbie shell --seed 2020056
(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))))