\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 -2.746467164580856900881787500343850312492 \cdot 10^{101}:\\
\;\;\;\;\frac{2}{\left(1 + \left(1 + {\left(\frac{k}{t}\right)}^{2}\right)\right) \cdot \left(\left(\left(\frac{{\left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right)}^{\left(\frac{3}{2}\right)}}{\ell} \cdot {\left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right)}^{\left(\frac{3}{2}\right)}\right) \cdot \left(\frac{{\left(\sqrt[3]{t}\right)}^{3}}{\ell} \cdot \sin k\right)\right) \cdot \tan k\right)}\\
\mathbf{elif}\;t \le 3.269002965313157256943809381145338723724 \cdot 10^{-112}:\\
\;\;\;\;\frac{2}{\mathsf{fma}\left(2, \frac{\left(\left(\sin k \cdot \sin k\right) \cdot \left(t \cdot t\right)\right) \cdot t}{\left(\cos k \cdot \ell\right) \cdot \ell}, \frac{t}{\frac{\cos k}{\sin k \cdot \sin k} \cdot \left(\frac{\ell}{k} \cdot \frac{\ell}{k}\right)}\right)}\\
\mathbf{elif}\;t \le 4.16118835193751829588179468378452997202 \cdot 10^{-31}:\\
\;\;\;\;\frac{2}{\left(1 + \left(1 + {\left(\frac{k}{t}\right)}^{2}\right)\right) \cdot \left(\left(\left(\frac{{t}^{\left(\frac{3}{2}\right)}}{\ell} \cdot \sin k\right) \cdot \frac{{t}^{\left(\frac{3}{2}\right)}}{\ell}\right) \cdot \tan k\right)}\\
\mathbf{elif}\;t \le 117.0242659328746270830379216931760311127:\\
\;\;\;\;\frac{2}{\mathsf{fma}\left(2, \frac{\left(\left(\sin k \cdot \sin k\right) \cdot \left(t \cdot t\right)\right) \cdot t}{\left(\cos k \cdot \ell\right) \cdot \ell}, \frac{t}{\frac{\cos k}{\sin k \cdot \sin k} \cdot \left(\frac{\ell}{k} \cdot \frac{\ell}{k}\right)}\right)}\\
\mathbf{elif}\;t \le 2.108181112873615987914570330300621019984 \cdot 10^{133}:\\
\;\;\;\;\frac{2}{\frac{\left(1 + \left(1 + {\left(\frac{k}{t}\right)}^{2}\right)\right) \cdot \left(\sin k \cdot \left(\left(\frac{{\left(\sqrt[3]{t}\right)}^{3}}{\ell} \cdot \sin k\right) \cdot {\left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right)}^{3}\right)\right)}{\cos k \cdot \ell}}\\
\mathbf{else}:\\
\;\;\;\;\frac{2}{\left(\left(\left(\frac{\frac{{\left(\sqrt[3]{t}\right)}^{3}}{\sqrt[3]{\ell}}}{\sqrt[3]{\ell}} \cdot \frac{{\left(\sqrt[3]{t}\right)}^{3}}{\sqrt[3]{\ell}}\right) \cdot \left(\frac{{\left(\sqrt[3]{t}\right)}^{3}}{\ell} \cdot \sin k\right)\right) \cdot \tan k\right) \cdot \left(1 + \left(1 + {\left(\frac{k}{t}\right)}^{2}\right)\right)}\\
\end{array}double f(double t, double l, double k) {
double r5110989 = 2.0;
double r5110990 = t;
double r5110991 = 3.0;
double r5110992 = pow(r5110990, r5110991);
double r5110993 = l;
double r5110994 = r5110993 * r5110993;
double r5110995 = r5110992 / r5110994;
double r5110996 = k;
double r5110997 = sin(r5110996);
double r5110998 = r5110995 * r5110997;
double r5110999 = tan(r5110996);
double r5111000 = r5110998 * r5110999;
double r5111001 = 1.0;
double r5111002 = r5110996 / r5110990;
double r5111003 = pow(r5111002, r5110989);
double r5111004 = r5111001 + r5111003;
double r5111005 = r5111004 + r5111001;
double r5111006 = r5111000 * r5111005;
double r5111007 = r5110989 / r5111006;
return r5111007;
}
double f(double t, double l, double k) {
double r5111008 = t;
double r5111009 = -2.746467164580857e+101;
bool r5111010 = r5111008 <= r5111009;
double r5111011 = 2.0;
double r5111012 = 1.0;
double r5111013 = k;
double r5111014 = r5111013 / r5111008;
double r5111015 = pow(r5111014, r5111011);
double r5111016 = r5111012 + r5111015;
double r5111017 = r5111012 + r5111016;
double r5111018 = cbrt(r5111008);
double r5111019 = r5111018 * r5111018;
double r5111020 = 3.0;
double r5111021 = 2.0;
double r5111022 = r5111020 / r5111021;
double r5111023 = pow(r5111019, r5111022);
double r5111024 = l;
double r5111025 = r5111023 / r5111024;
double r5111026 = r5111025 * r5111023;
double r5111027 = pow(r5111018, r5111020);
double r5111028 = r5111027 / r5111024;
double r5111029 = sin(r5111013);
double r5111030 = r5111028 * r5111029;
double r5111031 = r5111026 * r5111030;
double r5111032 = tan(r5111013);
double r5111033 = r5111031 * r5111032;
double r5111034 = r5111017 * r5111033;
double r5111035 = r5111011 / r5111034;
double r5111036 = 3.2690029653131573e-112;
bool r5111037 = r5111008 <= r5111036;
double r5111038 = r5111029 * r5111029;
double r5111039 = r5111008 * r5111008;
double r5111040 = r5111038 * r5111039;
double r5111041 = r5111040 * r5111008;
double r5111042 = cos(r5111013);
double r5111043 = r5111042 * r5111024;
double r5111044 = r5111043 * r5111024;
double r5111045 = r5111041 / r5111044;
double r5111046 = r5111042 / r5111038;
double r5111047 = r5111024 / r5111013;
double r5111048 = r5111047 * r5111047;
double r5111049 = r5111046 * r5111048;
double r5111050 = r5111008 / r5111049;
double r5111051 = fma(r5111011, r5111045, r5111050);
double r5111052 = r5111011 / r5111051;
double r5111053 = 4.161188351937518e-31;
bool r5111054 = r5111008 <= r5111053;
double r5111055 = pow(r5111008, r5111022);
double r5111056 = r5111055 / r5111024;
double r5111057 = r5111056 * r5111029;
double r5111058 = r5111057 * r5111056;
double r5111059 = r5111058 * r5111032;
double r5111060 = r5111017 * r5111059;
double r5111061 = r5111011 / r5111060;
double r5111062 = 117.02426593287463;
bool r5111063 = r5111008 <= r5111062;
double r5111064 = 2.108181112873616e+133;
bool r5111065 = r5111008 <= r5111064;
double r5111066 = pow(r5111019, r5111020);
double r5111067 = r5111030 * r5111066;
double r5111068 = r5111029 * r5111067;
double r5111069 = r5111017 * r5111068;
double r5111070 = r5111069 / r5111043;
double r5111071 = r5111011 / r5111070;
double r5111072 = cbrt(r5111024);
double r5111073 = r5111027 / r5111072;
double r5111074 = r5111073 / r5111072;
double r5111075 = r5111074 * r5111073;
double r5111076 = r5111075 * r5111030;
double r5111077 = r5111076 * r5111032;
double r5111078 = r5111077 * r5111017;
double r5111079 = r5111011 / r5111078;
double r5111080 = r5111065 ? r5111071 : r5111079;
double r5111081 = r5111063 ? r5111052 : r5111080;
double r5111082 = r5111054 ? r5111061 : r5111081;
double r5111083 = r5111037 ? r5111052 : r5111082;
double r5111084 = r5111010 ? r5111035 : r5111083;
return r5111084;
}



Bits error versus t



Bits error versus l



Bits error versus k
if t < -2.746467164580857e+101Initial program 23.4
rmApplied add-cube-cbrt23.4
Applied unpow-prod-down23.4
Applied times-frac16.1
Applied associate-*l*15.1
rmApplied *-un-lft-identity15.1
Applied sqr-pow15.1
Applied times-frac6.3
Simplified6.3
if -2.746467164580857e+101 < t < 3.2690029653131573e-112 or 4.161188351937518e-31 < t < 117.02426593287463Initial program 44.9
rmApplied add-cube-cbrt45.1
Applied unpow-prod-down45.1
Applied times-frac38.4
Applied associate-*l*36.7
rmApplied *-un-lft-identity36.7
Applied sqr-pow36.7
Applied times-frac31.9
Simplified31.9
Taylor expanded around inf 33.7
Simplified23.2
if 3.2690029653131573e-112 < t < 4.161188351937518e-31Initial program 30.3
rmApplied sqr-pow30.3
Applied times-frac22.6
Applied associate-*l*19.7
if 117.02426593287463 < t < 2.108181112873616e+133Initial program 22.5
rmApplied add-cube-cbrt22.8
Applied unpow-prod-down22.8
Applied times-frac14.0
Applied associate-*l*9.8
rmApplied tan-quot9.8
Applied associate-*l/9.6
Applied frac-times8.3
Applied associate-*l/7.8
if 2.108181112873616e+133 < t Initial program 24.1
rmApplied add-cube-cbrt24.1
Applied unpow-prod-down24.1
Applied times-frac18.6
Applied associate-*l*18.1
rmApplied add-cube-cbrt18.1
Applied unpow-prod-down18.1
Applied times-frac7.0
Simplified7.0
Final simplification14.2
herbie shell --seed 2019168 +o rules:numerics
(FPCore (t l k)
:name "Toniolo and Linder, Equation (10+)"
(/ 2.0 (* (* (* (/ (pow t 3.0) (* l l)) (sin k)) (tan k)) (+ (+ 1.0 (pow (/ k t) 2.0)) 1.0))))