\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 -1.3484728286962528 \cdot 10^{169}:\\
\;\;\;\;2 \cdot \left({\left(\frac{1}{{k}^{\left(\frac{2}{2}\right)}}\right)}^{1} \cdot \left({\left(\frac{1}{{k}^{\left(\frac{2}{2}\right)} \cdot {t}^{1}}\right)}^{1} \cdot \frac{\cos k \cdot {\ell}^{2}}{{\left(\sin k\right)}^{2}}\right)\right)\\
\mathbf{elif}\;k \le -1.5790227602943146 \cdot 10^{-138}:\\
\;\;\;\;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}}\\
\mathbf{elif}\;k \le 1.2653785684425997 \cdot 10^{-118}:\\
\;\;\;\;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}\;k \le 2.25324371902540199 \cdot 10^{110}:\\
\;\;\;\;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}}\\
\mathbf{else}:\\
\;\;\;\;2 \cdot \left({\left(\frac{1}{{k}^{\left(\frac{2}{2}\right)}}\right)}^{1} \cdot \left({\left(\frac{1}{{k}^{\left(\frac{2}{2}\right)} \cdot {t}^{1}}\right)}^{1} \cdot \frac{\cos k \cdot {\ell}^{2}}{{\left(\sin k\right)}^{2}}\right)\right)\\
\end{array}double f(double t, double l, double k) {
double r84308 = 2.0;
double r84309 = t;
double r84310 = 3.0;
double r84311 = pow(r84309, r84310);
double r84312 = l;
double r84313 = r84312 * r84312;
double r84314 = r84311 / r84313;
double r84315 = k;
double r84316 = sin(r84315);
double r84317 = r84314 * r84316;
double r84318 = tan(r84315);
double r84319 = r84317 * r84318;
double r84320 = 1.0;
double r84321 = r84315 / r84309;
double r84322 = pow(r84321, r84308);
double r84323 = r84320 + r84322;
double r84324 = r84323 - r84320;
double r84325 = r84319 * r84324;
double r84326 = r84308 / r84325;
return r84326;
}
double f(double t, double l, double k) {
double r84327 = k;
double r84328 = -1.3484728286962528e+169;
bool r84329 = r84327 <= r84328;
double r84330 = 2.0;
double r84331 = 1.0;
double r84332 = 2.0;
double r84333 = r84330 / r84332;
double r84334 = pow(r84327, r84333);
double r84335 = r84331 / r84334;
double r84336 = 1.0;
double r84337 = pow(r84335, r84336);
double r84338 = t;
double r84339 = pow(r84338, r84336);
double r84340 = r84334 * r84339;
double r84341 = r84331 / r84340;
double r84342 = pow(r84341, r84336);
double r84343 = cos(r84327);
double r84344 = l;
double r84345 = pow(r84344, r84332);
double r84346 = r84343 * r84345;
double r84347 = sin(r84327);
double r84348 = pow(r84347, r84332);
double r84349 = r84346 / r84348;
double r84350 = r84342 * r84349;
double r84351 = r84337 * r84350;
double r84352 = r84330 * r84351;
double r84353 = -1.5790227602943146e-138;
bool r84354 = r84327 <= r84353;
double r84355 = pow(r84327, r84330);
double r84356 = r84355 * r84339;
double r84357 = r84331 / r84356;
double r84358 = pow(r84357, r84336);
double r84359 = r84358 * r84344;
double r84360 = r84359 * r84343;
double r84361 = r84347 / r84344;
double r84362 = r84347 * r84361;
double r84363 = r84360 / r84362;
double r84364 = r84330 * r84363;
double r84365 = 1.2653785684425997e-118;
bool r84366 = r84327 <= r84365;
double r84367 = r84334 * r84340;
double r84368 = r84331 / r84367;
double r84369 = pow(r84368, r84336);
double r84370 = r84343 / r84347;
double r84371 = r84370 * r84344;
double r84372 = r84371 / r84361;
double r84373 = r84369 * r84372;
double r84374 = r84330 * r84373;
double r84375 = 2.253243719025402e+110;
bool r84376 = r84327 <= r84375;
double r84377 = r84376 ? r84364 : r84352;
double r84378 = r84366 ? r84374 : r84377;
double r84379 = r84354 ? r84364 : r84378;
double r84380 = r84329 ? r84352 : r84379;
return r84380;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
if k < -1.3484728286962528e+169 or 2.253243719025402e+110 < k Initial program 40.0
Simplified35.2
Taylor expanded around inf 23.4
rmApplied sqr-pow23.4
Applied associate-*l*18.8
rmApplied *-un-lft-identity18.8
Applied times-frac18.6
Applied unpow-prod-down18.6
Applied associate-*l*15.5
if -1.3484728286962528e+169 < k < -1.5790227602943146e-138 or 1.2653785684425997e-118 < k < 2.253243719025402e+110Initial program 53.2
Simplified42.0
Taylor expanded around inf 17.0
rmApplied sqr-pow17.0
Applied associate-*l*16.6
rmApplied add-sqr-sqrt40.0
Applied unpow-prod-down40.0
Applied times-frac40.0
Simplified40.0
Simplified15.1
rmApplied frac-times13.8
Applied associate-*r/7.1
Simplified7.7
if -1.5790227602943146e-138 < k < 1.2653785684425997e-118Initial program 64.0
Simplified64.0
Taylor expanded around inf 54.3
rmApplied sqr-pow54.3
Applied associate-*l*54.3
rmApplied add-sqr-sqrt57.8
Applied unpow-prod-down57.8
Applied times-frac55.1
Simplified55.1
Simplified29.0
rmApplied associate-*r/16.5
Final simplification11.7
herbie shell --seed 2020036 +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))))