\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 \le -4.766677063238053 \cdot 10^{+76}:\\
\;\;\;\;\left(\sqrt[3]{2} \cdot \frac{\cos k}{\sqrt[3]{\mathsf{fma}\left(\left(\frac{k}{t}\right), \left(\frac{k}{t}\right), 2\right)}}\right) \cdot \left(\frac{\frac{\sqrt[3]{2}}{\left(\frac{t}{\ell} \cdot \sin k\right) \cdot \sqrt[3]{\mathsf{fma}\left(\left(\frac{k}{t}\right), \left(\frac{k}{t}\right), 2\right)}}}{t} \cdot \frac{\sqrt[3]{2}}{\sqrt[3]{\mathsf{fma}\left(\left(\frac{k}{t}\right), \left(\frac{k}{t}\right), 2\right)} \cdot \frac{\sin k \cdot t}{\ell}}\right)\\
\mathbf{elif}\;\ell \le 5.68850156613633 \cdot 10^{+78}:\\
\;\;\;\;\frac{\frac{\sqrt[3]{2}}{\sqrt[3]{\mathsf{fma}\left(\left(\frac{k}{t}\right), \left(\frac{k}{t}\right), 2\right)}}}{\frac{\frac{t}{\frac{\ell}{\sin k}}}{\sqrt[3]{\cos k}}} \cdot \left(\left(\left(\sqrt[3]{\cos k} \cdot \frac{\ell}{\sin k}\right) \cdot \frac{\frac{\sqrt[3]{2}}{\sqrt[3]{\mathsf{fma}\left(\left(\frac{k}{t}\right), \left(\frac{k}{t}\right), 2\right)}}}{t}\right) \cdot \left(\frac{\frac{\sqrt[3]{2}}{\sqrt[3]{\mathsf{fma}\left(\left(\frac{k}{t}\right), \left(\frac{k}{t}\right), 2\right)}}}{t} \cdot \sqrt[3]{\cos k}\right)\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\sqrt[3]{2} \cdot \frac{\cos k}{\sqrt[3]{\mathsf{fma}\left(\left(\frac{k}{t}\right), \left(\frac{k}{t}\right), 2\right)}}\right) \cdot \left(\frac{\frac{\sqrt[3]{2}}{\left(\frac{t}{\ell} \cdot \sin k\right) \cdot \sqrt[3]{\mathsf{fma}\left(\left(\frac{k}{t}\right), \left(\frac{k}{t}\right), 2\right)}}}{t} \cdot \frac{\sqrt[3]{2}}{\sqrt[3]{\mathsf{fma}\left(\left(\frac{k}{t}\right), \left(\frac{k}{t}\right), 2\right)} \cdot \frac{\sin k \cdot t}{\ell}}\right)\\
\end{array}double f(double t, double l, double k) {
double r26882363 = 2.0;
double r26882364 = t;
double r26882365 = 3.0;
double r26882366 = pow(r26882364, r26882365);
double r26882367 = l;
double r26882368 = r26882367 * r26882367;
double r26882369 = r26882366 / r26882368;
double r26882370 = k;
double r26882371 = sin(r26882370);
double r26882372 = r26882369 * r26882371;
double r26882373 = tan(r26882370);
double r26882374 = r26882372 * r26882373;
double r26882375 = 1.0;
double r26882376 = r26882370 / r26882364;
double r26882377 = pow(r26882376, r26882363);
double r26882378 = r26882375 + r26882377;
double r26882379 = r26882378 + r26882375;
double r26882380 = r26882374 * r26882379;
double r26882381 = r26882363 / r26882380;
return r26882381;
}
double f(double t, double l, double k) {
double r26882382 = l;
double r26882383 = -4.766677063238053e+76;
bool r26882384 = r26882382 <= r26882383;
double r26882385 = 2.0;
double r26882386 = cbrt(r26882385);
double r26882387 = k;
double r26882388 = cos(r26882387);
double r26882389 = t;
double r26882390 = r26882387 / r26882389;
double r26882391 = fma(r26882390, r26882390, r26882385);
double r26882392 = cbrt(r26882391);
double r26882393 = r26882388 / r26882392;
double r26882394 = r26882386 * r26882393;
double r26882395 = r26882389 / r26882382;
double r26882396 = sin(r26882387);
double r26882397 = r26882395 * r26882396;
double r26882398 = r26882397 * r26882392;
double r26882399 = r26882386 / r26882398;
double r26882400 = r26882399 / r26882389;
double r26882401 = r26882396 * r26882389;
double r26882402 = r26882401 / r26882382;
double r26882403 = r26882392 * r26882402;
double r26882404 = r26882386 / r26882403;
double r26882405 = r26882400 * r26882404;
double r26882406 = r26882394 * r26882405;
double r26882407 = 5.68850156613633e+78;
bool r26882408 = r26882382 <= r26882407;
double r26882409 = r26882386 / r26882392;
double r26882410 = r26882382 / r26882396;
double r26882411 = r26882389 / r26882410;
double r26882412 = cbrt(r26882388);
double r26882413 = r26882411 / r26882412;
double r26882414 = r26882409 / r26882413;
double r26882415 = r26882412 * r26882410;
double r26882416 = r26882409 / r26882389;
double r26882417 = r26882415 * r26882416;
double r26882418 = r26882416 * r26882412;
double r26882419 = r26882417 * r26882418;
double r26882420 = r26882414 * r26882419;
double r26882421 = r26882408 ? r26882420 : r26882406;
double r26882422 = r26882384 ? r26882406 : r26882421;
return r26882422;
}



Bits error versus t



Bits error versus l



Bits error versus k
if l < -4.766677063238053e+76 or 5.68850156613633e+78 < l Initial program 51.9
Simplified30.4
rmApplied tan-quot30.4
Applied associate-*r/30.4
Applied associate-*l/30.4
Simplified29.7
rmApplied div-inv29.7
Applied add-cube-cbrt30.0
Applied add-cube-cbrt29.8
Applied times-frac29.8
Applied times-frac29.8
Simplified20.1
Simplified20.1
rmApplied associate-*l/20.0
if -4.766677063238053e+76 < l < 5.68850156613633e+78Initial program 24.4
Simplified22.4
rmApplied tan-quot22.4
Applied associate-*r/22.4
Applied associate-*l/22.4
Simplified11.3
rmApplied add-cube-cbrt11.3
Applied times-frac11.3
Applied add-cube-cbrt11.5
Applied add-cube-cbrt11.3
Applied times-frac11.3
Applied times-frac9.8
Simplified8.0
Final simplification11.4
herbie shell --seed 2019124 +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))))