\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 4.234159102496386151558578367249599059363 \cdot 10^{298}:\\
\;\;\;\;2 \cdot \left({\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 \cdot \ell}{\left|\sin k\right|} \cdot \frac{{\ell}^{\left(\frac{2}{2}\right)}}{\left|\sin k\right|}\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{2}{\left(\frac{{t}^{\left(\frac{3}{2}\right)}}{\ell} \cdot \left(\frac{{t}^{\left(\frac{3}{2}\right)}}{\ell} \cdot \sin k\right)\right) \cdot \tan k}}{{\left(\frac{k}{t}\right)}^{2}}\\
\end{array}double f(double t, double l, double k) {
double r89041 = 2.0;
double r89042 = t;
double r89043 = 3.0;
double r89044 = pow(r89042, r89043);
double r89045 = l;
double r89046 = r89045 * r89045;
double r89047 = r89044 / r89046;
double r89048 = k;
double r89049 = sin(r89048);
double r89050 = r89047 * r89049;
double r89051 = tan(r89048);
double r89052 = r89050 * r89051;
double r89053 = 1.0;
double r89054 = r89048 / r89042;
double r89055 = pow(r89054, r89041);
double r89056 = r89053 + r89055;
double r89057 = r89056 - r89053;
double r89058 = r89052 * r89057;
double r89059 = r89041 / r89058;
return r89059;
}
double f(double t, double l, double k) {
double r89060 = l;
double r89061 = r89060 * r89060;
double r89062 = 4.234159102496386e+298;
bool r89063 = r89061 <= r89062;
double r89064 = 2.0;
double r89065 = 1.0;
double r89066 = k;
double r89067 = 2.0;
double r89068 = r89064 / r89067;
double r89069 = pow(r89066, r89068);
double r89070 = t;
double r89071 = 1.0;
double r89072 = pow(r89070, r89071);
double r89073 = r89069 * r89072;
double r89074 = r89069 * r89073;
double r89075 = r89065 / r89074;
double r89076 = pow(r89075, r89071);
double r89077 = cos(r89066);
double r89078 = r89077 * r89060;
double r89079 = sin(r89066);
double r89080 = fabs(r89079);
double r89081 = r89078 / r89080;
double r89082 = r89067 / r89067;
double r89083 = pow(r89060, r89082);
double r89084 = r89083 / r89080;
double r89085 = r89081 * r89084;
double r89086 = r89076 * r89085;
double r89087 = r89064 * r89086;
double r89088 = 3.0;
double r89089 = r89088 / r89067;
double r89090 = pow(r89070, r89089);
double r89091 = r89090 / r89060;
double r89092 = r89091 * r89079;
double r89093 = r89091 * r89092;
double r89094 = tan(r89066);
double r89095 = r89093 * r89094;
double r89096 = r89064 / r89095;
double r89097 = r89066 / r89070;
double r89098 = pow(r89097, r89064);
double r89099 = r89096 / r89098;
double r89100 = r89063 ? r89087 : r89099;
return r89100;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
if (* l l) < 4.234159102496386e+298Initial program 45.1
Simplified36.1
Taylor expanded around inf 14.3
rmApplied sqr-pow14.3
Applied associate-*l*11.8
rmApplied add-sqr-sqrt11.8
Applied times-frac11.8
Simplified11.8
Simplified11.4
rmApplied *-un-lft-identity11.4
Applied sqr-pow11.4
Applied times-frac9.3
Applied associate-*r*7.6
Simplified7.6
if 4.234159102496386e+298 < (* l l) Initial program 63.4
Simplified63.0
rmApplied sqr-pow63.7
Applied times-frac52.0
Applied associate-*l*52.0
Final simplification14.6
herbie shell --seed 2019350 +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))))