Average Error: 16.9 → 16.6
Time: 2.0m
Precision: 64
\[\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}\;U \le 7.655526381904131 \cdot 10^{+228}:\\ \;\;\;\;\left(J \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \left(-2 \cdot \sqrt{1 + \frac{U}{\left(J \cdot \cos \left(\frac{K}{2}\right)\right) \cdot 2} \cdot \frac{U}{\left(J \cdot \cos \left(\frac{K}{2}\right)\right) \cdot 2}}\right)\\ \mathbf{else}:\\ \;\;\;\;-U\\ \end{array}\]
\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}\;U \le 7.655526381904131 \cdot 10^{+228}:\\
\;\;\;\;\left(J \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \left(-2 \cdot \sqrt{1 + \frac{U}{\left(J \cdot \cos \left(\frac{K}{2}\right)\right) \cdot 2} \cdot \frac{U}{\left(J \cdot \cos \left(\frac{K}{2}\right)\right) \cdot 2}}\right)\\

\mathbf{else}:\\
\;\;\;\;-U\\

\end{array}
double f(double J, double K, double U) {
        double r26790095 = -2.0;
        double r26790096 = J;
        double r26790097 = r26790095 * r26790096;
        double r26790098 = K;
        double r26790099 = 2.0;
        double r26790100 = r26790098 / r26790099;
        double r26790101 = cos(r26790100);
        double r26790102 = r26790097 * r26790101;
        double r26790103 = 1.0;
        double r26790104 = U;
        double r26790105 = r26790099 * r26790096;
        double r26790106 = r26790105 * r26790101;
        double r26790107 = r26790104 / r26790106;
        double r26790108 = pow(r26790107, r26790099);
        double r26790109 = r26790103 + r26790108;
        double r26790110 = sqrt(r26790109);
        double r26790111 = r26790102 * r26790110;
        return r26790111;
}

double f(double J, double K, double U) {
        double r26790112 = U;
        double r26790113 = 7.655526381904131e+228;
        bool r26790114 = r26790112 <= r26790113;
        double r26790115 = J;
        double r26790116 = K;
        double r26790117 = 2.0;
        double r26790118 = r26790116 / r26790117;
        double r26790119 = cos(r26790118);
        double r26790120 = r26790115 * r26790119;
        double r26790121 = -2.0;
        double r26790122 = 1.0;
        double r26790123 = r26790120 * r26790117;
        double r26790124 = r26790112 / r26790123;
        double r26790125 = r26790124 * r26790124;
        double r26790126 = r26790122 + r26790125;
        double r26790127 = sqrt(r26790126);
        double r26790128 = r26790121 * r26790127;
        double r26790129 = r26790120 * r26790128;
        double r26790130 = -r26790112;
        double r26790131 = r26790114 ? r26790129 : r26790130;
        return r26790131;
}

Error

Bits error versus J

Bits error versus K

Bits error versus U

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 2 regimes
  2. if U < 7.655526381904131e+228

    1. Initial program 15.3

      \[\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}}\]
    2. Simplified15.2

      \[\leadsto \color{blue}{\left(\sqrt{\frac{U}{2 \cdot \left(\cos \left(\frac{K}{2}\right) \cdot J\right)} \cdot \frac{U}{2 \cdot \left(\cos \left(\frac{K}{2}\right) \cdot J\right)} + 1} \cdot -2\right) \cdot \left(\cos \left(\frac{K}{2}\right) \cdot J\right)}\]

    if 7.655526381904131e+228 < U

    1. Initial program 41.2

      \[\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}}\]
    2. Simplified41.1

      \[\leadsto \color{blue}{\left(\sqrt{\frac{U}{2 \cdot \left(\cos \left(\frac{K}{2}\right) \cdot J\right)} \cdot \frac{U}{2 \cdot \left(\cos \left(\frac{K}{2}\right) \cdot J\right)} + 1} \cdot -2\right) \cdot \left(\cos \left(\frac{K}{2}\right) \cdot J\right)}\]
    3. Taylor expanded around -inf 36.0

      \[\leadsto \color{blue}{-1 \cdot U}\]
    4. Simplified36.0

      \[\leadsto \color{blue}{-U}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification16.6

    \[\leadsto \begin{array}{l} \mathbf{if}\;U \le 7.655526381904131 \cdot 10^{+228}:\\ \;\;\;\;\left(J \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \left(-2 \cdot \sqrt{1 + \frac{U}{\left(J \cdot \cos \left(\frac{K}{2}\right)\right) \cdot 2} \cdot \frac{U}{\left(J \cdot \cos \left(\frac{K}{2}\right)\right) \cdot 2}}\right)\\ \mathbf{else}:\\ \;\;\;\;-U\\ \end{array}\]

Reproduce

herbie shell --seed 2019112 
(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)))))