\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 -2.776184263616495583834663238899089510483 \cdot 10^{-228}:\\
\;\;\;\;\sqrt{\left(U \cdot \mathsf{fma}\left(U* - U, \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot n\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}, t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right)\right) \cdot \left(2 \cdot n\right)}\\
\mathbf{elif}\;n \le 7.786798218553425520162161300387875418626 \cdot 10^{-276}:\\
\;\;\;\;\sqrt{\left(2 \cdot t\right) \cdot \left(U \cdot n\right) - \frac{U \cdot 4}{\frac{Om}{\left(\ell \cdot \ell\right) \cdot n}}}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{U \cdot \mathsf{fma}\left(U* - U, \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot n\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}, t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right)} \cdot \sqrt{2 \cdot n}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r2862021 = 2.0;
double r2862022 = n;
double r2862023 = r2862021 * r2862022;
double r2862024 = U;
double r2862025 = r2862023 * r2862024;
double r2862026 = t;
double r2862027 = l;
double r2862028 = r2862027 * r2862027;
double r2862029 = Om;
double r2862030 = r2862028 / r2862029;
double r2862031 = r2862021 * r2862030;
double r2862032 = r2862026 - r2862031;
double r2862033 = r2862027 / r2862029;
double r2862034 = pow(r2862033, r2862021);
double r2862035 = r2862022 * r2862034;
double r2862036 = U_;
double r2862037 = r2862024 - r2862036;
double r2862038 = r2862035 * r2862037;
double r2862039 = r2862032 - r2862038;
double r2862040 = r2862025 * r2862039;
double r2862041 = sqrt(r2862040);
return r2862041;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r2862042 = n;
double r2862043 = -2.7761842636164956e-228;
bool r2862044 = r2862042 <= r2862043;
double r2862045 = U;
double r2862046 = U_;
double r2862047 = r2862046 - r2862045;
double r2862048 = l;
double r2862049 = Om;
double r2862050 = r2862048 / r2862049;
double r2862051 = 2.0;
double r2862052 = 2.0;
double r2862053 = r2862051 / r2862052;
double r2862054 = pow(r2862050, r2862053);
double r2862055 = r2862054 * r2862042;
double r2862056 = r2862055 * r2862054;
double r2862057 = t;
double r2862058 = r2862048 * r2862050;
double r2862059 = r2862051 * r2862058;
double r2862060 = r2862057 - r2862059;
double r2862061 = fma(r2862047, r2862056, r2862060);
double r2862062 = r2862045 * r2862061;
double r2862063 = r2862051 * r2862042;
double r2862064 = r2862062 * r2862063;
double r2862065 = sqrt(r2862064);
double r2862066 = 7.786798218553426e-276;
bool r2862067 = r2862042 <= r2862066;
double r2862068 = r2862051 * r2862057;
double r2862069 = r2862045 * r2862042;
double r2862070 = r2862068 * r2862069;
double r2862071 = 4.0;
double r2862072 = r2862045 * r2862071;
double r2862073 = r2862048 * r2862048;
double r2862074 = r2862073 * r2862042;
double r2862075 = r2862049 / r2862074;
double r2862076 = r2862072 / r2862075;
double r2862077 = r2862070 - r2862076;
double r2862078 = sqrt(r2862077);
double r2862079 = sqrt(r2862062);
double r2862080 = sqrt(r2862063);
double r2862081 = r2862079 * r2862080;
double r2862082 = r2862067 ? r2862078 : r2862081;
double r2862083 = r2862044 ? r2862065 : r2862082;
return r2862083;
}



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 < -2.7761842636164956e-228Initial program 33.0
Simplified30.0
rmApplied sqr-pow30.0
Applied associate-*r*29.2
rmApplied associate-*l*30.1
if -2.7761842636164956e-228 < n < 7.786798218553426e-276Initial program 41.2
Simplified38.9
rmApplied sqr-pow38.9
Applied associate-*r*38.3
Taylor expanded around inf 39.4
Simplified39.6
if 7.786798218553426e-276 < n Initial program 34.3
Simplified31.4
rmApplied sqr-pow31.4
Applied associate-*r*30.6
rmApplied associate-*l*30.5
rmApplied sqrt-prod23.7
Final simplification28.4
herbie shell --seed 2019174 +o rules:numerics
(FPCore (n U t l Om U*)
:name "Toniolo and Linder, Equation (13)"
(sqrt (* (* (* 2.0 n) U) (- (- t (* 2.0 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2.0)) (- U U*))))))