Chebyshev approximation of Bessel functions
The computation of the modified Bessel functions of complex argument I_\nu(z)
and K_\nu(z)
is the main computational bottleneck when computing the impedance, and thus also the wake, in the axisymmetric geometry.
A possible avenue to speed up these calculations is the use of a Chebyshev approximation, particularly at intermediate magnitudes of the input z
where both Taylor series approximation and asymptotic series approximations fail to converge to the correct result.
The idea would be to use a two dimensional Chebyshev polynomial in the approximation, where the dimensions would represent the real and the complex components of the input. The output of a Chebyshev polynomial is real, so two Chebyshev polynomials would need to be used to evaluate I_\nu(z)
with a particular order \nu
, one for the real output and one for the imaginary output. Other polynomials (i.e. sets of coefficients) would be used to calculate other orders, and similar for K_\nu(z)
.
Further reading:
- For 1D Chebyshev approximation with a focus on code implementation:
- Press, W. H., Teukolsky, S. A., Vetterling, W. T.,, Flannery, B. P. (2007). Numerical Recipes 3rd Edition: The Art of Scientific Computing. Cambridge University Press. ISBN: 0521880688
- For 2D Chebyshev approximation:
- Basu, N. K. (1973). On Double Chebyshev Series Approximation. SIAM Journal on Numerical Analysis, 10(3), 496–505. http://www.jstor.org/stable/2156117