\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell \cdot \ell}{Om}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\begin{array}{l}
\mathbf{if}\;n \le -6.475205078487209 \cdot 10^{+94}:\\
\;\;\;\;{\left(n \cdot \left(\left(U \cdot 2\right) \cdot \left(t - \frac{\ell}{Om} \cdot \left(\ell \cdot 2 + n \cdot \left(\frac{\ell}{Om} \cdot \left(U - U*\right)\right)\right)\right)\right)\right)}^{\frac{1}{4}} \cdot {\left(n \cdot \left(\left(U \cdot 2\right) \cdot \left(t - \frac{\ell}{Om} \cdot \left(\ell \cdot 2 + n \cdot \left(\frac{\ell}{Om} \cdot \left(U - U*\right)\right)\right)\right)\right)\right)}^{\frac{1}{4}}\\
\mathbf{elif}\;n \le 2.122462322126863 \cdot 10^{-309}:\\
\;\;\;\;{\left(\left(n \cdot \left(t - \frac{\ell}{Om} \cdot \left(\ell \cdot 2 + n \cdot \left(\frac{\ell}{Om} \cdot \left(U - U*\right)\right)\right)\right)\right) \cdot \left(U \cdot 2\right)\right)}^{\frac{1}{2}}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\left(t - (\ell \cdot 2 + \left(n \cdot \left(\frac{\ell}{Om} \cdot \left(U - U*\right)\right)\right))_* \cdot \frac{\ell}{Om}\right) \cdot \left(U \cdot 2\right)} \cdot {n}^{\frac{1}{2}}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r16174417 = 2.0;
double r16174418 = n;
double r16174419 = r16174417 * r16174418;
double r16174420 = U;
double r16174421 = r16174419 * r16174420;
double r16174422 = t;
double r16174423 = l;
double r16174424 = r16174423 * r16174423;
double r16174425 = Om;
double r16174426 = r16174424 / r16174425;
double r16174427 = r16174417 * r16174426;
double r16174428 = r16174422 - r16174427;
double r16174429 = r16174423 / r16174425;
double r16174430 = pow(r16174429, r16174417);
double r16174431 = r16174418 * r16174430;
double r16174432 = U_;
double r16174433 = r16174420 - r16174432;
double r16174434 = r16174431 * r16174433;
double r16174435 = r16174428 - r16174434;
double r16174436 = r16174421 * r16174435;
double r16174437 = sqrt(r16174436);
return r16174437;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r16174438 = n;
double r16174439 = -6.475205078487209e+94;
bool r16174440 = r16174438 <= r16174439;
double r16174441 = U;
double r16174442 = 2.0;
double r16174443 = r16174441 * r16174442;
double r16174444 = t;
double r16174445 = l;
double r16174446 = Om;
double r16174447 = r16174445 / r16174446;
double r16174448 = r16174445 * r16174442;
double r16174449 = U_;
double r16174450 = r16174441 - r16174449;
double r16174451 = r16174447 * r16174450;
double r16174452 = r16174438 * r16174451;
double r16174453 = r16174448 + r16174452;
double r16174454 = r16174447 * r16174453;
double r16174455 = r16174444 - r16174454;
double r16174456 = r16174443 * r16174455;
double r16174457 = r16174438 * r16174456;
double r16174458 = 0.25;
double r16174459 = pow(r16174457, r16174458);
double r16174460 = r16174459 * r16174459;
double r16174461 = 2.122462322126863e-309;
bool r16174462 = r16174438 <= r16174461;
double r16174463 = r16174438 * r16174455;
double r16174464 = r16174463 * r16174443;
double r16174465 = 0.5;
double r16174466 = pow(r16174464, r16174465);
double r16174467 = fma(r16174445, r16174442, r16174452);
double r16174468 = r16174467 * r16174447;
double r16174469 = r16174444 - r16174468;
double r16174470 = r16174469 * r16174443;
double r16174471 = sqrt(r16174470);
double r16174472 = pow(r16174438, r16174465);
double r16174473 = r16174471 * r16174472;
double r16174474 = r16174462 ? r16174466 : r16174473;
double r16174475 = r16174440 ? r16174460 : r16174474;
return r16174475;
}



Bits error versus n



Bits error versus U



Bits error versus t



Bits error versus l



Bits error versus Om



Bits error versus U*
if n < -6.475205078487209e+94Initial program 32.6
rmApplied associate-/l*31.3
rmApplied unpow231.3
Applied associate-*r*29.0
rmApplied pow129.0
Applied sqrt-pow129.0
Simplified28.7
rmApplied sqr-pow28.9
if -6.475205078487209e+94 < n < 2.122462322126863e-309Initial program 33.3
rmApplied associate-/l*29.7
rmApplied unpow229.7
Applied associate-*r*29.2
rmApplied pow129.2
Applied sqrt-pow129.2
Simplified29.0
rmApplied associate-*l*26.9
if 2.122462322126863e-309 < n Initial program 33.3
rmApplied associate-/l*30.8
rmApplied unpow230.8
Applied associate-*r*29.9
rmApplied pow129.9
Applied sqrt-pow129.9
Simplified30.0
rmApplied unpow-prod-down22.9
Simplified22.9
Final simplification25.1
herbie shell --seed 2019104 +o rules:numerics
(FPCore (n U t l Om U*)
:name "Toniolo and Linder, Equation (13)"
(sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*))))))