Switching
Introduction
The time-integrated amount of data and stored information is doubled roughly every 18 months and, since the majority of the world’s information is stored in magnetic media, the possibility writing and retrieving information in a magnetic material at ever greater
speed and with lower energy consumption has obvious benefits for our society. Hence, the simple switching of a magnetic unit, a bit, is a crucial process which defines how efficiently information can be stored and retrieved from a magnetic memory. In the following exercises, you will use the code UppASD to perform magnetic switching simulation with several setups. There are 4 tasks in total, you can find the inputs for the 4 tasks in the folders TASK1, TASK2, TASK3, TASK4
respectively.
The presentation is avalable as pdf
TASK1: External field
The magnetization direction of sample can be manipulated by applying an external magnetic field with the desired orientation. In this exercise you will apply a magnetic field to switch the magnetization direction of macrospin and bcc Fe from +z to -z direction.
1. Use the flag hfield
in inpsd.dat
to control the strength as well as the direction of magnetic field.
Here you will use the inputs in the folder macrospin
to switch the magnetization direction of
a macrospin from +z to -z direction, compare the switching
time with external field -1000 ,-1500 ,-2000, -2500, -3000 Tesla
.
You can directly use the script switching.sh
to complete this exercise. Finally, use the plotting script plot.gnu
or plot.py
to plot the
average magnetization of z component as a function of time
for each magnetic field and compare them. Keep in mind that the external field in this simulation
is incrediblely huge, here we use huge magnetic field to accelerate our simulation.
2. After that, use the inputs in the folder bccFe
. Set the temperature to 0K and the external field to -2000T
, then you can try different Jij in jfile
of bccFe and compare
whether different set of Jij affects the switching process? Read the maunal and find out where you need to modify in the jfile
.
Do you think the switching process of bccFe behaves like a macrospin? Try to explain it
from the output moment.bccFe100.out
.
TASK2: Damping and magnetic anisotropy
Damping enters the LLG equation as a phenomenological term, which denotes the energy and angular momentum dissipation from the magnetic system to the environment. The magnetic switching is heavily dependent on the damping. In this exercise you will compare the switching time of a macrospin with different damping.
The inputs for this simulation are in the folder damping
. Use the flag damping
in inpsd.dat
to control the damping parameter in LLG equation. Here you still switch the magnetization direction of
the macrospin from +z to -z direction, compare the switching
time with damping 0.2 ,0.4, 0.6, 0.8, 1.0
. You can directly use the script damping.sh
to complete this exercise. Finally, plot the
average magnetization of z component as a function of time
for system with each damping and see how different damping affects the switching process and explain it from LLG equation(Here you can create a python plot script by yourself).
Keep in mind that the damping value in real materials is usually in the order of 1e^⁻3 or 1e^⁻4, here we use huge damping to accelerate our simulation.
To switch a magnetic system, one needs to overcome the energy barrier, which is determined by system’s magnetic anisotropy and the volume of the system. In actual device, the energy barrier can stablize system’s magnetic order. However, huge energy barrier induces higher power consumption to manipulate the magnetism in device. In this assignment, you will explore the magnetic switching process of macrospin with different magnetic anisotropy.
The inputs for this simulation are in the folder anisotropy
. Use the flag anisotropy
in inpsd.dat
combined with an external
file named kfile
storing the magnetic anisotropy
parameter of system to manipulate the magnetic anisotropy parameter.
Here still switch the magnetization direction of
macrospin from +z to -z direction, compare the switching
time with anisotropy K1=-0.02 ,-0.2, -0.4
. You can directly use the script switching_K.sh
to complete this exercise. Read the manual and find out where you need to modify in the kfile
.
Plot the average magnetization of z component as a function of time
for system with each magnetic anisotropy and see the effect of anisotropy on switching.
TASK3: Precessional switching
In this exercise, you will simulate the precessional switching which has been introduced in the talk.
Here you will use the flag do_bpulse
in inpsd.dat
to control the type of field pulse(The pulse type like square pulse, square pulse with exponential head and tail,
Gaussian pulse,exponentially decaying pulse have been implemented in UppASD). Here you will use the Gaussian pulse in this exercise, so set do_bpulse 2
. Run the simulation and plot the average magnetization of z component as a function of time.
If you have time, try to compare the switching process with different damping and parameters for Gaussian pulse in the file named bpulsefile
.
TASK4: Spin transfer torque(STT)
Magnetic memory devices have been studied extensively in the past years. The IBM racetrack memory being one of the prime examples of this. This device relies on the movement of a magnetic texture connecting two magnetic domains with different orientation. This texture is known as a domain wall. To move this wall a spin polarized current can be applied to the system exerting a torque over the texture forcing it to move. In this exercise, you will simulate the precessional switching.
In this task, use the flag Initmag 4
and restartfile ./restart.DOMAIN.DW
to initialize spin configuration of
the system. Then turn on the STT flag by stt A
and define the polarized direction of current by jvec jx jy jz
. Visualize the domain wall motion dynamics of the
system by UppASD GUI, for that you need to set do tottraj Y
to get the trajectory of each spin at each sampling step. You can play with the flag jvec
to manipulate the direction of domain motion(Play with different strength and vectors of current).