\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 -2.8340176235482552 \cdot 10^{-136}:\\
\;\;\;\;\frac{2}{\frac{{\left(\sqrt[3]{t}\right)}^{3}}{\frac{\ell}{{\left(\sqrt[3]{t}\right)}^{3}}} \cdot \left(\left(\frac{{\left(\sqrt[3]{t}\right)}^{3}}{\ell} \cdot \sin k\right) \cdot \left(\tan k \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)\right)\right)}\\
\mathbf{elif}\;k \le 1.99157602129712096 \cdot 10^{52}:\\
\;\;\;\;\frac{2}{\left(\frac{{\left(\sqrt[3]{t}\right)}^{3}}{\frac{\ell}{{\left(\sqrt[3]{t}\right)}^{3}}} \cdot \left(\frac{{t}^{\left(\frac{1}{3} \cdot 3\right)}}{\ell} \cdot \sin k\right)\right) \cdot \left(\tan k \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)\right)}\\
\mathbf{elif}\;k \le 7.58438352545380174 \cdot 10^{84}:\\
\;\;\;\;\frac{2}{\frac{{k}^{2} \cdot \left(t \cdot {\left(\sin k\right)}^{2}\right)}{\cos k \cdot {\ell}^{2}} + 2 \cdot \frac{{t}^{3} \cdot {\left(\sin k\right)}^{2}}{\cos k \cdot {\ell}^{2}}}\\
\mathbf{else}:\\
\;\;\;\;\frac{2}{\frac{{\left(\sqrt[3]{t}\right)}^{3}}{\frac{\ell}{{\left(\sqrt[3]{t}\right)}^{3}}} \cdot \left(\left(\frac{{\left(\sqrt[3]{t}\right)}^{3}}{\ell} \cdot \sin k\right) \cdot \left(\tan k \cdot \left(\left(1 + {\left(\frac{k}{t}\right)}^{2}\right) + 1\right)\right)\right)}\\
\end{array}double f(double t, double l, double k) {
double r110093 = 2.0;
double r110094 = t;
double r110095 = 3.0;
double r110096 = pow(r110094, r110095);
double r110097 = l;
double r110098 = r110097 * r110097;
double r110099 = r110096 / r110098;
double r110100 = k;
double r110101 = sin(r110100);
double r110102 = r110099 * r110101;
double r110103 = tan(r110100);
double r110104 = r110102 * r110103;
double r110105 = 1.0;
double r110106 = r110100 / r110094;
double r110107 = pow(r110106, r110093);
double r110108 = r110105 + r110107;
double r110109 = r110108 + r110105;
double r110110 = r110104 * r110109;
double r110111 = r110093 / r110110;
return r110111;
}
double f(double t, double l, double k) {
double r110112 = k;
double r110113 = -2.8340176235482552e-136;
bool r110114 = r110112 <= r110113;
double r110115 = 2.0;
double r110116 = t;
double r110117 = cbrt(r110116);
double r110118 = 3.0;
double r110119 = pow(r110117, r110118);
double r110120 = l;
double r110121 = r110120 / r110119;
double r110122 = r110119 / r110121;
double r110123 = r110119 / r110120;
double r110124 = sin(r110112);
double r110125 = r110123 * r110124;
double r110126 = tan(r110112);
double r110127 = 1.0;
double r110128 = r110112 / r110116;
double r110129 = pow(r110128, r110115);
double r110130 = r110127 + r110129;
double r110131 = r110130 + r110127;
double r110132 = r110126 * r110131;
double r110133 = r110125 * r110132;
double r110134 = r110122 * r110133;
double r110135 = r110115 / r110134;
double r110136 = 1.991576021297121e+52;
bool r110137 = r110112 <= r110136;
double r110138 = 0.3333333333333333;
double r110139 = r110138 * r110118;
double r110140 = pow(r110116, r110139);
double r110141 = r110140 / r110120;
double r110142 = r110141 * r110124;
double r110143 = r110122 * r110142;
double r110144 = r110143 * r110132;
double r110145 = r110115 / r110144;
double r110146 = 7.584383525453802e+84;
bool r110147 = r110112 <= r110146;
double r110148 = 2.0;
double r110149 = pow(r110112, r110148);
double r110150 = pow(r110124, r110148);
double r110151 = r110116 * r110150;
double r110152 = r110149 * r110151;
double r110153 = cos(r110112);
double r110154 = pow(r110120, r110148);
double r110155 = r110153 * r110154;
double r110156 = r110152 / r110155;
double r110157 = 3.0;
double r110158 = pow(r110116, r110157);
double r110159 = r110158 * r110150;
double r110160 = r110159 / r110155;
double r110161 = r110115 * r110160;
double r110162 = r110156 + r110161;
double r110163 = r110115 / r110162;
double r110164 = r110147 ? r110163 : r110135;
double r110165 = r110137 ? r110145 : r110164;
double r110166 = r110114 ? r110135 : r110165;
return r110166;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
if k < -2.8340176235482552e-136 or 7.584383525453802e+84 < k Initial program 31.6
rmApplied add-cube-cbrt31.7
Applied unpow-prod-down31.7
Applied times-frac24.4
Applied associate-*l*24.2
rmApplied unpow-prod-down24.2
Applied associate-/l*18.8
rmApplied associate-*l*18.7
rmApplied associate-*l*16.3
if -2.8340176235482552e-136 < k < 1.991576021297121e+52Initial program 33.1
rmApplied add-cube-cbrt33.3
Applied unpow-prod-down33.3
Applied times-frac27.0
Applied associate-*l*21.8
rmApplied unpow-prod-down21.7
Applied associate-/l*15.6
rmApplied associate-*l*15.1
rmApplied pow1/339.8
Applied pow-pow14.9
if 1.991576021297121e+52 < k < 7.584383525453802e+84Initial program 27.6
Taylor expanded around inf 13.3
Final simplification15.7
herbie shell --seed 2020047
(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))))