Nanomagnet shape effects on magnetic reversal in artificial spin ice
Data files
Jun 13, 2025 version files 272.85 MB
-
Main_Text.zip
272.85 MB
-
README.md
5.51 KB
-
Supplementary_Materials.zip
2.81 KB
Abstract
This dataset contains micromagnetic simulation results exploring how the shape of elongated nanomagnets influences magnetic reversal processes in artificial spin ice. By systematically varying the island geometry from rectangular to elliptical shapes, the simulations reveal how deviations from idealized coherent rotation emerge due to curling and pinning of the magnetization at the island edges. Furthermore, increasing inter-island interactions leads to a more complex interplay between internal magnetization dynamics and external coupling effects. These results provide insight into the role of shape anisotropy in artificial spin ice and offer a foundation for designing nanomagnetic systems with tailored reversal properties.
Dataset DOI: 10.5061/dryad.v9s4mw76r
Description of the data and file structure
This dataset contains raw hysteresis loops as well as results for calculating interaction energy obtained from numerical simulations conducted using Mumax3. Python scripts for running the Mumax simulations, including those for both “ideal” and “rough” element perimeters, are also included.
Files and variables
File: Main_Text.zip
This folder contains raw data in four subfolders, as well as a Python script (bulkrun_ideal_islands.py) that can be used to simulate hysteresis loops for nanoelements placed in a square lattice with an “ideal” perimeter.
- In bulkrun_ideal_islands.py, the parameters spacingVals, lengthVals, and seeds are left empty for the user to alter, specifying the nanoelement spacing, length, and the number of times each simulation should use the same parameters.
- Each simulation will generate a folder with the following abbreviation: pX;aX;lX;sX.out, where X represents the user input. This folder contains a text file with the information required to plot a hysteresis loop.
- In this file, mx and my (normalized magnetization along the x and y directions) are located in columns 2 and 3, and Bx and By (applied field in Tesla along the x and y directions) are located in columns 5 and 6.
Folder Description:
Hysteresis_Loops_Arrays:
This folder contains raw data of hysteresis loops for nanoelements in an array. The subfolder names include the pointiness parameter (p), length (l) in nanometers, lattice spacing (a) in nanometers, and the simulation run (s).
- Each simulation was run three times, hence for each p, l, and a there are folders ending with s0, s1, and s2.
Hysteresis_Loops_Isolated_Islands:
This folder contains raw data of hysteresis loops for isolated nanoelements. Like the folder above (Hysteresis_Loops_Arrays), the data is contained in subfolders named according to the nanoelement pointiness value, length, lattice spacing, and simulation run.
- Each simulation was run 3 times, hence for each p, l, and a there are folders ending with s0, s1, and s2.
Interaction_Energy:
This folder contains simulated data used to calculate the interaction energy between two nanoelements. The data was simulated using Mumax3, where the net magnetization is uniform. The .csv file has the following headers: length (l) [nm], lattice spacing (a) [nm], pointiness (p), coordination, E_fav [J], and E_unfav [J].
- The length (l) [nm] column represents the nanoelement length in nanometers, the lattice spacing (a) [nm] represents the lattice spacing between the two nanoelements in nanometers, and pointiness (p) represents the pointiness value of the two nanoelements.
- The coordination header represents the nanoelement geometry, where “perpendicular” indicates that the nanoelements were placed perpendicularly to each other, and “parallel” corresponds to when the nanoelements were placed parallel along a horizontal line.
- E_fav [J] corresponds to the energy when the magnetic nanoelements are placed in a favorable alignment, while E_unfav [J] represents the energy when the nanoelements are placed in an antiferromagnetic alignment.
Magnetization_Maps:
This folder contains numpy files for generating the magnetic texture maps obtained using save(m) when running the hysteresis loop, and thereafter using mumax convert to convert the files to numpy files.
- The subfolder names represents the pointiness parameter (p), length (l) in nanometers, lattice spacing (a) in nanometers, and the simulation run.
- Each subfolder contains at least three numpy files. The file m001001.npy in each of the subfolders represents the data used to plot the magnetization texture maps at remanence.
- Files with higher numbers, such as m001633.npy and m001635.npy in the subfolder p0.0;a280;l180;s0.out, represent the numpy files used to plot the magnetization maps at the points closest to coercivity and right after coercivity is crossed.
File: Supplementary_Materials.zip
Description:
This folder contains the Python script bulkrun_roughEdges_islands.py for running and generating hysteresis loops for nanoelements with a “rough” perimeter.
- The parameters spacingVals, lengthVals, and seeds are left empty for the user to alter, specifying the nanoelement spacing, length, and the number of times each simulation should use the same parameters.
- Each simulation will generate a folder with the following abbreviation: pX;aX;lX;sX.out, where X represents the user input.
- The generated folder will contain a text file named table.txt, which contains the information required to plot a hysteresis loop. In this file, mx and my (normalized magnetization along the x and y directions) are located in columns 2 and 3, and Bx and By (applied field in Tesla along the x and y directions) are located in columns 5 and 6.
Code/software
- bulkrun_ideal_islands.py is a Python script designed to simulate hysteresis loops for nanoelements with an "ideal” perimeter. Running this Python code generates a separate mumax script that which mumax will run.
- bulkrun_roughEdges_islands.py is a Python script designed to simulate hysteresis loops for nanoelements with an "rough” perimeter. Running this Python code generates a separate mumax script which mumax will run.
The simulation data in this work was produced using the software MuMax3. The Python script used to run the simulations is included in the dataset. Two types of simulations were conducted:
1. Main text– In these simulations, MuMax3 determined the island perimeter. Each hysteresis loop was repeated three times to ensure consistency.
2. Supplementary materials – These simulations included a roughened perimeter to model fabrication imperfections. Each hysteresis loop was repeated seven times, and the results were averaged.
