\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 1.096720098972556 \cdot 10^{-309}:\\
\;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot \left(U \cdot \left(\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right) - n \cdot \left({\left(\frac{\ell}{Om}\right)}^{2} \cdot \left(U - U*\right)\right)\right)\right)}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{2 \cdot n} \cdot \sqrt{U \cdot \left(\left(t - 2 \cdot \left(\ell \cdot \frac{\ell}{Om}\right)\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{2}\right) \cdot \left(U - U*\right)\right)}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r216199 = 2.0;
double r216200 = n;
double r216201 = r216199 * r216200;
double r216202 = U;
double r216203 = r216201 * r216202;
double r216204 = t;
double r216205 = l;
double r216206 = r216205 * r216205;
double r216207 = Om;
double r216208 = r216206 / r216207;
double r216209 = r216199 * r216208;
double r216210 = r216204 - r216209;
double r216211 = r216205 / r216207;
double r216212 = pow(r216211, r216199);
double r216213 = r216200 * r216212;
double r216214 = U_;
double r216215 = r216202 - r216214;
double r216216 = r216213 * r216215;
double r216217 = r216210 - r216216;
double r216218 = r216203 * r216217;
double r216219 = sqrt(r216218);
return r216219;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r216220 = n;
double r216221 = 1.096720098972556e-309;
bool r216222 = r216220 <= r216221;
double r216223 = 2.0;
double r216224 = r216223 * r216220;
double r216225 = U;
double r216226 = t;
double r216227 = l;
double r216228 = Om;
double r216229 = r216227 / r216228;
double r216230 = r216227 * r216229;
double r216231 = r216223 * r216230;
double r216232 = r216226 - r216231;
double r216233 = pow(r216229, r216223);
double r216234 = U_;
double r216235 = r216225 - r216234;
double r216236 = r216233 * r216235;
double r216237 = r216220 * r216236;
double r216238 = r216232 - r216237;
double r216239 = r216225 * r216238;
double r216240 = r216224 * r216239;
double r216241 = sqrt(r216240);
double r216242 = sqrt(r216224);
double r216243 = r216220 * r216233;
double r216244 = r216243 * r216235;
double r216245 = r216232 - r216244;
double r216246 = r216225 * r216245;
double r216247 = sqrt(r216246);
double r216248 = r216242 * r216247;
double r216249 = r216222 ? r216241 : r216248;
return r216249;
}



Bits error versus n



Bits error versus U



Bits error versus t



Bits error versus l



Bits error versus Om



Bits error versus U*
Results
if n < 1.096720098972556e-309Initial program 34.8
rmApplied *-un-lft-identity34.8
Applied times-frac32.0
Simplified32.0
rmApplied associate-*l*32.4
rmApplied associate-*l*32.7
if 1.096720098972556e-309 < n Initial program 35.0
rmApplied *-un-lft-identity35.0
Applied times-frac32.4
Simplified32.4
rmApplied associate-*l*32.8
rmApplied sqrt-prod25.8
Final simplification29.3
herbie shell --seed 2020060
(FPCore (n U t l Om U*)
:name "Toniolo and Linder, Equation (13)"
:precision binary64
(sqrt (* (* (* 2 n) U) (- (- t (* 2 (/ (* l l) Om))) (* (* n (pow (/ l Om) 2)) (- U U*))))))