\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 -9.126743252136130554592578622359092123676 \cdot 10^{-80}:\\
\;\;\;\;\left(\left(\frac{\cos k}{\sin k} \cdot \ell\right) \cdot \left(2 \cdot {\left(\frac{1}{{t}^{1} \cdot {k}^{2}}\right)}^{1}\right)\right) \cdot \frac{1}{\frac{\sin k}{\ell}}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\cos k}{\frac{\sin k}{\ell}}}{\frac{\sin k}{\ell}} \cdot \left(2 \cdot {\left(\frac{\frac{1}{{k}^{\left(\frac{2}{2}\right)} \cdot {t}^{1}}}{{k}^{\left(\frac{2}{2}\right)}}\right)}^{1}\right)\\
\end{array}double f(double t, double l, double k) {
double r10163012 = 2.0;
double r10163013 = t;
double r10163014 = 3.0;
double r10163015 = pow(r10163013, r10163014);
double r10163016 = l;
double r10163017 = r10163016 * r10163016;
double r10163018 = r10163015 / r10163017;
double r10163019 = k;
double r10163020 = sin(r10163019);
double r10163021 = r10163018 * r10163020;
double r10163022 = tan(r10163019);
double r10163023 = r10163021 * r10163022;
double r10163024 = 1.0;
double r10163025 = r10163019 / r10163013;
double r10163026 = pow(r10163025, r10163012);
double r10163027 = r10163024 + r10163026;
double r10163028 = r10163027 - r10163024;
double r10163029 = r10163023 * r10163028;
double r10163030 = r10163012 / r10163029;
return r10163030;
}
double f(double t, double l, double k) {
double r10163031 = k;
double r10163032 = -9.12674325213613e-80;
bool r10163033 = r10163031 <= r10163032;
double r10163034 = cos(r10163031);
double r10163035 = sin(r10163031);
double r10163036 = r10163034 / r10163035;
double r10163037 = l;
double r10163038 = r10163036 * r10163037;
double r10163039 = 2.0;
double r10163040 = 1.0;
double r10163041 = t;
double r10163042 = 1.0;
double r10163043 = pow(r10163041, r10163042);
double r10163044 = pow(r10163031, r10163039);
double r10163045 = r10163043 * r10163044;
double r10163046 = r10163040 / r10163045;
double r10163047 = pow(r10163046, r10163042);
double r10163048 = r10163039 * r10163047;
double r10163049 = r10163038 * r10163048;
double r10163050 = r10163035 / r10163037;
double r10163051 = r10163040 / r10163050;
double r10163052 = r10163049 * r10163051;
double r10163053 = r10163034 / r10163050;
double r10163054 = r10163053 / r10163050;
double r10163055 = 2.0;
double r10163056 = r10163039 / r10163055;
double r10163057 = pow(r10163031, r10163056);
double r10163058 = r10163057 * r10163043;
double r10163059 = r10163040 / r10163058;
double r10163060 = r10163059 / r10163057;
double r10163061 = pow(r10163060, r10163042);
double r10163062 = r10163039 * r10163061;
double r10163063 = r10163054 * r10163062;
double r10163064 = r10163033 ? r10163052 : r10163063;
return r10163064;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
if k < -9.12674325213613e-80Initial program 46.8
Simplified38.1
Taylor expanded around inf 20.2
Simplified19.7
rmApplied sqr-pow19.7
Applied associate-*r*17.2
rmApplied *-un-lft-identity17.2
Applied times-frac17.2
Applied associate-*l*11.0
Simplified14.5
if -9.12674325213613e-80 < k Initial program 50.3
Simplified43.4
Taylor expanded around inf 24.1
Simplified21.3
rmApplied sqr-pow21.3
Applied associate-*r*16.6
rmApplied associate-/r*16.4
rmApplied associate-/r*16.2
Final simplification15.5
herbie shell --seed 2019171
(FPCore (t l k)
:name "Toniolo and Linder, Equation (10-)"
(/ 2.0 (* (* (* (/ (pow t 3.0) (* l l)) (sin k)) (tan k)) (- (+ 1.0 (pow (/ k t) 2.0)) 1.0))))