Average Error: 18.0 → 8.2
Time: 31.9s
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.162239869679763003503637235692728069393 \cdot 10^{262}:\\ \;\;\;\;-2 \cdot \left(\sqrt{0.25} \cdot U\right)\\ \mathbf{else}:\\ \;\;\;\;\mathsf{hypot}\left({\left(\frac{U}{2 \cdot \left(\cos \left(\frac{K}{2}\right) \cdot J\right)}\right)}^{\left(\frac{2}{2}\right)}, \sqrt{1}\right) \cdot \left(-2 \cdot \left(\cos \left(\frac{K}{2}\right) \cdot J\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 -7.162239869679763003503637235692728069393 \cdot 10^{262}:\\
\;\;\;\;-2 \cdot \left(\sqrt{0.25} \cdot U\right)\\

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

\end{array}
double f(double J, double K, double U) {
        double r7323614 = -2.0;
        double r7323615 = J;
        double r7323616 = r7323614 * r7323615;
        double r7323617 = K;
        double r7323618 = 2.0;
        double r7323619 = r7323617 / r7323618;
        double r7323620 = cos(r7323619);
        double r7323621 = r7323616 * r7323620;
        double r7323622 = 1.0;
        double r7323623 = U;
        double r7323624 = r7323618 * r7323615;
        double r7323625 = r7323624 * r7323620;
        double r7323626 = r7323623 / r7323625;
        double r7323627 = pow(r7323626, r7323618);
        double r7323628 = r7323622 + r7323627;
        double r7323629 = sqrt(r7323628);
        double r7323630 = r7323621 * r7323629;
        return r7323630;
}

double f(double J, double K, double U) {
        double r7323631 = U;
        double r7323632 = -7.162239869679763e+262;
        bool r7323633 = r7323631 <= r7323632;
        double r7323634 = -2.0;
        double r7323635 = 0.25;
        double r7323636 = sqrt(r7323635);
        double r7323637 = r7323636 * r7323631;
        double r7323638 = r7323634 * r7323637;
        double r7323639 = 2.0;
        double r7323640 = K;
        double r7323641 = r7323640 / r7323639;
        double r7323642 = cos(r7323641);
        double r7323643 = J;
        double r7323644 = r7323642 * r7323643;
        double r7323645 = r7323639 * r7323644;
        double r7323646 = r7323631 / r7323645;
        double r7323647 = 2.0;
        double r7323648 = r7323639 / r7323647;
        double r7323649 = pow(r7323646, r7323648);
        double r7323650 = 1.0;
        double r7323651 = sqrt(r7323650);
        double r7323652 = hypot(r7323649, r7323651);
        double r7323653 = r7323634 * r7323644;
        double r7323654 = r7323652 * r7323653;
        double r7323655 = r7323633 ? r7323638 : r7323654;
        return r7323655;
}

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.162239869679763e+262

    1. Initial program 42.4

      \[\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. Simplified42.4

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

      \[\leadsto \color{blue}{-2 \cdot \left(\sqrt{0.25} \cdot U\right)}\]

    if -7.162239869679763e+262 < U

    1. Initial program 17.1

      \[\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. Simplified17.1

      \[\leadsto \color{blue}{\sqrt{{\left(\frac{U}{\left(\cos \left(\frac{K}{2}\right) \cdot J\right) \cdot 2}\right)}^{2} + 1} \cdot \left(\left(\cos \left(\frac{K}{2}\right) \cdot J\right) \cdot -2\right)}\]
    3. Using strategy rm
    4. Applied add-sqr-sqrt17.1

      \[\leadsto \sqrt{{\left(\frac{U}{\left(\cos \left(\frac{K}{2}\right) \cdot J\right) \cdot 2}\right)}^{2} + \color{blue}{\sqrt{1} \cdot \sqrt{1}}} \cdot \left(\left(\cos \left(\frac{K}{2}\right) \cdot J\right) \cdot -2\right)\]
    5. Applied sqr-pow17.1

      \[\leadsto \sqrt{\color{blue}{{\left(\frac{U}{\left(\cos \left(\frac{K}{2}\right) \cdot J\right) \cdot 2}\right)}^{\left(\frac{2}{2}\right)} \cdot {\left(\frac{U}{\left(\cos \left(\frac{K}{2}\right) \cdot J\right) \cdot 2}\right)}^{\left(\frac{2}{2}\right)}} + \sqrt{1} \cdot \sqrt{1}} \cdot \left(\left(\cos \left(\frac{K}{2}\right) \cdot J\right) \cdot -2\right)\]
    6. Applied hypot-def7.3

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

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

Reproduce

herbie shell --seed 2019172 +o rules:numerics
(FPCore (J K U)
  :name "Maksimov and Kolovsky, Equation (3)"
  (* (* (* -2.0 J) (cos (/ K 2.0))) (sqrt (+ 1.0 (pow (/ U (* (* 2.0 J) (cos (/ K 2.0)))) 2.0)))))