\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)}\frac{\frac{\frac{-2}{\frac{k}{\ell}}}{\frac{k}{\ell} \cdot \left(\sin k \cdot t\right)}}{-\tan k}double f(double t, double l, double k) {
double r2454446 = 2.0;
double r2454447 = t;
double r2454448 = 3.0;
double r2454449 = pow(r2454447, r2454448);
double r2454450 = l;
double r2454451 = r2454450 * r2454450;
double r2454452 = r2454449 / r2454451;
double r2454453 = k;
double r2454454 = sin(r2454453);
double r2454455 = r2454452 * r2454454;
double r2454456 = tan(r2454453);
double r2454457 = r2454455 * r2454456;
double r2454458 = 1.0;
double r2454459 = r2454453 / r2454447;
double r2454460 = pow(r2454459, r2454446);
double r2454461 = r2454458 + r2454460;
double r2454462 = r2454461 - r2454458;
double r2454463 = r2454457 * r2454462;
double r2454464 = r2454446 / r2454463;
return r2454464;
}
double f(double t, double l, double k) {
double r2454465 = -2.0;
double r2454466 = k;
double r2454467 = l;
double r2454468 = r2454466 / r2454467;
double r2454469 = r2454465 / r2454468;
double r2454470 = sin(r2454466);
double r2454471 = t;
double r2454472 = r2454470 * r2454471;
double r2454473 = r2454468 * r2454472;
double r2454474 = r2454469 / r2454473;
double r2454475 = tan(r2454466);
double r2454476 = -r2454475;
double r2454477 = r2454474 / r2454476;
return r2454477;
}



Bits error versus t



Bits error versus l



Bits error versus k
Results
Initial program 46.8
Simplified29.9
rmApplied *-un-lft-identity29.9
Applied times-frac29.3
Applied times-frac18.4
Simplified18.4
Simplified11.4
Taylor expanded around -inf 11.3
Taylor expanded around -inf 2.8
rmApplied frac-2neg2.8
Simplified1.7
Final simplification1.7
herbie shell --seed 2019133 +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))))