\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{\frac{1}{2} \cdot \left(1 + \left(\sqrt[3]{\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)}}} \cdot \sqrt[3]{\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) \cdot \left(\left(\sqrt[3]{\sqrt[3]{\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)}}}} \cdot \sqrt[3]{\sqrt[3]{\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) \cdot \sqrt[3]{\sqrt[3]{\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)\right)}double f(double l, double Om, double kx, double ky) {
double r46102 = 1.0;
double r46103 = 2.0;
double r46104 = r46102 / r46103;
double r46105 = l;
double r46106 = r46103 * r46105;
double r46107 = Om;
double r46108 = r46106 / r46107;
double r46109 = pow(r46108, r46103);
double r46110 = kx;
double r46111 = sin(r46110);
double r46112 = pow(r46111, r46103);
double r46113 = ky;
double r46114 = sin(r46113);
double r46115 = pow(r46114, r46103);
double r46116 = r46112 + r46115;
double r46117 = r46109 * r46116;
double r46118 = r46102 + r46117;
double r46119 = sqrt(r46118);
double r46120 = r46102 / r46119;
double r46121 = r46102 + r46120;
double r46122 = r46104 * r46121;
double r46123 = sqrt(r46122);
return r46123;
}
double f(double l, double Om, double kx, double ky) {
double r46124 = 1.0;
double r46125 = 2.0;
double r46126 = r46124 / r46125;
double r46127 = l;
double r46128 = r46125 * r46127;
double r46129 = Om;
double r46130 = r46128 / r46129;
double r46131 = pow(r46130, r46125);
double r46132 = kx;
double r46133 = sin(r46132);
double r46134 = pow(r46133, r46125);
double r46135 = ky;
double r46136 = sin(r46135);
double r46137 = pow(r46136, r46125);
double r46138 = r46134 + r46137;
double r46139 = r46131 * r46138;
double r46140 = r46124 + r46139;
double r46141 = sqrt(r46140);
double r46142 = r46124 / r46141;
double r46143 = cbrt(r46142);
double r46144 = r46143 * r46143;
double r46145 = cbrt(r46143);
double r46146 = r46145 * r46145;
double r46147 = r46146 * r46145;
double r46148 = r46144 * r46147;
double r46149 = r46124 + r46148;
double r46150 = r46126 * r46149;
double r46151 = sqrt(r46150);
return r46151;
}



Bits error versus l



Bits error versus Om



Bits error versus kx



Bits error versus ky
Results
Initial program 1.7
rmApplied add-cube-cbrt1.7
rmApplied add-cube-cbrt1.7
Final simplification1.7
herbie shell --seed 2019325
(FPCore (l Om kx ky)
:name "Toniolo and Linder, Equation (3a)"
:precision binary64
(sqrt (* (/ 1 2) (+ 1 (/ 1 (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))