\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}\;\ell \le -2.484239696005438759151946975339159010231 \cdot 10^{123}:\\
\;\;\;\;\frac{2}{\left(\left(\left(\left({\left(\sqrt[3]{t}\right)}^{3} \cdot \frac{{t}^{\left(\frac{1}{3} \cdot 3\right)}}{\ell}\right) \cdot \frac{{t}^{\left(\frac{1}{3} \cdot 3\right)}}{\ell}\right) \cdot \sin k\right) \cdot \tan k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)}\\
\mathbf{elif}\;\ell \le -25217102.0555565096437931060791015625:\\
\;\;\;\;\frac{2}{2 \cdot \left({\left(\frac{1}{{-1}^{3}}\right)}^{1} \cdot \frac{{\left(\sqrt[3]{-1}\right)}^{9} \cdot \left({t}^{3} \cdot {\left(\sin k\right)}^{2}\right)}{\cos k \cdot {\ell}^{2}}\right) + {\left(\frac{1}{{-1}^{3}}\right)}^{1} \cdot \frac{{\left(\sqrt[3]{-1}\right)}^{9} \cdot \left({\left(\sin k\right)}^{2} \cdot \left({k}^{2} \cdot t\right)\right)}{\cos k \cdot {\ell}^{2}}}\\
\mathbf{elif}\;\ell \le 2.297049428607241564178931690682164825056 \cdot 10^{-139}:\\
\;\;\;\;\frac{2}{\left(\left(\left({\left(\sqrt[3]{t}\right)}^{3} \cdot \frac{{\left(\sqrt[3]{t}\right)}^{3}}{\ell}\right) \cdot \left(\frac{{t}^{\left(\frac{1}{3} \cdot 3\right)}}{\ell} \cdot \sin k\right)\right) \cdot \tan k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)}\\
\mathbf{elif}\;\ell \le 5.548140519913770723669052513231581727514 \cdot 10^{121}:\\
\;\;\;\;\frac{2}{2 \cdot \frac{{t}^{3} \cdot {\left(\sin k\right)}^{2}}{\cos k \cdot {\ell}^{2}} - {\left(\frac{1}{{-1}^{3}}\right)}^{1} \cdot \frac{t \cdot \left({k}^{2} \cdot {\left(\sin k\right)}^{2}\right)}{\cos k \cdot {\ell}^{2}}}\\
\mathbf{else}:\\
\;\;\;\;\frac{2}{\left(\left(\left(\left({\left(\sqrt[3]{t}\right)}^{3} \cdot \frac{{t}^{\left(\frac{1}{3} \cdot 3\right)}}{\ell}\right) \cdot \frac{{t}^{\left(\frac{1}{3} \cdot 3\right)}}{\ell}\right) \cdot \sin k\right) \cdot \tan k\right) \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)}\\
\end{array}double f(double t, double l, double k) {
double r118321 = 2.0;
double r118322 = t;
double r118323 = 3.0;
double r118324 = pow(r118322, r118323);
double r118325 = l;
double r118326 = r118325 * r118325;
double r118327 = r118324 / r118326;
double r118328 = k;
double r118329 = sin(r118328);
double r118330 = r118327 * r118329;
double r118331 = tan(r118328);
double r118332 = r118330 * r118331;
double r118333 = 1.0;
double r118334 = r118328 / r118322;
double r118335 = pow(r118334, r118321);
double r118336 = r118333 + r118335;
double r118337 = r118336 + r118333;
double r118338 = r118332 * r118337;
double r118339 = r118321 / r118338;
return r118339;
}
double f(double t, double l, double k) {
double r118340 = l;
double r118341 = -2.4842396960054388e+123;
bool r118342 = r118340 <= r118341;
double r118343 = 2.0;
double r118344 = t;
double r118345 = cbrt(r118344);
double r118346 = 3.0;
double r118347 = pow(r118345, r118346);
double r118348 = 0.3333333333333333;
double r118349 = r118348 * r118346;
double r118350 = pow(r118344, r118349);
double r118351 = r118350 / r118340;
double r118352 = r118347 * r118351;
double r118353 = r118352 * r118351;
double r118354 = k;
double r118355 = sin(r118354);
double r118356 = r118353 * r118355;
double r118357 = tan(r118354);
double r118358 = r118356 * r118357;
double r118359 = 1.0;
double r118360 = r118354 / r118344;
double r118361 = pow(r118360, r118343);
double r118362 = r118359 + r118361;
double r118363 = r118362 + r118359;
double r118364 = r118358 * r118363;
double r118365 = r118343 / r118364;
double r118366 = -25217102.05555651;
bool r118367 = r118340 <= r118366;
double r118368 = 1.0;
double r118369 = -1.0;
double r118370 = pow(r118369, r118346);
double r118371 = r118368 / r118370;
double r118372 = pow(r118371, r118359);
double r118373 = cbrt(r118369);
double r118374 = 9.0;
double r118375 = pow(r118373, r118374);
double r118376 = 3.0;
double r118377 = pow(r118344, r118376);
double r118378 = 2.0;
double r118379 = pow(r118355, r118378);
double r118380 = r118377 * r118379;
double r118381 = r118375 * r118380;
double r118382 = cos(r118354);
double r118383 = pow(r118340, r118378);
double r118384 = r118382 * r118383;
double r118385 = r118381 / r118384;
double r118386 = r118372 * r118385;
double r118387 = r118343 * r118386;
double r118388 = pow(r118354, r118378);
double r118389 = r118388 * r118344;
double r118390 = r118379 * r118389;
double r118391 = r118375 * r118390;
double r118392 = r118391 / r118384;
double r118393 = r118372 * r118392;
double r118394 = r118387 + r118393;
double r118395 = r118343 / r118394;
double r118396 = 2.2970494286072416e-139;
bool r118397 = r118340 <= r118396;
double r118398 = r118347 / r118340;
double r118399 = r118347 * r118398;
double r118400 = r118351 * r118355;
double r118401 = r118399 * r118400;
double r118402 = r118401 * r118357;
double r118403 = r118402 * r118363;
double r118404 = r118343 / r118403;
double r118405 = 5.548140519913771e+121;
bool r118406 = r118340 <= r118405;
double r118407 = r118380 / r118384;
double r118408 = r118343 * r118407;
double r118409 = r118388 * r118379;
double r118410 = r118344 * r118409;
double r118411 = r118410 / r118384;
double r118412 = r118372 * r118411;
double r118413 = r118408 - r118412;
double r118414 = r118343 / r118413;
double r118415 = r118406 ? r118414 : r118365;
double r118416 = r118397 ? r118404 : r118415;
double r118417 = r118367 ? r118395 : r118416;
double r118418 = r118342 ? r118365 : r118417;
return r118418;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
if l < -2.4842396960054388e+123 or 5.548140519913771e+121 < l Initial program 59.0
rmApplied add-cube-cbrt59.1
Applied unpow-prod-down59.1
Applied times-frac41.7
rmApplied *-un-lft-identity41.7
Applied unpow-prod-down41.7
Applied times-frac27.4
Simplified27.4
rmApplied pow1/347.0
Applied pow-pow27.2
rmApplied pow1/347.0
Applied pow-pow27.0
if -2.4842396960054388e+123 < l < -25217102.05555651Initial program 31.9
rmApplied add-cube-cbrt32.2
Applied unpow-prod-down32.2
Applied times-frac28.4
Taylor expanded around -inf 25.5
if -25217102.05555651 < l < 2.2970494286072416e-139Initial program 23.0
rmApplied add-cube-cbrt23.1
Applied unpow-prod-down23.1
Applied times-frac17.7
rmApplied *-un-lft-identity17.7
Applied unpow-prod-down17.7
Applied times-frac14.2
Simplified14.2
rmApplied pow1/339.1
Applied pow-pow14.1
rmApplied associate-*l*11.5
if 2.2970494286072416e-139 < l < 5.548140519913771e+121Initial program 26.5
Taylor expanded around -inf 17.9
Final simplification17.5
herbie shell --seed 2020001
(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))))