\left(\left(-2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \sqrt{1 + {\left(\frac{U}{\left(2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)}\right)}^{2}}\begin{array}{l}
\mathbf{if}\;\left(\left(-2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \sqrt{1 + {\left(\frac{U}{\left(2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)}\right)}^{2}} \le 2.872822739327293444343091617894118790415 \cdot 10^{305}:\\
\;\;\;\;\left(\left(-2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \sqrt{1 + {\left(\frac{U}{\left(2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)}\right)}^{2}}\\
\mathbf{else}:\\
\;\;\;\;\left(\left(-2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \frac{\sqrt{0.25} \cdot U}{J \cdot \cos \left(0.5 \cdot K\right)}\\
\end{array}double f(double J, double K, double U) {
double r175249 = -2.0;
double r175250 = J;
double r175251 = r175249 * r175250;
double r175252 = K;
double r175253 = 2.0;
double r175254 = r175252 / r175253;
double r175255 = cos(r175254);
double r175256 = r175251 * r175255;
double r175257 = 1.0;
double r175258 = U;
double r175259 = r175253 * r175250;
double r175260 = r175259 * r175255;
double r175261 = r175258 / r175260;
double r175262 = pow(r175261, r175253);
double r175263 = r175257 + r175262;
double r175264 = sqrt(r175263);
double r175265 = r175256 * r175264;
return r175265;
}
double f(double J, double K, double U) {
double r175266 = -2.0;
double r175267 = J;
double r175268 = r175266 * r175267;
double r175269 = K;
double r175270 = 2.0;
double r175271 = r175269 / r175270;
double r175272 = cos(r175271);
double r175273 = r175268 * r175272;
double r175274 = 1.0;
double r175275 = U;
double r175276 = r175270 * r175267;
double r175277 = r175276 * r175272;
double r175278 = r175275 / r175277;
double r175279 = pow(r175278, r175270);
double r175280 = r175274 + r175279;
double r175281 = sqrt(r175280);
double r175282 = r175273 * r175281;
double r175283 = 2.8728227393272934e+305;
bool r175284 = r175282 <= r175283;
double r175285 = 0.25;
double r175286 = sqrt(r175285);
double r175287 = r175286 * r175275;
double r175288 = 0.5;
double r175289 = r175288 * r175269;
double r175290 = cos(r175289);
double r175291 = r175267 * r175290;
double r175292 = r175287 / r175291;
double r175293 = r175273 * r175292;
double r175294 = r175284 ? r175282 : r175293;
return r175294;
}



Bits error versus J



Bits error versus K



Bits error versus U
Results
if (* (* (* -2.0 J) (cos (/ K 2.0))) (sqrt (+ 1.0 (pow (/ U (* (* 2.0 J) (cos (/ K 2.0)))) 2.0)))) < 2.8728227393272934e+305Initial program 10.4
if 2.8728227393272934e+305 < (* (* (* -2.0 J) (cos (/ K 2.0))) (sqrt (+ 1.0 (pow (/ U (* (* 2.0 J) (cos (/ K 2.0)))) 2.0)))) Initial program 63.0
Taylor expanded around inf 46.6
Final simplification15.6
herbie shell --seed 2019354
(FPCore (J K U)
:name "Maksimov and Kolovsky, Equation (3)"
:precision binary64
(* (* (* -2 J) (cos (/ K 2))) (sqrt (+ 1 (pow (/ U (* (* 2 J) (cos (/ K 2)))) 2)))))