\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}\;t \le 8.120471958061494211765127711129383515551 \cdot 10^{92}:\\
\;\;\;\;\sqrt{\left(\left(2 \cdot n\right) \cdot U\right) \cdot \left(\left(t - 2 \cdot \frac{\ell}{\frac{Om}{\ell}}\right) - \left(\left(\left(n \cdot {\left(\frac{\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}}{\sqrt[3]{Om} \cdot \sqrt[3]{Om}}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\sqrt[3]{\ell}}{\sqrt[3]{Om}}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot {\left(\frac{\ell}{Om}\right)}^{\left(\frac{2}{2}\right)}\right) \cdot \left(U - U*\right)\right)}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{\left(2 \cdot n\right) \cdot U} \cdot \sqrt{t - \mathsf{fma}\left(2, \frac{\ell}{\frac{Om}{\ell}}, \left(U - U*\right) \cdot \left(n \cdot {\left(\frac{\ell}{Om}\right)}^{\left(2 \cdot \frac{2}{2}\right)}\right)\right)}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r205196 = 2.0;
double r205197 = n;
double r205198 = r205196 * r205197;
double r205199 = U;
double r205200 = r205198 * r205199;
double r205201 = t;
double r205202 = l;
double r205203 = r205202 * r205202;
double r205204 = Om;
double r205205 = r205203 / r205204;
double r205206 = r205196 * r205205;
double r205207 = r205201 - r205206;
double r205208 = r205202 / r205204;
double r205209 = pow(r205208, r205196);
double r205210 = r205197 * r205209;
double r205211 = U_;
double r205212 = r205199 - r205211;
double r205213 = r205210 * r205212;
double r205214 = r205207 - r205213;
double r205215 = r205200 * r205214;
double r205216 = sqrt(r205215);
return r205216;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r205217 = t;
double r205218 = 8.120471958061494e+92;
bool r205219 = r205217 <= r205218;
double r205220 = 2.0;
double r205221 = n;
double r205222 = r205220 * r205221;
double r205223 = U;
double r205224 = r205222 * r205223;
double r205225 = l;
double r205226 = Om;
double r205227 = r205226 / r205225;
double r205228 = r205225 / r205227;
double r205229 = r205220 * r205228;
double r205230 = r205217 - r205229;
double r205231 = cbrt(r205225);
double r205232 = r205231 * r205231;
double r205233 = cbrt(r205226);
double r205234 = r205233 * r205233;
double r205235 = r205232 / r205234;
double r205236 = 2.0;
double r205237 = r205220 / r205236;
double r205238 = pow(r205235, r205237);
double r205239 = r205221 * r205238;
double r205240 = r205231 / r205233;
double r205241 = pow(r205240, r205237);
double r205242 = r205239 * r205241;
double r205243 = r205225 / r205226;
double r205244 = pow(r205243, r205237);
double r205245 = r205242 * r205244;
double r205246 = U_;
double r205247 = r205223 - r205246;
double r205248 = r205245 * r205247;
double r205249 = r205230 - r205248;
double r205250 = r205224 * r205249;
double r205251 = sqrt(r205250);
double r205252 = sqrt(r205224);
double r205253 = r205236 * r205237;
double r205254 = pow(r205243, r205253);
double r205255 = r205221 * r205254;
double r205256 = r205247 * r205255;
double r205257 = fma(r205220, r205228, r205256);
double r205258 = r205217 - r205257;
double r205259 = sqrt(r205258);
double r205260 = r205252 * r205259;
double r205261 = r205219 ? r205251 : r205260;
return r205261;
}



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 t < 8.120471958061494e+92Initial program 34.2
rmApplied associate-/l*31.4
rmApplied sqr-pow31.4
Applied associate-*r*30.5
rmApplied add-cube-cbrt30.5
Applied add-cube-cbrt30.6
Applied times-frac30.6
Applied unpow-prod-down30.6
Applied associate-*r*30.6
if 8.120471958061494e+92 < t Initial program 37.5
rmApplied associate-/l*35.0
rmApplied sqr-pow35.0
Applied associate-*r*34.4
rmApplied sqrt-prod25.9
Simplified26.4
Final simplification29.8
herbie shell --seed 2019326 +o rules:numerics
(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*))))))