\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}\;U \le 1.4828608859501 \cdot 10^{-310}:\\
\;\;\;\;\sqrt{\sqrt{\left(2 \cdot U\right) \cdot \left(n \cdot \mathsf{fma}\left(U* - U, \frac{\left(\sqrt[3]{\ell} \cdot \sqrt[3]{\ell}\right) \cdot \frac{n}{\frac{Om}{\sqrt[3]{\ell}}}}{\frac{Om}{\ell}}, \mathsf{fma}\left(\frac{\ell}{\frac{Om}{\ell}}, -2, t\right)\right)\right)}} \cdot \sqrt{\sqrt{\left(n \cdot \mathsf{fma}\left(U* - U, \frac{\frac{n}{\frac{Om}{\ell}}}{\frac{Om}{\ell}}, \mathsf{fma}\left(\frac{\ell}{\frac{Om}{\ell}}, -2, t\right)\right)\right) \cdot \left(2 \cdot U\right)}}\\
\mathbf{else}:\\
\;\;\;\;\sqrt{n \cdot \mathsf{fma}\left(U* - U, \frac{\frac{n}{\frac{Om}{\ell}}}{\frac{Om}{\ell}}, \mathsf{fma}\left(\frac{\ell}{\frac{Om}{\ell}}, -2, t\right)\right)} \cdot \sqrt{2 \cdot U}\\
\end{array}double f(double n, double U, double t, double l, double Om, double U_) {
double r1285220 = 2.0;
double r1285221 = n;
double r1285222 = r1285220 * r1285221;
double r1285223 = U;
double r1285224 = r1285222 * r1285223;
double r1285225 = t;
double r1285226 = l;
double r1285227 = r1285226 * r1285226;
double r1285228 = Om;
double r1285229 = r1285227 / r1285228;
double r1285230 = r1285220 * r1285229;
double r1285231 = r1285225 - r1285230;
double r1285232 = r1285226 / r1285228;
double r1285233 = pow(r1285232, r1285220);
double r1285234 = r1285221 * r1285233;
double r1285235 = U_;
double r1285236 = r1285223 - r1285235;
double r1285237 = r1285234 * r1285236;
double r1285238 = r1285231 - r1285237;
double r1285239 = r1285224 * r1285238;
double r1285240 = sqrt(r1285239);
return r1285240;
}
double f(double n, double U, double t, double l, double Om, double U_) {
double r1285241 = U;
double r1285242 = 1.4828608859501e-310;
bool r1285243 = r1285241 <= r1285242;
double r1285244 = 2.0;
double r1285245 = r1285244 * r1285241;
double r1285246 = n;
double r1285247 = U_;
double r1285248 = r1285247 - r1285241;
double r1285249 = l;
double r1285250 = cbrt(r1285249);
double r1285251 = r1285250 * r1285250;
double r1285252 = Om;
double r1285253 = r1285252 / r1285250;
double r1285254 = r1285246 / r1285253;
double r1285255 = r1285251 * r1285254;
double r1285256 = r1285252 / r1285249;
double r1285257 = r1285255 / r1285256;
double r1285258 = r1285249 / r1285256;
double r1285259 = -2.0;
double r1285260 = t;
double r1285261 = fma(r1285258, r1285259, r1285260);
double r1285262 = fma(r1285248, r1285257, r1285261);
double r1285263 = r1285246 * r1285262;
double r1285264 = r1285245 * r1285263;
double r1285265 = sqrt(r1285264);
double r1285266 = sqrt(r1285265);
double r1285267 = r1285246 / r1285256;
double r1285268 = r1285267 / r1285256;
double r1285269 = fma(r1285248, r1285268, r1285261);
double r1285270 = r1285246 * r1285269;
double r1285271 = r1285270 * r1285245;
double r1285272 = sqrt(r1285271);
double r1285273 = sqrt(r1285272);
double r1285274 = r1285266 * r1285273;
double r1285275 = sqrt(r1285270);
double r1285276 = sqrt(r1285245);
double r1285277 = r1285275 * r1285276;
double r1285278 = r1285243 ? r1285274 : r1285277;
return r1285278;
}



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 U < 1.4828608859501e-310Initial program 32.8
Simplified29.2
rmApplied add-sqr-sqrt29.4
rmApplied add-cube-cbrt29.4
Applied *-un-lft-identity29.4
Applied times-frac29.4
Applied *-un-lft-identity29.4
Applied times-frac29.5
Simplified29.5
if 1.4828608859501e-310 < U Initial program 32.7
Simplified29.0
rmApplied sqrt-prod21.8
Final simplification25.7
herbie shell --seed 2019152 +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*))))))