CuPyMag: GPU-accelerated finite-element micromagnetics with magnetostriction
Year: 2026
Type: article
Abstract: We introduce CuPyMag , an open-source, Python-based framework for large-scale micromagnetic simulations with magnetostriction. CuPyMag solves micromagnetics with finite elements in a GPU-resident workflow in which key operations, such as right-hand-side assembly, spatial derivatives, and volume averages, are tensorized using CuPy’s BLAS-accelerated backend. Benchmark tests show that the GPU solvers in CuPyMag achieve a speedup of up to two orders of magnitude compared to the CPU codes. Its runtime grows linearly/sublinearly with problem size, demonstrating high efficiency. Additionally, CuPyMag uses the Gauss-Seidel projection method for time integration, which not only allows stable time steps (up to 11 ps) but also solves each governing equation with only 1–3 conjugate-gradient iterations without preconditioning. CuPyMag accounts for magnetoelastic coupling and far-field effects arising from the boundary of the magnetic body, both of which play an important role in magnetization reversal in the presence of local defects. CuPyMag solves these computationally-intensive multiphysics simulations with a high-resolution mesh (up to 3M nodes) in under three hours on an NVIDIA H200 GPU. This acceleration enables micromagnetic simulations with non-trivial defect geometries and resolves nanoscale magnetic structures. It expands the scope of micromagnetic simulations towards realistic, large-scale problems that can guide experiments. More broadly, CuPyMag is developed using widely adopted Python libraries, which provide cross-platform compatibility, ease of installation, and accessibility for adaptations to diverse applications. Program Summary Program Title: CuPyMag CPC Library link to program files: https://doi.org/10.17632/pmkz4vzz7w.1 Developer’s repository link: https://github.com/hongyiguan/CuPyMag OSF repository link: https://osf.io/6nmsv/?view_only=dbd8fa339f8740a6bd009c03499ea23f Licensing provisions: Apache-2.0 Programming language: Python 3 Nature of problem: The program addresses large-scale micromagnetic simulations that are computationally demanding due to the solution of magnetoelastic coupling (mechanical equilibrium with magnetostriction at each time step), far-field demagnetization effects, and arbitrarily shaped inclusion-like defects that require unstructured finite-element meshes. Solution method: CuPyMag implements a GPU-resident, tensorized workflow built on CuPy’s BLAS-accelerated backend. This design exploits highly optimized linear algebra kernels, enabling efficient parallel execution and maintaining high GPU utilization. It uses an ellipsoid theorem to account for far-field demagnetization effects, and the Gauss-Seidel projection method for stable and efficient time integration.
Source: Computer Physics Communications
Authors: Hongyi Guan, Ananya Renuka Balakrishna
Institution: University of California, Santa Barbara
Language: English
Field: Materials Science
Domain: Physical Sciences
Open Access status: hybrid
Estimated APC paid: $4,160
OpenAlex ID: W7130985175
