There is a newer version of the record available.

Published September 4, 2021 | Version v2
Software Open

TESTV2: Creation and observation of topological magnetic monopoles and their interactions in a ferromagnetic meta-lattice

Description

Corresponding Author:

Jianwei Miao (miao@physics.ucla.edu)

 

Overview:

Although elementary particles with a net magnetic charge remain elusive, magnetic monopoles as emergent quasiparticles have been reported in various condensed matter systems. In particular, topological magnetic monopoles are three-dimensional (3D) nonlocal spin textures that are robust to thermal and quantum fluctuations. Understanding their properties is of both fundamental interest and practical applications. However, it has been difficult to experimentally produce topological magnetic monopoles in a controlled manner and directly observe their 3D magnetization vector field and interactions at the nanoscale. Here, we report the creation of 138 stable topological magnetic monopoles in the specific sites of a ferromagnetic meta-lattice at room temperature. We further develop 3D soft x-ray vector ptychography to determine the magnetization vector and emergent magnetic field of the topological monopoles with a 3D spatial resolution of 10 nm. The experimental data and MATLAB source codes for the 3D scalar and vector reconstruction and post analysis are provided here.

 

Software Requirements:

 

OS  

This package has been tested on:  

Linux: CentOS 6 2.6.32  

MacOS: Mojave 10.14.6 

 

MATLAB Versions  

Compatible with `MATLAB` 2019b and future versions. 

 

Repository Instructions:

Prior to running each step of the code, please ensure that its corresponding “src/splinterp” folder contains 3 “splinterp.cpp” files. If not, first run “compile_mex_script.m” to generate the aforementioned files. Note that “.mexw64” and “.mexa64” correspond to Windows and Linux operating systems respectively.

 

Step 1. RESIRE - Scalar Reconstruction

The main code of the scalar reconstruction step is “main_1_reconstruct.” Before running the code, please edit the file “setup.m” in the “src” subfolder. This setup file is meant to determine the main directory of the scalar reconstruction step. Thus, edit the path for “HOME_DIR” and “pname” to match the local path of the files within the system. Once that is completed, run “main_1_reconstruct” to generate the scalar reconstruction.

 

Step 2. RESIRE - Vector Reconstruction

Similar to the scalar reconstruction step, please edit the local paths of the variables within the “setup_vector.m” file, which is located in “2-vector-RESIRE/src.” Once that is completed, run “main_1_reconstruct_vector” to generate the vector reconstruction.

 

Step 3. Angular Refinement

No prior setup is required. Run “maingithub2.m” to optimize the reconstruction by iteratively refining the spatial and angular alignment of the projections.

 

Step 4. Final Reconstructions

This folder contains the final scalar and vector reconstructions.

 

Step 5. Data Analysis of Topological Magnetic Monopoles

This folder contains two main codes: “main_1_hedgehogs.m” and “main_2_surfaces.m”. Run “main_1_hedgehogs” to analyze topological magnetic monopoles and produce Figs. 2 and 3 in the main text. Run “main_2_surfaces” to analyze virtual topological magnetic monopoles and produce Fig. 4 in the main text.

Files

metalattice-data-codes.zip

Files (4.5 GB)

Name Size Download all
md5:6e29916889ce84a049d90871846e6ebe
4.5 GB Preview Download