\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 -8.448835479690807 \cdot 10^{-37}:\\
\;\;\;\;\frac{\frac{2}{t \cdot \frac{\sin k \cdot t}{\ell}}}{\frac{\tan k \cdot \mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right)}{\frac{\ell}{t}}}\\
\mathbf{elif}\;t \le 1.1003810475973448 \cdot 10^{-104}:\\
\;\;\;\;\frac{2}{\frac{\mathsf{fma}\left(\frac{\left(\sin k \cdot \sin k\right) \cdot \left(t \cdot t\right)}{\cos k \cdot \ell}, 2, \frac{\frac{\left(k \cdot k\right) \cdot \left(\sin k \cdot \sin k\right)}{\cos k}}{\ell}\right)}{\frac{\ell}{t}}}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{2}{t \cdot \frac{\sin k \cdot t}{\ell}}}{\frac{\tan k \cdot \mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right)}{\frac{\ell}{t}}}\\
\end{array}double f(double t, double l, double k) {
double r1776434 = 2.0;
double r1776435 = t;
double r1776436 = 3.0;
double r1776437 = pow(r1776435, r1776436);
double r1776438 = l;
double r1776439 = r1776438 * r1776438;
double r1776440 = r1776437 / r1776439;
double r1776441 = k;
double r1776442 = sin(r1776441);
double r1776443 = r1776440 * r1776442;
double r1776444 = tan(r1776441);
double r1776445 = r1776443 * r1776444;
double r1776446 = 1.0;
double r1776447 = r1776441 / r1776435;
double r1776448 = pow(r1776447, r1776434);
double r1776449 = r1776446 + r1776448;
double r1776450 = r1776449 + r1776446;
double r1776451 = r1776445 * r1776450;
double r1776452 = r1776434 / r1776451;
return r1776452;
}
double f(double t, double l, double k) {
double r1776453 = t;
double r1776454 = -8.448835479690807e-37;
bool r1776455 = r1776453 <= r1776454;
double r1776456 = 2.0;
double r1776457 = k;
double r1776458 = sin(r1776457);
double r1776459 = r1776458 * r1776453;
double r1776460 = l;
double r1776461 = r1776459 / r1776460;
double r1776462 = r1776453 * r1776461;
double r1776463 = r1776456 / r1776462;
double r1776464 = tan(r1776457);
double r1776465 = r1776457 / r1776453;
double r1776466 = fma(r1776465, r1776465, r1776456);
double r1776467 = r1776464 * r1776466;
double r1776468 = r1776460 / r1776453;
double r1776469 = r1776467 / r1776468;
double r1776470 = r1776463 / r1776469;
double r1776471 = 1.1003810475973448e-104;
bool r1776472 = r1776453 <= r1776471;
double r1776473 = r1776458 * r1776458;
double r1776474 = r1776453 * r1776453;
double r1776475 = r1776473 * r1776474;
double r1776476 = cos(r1776457);
double r1776477 = r1776476 * r1776460;
double r1776478 = r1776475 / r1776477;
double r1776479 = r1776457 * r1776457;
double r1776480 = r1776479 * r1776473;
double r1776481 = r1776480 / r1776476;
double r1776482 = r1776481 / r1776460;
double r1776483 = fma(r1776478, r1776456, r1776482);
double r1776484 = r1776483 / r1776468;
double r1776485 = r1776456 / r1776484;
double r1776486 = r1776472 ? r1776485 : r1776470;
double r1776487 = r1776455 ? r1776470 : r1776486;
return r1776487;
}



Bits error versus t



Bits error versus l



Bits error versus k
if t < -8.448835479690807e-37 or 1.1003810475973448e-104 < t Initial program 22.6
Simplified13.2
rmApplied *-un-lft-identity13.2
Applied times-frac12.4
Applied associate-*l*9.4
rmApplied associate-*l/8.1
Applied associate-*r/8.0
Applied associate-*l/5.7
Applied associate-*l/5.1
Simplified5.1
rmApplied *-un-lft-identity5.1
Applied *-un-lft-identity5.1
Applied times-frac5.1
Applied times-frac4.0
Applied associate-/r*3.8
Simplified3.8
rmApplied associate-/r/3.7
if -8.448835479690807e-37 < t < 1.1003810475973448e-104Initial program 57.0
Simplified41.5
rmApplied *-un-lft-identity41.5
Applied times-frac40.8
Applied associate-*l*40.3
rmApplied associate-*l/40.9
Applied associate-*r/40.9
Applied associate-*l/41.5
Applied associate-*l/38.6
Simplified37.4
Taylor expanded around inf 23.0
Simplified23.0
Final simplification9.1
herbie shell --seed 2019151 +o rules:numerics
(FPCore (t l k)
:name "Toniolo and Linder, Equation (10+)"
(/ 2 (* (* (* (/ (pow t 3) (* l l)) (sin k)) (tan k)) (+ (+ 1 (pow (/ k t) 2)) 1))))