\sqrt{\frac{1}{2} \cdot \left(1 + \frac{1}{\sqrt{1 + {\left(\frac{2 \cdot \ell}{Om}\right)}^{2} \cdot \left({\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}\right)}}\right)}\sqrt{\left(\frac{\frac{1}{\sqrt[3]{\sqrt{\left({\left(\sin ky\right)}^{2} + {\left(\sin kx\right)}^{2}\right) \cdot {\left(\frac{\ell \cdot 2}{Om}\right)}^{2} + 1}} \cdot \sqrt[3]{\sqrt{\left({\left(\sin ky\right)}^{2} + {\left(\sin kx\right)}^{2}\right) \cdot {\left(\frac{\ell \cdot 2}{Om}\right)}^{2} + 1}}}}{\sqrt[3]{\sqrt[3]{\sqrt{\left({\left(\sin ky\right)}^{2} + {\left(\sin kx\right)}^{2}\right) \cdot {\left(\frac{\ell \cdot 2}{Om}\right)}^{2} + 1}}} \cdot \left(\sqrt[3]{\sqrt[3]{\sqrt{\left({\left(\sin ky\right)}^{2} + {\left(\sin kx\right)}^{2}\right) \cdot {\left(\frac{\ell \cdot 2}{Om}\right)}^{2} + 1}}} \cdot \sqrt[3]{\sqrt[3]{\sqrt{\left({\left(\sin ky\right)}^{2} + {\left(\sin kx\right)}^{2}\right) \cdot {\left(\frac{\ell \cdot 2}{Om}\right)}^{2} + 1}}}\right)} + 1\right) \cdot \frac{1}{2}}double f(double l, double Om, double kx, double ky) {
double r1871105 = 1.0;
double r1871106 = 2.0;
double r1871107 = r1871105 / r1871106;
double r1871108 = l;
double r1871109 = r1871106 * r1871108;
double r1871110 = Om;
double r1871111 = r1871109 / r1871110;
double r1871112 = pow(r1871111, r1871106);
double r1871113 = kx;
double r1871114 = sin(r1871113);
double r1871115 = pow(r1871114, r1871106);
double r1871116 = ky;
double r1871117 = sin(r1871116);
double r1871118 = pow(r1871117, r1871106);
double r1871119 = r1871115 + r1871118;
double r1871120 = r1871112 * r1871119;
double r1871121 = r1871105 + r1871120;
double r1871122 = sqrt(r1871121);
double r1871123 = r1871105 / r1871122;
double r1871124 = r1871105 + r1871123;
double r1871125 = r1871107 * r1871124;
double r1871126 = sqrt(r1871125);
return r1871126;
}
double f(double l, double Om, double kx, double ky) {
double r1871127 = 1.0;
double r1871128 = ky;
double r1871129 = sin(r1871128);
double r1871130 = 2.0;
double r1871131 = pow(r1871129, r1871130);
double r1871132 = kx;
double r1871133 = sin(r1871132);
double r1871134 = pow(r1871133, r1871130);
double r1871135 = r1871131 + r1871134;
double r1871136 = l;
double r1871137 = r1871136 * r1871130;
double r1871138 = Om;
double r1871139 = r1871137 / r1871138;
double r1871140 = pow(r1871139, r1871130);
double r1871141 = r1871135 * r1871140;
double r1871142 = r1871141 + r1871127;
double r1871143 = sqrt(r1871142);
double r1871144 = cbrt(r1871143);
double r1871145 = r1871144 * r1871144;
double r1871146 = r1871127 / r1871145;
double r1871147 = cbrt(r1871144);
double r1871148 = r1871147 * r1871147;
double r1871149 = r1871147 * r1871148;
double r1871150 = r1871146 / r1871149;
double r1871151 = r1871150 + r1871127;
double r1871152 = r1871127 / r1871130;
double r1871153 = r1871151 * r1871152;
double r1871154 = sqrt(r1871153);
return r1871154;
}



Bits error versus l



Bits error versus Om



Bits error versus kx



Bits error versus ky
Results
Initial program 1.8
rmApplied add-cube-cbrt1.8
Applied associate-/r*1.8
rmApplied add-cube-cbrt1.8
Final simplification1.8
herbie shell --seed 2019192
(FPCore (l Om kx ky)
:name "Toniolo and Linder, Equation (3a)"
(sqrt (* (/ 1.0 2.0) (+ 1.0 (/ 1.0 (sqrt (+ 1.0 (* (pow (/ (* 2.0 l) Om) 2.0) (+ (pow (sin kx) 2.0) (pow (sin ky) 2.0))))))))))