Skip to Main Content
We propose to implement the multilevel fast multipole algorithm (MLFMA) based on point-to-point interactions, instead of the traditional basis-to-basis interactions. When we calculate the matrix elements for which the testing and source bases are not close to each other, we can apply Gaussian quadrature to evaluate the integrals. This process can be interpreted as replacing a continuous source distribution with discrete sources. Thus, one matrix-vector multiply is similar to the calculation of the electromagnetic fields for a given distribution of N source bases and then testing them with these bases. In this implementation, we first find Q equivalent point sources from these N source bases, then calculate electromagnetic fields at these Q points, and finally test them with each testing basis. The value of Q depends on the number of patches and the quadrature rule used for each patch. The MLFMA is used to calculate electromagnetic fields at Q points generated by Q point sources. By doing so, the number of levels used is not limited by the size of basis functions, making MLFMA more efficient.