\left(J \cdot \left(e^{\ell} - e^{-\ell}\right)\right) \cdot \cos \left(\frac{K}{2}\right) + UJ \cdot \left(\cos \left(\frac{K}{2}\right) \cdot \left({\ell}^{5} \cdot \frac{1}{60} + \left(2 + \left(\frac{1}{3} \cdot \ell\right) \cdot \ell\right) \cdot \ell\right)\right) + Udouble f(double J, double l, double K, double U) {
double r11405202 = J;
double r11405203 = l;
double r11405204 = exp(r11405203);
double r11405205 = -r11405203;
double r11405206 = exp(r11405205);
double r11405207 = r11405204 - r11405206;
double r11405208 = r11405202 * r11405207;
double r11405209 = K;
double r11405210 = 2.0;
double r11405211 = r11405209 / r11405210;
double r11405212 = cos(r11405211);
double r11405213 = r11405208 * r11405212;
double r11405214 = U;
double r11405215 = r11405213 + r11405214;
return r11405215;
}
double f(double J, double l, double K, double U) {
double r11405216 = J;
double r11405217 = K;
double r11405218 = 2.0;
double r11405219 = r11405217 / r11405218;
double r11405220 = cos(r11405219);
double r11405221 = l;
double r11405222 = 5.0;
double r11405223 = pow(r11405221, r11405222);
double r11405224 = 0.016666666666666666;
double r11405225 = r11405223 * r11405224;
double r11405226 = 0.3333333333333333;
double r11405227 = r11405226 * r11405221;
double r11405228 = r11405227 * r11405221;
double r11405229 = r11405218 + r11405228;
double r11405230 = r11405229 * r11405221;
double r11405231 = r11405225 + r11405230;
double r11405232 = r11405220 * r11405231;
double r11405233 = r11405216 * r11405232;
double r11405234 = U;
double r11405235 = r11405233 + r11405234;
return r11405235;
}



Bits error versus J



Bits error versus l



Bits error versus K



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