\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 -7.116427264207922396198059745161573311828 \cdot 10^{154} \lor \neg \left(k \le 1.596016421741683330355613183588958719568 \cdot 10^{147}\right):\\
\;\;\;\;\left(\frac{2 \cdot \ell}{{\left({k}^{\left(\frac{2}{2}\right)} \cdot \left({k}^{\left(\frac{2}{2}\right)} \cdot {t}^{1}\right)\right)}^{1}} \cdot \frac{\ell}{{\left(\sin k\right)}^{2}}\right) \cdot \cos k\\
\mathbf{else}:\\
\;\;\;\;\left(\frac{\frac{2 \cdot \ell}{{\left({k}^{2}\right)}^{1}}}{{\left({t}^{1}\right)}^{1}} \cdot \frac{\ell}{{\left(\sin k\right)}^{2}}\right) \cdot \cos k\\
\end{array}double f(double t, double l, double k) {
double r77051 = 2.0;
double r77052 = t;
double r77053 = 3.0;
double r77054 = pow(r77052, r77053);
double r77055 = l;
double r77056 = r77055 * r77055;
double r77057 = r77054 / r77056;
double r77058 = k;
double r77059 = sin(r77058);
double r77060 = r77057 * r77059;
double r77061 = tan(r77058);
double r77062 = r77060 * r77061;
double r77063 = 1.0;
double r77064 = r77058 / r77052;
double r77065 = pow(r77064, r77051);
double r77066 = r77063 + r77065;
double r77067 = r77066 - r77063;
double r77068 = r77062 * r77067;
double r77069 = r77051 / r77068;
return r77069;
}
double f(double t, double l, double k) {
double r77070 = k;
double r77071 = -7.116427264207922e+154;
bool r77072 = r77070 <= r77071;
double r77073 = 1.5960164217416833e+147;
bool r77074 = r77070 <= r77073;
double r77075 = !r77074;
bool r77076 = r77072 || r77075;
double r77077 = 2.0;
double r77078 = l;
double r77079 = r77077 * r77078;
double r77080 = 2.0;
double r77081 = r77077 / r77080;
double r77082 = pow(r77070, r77081);
double r77083 = t;
double r77084 = 1.0;
double r77085 = pow(r77083, r77084);
double r77086 = r77082 * r77085;
double r77087 = r77082 * r77086;
double r77088 = pow(r77087, r77084);
double r77089 = r77079 / r77088;
double r77090 = sin(r77070);
double r77091 = pow(r77090, r77080);
double r77092 = r77078 / r77091;
double r77093 = r77089 * r77092;
double r77094 = cos(r77070);
double r77095 = r77093 * r77094;
double r77096 = pow(r77070, r77077);
double r77097 = pow(r77096, r77084);
double r77098 = r77079 / r77097;
double r77099 = pow(r77085, r77084);
double r77100 = r77098 / r77099;
double r77101 = r77100 * r77092;
double r77102 = r77101 * r77094;
double r77103 = r77076 ? r77095 : r77102;
return r77103;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
if k < -7.116427264207922e+154 or 1.5960164217416833e+147 < k Initial program 40.0
Simplified34.6
Taylor expanded around inf 24.1
rmApplied sqr-pow24.1
Applied associate-*l*19.2
rmApplied associate-*r/19.2
Applied associate-*l/19.2
Applied associate-/r/19.2
Simplified22.2
rmApplied sqr-pow22.2
Applied associate-*l*14.7
if -7.116427264207922e+154 < k < 1.5960164217416833e+147Initial program 54.0
Simplified44.3
Taylor expanded around inf 21.6
rmApplied sqr-pow21.6
Applied associate-*l*21.5
rmApplied associate-*r/21.5
Applied associate-*l/21.5
Applied associate-/r/21.5
Simplified10.6
rmApplied unpow-prod-down10.6
Applied associate-/r*5.2
Final simplification9.2
herbie shell --seed 2019347
(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))))