\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 -4.5062174373973056 \cdot 10^{+105}:\\
\;\;\;\;\frac{\frac{-2}{\sin k \cdot t}}{\frac{\left(\left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right) \cdot \left(\tan k \cdot \frac{t}{\ell}\right)\right) \cdot \left(-\left(\frac{k}{t} \cdot \frac{k}{t} + 2\right)\right)}{\frac{\ell}{\sqrt[3]{t}}}}\\
\mathbf{elif}\;t \le 0.006592551945511662:\\
\;\;\;\;\frac{\frac{-2}{\frac{t}{\ell} \cdot \sin k}}{-\left(\frac{\sin k}{\frac{\cos k \cdot \ell}{k \cdot k}} + 2 \cdot \frac{t \cdot t}{\frac{\cos k \cdot \ell}{\sin k}}\right)}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{-2}{\frac{t}{\ell} \cdot \sin k}}{\frac{-1}{\frac{1}{\tan k \cdot t}} \cdot \left(\frac{\frac{k}{t} \cdot \frac{k}{t} + 2}{\ell} \cdot t\right)}\\
\end{array}double f(double t, double l, double k) {
double r3385520 = 2.0;
double r3385521 = t;
double r3385522 = 3.0;
double r3385523 = pow(r3385521, r3385522);
double r3385524 = l;
double r3385525 = r3385524 * r3385524;
double r3385526 = r3385523 / r3385525;
double r3385527 = k;
double r3385528 = sin(r3385527);
double r3385529 = r3385526 * r3385528;
double r3385530 = tan(r3385527);
double r3385531 = r3385529 * r3385530;
double r3385532 = 1.0;
double r3385533 = r3385527 / r3385521;
double r3385534 = pow(r3385533, r3385520);
double r3385535 = r3385532 + r3385534;
double r3385536 = r3385535 + r3385532;
double r3385537 = r3385531 * r3385536;
double r3385538 = r3385520 / r3385537;
return r3385538;
}
double f(double t, double l, double k) {
double r3385539 = t;
double r3385540 = -4.5062174373973056e+105;
bool r3385541 = r3385539 <= r3385540;
double r3385542 = -2.0;
double r3385543 = k;
double r3385544 = sin(r3385543);
double r3385545 = r3385544 * r3385539;
double r3385546 = r3385542 / r3385545;
double r3385547 = cbrt(r3385539);
double r3385548 = r3385547 * r3385547;
double r3385549 = tan(r3385543);
double r3385550 = l;
double r3385551 = r3385539 / r3385550;
double r3385552 = r3385549 * r3385551;
double r3385553 = r3385548 * r3385552;
double r3385554 = r3385543 / r3385539;
double r3385555 = r3385554 * r3385554;
double r3385556 = 2.0;
double r3385557 = r3385555 + r3385556;
double r3385558 = -r3385557;
double r3385559 = r3385553 * r3385558;
double r3385560 = r3385550 / r3385547;
double r3385561 = r3385559 / r3385560;
double r3385562 = r3385546 / r3385561;
double r3385563 = 0.006592551945511662;
bool r3385564 = r3385539 <= r3385563;
double r3385565 = r3385551 * r3385544;
double r3385566 = r3385542 / r3385565;
double r3385567 = cos(r3385543);
double r3385568 = r3385567 * r3385550;
double r3385569 = r3385543 * r3385543;
double r3385570 = r3385568 / r3385569;
double r3385571 = r3385544 / r3385570;
double r3385572 = r3385539 * r3385539;
double r3385573 = r3385568 / r3385544;
double r3385574 = r3385572 / r3385573;
double r3385575 = r3385556 * r3385574;
double r3385576 = r3385571 + r3385575;
double r3385577 = -r3385576;
double r3385578 = r3385566 / r3385577;
double r3385579 = -1.0;
double r3385580 = 1.0;
double r3385581 = r3385549 * r3385539;
double r3385582 = r3385580 / r3385581;
double r3385583 = r3385579 / r3385582;
double r3385584 = r3385557 / r3385550;
double r3385585 = r3385584 * r3385539;
double r3385586 = r3385583 * r3385585;
double r3385587 = r3385566 / r3385586;
double r3385588 = r3385564 ? r3385578 : r3385587;
double r3385589 = r3385541 ? r3385562 : r3385588;
return r3385589;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
if t < -4.5062174373973056e+105Initial program 22.8
Simplified8.3
rmApplied frac-2neg8.3
Simplified4.3
rmApplied *-un-lft-identity4.3
Applied div-inv4.3
Applied times-frac4.1
Applied times-frac0.7
Applied associate-/l*1.1
Simplified1.1
rmApplied add-cube-cbrt1.3
Applied associate-*r*1.3
Simplified1.4
rmApplied *-un-lft-identity1.4
Applied associate-*r/1.4
Applied associate-/r/1.4
Applied times-frac1.4
Applied associate-/l*1.9
Simplified1.5
if -4.5062174373973056e+105 < t < 0.006592551945511662Initial program 43.0
Simplified33.2
rmApplied frac-2neg33.2
Simplified30.4
rmApplied *-un-lft-identity30.4
Applied div-inv30.4
Applied times-frac29.6
Applied times-frac29.1
Applied associate-/l*25.6
Simplified22.7
Taylor expanded around inf 16.3
Simplified14.2
if 0.006592551945511662 < t Initial program 21.9
Simplified10.5
rmApplied frac-2neg10.5
Simplified6.0
rmApplied *-un-lft-identity6.0
Applied div-inv6.0
Applied times-frac5.1
Applied times-frac2.4
Applied associate-/l*2.3
Simplified2.3
rmApplied associate-*l/2.2
Applied associate-/r/2.2
Applied *-un-lft-identity2.2
Applied times-frac2.2
Applied associate-*l*2.2
Final simplification7.7
herbie shell --seed 2019162
(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))))