\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}\;J \le -1.7648872844499354 \cdot 10^{-122} \lor \neg \left(J \le 6.0013758387488983 \cdot 10^{-109}\right):\\
\;\;\;\;\left(\left(-2 \cdot J\right) \cdot \left(\sqrt[3]{\cos \left(\frac{K}{2}\right)} \cdot \left(\sqrt[3]{\sqrt[3]{\cos \left(\frac{K}{2}\right)} \cdot \sqrt[3]{\cos \left(\frac{K}{2}\right)}} \cdot \sqrt[3]{\sqrt[3]{\cos \left(\frac{K}{2}\right)}}\right)\right)\right) \cdot \left(\sqrt[3]{\cos \left(\frac{K}{2}\right)} \cdot \sqrt{1 + {\left(\frac{U}{\left(2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)}\right)}^{2}}\right)\\
\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 r177792 = -2.0;
double r177793 = J;
double r177794 = r177792 * r177793;
double r177795 = K;
double r177796 = 2.0;
double r177797 = r177795 / r177796;
double r177798 = cos(r177797);
double r177799 = r177794 * r177798;
double r177800 = 1.0;
double r177801 = U;
double r177802 = r177796 * r177793;
double r177803 = r177802 * r177798;
double r177804 = r177801 / r177803;
double r177805 = pow(r177804, r177796);
double r177806 = r177800 + r177805;
double r177807 = sqrt(r177806);
double r177808 = r177799 * r177807;
return r177808;
}
double f(double J, double K, double U) {
double r177809 = J;
double r177810 = -1.7648872844499354e-122;
bool r177811 = r177809 <= r177810;
double r177812 = 6.001375838748898e-109;
bool r177813 = r177809 <= r177812;
double r177814 = !r177813;
bool r177815 = r177811 || r177814;
double r177816 = -2.0;
double r177817 = r177816 * r177809;
double r177818 = K;
double r177819 = 2.0;
double r177820 = r177818 / r177819;
double r177821 = cos(r177820);
double r177822 = cbrt(r177821);
double r177823 = r177822 * r177822;
double r177824 = cbrt(r177823);
double r177825 = cbrt(r177822);
double r177826 = r177824 * r177825;
double r177827 = r177822 * r177826;
double r177828 = r177817 * r177827;
double r177829 = 1.0;
double r177830 = U;
double r177831 = r177819 * r177809;
double r177832 = r177831 * r177821;
double r177833 = r177830 / r177832;
double r177834 = pow(r177833, r177819);
double r177835 = r177829 + r177834;
double r177836 = sqrt(r177835);
double r177837 = r177822 * r177836;
double r177838 = r177828 * r177837;
double r177839 = r177817 * r177821;
double r177840 = 0.25;
double r177841 = sqrt(r177840);
double r177842 = r177841 * r177830;
double r177843 = 0.5;
double r177844 = r177843 * r177818;
double r177845 = cos(r177844);
double r177846 = r177809 * r177845;
double r177847 = r177842 / r177846;
double r177848 = r177839 * r177847;
double r177849 = r177815 ? r177838 : r177848;
return r177849;
}



Bits error versus J



Bits error versus K



Bits error versus U
Results
if J < -1.7648872844499354e-122 or 6.001375838748898e-109 < J Initial program 9.2
rmApplied add-cube-cbrt9.6
Applied associate-*r*9.6
rmApplied associate-*l*9.6
rmApplied add-cube-cbrt9.7
Applied cbrt-prod9.7
if -1.7648872844499354e-122 < J < 6.001375838748898e-109Initial program 39.4
Taylor expanded around inf 32.7
Final simplification16.9
herbie shell --seed 2020046
(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)))))