I have rephrased my original question to be clearer:

From my understanding, a multipole expansion is used to approximate the potential from a cluster of points, and can be evaluated at any point sufficiently far away. Suppose you have a cluster of points in box A which is centered at some point in space Q. The potential from these points can be approximated by the multipole potential evaluated at some point P using:

enter image description here

Where the primed variables are the coordinates P - Q.

Now suppose we want to find the multipole potential for the parent of box A. Of course, we could start over by finding the cluster of points in the parent box and recomputing the multipole expansion. But surely, we want to reduce computation time so it is better to form the parent multipole expansion from the parent’s children.

If we find the multipole expansion given earlier for all the children, the potential at some point P due to the parent will of course be the sum of the children’s multipole expansions evaluated at P. (note: the math is correct for this, and it makes complete sense because potentials follow the superposition principle)

However, the translation theorem commonly used to convert children multipole expansions to their parent is given by:

enter image description here

It seems obvious one could just add the multipole expansions to form the parent expansion. Why is a different translation theorem used when converting children expansions to their parent expansion? Is this translation theorem applied in a different setting?

source: A short course on fast multipole methods

  • $\begingroup$ I am having a bit of a difficult time understanding your post. I think you may have some misconceptions about how the FMM works. Perhaps the FMM is best understood as a systematic method for computing, for each leaf-level box, the coefficients of a spherical harmonics expansion which, when evaluated, yields the field due to all sources outside the box's near-field region. You can accomplish this either directly from the sources (Barnes-Hut method/treecode) or via the FMM's operations on the source-side expansion coefficients. Hope this helps. $\endgroup$
    – smh
    May 7 '20 at 19:31
  • $\begingroup$ I removed the my question about the downward pass because this was less clear. My question on the upward pass still stands though $\endgroup$ May 8 '20 at 14:44
  • $\begingroup$ What exactly you are suggesting is still quite unclear. You wish to first perform the charge-to-multipole operation to form the multipole expansions for each leaf box. You then wish to calculate the parent box multipole expansions from the leaf expansions through some "efficient" operation. Can you elaborate on that step? $\endgroup$
    – smh
    May 8 '20 at 16:05
  • $\begingroup$ I rewrote my question to make it more clear. Please let me know your thoughts on it $\endgroup$ May 8 '20 at 21:34
  • $\begingroup$ Much clearer. Please see my edited answer. $\endgroup$
    – smh
    May 8 '20 at 21:57

The FMM has been exhaustively studied, so if people aren't doing something that seems obvious, then there's likely a fairly obvious reason they aren't doing it. This isn't to say there's nothing new to discover, but it's well-trodden ground.

I think the main thing you're missing here is the fact that the multipole expansion for each box is written in a local coordinate system, e.g. relative to the center of each box. Suppose your box A has eight children, each centered at $Q_i,i=1,\ldots,8$. You are correct that one could evaluate the eight multipole expansions at the point $P$ and obtain the correct result, but realize that you must express $P$ in coordinates relative to each $Q_i$ to get the right answer. Simply adding up the coefficients and evaluating the multipole expansion using $Q$ will not produce the correct answer. Instead, you must re-center these expansions about the parent point $Q$ using the above theorem and then add them together. For reference, see the Wikipedia page on the solid harmonics addition theorem.

The following pertains to a question posed in your original post. I'm leaving it here.

On the point of computing multipole-to-local (outer-to-inner) translations between boxes at different levels, let's consider the worst-case scenario.

Imagine you've got two particles located at positions $\mathbf{r}$ and $\mathbf{r}'$. Box $A$ with diameter $d$ contains the point $\mathbf{r}$ and box $B$ with diameter $2d$ contains the point $\mathbf{r}'$, and let the boxes be separated by one box of diameter $d$. Define $\mathbf{r}-\mathbf{r}'=\mathbf{t}+\mathbf{v}$, where $\mathbf{t}$ is the vector from the center of box $B$ to the center of box $A$.

The convergence of the FMM series expansion relies on the ratio $v/t<1$ being small. It can easily be shown that when you place the points $\mathbf{r},\mathbf{r}'$ in the opposite corners of their respective boxes, the ratio $v/t=1$, invalidating the addition theorem. For configurations close to this one, the ratio will still be close to 1 and a huge number of terms is required to achieve any useful accuracy.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.