\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 -4.57723594555655645 \cdot 10^{139} \lor \neg \left(k \le -2.7057282491360021 \cdot 10^{-140} \lor \neg \left(k \le 7.6001933799401753 \cdot 10^{-155} \lor \neg \left(k \le 1.15121578543094186 \cdot 10^{132}\right)\right)\right):\\
\;\;\;\;2 \cdot \frac{{\left(\frac{1}{{k}^{\left(\frac{2}{2}\right)} \cdot \left({k}^{\left(\frac{2}{2}\right)} \cdot {t}^{1}\right)}\right)}^{1} \cdot \left(\frac{\cos k}{\sin k} \cdot \ell\right)}{\frac{\sin k}{\ell}}\\
\mathbf{else}:\\
\;\;\;\;2 \cdot \frac{{\left(\frac{\sqrt{1}}{{k}^{2}}\right)}^{1} \cdot \left({\left(\frac{1}{{t}^{1}}\right)}^{1} \cdot \left(\frac{\cos k}{\sin k} \cdot \ell\right)\right)}{\frac{\sin k}{\ell}}\\
\end{array}double f(double t, double l, double k) {
double r102161 = 2.0;
double r102162 = t;
double r102163 = 3.0;
double r102164 = pow(r102162, r102163);
double r102165 = l;
double r102166 = r102165 * r102165;
double r102167 = r102164 / r102166;
double r102168 = k;
double r102169 = sin(r102168);
double r102170 = r102167 * r102169;
double r102171 = tan(r102168);
double r102172 = r102170 * r102171;
double r102173 = 1.0;
double r102174 = r102168 / r102162;
double r102175 = pow(r102174, r102161);
double r102176 = r102173 + r102175;
double r102177 = r102176 - r102173;
double r102178 = r102172 * r102177;
double r102179 = r102161 / r102178;
return r102179;
}
double f(double t, double l, double k) {
double r102180 = k;
double r102181 = -4.5772359455565565e+139;
bool r102182 = r102180 <= r102181;
double r102183 = -2.705728249136002e-140;
bool r102184 = r102180 <= r102183;
double r102185 = 7.600193379940175e-155;
bool r102186 = r102180 <= r102185;
double r102187 = 1.1512157854309419e+132;
bool r102188 = r102180 <= r102187;
double r102189 = !r102188;
bool r102190 = r102186 || r102189;
double r102191 = !r102190;
bool r102192 = r102184 || r102191;
double r102193 = !r102192;
bool r102194 = r102182 || r102193;
double r102195 = 2.0;
double r102196 = 1.0;
double r102197 = 2.0;
double r102198 = r102195 / r102197;
double r102199 = pow(r102180, r102198);
double r102200 = t;
double r102201 = 1.0;
double r102202 = pow(r102200, r102201);
double r102203 = r102199 * r102202;
double r102204 = r102199 * r102203;
double r102205 = r102196 / r102204;
double r102206 = pow(r102205, r102201);
double r102207 = cos(r102180);
double r102208 = sin(r102180);
double r102209 = r102207 / r102208;
double r102210 = l;
double r102211 = r102209 * r102210;
double r102212 = r102206 * r102211;
double r102213 = r102208 / r102210;
double r102214 = r102212 / r102213;
double r102215 = r102195 * r102214;
double r102216 = sqrt(r102196);
double r102217 = pow(r102180, r102195);
double r102218 = r102216 / r102217;
double r102219 = pow(r102218, r102201);
double r102220 = r102196 / r102202;
double r102221 = pow(r102220, r102201);
double r102222 = r102221 * r102211;
double r102223 = r102219 * r102222;
double r102224 = r102223 / r102213;
double r102225 = r102195 * r102224;
double r102226 = r102194 ? r102215 : r102225;
return r102226;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
if k < -4.5772359455565565e+139 or -2.705728249136002e-140 < k < 7.600193379940175e-155 or 1.1512157854309419e+132 < k Initial program 42.0
Simplified36.9
Taylor expanded around inf 26.4
rmApplied add-sqr-sqrt45.4
Applied unpow-prod-down45.4
Applied times-frac45.4
Simplified45.4
Simplified26.2
rmApplied associate-*r/25.8
Applied associate-*r/23.9
rmApplied sqr-pow23.9
Applied associate-*l*14.6
if -4.5772359455565565e+139 < k < -2.705728249136002e-140 or 7.600193379940175e-155 < k < 1.1512157854309419e+132Initial program 54.8
Simplified43.8
Taylor expanded around inf 18.5
rmApplied add-sqr-sqrt41.0
Applied unpow-prod-down41.0
Applied times-frac41.0
Simplified41.0
Simplified16.9
rmApplied associate-*r/15.5
Applied associate-*r/8.3
rmApplied add-sqr-sqrt8.3
Applied times-frac8.0
Applied unpow-prod-down8.0
Applied associate-*l*3.4
Simplified3.4
Final simplification8.9
herbie shell --seed 2020062 +o rules:numerics
(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))))