pub(crate) fn j1_maclaurin_series_fast(x: f64) -> f64Expand description
Generated in Sollya:
pretty = proc(u) {
return ~(floor(u*1000)/1000);
};
bessel_j1 = library("./cmake-build-release/libbessel_sollya.dylib");
f = bessel_j1(x)/x;
d = [0, 0.921];
w = 1;
pf = fpminimax(f, [|0,2,4,6,8,10,12,14,16,18,20,22,24|], [|107, 107, 107, 107, 107, D...|], d, absolute, floating);
w = 1;
or_f = bessel_j1(x);
pf1 = pf * x;
err_p = -log2(dirtyinfnorm(pf1*w-or_f, d));
print ("relative error:", pretty(err_p));
for i from 0 to degree(pf) by 2 do {
print("'", coeff(pf, i), "',");
};See ./notes/bessel_sollya/bessel_j1_at_zero_fast.sollya