Average Error: 12.6 → 13.0
Time: 33.1s
Precision: 64
\[\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th\]
\[\sin th \cdot \frac{\sin ky}{\sqrt{e^{\log \left(\sin kx \cdot \sin kx\right)} + \sin ky \cdot \sin ky}}\]
\frac{\sin ky}{\sqrt{{\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}}} \cdot \sin th
\sin th \cdot \frac{\sin ky}{\sqrt{e^{\log \left(\sin kx \cdot \sin kx\right)} + \sin ky \cdot \sin ky}}
double f(double kx, double ky, double th) {
        double r507899 = ky;
        double r507900 = sin(r507899);
        double r507901 = kx;
        double r507902 = sin(r507901);
        double r507903 = 2.0;
        double r507904 = pow(r507902, r507903);
        double r507905 = pow(r507900, r507903);
        double r507906 = r507904 + r507905;
        double r507907 = sqrt(r507906);
        double r507908 = r507900 / r507907;
        double r507909 = th;
        double r507910 = sin(r507909);
        double r507911 = r507908 * r507910;
        return r507911;
}

double f(double kx, double ky, double th) {
        double r507912 = th;
        double r507913 = sin(r507912);
        double r507914 = ky;
        double r507915 = sin(r507914);
        double r507916 = kx;
        double r507917 = sin(r507916);
        double r507918 = r507917 * r507917;
        double r507919 = log(r507918);
        double r507920 = exp(r507919);
        double r507921 = r507915 * r507915;
        double r507922 = r507920 + r507921;
        double r507923 = sqrt(r507922);
        double r507924 = r507915 / r507923;
        double r507925 = r507913 * r507924;
        return r507925;
}

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.6

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

    \[\leadsto \color{blue}{\sin th \cdot \frac{\sin ky}{\sqrt{\sin kx \cdot \sin kx + \sin ky \cdot \sin ky}}}\]
  3. Using strategy rm
  4. Applied add-exp-log13.0

    \[\leadsto \sin th \cdot \frac{\sin ky}{\sqrt{\color{blue}{e^{\log \left(\sin kx \cdot \sin kx\right)}} + \sin ky \cdot \sin ky}}\]
  5. Final simplification13.0

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

Reproduce

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