Average Error: 12.3 → 9.5
Time: 37.8s
Precision: 64
\[\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\]
\[\frac{\sqrt[3]{\sin ky} \cdot \sqrt[3]{\sin ky}}{\sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)} \cdot \sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)}} \cdot \left(\frac{\sqrt[3]{\sqrt[3]{\sin ky} \cdot \sqrt[3]{\sin ky}} \cdot \sqrt[3]{\sqrt[3]{\sin ky}}}{\sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)}} \cdot \sin th\right)\]
\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th
\frac{\sqrt[3]{\sin ky} \cdot \sqrt[3]{\sin ky}}{\sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)} \cdot \sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)}} \cdot \left(\frac{\sqrt[3]{\sqrt[3]{\sin ky} \cdot \sqrt[3]{\sin ky}} \cdot \sqrt[3]{\sqrt[3]{\sin ky}}}{\sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)}} \cdot \sin th\right)
double f(double kx, double ky, double th) {
        double r1025453 = ky;
        double r1025454 = sin(r1025453);
        double r1025455 = kx;
        double r1025456 = sin(r1025455);
        double r1025457 = 2.0;
        double r1025458 = pow(r1025456, r1025457);
        double r1025459 = pow(r1025454, r1025457);
        double r1025460 = r1025458 + r1025459;
        double r1025461 = sqrt(r1025460);
        double r1025462 = r1025454 / r1025461;
        double r1025463 = th;
        double r1025464 = sin(r1025463);
        double r1025465 = r1025462 * r1025464;
        return r1025465;
}

double f(double kx, double ky, double th) {
        double r1025466 = ky;
        double r1025467 = sin(r1025466);
        double r1025468 = cbrt(r1025467);
        double r1025469 = r1025468 * r1025468;
        double r1025470 = kx;
        double r1025471 = sin(r1025470);
        double r1025472 = hypot(r1025467, r1025471);
        double r1025473 = cbrt(r1025472);
        double r1025474 = r1025473 * r1025473;
        double r1025475 = r1025469 / r1025474;
        double r1025476 = cbrt(r1025469);
        double r1025477 = cbrt(r1025468);
        double r1025478 = r1025476 * r1025477;
        double r1025479 = r1025478 / r1025473;
        double r1025480 = th;
        double r1025481 = sin(r1025480);
        double r1025482 = r1025479 * r1025481;
        double r1025483 = r1025475 * r1025482;
        return r1025483;
}

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 12.3

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

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

    \[\leadsto \frac{\sin ky}{\color{blue}{\mathsf{hypot}\left(\sin ky, \sin kx\right)}} \cdot \sin th\]
  4. Using strategy rm
  5. Applied add-cube-cbrt9.5

    \[\leadsto \frac{\sin ky}{\color{blue}{\left(\sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)} \cdot \sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)}\right) \cdot \sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)}}} \cdot \sin th\]
  6. Applied add-cube-cbrt9.1

    \[\leadsto \frac{\color{blue}{\left(\sqrt[3]{\sin ky} \cdot \sqrt[3]{\sin ky}\right) \cdot \sqrt[3]{\sin ky}}}{\left(\sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)} \cdot \sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)}\right) \cdot \sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)}} \cdot \sin th\]
  7. Applied times-frac9.1

    \[\leadsto \color{blue}{\left(\frac{\sqrt[3]{\sin ky} \cdot \sqrt[3]{\sin ky}}{\sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)} \cdot \sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)}} \cdot \frac{\sqrt[3]{\sin ky}}{\sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)}}\right)} \cdot \sin th\]
  8. Applied associate-*l*9.1

    \[\leadsto \color{blue}{\frac{\sqrt[3]{\sin ky} \cdot \sqrt[3]{\sin ky}}{\sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)} \cdot \sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)}} \cdot \left(\frac{\sqrt[3]{\sin ky}}{\sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)}} \cdot \sin th\right)}\]
  9. Using strategy rm
  10. Applied add-cube-cbrt9.3

    \[\leadsto \frac{\sqrt[3]{\sin ky} \cdot \sqrt[3]{\sin ky}}{\sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)} \cdot \sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)}} \cdot \left(\frac{\sqrt[3]{\color{blue}{\left(\sqrt[3]{\sin ky} \cdot \sqrt[3]{\sin ky}\right) \cdot \sqrt[3]{\sin ky}}}}{\sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)}} \cdot \sin th\right)\]
  11. Applied cbrt-prod9.5

    \[\leadsto \frac{\sqrt[3]{\sin ky} \cdot \sqrt[3]{\sin ky}}{\sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)} \cdot \sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)}} \cdot \left(\frac{\color{blue}{\sqrt[3]{\sqrt[3]{\sin ky} \cdot \sqrt[3]{\sin ky}} \cdot \sqrt[3]{\sqrt[3]{\sin ky}}}}{\sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)}} \cdot \sin th\right)\]
  12. Final simplification9.5

    \[\leadsto \frac{\sqrt[3]{\sin ky} \cdot \sqrt[3]{\sin ky}}{\sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)} \cdot \sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)}} \cdot \left(\frac{\sqrt[3]{\sqrt[3]{\sin ky} \cdot \sqrt[3]{\sin ky}} \cdot \sqrt[3]{\sqrt[3]{\sin ky}}}{\sqrt[3]{\mathsf{hypot}\left(\sin ky, \sin kx\right)}} \cdot \sin th\right)\]

Reproduce

herbie shell --seed 2019170 +o rules:numerics
(FPCore (kx ky th)
  :name "Toniolo and Linder, Equation (3b), real"
  (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2.0) (pow (sin ky) 2.0)))) (sin th)))