Average Error: 3.8 → 3.9
Time: 9.2s
Precision: 64
\[\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\]
\[\sin ky \cdot \frac{\sin th}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}}\]
\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th
\sin ky \cdot \frac{\sin th}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}}
double f(double kx, double ky, double th) {
        double r29539 = ky;
        double r29540 = sin(r29539);
        double r29541 = kx;
        double r29542 = sin(r29541);
        double r29543 = 2.0;
        double r29544 = pow(r29542, r29543);
        double r29545 = pow(r29540, r29543);
        double r29546 = r29544 + r29545;
        double r29547 = sqrt(r29546);
        double r29548 = r29540 / r29547;
        double r29549 = th;
        double r29550 = sin(r29549);
        double r29551 = r29548 * r29550;
        return r29551;
}

double f(double kx, double ky, double th) {
        double r29552 = ky;
        double r29553 = sin(r29552);
        double r29554 = th;
        double r29555 = sin(r29554);
        double r29556 = kx;
        double r29557 = sin(r29556);
        double r29558 = 2.0;
        double r29559 = pow(r29557, r29558);
        double r29560 = pow(r29553, r29558);
        double r29561 = r29559 + r29560;
        double r29562 = sqrt(r29561);
        double r29563 = r29555 / r29562;
        double r29564 = r29553 * r29563;
        return r29564;
}

Error

Bits error versus kx

Bits error versus ky

Bits error versus th

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 3.8

    \[\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\]
  2. Taylor expanded around inf 3.8

    \[\leadsto \frac{\sin ky}{\color{blue}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}}} \cdot \sin th\]
  3. Using strategy rm
  4. Applied div-inv3.9

    \[\leadsto \color{blue}{\left(\sin ky \cdot \frac{1}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}}\right)} \cdot \sin th\]
  5. Applied associate-*l*4.0

    \[\leadsto \color{blue}{\sin ky \cdot \left(\frac{1}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\right)}\]
  6. Simplified3.9

    \[\leadsto \sin ky \cdot \color{blue}{\frac{\sin th}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}}}\]
  7. Final simplification3.9

    \[\leadsto \sin ky \cdot \frac{\sin th}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}}\]

Reproduce

herbie shell --seed 2020057 
(FPCore (kx ky th)
  :name "Toniolo and Linder, Equation (3b), real"
  :precision binary64
  (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)))