Figure 2: The absolute error of potential calculated using classical FMM and the pseudoparticle method. The error of the potential by one particle at position (1,0) is plotted as the function of the distance of r. Solid and dashed curves denote the pseudoparticle method and classical FMM, respectively. In each panel, four curves give the results for p=2, 4, 8 and 16 (top to bottom). Four panels are result for the direction angle 0 (top left), (top right), (bottom left), (bottom right), respectively.
Figure 2 shows the decay of the error in two dimensions, for various choices of expansion order and geometry. Here we calculate the absolute error in the potential between two particles. One is located at . The other is located at , where r is varied from 1 to 10 in each panel and and for four panels, respectively. As is clearly seen, for all cases the new method achieves the theoretical order. It's error is slightly larger than that of direct evaluation of multipole expansion, but the difference is small.
Note that we could make the result obtained by the new method to be identical to the direct evaluation of multipole expansion, by truncation the pairwise potential to the order of the integration scheme p. However, the result shown in figure 2 suggests such truncation is unnecessary.
One practical problem is how we chose the radius of the ring. Though the expansion is exact up to order p, a ring of finite number of particles and finite radius has spurious high-order multipole moment. Therefore, in order to make the truncation error small, we should make the radius as small as possible. On the other hand, as we make the radius r smaller, the absolute values of the masses of particles diverge as , since this factor directly enters into the inverse transformation. Therefore, if we make r too small, the round off error would increase rapidly. In practice, the choice of makes the spurious high-order terms sufficiently small, without noticeable effect on the round-off error. For the result shown in figure 2 we used . The error is not sensitive to the choice of r, unless the required accuracy is very high.