\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}\;\sqrt{{\left(\frac{U}{\left(J \cdot 2\right) \cdot \cos \left(\frac{K}{2}\right)}\right)}^{2} + 1} \cdot \left(\cos \left(\frac{K}{2}\right) \cdot \left(-2 \cdot J\right)\right) = -\infty:\\
\;\;\;\;-U\\
\mathbf{elif}\;\sqrt{{\left(\frac{U}{\left(J \cdot 2\right) \cdot \cos \left(\frac{K}{2}\right)}\right)}^{2} + 1} \cdot \left(\cos \left(\frac{K}{2}\right) \cdot \left(-2 \cdot J\right)\right) \le 1.4084612662889073 \cdot 10^{+294}:\\
\;\;\;\;\left(-2 \cdot J\right) \cdot \left(\sqrt{1 + \frac{U}{J \cdot \left(\cos \left(\frac{K}{2}\right) \cdot 2\right)} \cdot \frac{U}{J \cdot \left(\cos \left(\frac{K}{2}\right) \cdot 2\right)}} \cdot \cos \left(\frac{K}{2}\right)\right)\\
\mathbf{else}:\\
\;\;\;\;-U\\
\end{array}double f(double J, double K, double U) {
double r4218062 = -2.0;
double r4218063 = J;
double r4218064 = r4218062 * r4218063;
double r4218065 = K;
double r4218066 = 2.0;
double r4218067 = r4218065 / r4218066;
double r4218068 = cos(r4218067);
double r4218069 = r4218064 * r4218068;
double r4218070 = 1.0;
double r4218071 = U;
double r4218072 = r4218066 * r4218063;
double r4218073 = r4218072 * r4218068;
double r4218074 = r4218071 / r4218073;
double r4218075 = pow(r4218074, r4218066);
double r4218076 = r4218070 + r4218075;
double r4218077 = sqrt(r4218076);
double r4218078 = r4218069 * r4218077;
return r4218078;
}
double f(double J, double K, double U) {
double r4218079 = U;
double r4218080 = J;
double r4218081 = 2.0;
double r4218082 = r4218080 * r4218081;
double r4218083 = K;
double r4218084 = r4218083 / r4218081;
double r4218085 = cos(r4218084);
double r4218086 = r4218082 * r4218085;
double r4218087 = r4218079 / r4218086;
double r4218088 = pow(r4218087, r4218081);
double r4218089 = 1.0;
double r4218090 = r4218088 + r4218089;
double r4218091 = sqrt(r4218090);
double r4218092 = -2.0;
double r4218093 = r4218092 * r4218080;
double r4218094 = r4218085 * r4218093;
double r4218095 = r4218091 * r4218094;
double r4218096 = -inf.0;
bool r4218097 = r4218095 <= r4218096;
double r4218098 = -r4218079;
double r4218099 = 1.4084612662889073e+294;
bool r4218100 = r4218095 <= r4218099;
double r4218101 = r4218085 * r4218081;
double r4218102 = r4218080 * r4218101;
double r4218103 = r4218079 / r4218102;
double r4218104 = r4218103 * r4218103;
double r4218105 = r4218089 + r4218104;
double r4218106 = sqrt(r4218105);
double r4218107 = r4218106 * r4218085;
double r4218108 = r4218093 * r4218107;
double r4218109 = r4218100 ? r4218108 : r4218098;
double r4218110 = r4218097 ? r4218098 : r4218109;
return r4218110;
}



Bits error versus J



Bits error versus K



Bits error versus U
Results
if (* (* (* -2 J) (cos (/ K 2))) (sqrt (+ 1 (pow (/ U (* (* 2 J) (cos (/ K 2)))) 2)))) < -inf.0 or 1.4084612662889073e+294 < (* (* (* -2 J) (cos (/ K 2))) (sqrt (+ 1 (pow (/ U (* (* 2 J) (cos (/ K 2)))) 2)))) Initial program 57.4
rmApplied associate-*l*57.4
Simplified57.4
Taylor expanded around 0 33.1
Simplified33.1
if -inf.0 < (* (* (* -2 J) (cos (/ K 2))) (sqrt (+ 1 (pow (/ U (* (* 2 J) (cos (/ K 2)))) 2)))) < 1.4084612662889073e+294Initial program 0.1
rmApplied associate-*l*0.2
Simplified0.2
Final simplification9.7
herbie shell --seed 2019163
(FPCore (J K U)
:name "Maksimov and Kolovsky, Equation (3)"
(* (* (* -2 J) (cos (/ K 2))) (sqrt (+ 1 (pow (/ U (* (* 2 J) (cos (/ K 2)))) 2)))))