\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 \cdot \ell \le 6.496561224617880670166453486268841442794 \cdot 10^{292}:\\
\;\;\;\;2 \cdot \left({\left(\frac{1}{{k}^{\left(\frac{2}{2}\right)}}\right)}^{1} \cdot \left(\frac{\cos k}{\sin k} \cdot \left(\frac{{\ell}^{2}}{\sin k} \cdot {\left(\frac{1}{{k}^{\left(\frac{2}{2}\right)} \cdot {t}^{1}}\right)}^{1}\right)\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{2}{\left(\left(\frac{{\left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right)}^{3}}{\ell} \cdot \frac{{\left(\sqrt[3]{t}\right)}^{3}}{\ell}\right) \cdot \sin k\right) \cdot \tan k}}{{\left(\frac{k}{t}\right)}^{2}}\\
\end{array}double f(double t, double l, double k) {
double r99386 = 2.0;
double r99387 = t;
double r99388 = 3.0;
double r99389 = pow(r99387, r99388);
double r99390 = l;
double r99391 = r99390 * r99390;
double r99392 = r99389 / r99391;
double r99393 = k;
double r99394 = sin(r99393);
double r99395 = r99392 * r99394;
double r99396 = tan(r99393);
double r99397 = r99395 * r99396;
double r99398 = 1.0;
double r99399 = r99393 / r99387;
double r99400 = pow(r99399, r99386);
double r99401 = r99398 + r99400;
double r99402 = r99401 - r99398;
double r99403 = r99397 * r99402;
double r99404 = r99386 / r99403;
return r99404;
}
double f(double t, double l, double k) {
double r99405 = l;
double r99406 = r99405 * r99405;
double r99407 = 6.496561224617881e+292;
bool r99408 = r99406 <= r99407;
double r99409 = 2.0;
double r99410 = 1.0;
double r99411 = k;
double r99412 = 2.0;
double r99413 = r99409 / r99412;
double r99414 = pow(r99411, r99413);
double r99415 = r99410 / r99414;
double r99416 = 1.0;
double r99417 = pow(r99415, r99416);
double r99418 = cos(r99411);
double r99419 = sin(r99411);
double r99420 = r99418 / r99419;
double r99421 = pow(r99405, r99412);
double r99422 = r99421 / r99419;
double r99423 = t;
double r99424 = pow(r99423, r99416);
double r99425 = r99414 * r99424;
double r99426 = r99410 / r99425;
double r99427 = pow(r99426, r99416);
double r99428 = r99422 * r99427;
double r99429 = r99420 * r99428;
double r99430 = r99417 * r99429;
double r99431 = r99409 * r99430;
double r99432 = cbrt(r99423);
double r99433 = r99432 * r99432;
double r99434 = 3.0;
double r99435 = pow(r99433, r99434);
double r99436 = r99435 / r99405;
double r99437 = pow(r99432, r99434);
double r99438 = r99437 / r99405;
double r99439 = r99436 * r99438;
double r99440 = r99439 * r99419;
double r99441 = tan(r99411);
double r99442 = r99440 * r99441;
double r99443 = r99409 / r99442;
double r99444 = r99411 / r99423;
double r99445 = pow(r99444, r99409);
double r99446 = r99443 / r99445;
double r99447 = r99408 ? r99431 : r99446;
return r99447;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
if (* l l) < 6.496561224617881e+292Initial program 45.3
Simplified36.1
Taylor expanded around inf 14.4
rmApplied sqr-pow14.4
Applied associate-*l*11.9
rmApplied *-un-lft-identity11.9
Applied times-frac11.8
Applied unpow-prod-down11.8
Applied associate-*l*10.1
Simplified10.1
rmApplied unpow210.1
Applied times-frac9.7
Applied associate-*l*9.6
if 6.496561224617881e+292 < (* l l) Initial program 63.3
Simplified62.8
rmApplied add-cube-cbrt62.8
Applied unpow-prod-down62.8
Applied times-frac49.6
Final simplification15.8
herbie shell --seed 2019323
(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))))