DOI: 10.5061/dryad.v9s4mw76r
title: Nanomagnet shape effects on magnetic reversal in artificial spin ice

description: 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.
description: 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.
 <strong>Main text</strong>– In these simulations, MuMax3
 determined the island perimeter. Each hysteresis loop was repeated three
 times to ensure consistency. 2.
 <strong>Supplementary materials</strong> – These simulations
 included a roughened perimeter to model fabrication imperfections. Each
 hysteresis loop was repeated seven times, and the results were
 averaged.
description: # Nanomagnet shape effects on magnetic reversal in artificial spin ice
 Dataset DOI: [10.5061/dryad.v9s4mw76r](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.