The field of computational electromagnetics has made great strides over the last two decades due, in part, to the development of fast algorithms - that is numerical methods which scale linearly (or nearly linearly) with the number of degrees of freedom required. The fast multipole method (FMM) is one such scheme, requiring O(N) or O(N log N) work to compute all pairwise interactions between N point scatterers whose interactions are described by electrostatics, gravitation, acoustics or electromagnetics. Naive methods, by contrast, require O(N^2) work. . Because the algorithms are rather involved, we have created open source distributions, available at the links below. These FMM2D and FMM3D libraries are designed for the "low-frequency" regime, assuming that the entire computational domain is a modest number of wavelengths in size. (The high-frequency version of the FMM requires a more complex algorithm, and has not been incorporated in this software release.)

FMPS is an FMM-based package which allows for the rapid simulation of multi-particle scattering gioverned by the full Maxwell equations.

Fast Multipole and Related Libraries