\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 -5.3958085813923515 \cdot 10^{+84}:\\
\;\;\;\;\frac{\frac{\frac{2}{\sin k \cdot t}}{\frac{\tan k}{\frac{\ell}{t}}}}{\frac{\mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right)}{\frac{\ell}{t}}}\\
\mathbf{elif}\;t \le 1.5748242425025286 \cdot 10^{+51}:\\
\;\;\;\;\frac{1}{t} \cdot \frac{\frac{2}{\sin k}}{\mathsf{fma}\left(\frac{\sin k}{\cos k}, \frac{k}{\ell} \cdot \frac{k}{\ell}, \left(\left(\left(\frac{t}{\ell} \cdot \sqrt[3]{\frac{\sin k}{\cos k}}\right) \cdot \left(\frac{t}{\ell} \cdot \sqrt[3]{\frac{\sin k}{\cos k}}\right)\right) \cdot \sqrt[3]{\frac{\sin k}{\cos k}}\right) \cdot 2\right)}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{2}{\sin k \cdot t}}{\frac{\frac{\mathsf{fma}\left(\frac{k}{t}, \frac{k}{t}, 2\right) \cdot \tan k}{\frac{\ell}{t}}}{\frac{\ell}{t}}}\\
\end{array}double f(double t, double l, double k) {
double r2643304 = 2.0;
double r2643305 = t;
double r2643306 = 3.0;
double r2643307 = pow(r2643305, r2643306);
double r2643308 = l;
double r2643309 = r2643308 * r2643308;
double r2643310 = r2643307 / r2643309;
double r2643311 = k;
double r2643312 = sin(r2643311);
double r2643313 = r2643310 * r2643312;
double r2643314 = tan(r2643311);
double r2643315 = r2643313 * r2643314;
double r2643316 = 1.0;
double r2643317 = r2643311 / r2643305;
double r2643318 = pow(r2643317, r2643304);
double r2643319 = r2643316 + r2643318;
double r2643320 = r2643319 + r2643316;
double r2643321 = r2643315 * r2643320;
double r2643322 = r2643304 / r2643321;
return r2643322;
}
double f(double t, double l, double k) {
double r2643323 = t;
double r2643324 = -5.3958085813923515e+84;
bool r2643325 = r2643323 <= r2643324;
double r2643326 = 2.0;
double r2643327 = k;
double r2643328 = sin(r2643327);
double r2643329 = r2643328 * r2643323;
double r2643330 = r2643326 / r2643329;
double r2643331 = tan(r2643327);
double r2643332 = l;
double r2643333 = r2643332 / r2643323;
double r2643334 = r2643331 / r2643333;
double r2643335 = r2643330 / r2643334;
double r2643336 = r2643327 / r2643323;
double r2643337 = fma(r2643336, r2643336, r2643326);
double r2643338 = r2643337 / r2643333;
double r2643339 = r2643335 / r2643338;
double r2643340 = 1.5748242425025286e+51;
bool r2643341 = r2643323 <= r2643340;
double r2643342 = 1.0;
double r2643343 = r2643342 / r2643323;
double r2643344 = r2643326 / r2643328;
double r2643345 = cos(r2643327);
double r2643346 = r2643328 / r2643345;
double r2643347 = r2643327 / r2643332;
double r2643348 = r2643347 * r2643347;
double r2643349 = r2643323 / r2643332;
double r2643350 = cbrt(r2643346);
double r2643351 = r2643349 * r2643350;
double r2643352 = r2643351 * r2643351;
double r2643353 = r2643352 * r2643350;
double r2643354 = r2643353 * r2643326;
double r2643355 = fma(r2643346, r2643348, r2643354);
double r2643356 = r2643344 / r2643355;
double r2643357 = r2643343 * r2643356;
double r2643358 = r2643337 * r2643331;
double r2643359 = r2643358 / r2643333;
double r2643360 = r2643359 / r2643333;
double r2643361 = r2643330 / r2643360;
double r2643362 = r2643341 ? r2643357 : r2643361;
double r2643363 = r2643325 ? r2643339 : r2643362;
return r2643363;
}



Bits error versus t



Bits error versus l



Bits error versus k
if t < -5.3958085813923515e+84Initial program 22.4
Simplified9.7
rmApplied associate-*l/6.2
Applied associate-/r/5.9
Applied associate-/l*5.1
rmApplied times-frac1.5
Applied associate-/r*1.2
if -5.3958085813923515e+84 < t < 1.5748242425025286e+51Initial program 41.9
Simplified31.9
rmApplied associate-*l/31.9
Applied associate-/r/32.0
Applied associate-/l*29.1
Taylor expanded around -inf 29.5
Simplified12.9
rmApplied add-cube-cbrt13.0
Applied associate-*r*13.0
Simplified11.2
rmApplied *-un-lft-identity11.2
Applied *-un-lft-identity11.2
Applied times-frac11.2
Applied times-frac10.2
Simplified10.2
if 1.5748242425025286e+51 < t Initial program 22.3
Simplified9.5
rmApplied associate-*l/6.0
Applied associate-/r/5.8
Applied associate-/l*4.8
rmApplied associate-/r*2.0
Final simplification5.8
herbie shell --seed 2019142 +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))))