\left(J \cdot \left(e^{\ell} - e^{-\ell}\right)\right) \cdot \cos \left(\frac{K}{2}\right) + U\left(\cos \left(\frac{K}{2}\right) \cdot J\right) \cdot \left({\ell}^{5} \cdot \frac{1}{60} + \left(\frac{1}{3} \cdot \left(\ell \cdot \ell\right) + 2\right) \cdot \ell\right) + Udouble f(double J, double l, double K, double U) {
double r6644149 = J;
double r6644150 = l;
double r6644151 = exp(r6644150);
double r6644152 = -r6644150;
double r6644153 = exp(r6644152);
double r6644154 = r6644151 - r6644153;
double r6644155 = r6644149 * r6644154;
double r6644156 = K;
double r6644157 = 2.0;
double r6644158 = r6644156 / r6644157;
double r6644159 = cos(r6644158);
double r6644160 = r6644155 * r6644159;
double r6644161 = U;
double r6644162 = r6644160 + r6644161;
return r6644162;
}
double f(double J, double l, double K, double U) {
double r6644163 = K;
double r6644164 = 2.0;
double r6644165 = r6644163 / r6644164;
double r6644166 = cos(r6644165);
double r6644167 = J;
double r6644168 = r6644166 * r6644167;
double r6644169 = l;
double r6644170 = 5.0;
double r6644171 = pow(r6644169, r6644170);
double r6644172 = 0.016666666666666666;
double r6644173 = r6644171 * r6644172;
double r6644174 = 0.3333333333333333;
double r6644175 = r6644169 * r6644169;
double r6644176 = r6644174 * r6644175;
double r6644177 = 2.0;
double r6644178 = r6644176 + r6644177;
double r6644179 = r6644178 * r6644169;
double r6644180 = r6644173 + r6644179;
double r6644181 = r6644168 * r6644180;
double r6644182 = U;
double r6644183 = r6644181 + r6644182;
return r6644183;
}



Bits error versus J



Bits error versus l



Bits error versus K



Bits error versus U
Results
Initial program 17.3
Taylor expanded around 0 0.4
Simplified0.4
rmApplied associate-*l*0.4
rmApplied *-un-lft-identity0.4
Applied associate-*l*0.4
Simplified0.4
Final simplification0.4
herbie shell --seed 2019192
(FPCore (J l K U)
:name "Maksimov and Kolovsky, Equation (4)"
(+ (* (* J (- (exp l) (exp (- l)))) (cos (/ K 2.0))) U))