Flexible fast multipole method for magnetic simulations

The public-domain /spl psi/-Mag toolset uses generic-programming techniques to provide the computational magnetic-materials community an excellent opportunity for code reuse without loss of efficiency. /spl psi/-Mag provides a flexible implementation of the fast multipole method (FMM) for dipole-dip...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:IEEE transactions on magnetics 2004-07, Vol.40 (4), p.2146-2148
Hauptverfasser: Brown, G., Schulthess, T.C., Apalkov, D.M., Visscher, P.B.
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:The public-domain /spl psi/-Mag toolset uses generic-programming techniques to provide the computational magnetic-materials community an excellent opportunity for code reuse without loss of efficiency. /spl psi/-Mag provides a flexible implementation of the fast multipole method (FMM) for dipole-dipole calculations that does not depend on the geometry of the problem and is suitable for high-performance, parallel computers. Theoretically, the execution time for such a calculation should grow only linearly with the number of spins, and this is confirmed here for up to order 10/sup 5/ spins. In addition, the implementation efficiently uses a large number of processors. For a test case of 64 000 dipoles, the measured speedup is over 25 for 40 processors on a four-processor-per-node IBM SP; this compares quite favorably with less-flexible FMM implementations. The generic implementation allows for easy changes of the basis functions used to expand potentials specific to particular applications, facilitating direct comparison of different approaches. Here, the traditional spherical-harmonic expansions are compared to Cartesian expansions which reflect the cubic symmetries of meshes used in typical micromagnetic simulations.
ISSN:0018-9464
1941-0069
DOI:10.1109/TMAG.2004.829023