Average Error: 17.2 → 8.0
Time: 36.3s
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 -9.188850120501022 \cdot 10^{+270}:\\ \;\;\;\;-U\\ \mathbf{else}:\\ \;\;\;\;J \cdot \left(\left(-2 \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \mathsf{hypot}\left(1, \frac{\frac{\frac{U}{J}}{\cos \left(\frac{K}{2}\right)}}{2}\right)\right)\\ \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 -9.188850120501022 \cdot 10^{+270}:\\
\;\;\;\;-U\\

\mathbf{else}:\\
\;\;\;\;J \cdot \left(\left(-2 \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \mathsf{hypot}\left(1, \frac{\frac{\frac{U}{J}}{\cos \left(\frac{K}{2}\right)}}{2}\right)\right)\\

\end{array}
double f(double J, double K, double U) {
        double r4531708 = -2.0;
        double r4531709 = J;
        double r4531710 = r4531708 * r4531709;
        double r4531711 = K;
        double r4531712 = 2.0;
        double r4531713 = r4531711 / r4531712;
        double r4531714 = cos(r4531713);
        double r4531715 = r4531710 * r4531714;
        double r4531716 = 1.0;
        double r4531717 = U;
        double r4531718 = r4531712 * r4531709;
        double r4531719 = r4531718 * r4531714;
        double r4531720 = r4531717 / r4531719;
        double r4531721 = pow(r4531720, r4531712);
        double r4531722 = r4531716 + r4531721;
        double r4531723 = sqrt(r4531722);
        double r4531724 = r4531715 * r4531723;
        return r4531724;
}

double f(double J, double K, double U) {
        double r4531725 = U;
        double r4531726 = -9.188850120501022e+270;
        bool r4531727 = r4531725 <= r4531726;
        double r4531728 = -r4531725;
        double r4531729 = J;
        double r4531730 = -2.0;
        double r4531731 = K;
        double r4531732 = 2.0;
        double r4531733 = r4531731 / r4531732;
        double r4531734 = cos(r4531733);
        double r4531735 = r4531730 * r4531734;
        double r4531736 = 1.0;
        double r4531737 = r4531725 / r4531729;
        double r4531738 = r4531737 / r4531734;
        double r4531739 = r4531738 / r4531732;
        double r4531740 = hypot(r4531736, r4531739);
        double r4531741 = r4531735 * r4531740;
        double r4531742 = r4531729 * r4531741;
        double r4531743 = r4531727 ? r4531728 : r4531742;
        return r4531743;
}

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 < -9.188850120501022e+270

    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. Simplified26.3

      \[\leadsto \color{blue}{\left(\mathsf{hypot}\left(1, \frac{U}{J \cdot \left(\cos \left(\frac{K}{2}\right) \cdot 2\right)}\right) \cdot -2\right) \cdot \left(\cos \left(\frac{K}{2}\right) \cdot J\right)}\]
    3. Using strategy rm
    4. Applied associate-*r*26.4

      \[\leadsto \color{blue}{\left(\left(\mathsf{hypot}\left(1, \frac{U}{J \cdot \left(\cos \left(\frac{K}{2}\right) \cdot 2\right)}\right) \cdot -2\right) \cdot \cos \left(\frac{K}{2}\right)\right) \cdot J}\]
    5. Taylor expanded around -inf 34.1

      \[\leadsto \color{blue}{-1 \cdot U}\]
    6. Simplified34.1

      \[\leadsto \color{blue}{-U}\]

    if -9.188850120501022e+270 < U

    1. Initial program 16.5

      \[\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. Simplified7.2

      \[\leadsto \color{blue}{\left(\mathsf{hypot}\left(1, \frac{U}{J \cdot \left(\cos \left(\frac{K}{2}\right) \cdot 2\right)}\right) \cdot -2\right) \cdot \left(\cos \left(\frac{K}{2}\right) \cdot J\right)}\]
    3. Using strategy rm
    4. Applied associate-*r*7.2

      \[\leadsto \color{blue}{\left(\left(\mathsf{hypot}\left(1, \frac{U}{J \cdot \left(\cos \left(\frac{K}{2}\right) \cdot 2\right)}\right) \cdot -2\right) \cdot \cos \left(\frac{K}{2}\right)\right) \cdot J}\]
    5. Using strategy rm
    6. Applied *-un-lft-identity7.2

      \[\leadsto \left(\left(\mathsf{hypot}\left(1, \frac{U}{J \cdot \left(\cos \left(\frac{K}{2}\right) \cdot 2\right)}\right) \cdot -2\right) \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \color{blue}{\left(1 \cdot J\right)}\]
    7. Applied associate-*r*7.2

      \[\leadsto \color{blue}{\left(\left(\left(\mathsf{hypot}\left(1, \frac{U}{J \cdot \left(\cos \left(\frac{K}{2}\right) \cdot 2\right)}\right) \cdot -2\right) \cdot \cos \left(\frac{K}{2}\right)\right) \cdot 1\right) \cdot J}\]
    8. Simplified7.2

      \[\leadsto \color{blue}{\left(\left(-2 \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \mathsf{hypot}\left(1, \frac{\frac{\frac{U}{J}}{\cos \left(\frac{K}{2}\right)}}{2}\right)\right)} \cdot J\]
  3. Recombined 2 regimes into one program.
  4. Final simplification8.0

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

Reproduce

herbie shell --seed 2019134 +o rules:numerics
(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)))))