\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}\;k \le -3.2137469732307354 \cdot 10^{-128}:\\
\;\;\;\;\frac{2}{\mathsf{fma}\left(2, \left(\frac{\sin k \cdot \frac{t}{\frac{\ell}{t}}}{\frac{\ell}{t}}\right), \left(\frac{k}{\ell} \cdot \left(t \cdot \left(\sin k \cdot \frac{k}{\ell}\right)\right)\right)\right) \cdot \tan k}\\
\mathbf{elif}\;k \le 5.835318740221373 \cdot 10^{-87}:\\
\;\;\;\;\frac{\frac{2}{\tan k}}{\mathsf{fma}\left(\left(\frac{k}{t}\right), \left(\frac{k}{t}\right), 2\right) \cdot \frac{\frac{t}{\frac{\frac{\ell}{t}}{\sqrt[3]{\sin k} \cdot \sqrt[3]{\sin k}}}}{\frac{\frac{\ell}{t}}{\sqrt[3]{\sin k}}}}\\
\mathbf{else}:\\
\;\;\;\;\frac{2}{\mathsf{fma}\left(2, \left(\frac{\sin k \cdot \frac{t}{\frac{\ell}{t}}}{\frac{\ell}{t}}\right), \left(\frac{k}{\ell} \cdot \left(t \cdot \left(\sin k \cdot \frac{k}{\ell}\right)\right)\right)\right) \cdot \tan k}\\
\end{array}double f(double t, double l, double k) {
double r2558649 = 2.0;
double r2558650 = t;
double r2558651 = 3.0;
double r2558652 = pow(r2558650, r2558651);
double r2558653 = l;
double r2558654 = r2558653 * r2558653;
double r2558655 = r2558652 / r2558654;
double r2558656 = k;
double r2558657 = sin(r2558656);
double r2558658 = r2558655 * r2558657;
double r2558659 = tan(r2558656);
double r2558660 = r2558658 * r2558659;
double r2558661 = 1.0;
double r2558662 = r2558656 / r2558650;
double r2558663 = pow(r2558662, r2558649);
double r2558664 = r2558661 + r2558663;
double r2558665 = r2558664 + r2558661;
double r2558666 = r2558660 * r2558665;
double r2558667 = r2558649 / r2558666;
return r2558667;
}
double f(double t, double l, double k) {
double r2558668 = k;
double r2558669 = -3.2137469732307354e-128;
bool r2558670 = r2558668 <= r2558669;
double r2558671 = 2.0;
double r2558672 = sin(r2558668);
double r2558673 = t;
double r2558674 = l;
double r2558675 = r2558674 / r2558673;
double r2558676 = r2558673 / r2558675;
double r2558677 = r2558672 * r2558676;
double r2558678 = r2558677 / r2558675;
double r2558679 = r2558668 / r2558674;
double r2558680 = r2558672 * r2558679;
double r2558681 = r2558673 * r2558680;
double r2558682 = r2558679 * r2558681;
double r2558683 = fma(r2558671, r2558678, r2558682);
double r2558684 = tan(r2558668);
double r2558685 = r2558683 * r2558684;
double r2558686 = r2558671 / r2558685;
double r2558687 = 5.835318740221373e-87;
bool r2558688 = r2558668 <= r2558687;
double r2558689 = r2558671 / r2558684;
double r2558690 = r2558668 / r2558673;
double r2558691 = fma(r2558690, r2558690, r2558671);
double r2558692 = cbrt(r2558672);
double r2558693 = r2558692 * r2558692;
double r2558694 = r2558675 / r2558693;
double r2558695 = r2558673 / r2558694;
double r2558696 = r2558675 / r2558692;
double r2558697 = r2558695 / r2558696;
double r2558698 = r2558691 * r2558697;
double r2558699 = r2558689 / r2558698;
double r2558700 = r2558688 ? r2558699 : r2558686;
double r2558701 = r2558670 ? r2558686 : r2558700;
return r2558701;
}



Bits error versus t



Bits error versus l



Bits error versus k
if k < -3.2137469732307354e-128 or 5.835318740221373e-87 < k Initial program 30.8
Simplified17.6
Taylor expanded around -inf 24.2
Simplified14.7
rmApplied times-frac4.8
rmApplied associate-/l*1.8
rmApplied div-inv1.8
Applied associate-/l*1.9
Simplified1.2
if -3.2137469732307354e-128 < k < 5.835318740221373e-87Initial program 35.8
Simplified19.4
rmApplied add-cube-cbrt19.7
Applied times-frac12.2
Applied associate-/r*11.9
Final simplification3.5
herbie shell --seed 2019130 +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))))