Average Error: 3.9 → 3.0
Time: 20.7s
Precision: binary64
Cost: 84481
\[\frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}} \cdot \sin th\]
\[\begin{array}{l} \mathbf{if}\;\frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}} \leq 0.9996203724830907:\\ \;\;\;\;\frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}} \cdot \sin th\\ \mathbf{else}:\\ \;\;\;\;\sin th \cdot \frac{\sin ky}{\sin ky + 0.5 \cdot \frac{kx \cdot kx}{\sin ky}}\\ \end{array}\]
\frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}} \cdot \sin th
\begin{array}{l}
\mathbf{if}\;\frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}} \leq 0.9996203724830907:\\
\;\;\;\;\frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}} \cdot \sin th\\

\mathbf{else}:\\
\;\;\;\;\sin th \cdot \frac{\sin ky}{\sin ky + 0.5 \cdot \frac{kx \cdot kx}{\sin ky}}\\

\end{array}
(FPCore (kx ky th)
 :precision binary64
 (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2.0) (pow (sin ky) 2.0)))) (sin th)))
(FPCore (kx ky th)
 :precision binary64
 (if (<=
      (/ (sin ky) (sqrt (+ (pow (sin kx) 2.0) (pow (sin ky) 2.0))))
      0.9996203724830907)
   (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2.0) (pow (sin ky) 2.0)))) (sin th))
   (* (sin th) (/ (sin ky) (+ (sin ky) (* 0.5 (/ (* kx kx) (sin ky))))))))
double code(double kx, double ky, double th) {
	return (sin(ky) / sqrt(pow(sin(kx), 2.0) + pow(sin(ky), 2.0))) * sin(th);
}
double code(double kx, double ky, double th) {
	double tmp;
	if ((sin(ky) / sqrt(pow(sin(kx), 2.0) + pow(sin(ky), 2.0))) <= 0.9996203724830907) {
		tmp = (sin(ky) / sqrt(pow(sin(kx), 2.0) + pow(sin(ky), 2.0))) * sin(th);
	} else {
		tmp = sin(th) * (sin(ky) / (sin(ky) + (0.5 * ((kx * kx) / sin(ky)))));
	}
	return tmp;
}

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

Alternatives

Alternative 1
Error4.5
Cost161600
\[\frac{\sqrt[3]{\sin ky} \cdot \sqrt[3]{\sin ky}}{\sqrt[3]{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}} \cdot \sqrt[3]{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}} \cdot \left(\sin th \cdot \frac{\sqrt[3]{\sin ky}}{\sqrt[3]{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}}\right)\]
Alternative 2
Error4.9
Cost155200
\[\frac{\sqrt[3]{\sin ky} \cdot \sqrt[3]{\sin ky}}{\sqrt{\sqrt[3]{{\sin kx}^{2} + {\sin ky}^{2}} \cdot \sqrt[3]{{\sin kx}^{2} + {\sin ky}^{2}}}} \cdot \left(\sin th \cdot \frac{\sqrt[3]{\sin ky}}{\sqrt{\sqrt[3]{{\sin kx}^{2} + {\sin ky}^{2}}}}\right)\]
Alternative 3
Error4.4
Cost142400
\[\left(\sqrt[3]{\frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}} \cdot \sqrt[3]{\frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}}\right) \cdot \left(\sin th \cdot \sqrt[3]{\frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}}\right)\]
Alternative 4
Error34.2
Cost142272
\[\frac{\sqrt{\sin ky}}{\sqrt{\sqrt[3]{{\sin kx}^{2} + {\sin ky}^{2}} \cdot \sqrt[3]{{\sin kx}^{2} + {\sin ky}^{2}}}} \cdot \left(\sin th \cdot \frac{\sqrt{\sin ky}}{\sqrt{\sqrt[3]{{\sin kx}^{2} + {\sin ky}^{2}}}}\right)\]
Alternative 5
Error5.6
Cost129472
\[\frac{1}{\sqrt[3]{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}} \cdot \sqrt[3]{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}} \cdot \left(\sin th \cdot \frac{\sin ky}{\sqrt[3]{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}}\right)\]
Alternative 6
Error4.8
Cost129344
\[\sin th \cdot \frac{\sin ky}{\sqrt[3]{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}} \cdot \left(\sqrt[3]{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}} \cdot \sqrt[3]{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}\right)}\]
Alternative 7
Error49.0
Cost129216
\[\left(\sqrt{\sin th} \cdot \frac{\sqrt{\sin ky}}{\sqrt{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}}\right) \cdot \left(\sqrt{\sin th} \cdot \frac{\sqrt{\sin ky}}{\sqrt{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}}\right)\]
Alternative 8
Error5.2
Cost123072
\[\frac{1}{\sqrt{\sqrt[3]{{\sin kx}^{2} + {\sin ky}^{2}} \cdot \sqrt[3]{{\sin kx}^{2} + {\sin ky}^{2}}}} \cdot \left(\sin th \cdot \frac{\sin ky}{\sqrt{\sqrt[3]{{\sin kx}^{2} + {\sin ky}^{2}}}}\right)\]
Alternative 9
Error4.9
Cost122816
\[\frac{\sqrt[3]{\sin ky} \cdot \sqrt[3]{\sin ky}}{\sqrt{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}} \cdot \left(\sin th \cdot \frac{\sqrt[3]{\sin ky}}{\sqrt{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}}\right)\]
Alternative 10
Error11.4
Cost116672
\[\frac{\sin ky}{\sqrt{{\left({\sin kx}^{2}\right)}^{3} + {\left({\sin ky}^{2}\right)}^{3}}} \cdot \left(\sin th \cdot \sqrt{{\sin kx}^{4} + \left({\sin ky}^{4} - {\sin kx}^{2} \cdot {\sin ky}^{2}\right)}\right)\]
Alternative 11
Error33.9
Cost109888
\[\frac{\sqrt{\sin ky}}{\sqrt{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}} \cdot \left(\sin th \cdot \frac{\sqrt{\sin ky}}{\sqrt{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}}\right)\]
Alternative 12
Error11.1
Cost103744
\[\sin th \cdot \frac{\sin ky}{\frac{\sqrt{{\sin kx}^{6} + {\sin ky}^{6}}}{\sqrt{{\sin kx}^{4} + \left({\sin ky}^{4} - {\sin kx}^{2} \cdot {\sin ky}^{2}\right)}}}\]
Alternative 13
Error36.7
Cost103744
\[\frac{\sin ky}{\sqrt{{\sin kx}^{2} \cdot {\sin kx}^{2} - {\sin ky}^{2} \cdot {\sin ky}^{2}}} \cdot \left(\sin th \cdot \sqrt{{\sin kx}^{2} - {\sin ky}^{2}}\right)\]
Alternative 14
Error32.0
Cost103616
\[\sqrt{\sin th \cdot \frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}} \cdot \sqrt{\sin th \cdot \frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}}\]
Alternative 15
Error33.9
Cost97088
\[\sqrt{\frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}} \cdot \left(\sin th \cdot \sqrt{\frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}}\right)\]
Alternative 16
Error4.2
Cost90688
\[\sin ky \cdot \left(\frac{\sin th}{\sqrt{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}} \cdot \frac{1}{\sqrt{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}}\right)\]
Alternative 17
Error4.8
Cost90688
\[\frac{1}{\sqrt{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}} \cdot \left(\sin th \cdot \frac{\sin ky}{\sqrt{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}}\right)\]
Alternative 18
Error4.5
Cost90560
\[\sin th \cdot \frac{\sin ky}{\left|\sqrt[3]{{\sin kx}^{2} + {\sin ky}^{2}}\right| \cdot \sqrt{\sqrt[3]{{\sin kx}^{2} + {\sin ky}^{2}}}}\]
Alternative 19
Error4.2
Cost90560
\[\sin th \cdot \frac{\sin ky}{\sqrt{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}} \cdot \sqrt{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}}\]
Alternative 20
Error4.2
Cost90560
\[\frac{\sin ky}{\sqrt{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}} \cdot \frac{\sin th}{\sqrt{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}}\]
Alternative 21
Error4.9
Cost77632
\[\sqrt[3]{\sin th} \cdot \left(\frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}} \cdot \left(\sqrt[3]{\sin th} \cdot \sqrt[3]{\sin th}\right)\right)\]
Alternative 22
Error4.8
Cost77632
\[\left(\sqrt[3]{\sin ky} \cdot \sqrt[3]{\sin ky}\right) \cdot \left(\sin th \cdot \frac{\sqrt[3]{\sin ky}}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}\right)\]
Alternative 23
Error34.4
Cost71168
\[\sin th \cdot \frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\left({\sin ky}^{\left(\sqrt[3]{2} \cdot \sqrt[3]{2}\right)}\right)}^{\left(\sqrt[3]{2}\right)}}}\]
Alternative 24
Error4.4
Cost71168
\[\sin th \cdot \frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\left(\sqrt[3]{\sin ky}\right)}^{4} \cdot {\left(\sqrt[3]{\sin ky}\right)}^{2}}}\]
Alternative 25
Error4.8
Cost71168
\[{\left(\sqrt[3]{\sin ky}\right)}^{2} \cdot \frac{\sqrt[3]{\sin ky}}{\frac{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}{\sin th}}\]
Alternative 26
Error33.6
Cost64704
\[\sqrt{\sin th} \cdot \frac{\sin ky}{\frac{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}{\sqrt{\sin th}}}\]
Alternative 27
Error33.6
Cost64704
\[\sqrt{\sin th} \cdot \left(\frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}} \cdot \sqrt{\sin th}\right)\]
Alternative 28
Error34.0
Cost64704
\[\sqrt{\sin ky} \cdot \left(\sin th \cdot \frac{\sqrt{\sin ky}}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}\right)\]
Alternative 29
Error34.2
Cost64640
\[\sin ky \cdot \frac{\sin th}{\sqrt{{\sin kx}^{2} + {\left({\sin ky}^{\left(\sqrt{2}\right)}\right)}^{\left(\sqrt{2}\right)}}}\]
Alternative 30
Error40.6
Cost64512
\[\log \left({\left(e^{\frac{\sin th}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}}\right)}^{\sin ky}\right)\]
Alternative 31
Error7.3
Cost58240
\[\sin th \cdot \frac{\sin ky}{\sqrt[3]{{\left(\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}\right)}^{3}}}\]
Alternative 32
Error18.6
Cost58240
\[\sin ky \cdot \sqrt[3]{{\left(\frac{\sin th}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}\right)}^{3}}\]
Alternative 33
Error27.4
Cost58240
\[\sqrt[3]{{\left(\sin th \cdot \frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}\right)}^{3}}\]
Alternative 34
Error9.9
Cost58176
\[\frac{\sin ky}{\sqrt{{\sin kx}^{2} + \log \left(e^{{\sin ky}^{2}}\right)}} \cdot \sin th\]
Alternative 35
Error15.5
Cost58176
\[\sin th \cdot \frac{\sin ky}{\log \left(e^{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}\right)}\]
Alternative 36
Error15.4
Cost58176
\[\sin ky \cdot \frac{\sin th}{\log \left(e^{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}\right)}\]
Alternative 37
Error37.0
Cost58176
\[\log \left(e^{\sin th \cdot \frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}}\right)\]
Alternative 38
Error9.9
Cost58176
\[\sin th \cdot \frac{\sin ky}{\sqrt{{\sin ky}^{2} + \log \left(e^{{\sin kx}^{2}}\right)}}\]
Alternative 39
Error33.9
Cost51840
\[\sin th \cdot \frac{\sin ky}{\sqrt{{\sin ky}^{2} + e^{2 \cdot \log \sin kx}}}\]
Alternative 40
Error7.4
Cost51776
\[\sin ky \cdot \frac{\sin th}{\sqrt{{\sin kx}^{2} + \sqrt[3]{{\sin ky}^{6}}}}\]
Alternative 41
Error7.4
Cost51776
\[\sin th \cdot \frac{\sin ky}{\sqrt{{\sin ky}^{2} + \sqrt[3]{{\sin kx}^{6}}}}\]
Alternative 42
Error7.4
Cost51776
\[\sin th \cdot \frac{\sin ky}{\sqrt{{\sin kx}^{2} + \sqrt[3]{{\sin ky}^{6}}}}\]
Alternative 43
Error4.1
Cost45632
\[\sin ky \cdot \frac{\frac{1}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}}{\frac{1}{\sin th}}\]
Alternative 44
Error4.0
Cost45504
\[\sin ky \cdot \left(\sin th \cdot \frac{1}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}\right)\]
Alternative 45
Error4.0
Cost45504
\[\sin ky \cdot \frac{1}{\frac{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}{\sin th}}\]
Alternative 46
Error4.3
Cost45504
\[\sin ky \cdot \left(\sin th \cdot \sqrt{\frac{1}{{\sin kx}^{2} + {\sin ky}^{2}}}\right)\]
Alternative 47
Error5.4
Cost45504
\[\sqrt{\frac{1}{{\sin kx}^{2} + {\sin ky}^{2}}} \cdot \left(\sin ky \cdot \sin th\right)\]
Alternative 48
Error4.0
Cost45504
\[\frac{\frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}}{\frac{1}{\sin th}}\]
Alternative 49
Error3.9
Cost45376
\[\frac{\sin ky}{\frac{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}{\sin th}}\]
Alternative 50
Error3.9
Cost45376
\[\sin th \cdot \frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}\]
Alternative 51
Error3.9
Cost45376
\[\sin ky \cdot \frac{\sin th}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}\]
Alternative 52
Error5.1
Cost45376
\[\frac{\sin ky \cdot \sin th}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}\]
Alternative 53
Error33.5
Cost39104
\[\sin ky \cdot \left(th \cdot \sqrt{\frac{1}{{\sin kx}^{2} + {\sin ky}^{2}}}\right)\]
Alternative 54
Error34.6
Cost39104
\[\sqrt{\frac{1}{{\sin kx}^{2} + {\sin ky}^{2}}} \cdot \left(\sin ky \cdot th\right)\]
Alternative 55
Error34.1
Cost32768
\[\sin ky \cdot \frac{1}{\frac{\sqrt{{\sin kx}^{2} + ky \cdot ky}}{\sin th}}\]
Alternative 56
Error34.1
Cost32640
\[\sin ky \cdot \frac{\sin th}{\sqrt{{\sin kx}^{2} + ky \cdot ky}}\]
Alternative 57
Error30.2
Cost32640
\[\sin th \cdot \frac{\sin ky}{\sqrt{{\sin ky}^{2} + kx \cdot kx}}\]
Alternative 58
Error34.1
Cost32640
\[\sin th \cdot \frac{\sin ky}{\sqrt{{\sin kx}^{2} + ky \cdot ky}}\]
Alternative 59
Error34.1
Cost32640
\[\frac{\sin ky}{\frac{\sqrt{{\sin kx}^{2} + ky \cdot ky}}{\sin th}}\]
Alternative 60
Error47.4
Cost26432
\[\sin th \cdot \frac{\sin ky}{\sin kx + 0.5 \cdot \frac{ky \cdot ky}{\sin kx}}\]
Alternative 61
Error45.1
Cost26432
\[\sin th \cdot \frac{\sin ky}{\sin ky + 0.5 \cdot \frac{kx \cdot kx}{\sin ky}}\]
Alternative 62
Error46.5
Cost19648
\[\sin ky \cdot \frac{1}{\frac{\sin kx}{\sin th}}\]
Alternative 63
Error48.9
Cost19648
\[\sin ky \cdot \frac{1}{\frac{\sin ky}{\sin th}}\]
Alternative 64
Error46.5
Cost19520
\[\sin ky \cdot \frac{\sin th}{\sin kx}\]
Alternative 65
Error46.5
Cost19520
\[\sin th \cdot \frac{\sin ky}{\sin kx}\]
Alternative 66
Error48.9
Cost19520
\[\sin th \cdot \frac{\sin ky}{\sin ky}\]
Alternative 67
Error46.5
Cost19520
\[\frac{\sin ky}{\frac{\sin kx}{\sin th}}\]
Alternative 68
Error48.1
Cost13120
\[ky \cdot \frac{\sin th}{\sin kx}\]
Alternative 69
Error48.7
Cost13120
\[\frac{ky \cdot \sin th}{\sin kx}\]
Alternative 70
Error48.9
Cost6464
\[\sin th\]
Alternative 71
Error60.3
Cost64
\[1\]
Alternative 72
Error56.2
Cost64
\[0\]
Alternative 73
Error60.2
Cost64
\[-1\]

Error

Derivation

  1. Split input into 2 regimes
  2. if (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) < 0.999620372483090658

    1. Initial program 2.5

      \[\frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}} \cdot \sin th\]
    2. Simplified2.5

      \[\leadsto \color{blue}{\sin th \cdot \frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}}}\]

    if 0.999620372483090658 < (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))

    1. Initial program 9.2

      \[\frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}} \cdot \sin th\]
    2. Taylor expanded around 0 4.8

      \[\leadsto \frac{\sin ky}{\color{blue}{0.5 \cdot \frac{{kx}^{2}}{\sin ky} + \sin ky}} \cdot \sin th\]
    3. Simplified4.8

      \[\leadsto \frac{\sin ky}{\color{blue}{\sin ky + 0.5 \cdot \frac{kx \cdot kx}{\sin ky}}} \cdot \sin th\]
    4. Simplified4.8

      \[\leadsto \color{blue}{\sin th \cdot \frac{\sin ky}{\sin ky + 0.5 \cdot \frac{kx \cdot kx}{\sin ky}}}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification3.0

    \[\leadsto \begin{array}{l} \mathbf{if}\;\frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}} \leq 0.9996203724830907:\\ \;\;\;\;\frac{\sin ky}{\sqrt{{\sin kx}^{2} + {\sin ky}^{2}}} \cdot \sin th\\ \mathbf{else}:\\ \;\;\;\;\sin th \cdot \frac{\sin ky}{\sin ky + 0.5 \cdot \frac{kx \cdot kx}{\sin ky}}\\ \end{array}\]

Reproduce

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