\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 -5.147845724912201976044071050075956463843 \cdot 10^{-5} \lor \neg \left(n \le 12422347331609260556550144\right):\\
\;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left({\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)} \cdot \left(U - U*\right)\right)\right)}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{{\left(\left(\left(2 \cdot n\right) \cdot \left(t - \left(2 \cdot \frac{\ell}{\frac{Om}{\ell}} - \left(-n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(2 \cdot \frac{2}{2}\right)}\right) \cdot \left(U - U*\right)\right)\right)\right) \cdot U\right)}^{1}}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r224186 = 2.0;
double r224187 = n;
double r224188 = r224186 * r224187;
double r224189 = U;
double r224190 = r224188 * r224189;
double r224191 = t;
double r224192 = l;
double r224193 = r224192 * r224192;
double r224194 = Om;
double r224195 = r224193 / r224194;
double r224196 = r224186 * r224195;
double r224197 = r224191 - r224196;
double r224198 = r224192 / r224194;
double r224199 = pow(r224198, r224186);
double r224200 = r224187 * r224199;
double r224201 = U_;
double r224202 = r224189 - r224201;
double r224203 = r224200 * r224202;
double r224204 = r224197 - r224203;
double r224205 = r224190 * r224204;
double r224206 = sqrt(r224205);
return r224206;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r224207 = n;
double r224208 = -5.147845724912202e-05;
bool r224209 = r224207 <= r224208;
double r224210 = 1.242234733160926e+25;
bool r224211 = r224207 <= r224210;
double r224212 = !r224211;
bool r224213 = r224209 || r224212;
double r224214 = 2.0;
double r224215 = r224214 * r224207;
double r224216 = U;
double r224217 = r224215 * r224216;
double r224218 = t;
double r224219 = l;
double r224220 = Om;
double r224221 = r224220 / r224219;
double r224222 = r224219 / r224221;
double r224223 = r224214 * r224222;
double r224224 = r224218 - r224223;
double r224225 = r224219 / r224220;
double r224226 = 2.0;
double r224227 = r224214 / r224226;
double r224228 = pow(r224225, r224227);
double r224229 = r224207 * r224228;
double r224230 = U_;
double r224231 = r224216 - r224230;
double r224232 = r224228 * r224231;
double r224233 = r224229 * r224232;
double r224234 = r224224 - r224233;
double r224235 = r224217 * r224234;
double r224236 = sqrt(r224235);
double r224237 = r224226 * r224227;
double r224238 = pow(r224225, r224237);
double r224239 = r224207 * r224238;
double r224240 = -r224239;
double r224241 = r224240 * r224231;
double r224242 = r224223 - r224241;
double r224243 = r224218 - r224242;
double r224244 = r224215 * r224243;
double r224245 = r224244 * r224216;
double r224246 = 1.0;
double r224247 = pow(r224245, r224246);
double r224248 = sqrt(r224247);
double r224249 = r224213 ? r224236 : r224248;
return r224249;
}



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 < -5.147845724912202e-05 or 1.242234733160926e+25 < n Initial program 33.2
rmApplied associate-/l*31.0
rmApplied sqr-pow31.0
Applied associate-*r*30.0
rmApplied associate-*l*29.1
if -5.147845724912202e-05 < n < 1.242234733160926e+25Initial program 35.0
rmApplied associate-/l*31.5
rmApplied sqr-pow31.5
Applied associate-*r*30.8
rmApplied pow130.8
Applied pow130.8
Applied pow130.8
Applied pow130.8
Applied pow-prod-down30.8
Applied pow-prod-down30.8
Applied pow-prod-down30.8
Simplified27.7
Final simplification28.2
herbie shell --seed 2019322
(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*))))))