journal article·2024-01-01Open access

Vision for unified micromagnetic modeling (UMM) with Ubermag

Hans Fangohr, Martin Lang, Samuel J. R. Holt, Swapneel Amit Pathak, Kauser Zulfiqar, Marijan Beg

AIP Advances· Volume 14· Issue 1

Abstract

Scientists who want to use micromagnetic simulation packages, need to learn how to express the micromagnetic problem of interest in a “language” such as a configuration file, script or GUI-clicks that the simulation software understands. This language varies from software to software. If the researchers need to use another package, they need to learn a new language to re-express their (unchanged) micromagnetic problem for the next software. For research-project specific pre- or post-processing, scientists often need to write additional software. We propose the vision of a unified micromagnetic modeling (UMM) approach with which researchers can express the micromagnetic problem once and from which multiple simulation packages can be instructed automatically to carry out the actual numerical problem solving. Furthermore, by providing defined interfaces that are embedded in the Python data science ecosystem and which are used to communicate with the simulation packages, we can create an open research framework in which simulation runs and additional computation can be arbitrarily combined and orchestrated. Where analysis tools are missing from simulators, these can conveniently be created at Python level. Advantages of this approach include reduced effort for scientists to familiarize themselves with multiple simulation configuration languages, easier exploitation of complementary features of the different simulation packages, the ability to compare results computed with different simulation packages more easily, and the option to easily extend analysis functionality of the existing simulators. With recent updates of Ubermag we present a prototype of such a UMM framework. Ubermag provides a unified interface (expressed in Python) to solve micromagnetic problems using, currently, OOMMF and mumax3. After a simulation has finished, the results are made available to the researcher for analysis within the Python ecosystem of scientific and data science libraries. We discuss the current state of capabilities and challenges associated with the proposed approach.
Source: crossref · Quality: baseline

Research context

OpenAlex topics: Computational Physics and Python Applications · Geomagnetism and Paleomagnetism Studies · Scientific Research and Discoveries

SciVX discovery tags are terminology-based. OpenAlex topics are source-provided classifications.

Affiliations

Max Planck Institute for the Structure and Dynamics of Matter 1 , Luruper Chaussee 149, 22761 Hamburg, Germany

Center for Free-Electron Laser Science 2 , Luruper Chaussee 149, 22761 Hamburg, Germany

University of Southampton 3 , Southampton SO17 1BJ, United Kingdom

Department of Physics, University of Hamburg 4 , Jungiusstrasse 9, 20355 Hamburg, Germany

Department of Earth Science and Engineering, Imperial College London 5 , London SW7 2AZ, United Kingdom

Funding

European Commission · Engineering and Physical Sciences Research Council

References (15)

Show source-provided references
1. 1999
2. https://math.nist.gov/oommf/oommf_cites.html.
3. The design and verification of mumax310.1063/1.4899186 ↗
4. Using Jupyter for reproducible scientific workflows10.1109/mcse.2021.3052101 ↗
5. Virtual experiments in computational magnetism: mag2exp
6. The atomic simulation environment—A Python library for working with atoms10.1088/1361-648x/aa680e ↗
7. pyiron: An integrated development environment for computational materials science10.1016/j.commatsci.2018.07.043 ↗
8. Supplementary materials, see https://gitlab.mpcdf.mpg.de/ubermag/paper-2023-unified-micromagnetic-modelling, https://doi.org/10.17617/3.D5FT5Y.
9. Ubermag: Toward more effective micromagnetic workflows10.1109/tmag.2021.3078896 ↗
10. User interfaces for computational science: A domain specific language for OOMMF embedded in Python10.1063/1.4977225 ↗
11. Supported calculator features in Ubermag, see https://ubermag.github.io/documentation/compatibility.html.
12. Jupyter: Thinking and storytelling with code and data10.1109/mcse.2021.3059263 ↗
13. Data exploration and analysis with Jupyter notebooks
14. What every computer scientist should know about floating-point arithmetic10.1145/103162.103163 ↗
15. The FAIR guiding principles for scientific data management and stewardship10.1038/sdata.2016.18 ↗