Question: I have problems with sidelobes when computing the convolution of two radially symmetric functions. I wonder whether I should just switch from second order to fourth order and refine the grid aggressively, or whether there are more appropriate methods for computing this convolution.I have radially symmetric convolution kernels, given in sufficiently well specified representations like sum of Gaussians, piecewise constant, or piecewise polynomial in $r^2$. I have routines to analytically evaluate the Fourier transform of these kernels either pointwise or integrated over a ring. See appendix if interested in these details.To compute the convolution of two such kernels, I evaluate the Fourier transform pointwise on a sufficiently fine grid in Fourier space, multiply the two Fourier transforms pointwise with each other. I use a logarithmically spaced grid (a factor of 10 is sampled by 200 points), with an additional point at the origin. Then I use some interpolation scheme (currently just linear interpolation in $\rho^2$, but I wonder whether I should switch to a cubic spline interpolation) to get a piecewise polynomial in $\rho^2$ representation of the product in Fourier space. Then I evaluate the Fourier transform of this representation integrated over a ring to get a piecewise constant approximation of the convolution of the two kernels.My problem is that a double logarithmic plot of the result can reveal spectral leakage in the form of side-lobes. What I don't like about this is that I can make the grid in Fourier space finer to reduce the amplitude of the side-lobes, but a double logarithmic plot can easily cover 12 orders of magnitude, and it seems excessive to me to compute the convolution to an accuracy of $10^{-12}$, just because of artifacts in a double logarithmic plot which are irrelevant to the accuracy of relevant results from the application of the resulting convolution kernel. On the other hand, the artifacts might be more dangerous than I realize, because my kernels are all expected to be positive, but the resulting convolution kernel might have negative values due to the artifacts from the spectral leakage.As an example, I computed the convolution of a sum of a 2 nm wide Gaussian and a 10 um wide Gaussian with two different very small (0.35 nm and 1 nm) Gaussians. In the images below, the red line is this sum these two Gaussians. The result should be nearly identical to this, i.e. a sum of two Gaussians, where the smaller is 2.03 nm or 2.236 nm wide.Image of sidelobes after convolution with a 0.35 nm wide Gaussian: Image of sidelobes after convolution with a 1 nm wide Gaussian:AppendixHere is some more of the math (equations) involved: The Fourier transform of $\exp(-r^2)$ is $\pi\exp(-\pi^2\rho^2)$, the Fourier transform of $\operatorname{circ}(r)$ is $\frac{J_1(2\pi\rho)}{\rho}$, and the Fourier transform of $(1-r^2)^n\operatorname{circ}(r)$ isn't much more complicated either. The antiderivative of $\rho$ times these functions can also be computed analytically. Hence it should be clear that it is possible to analytically evaluate the Fourier transform of these kernels either pointwise or integrated over a ring.
Convolution of two radially symmetric functions for double logarithmic plot
numerical analysis;fourier analysis