How to generate Neel domain walls?

31 views
Skip to first unread message

Li Shan

unread,
Aug 12, 2025, 10:13:34 PMAug 12
to Vampire Users
Hi
I have been trying to generate domain walls using “ sim:program=domain-wall  ” recently and have added the simplest DMI using unit cell file. Why am I not creating neel domain walls? Please give me some suggestions.

All the best.

input file:
#------------------------------------------
# Creation attributes:
#------------------------------------------
create:crystal-structure=sc
#create:periodic-boundaries-x
#create:periodic-boundaries-y
#create:periodic-boundaries-z
#------------------------------------------
# System Dimensions:
#------------------------------------------
dimensions:unit-cell-size = 3.54 !A
dimensions:system-size-x = 70.8 !nm
dimensions:system-size-y = 354 !nm
dimensions:system-size-z = 0.354 !nm
#------------------------------------------
# Material Files:
#------------------------------------------
material:file=Co.mat
#material:unit-cell-file = file.ucf
#------------------------------------------
# Simulation attributes:
#------------------------------------------
sim:total-time-steps=1500000
sim:temperature=0
sim:equilibration-time-steps = 0
sim:time-steps-increment = 10000
sim:time-step=1e-15
sim:save-checkpoint=end
#------------------------------------------
# Program and integrator details
#------------------------------------------
sim:program=domain-wall
sim:integrator=monte-carlo
sim:domain-wall-axis=x
sim:domain-wall-position=0.5
sim:domain-wall-width= 70 !nm
#------------------------------------------
# data output
#------------------------------------------
output:time-steps
output:magnetisation
output:height-magnetisation
output:column-headers
config:atoms
config:atoms-output-rate=5

unit cell file:
#Unit cell size:
3.54 3.54 3.54
#Unit cell vectors:
1 0 0
0 1 0
0 0 1
# Atoms num_atoms, num_materials;id cx cy cz mat cat hcat:
1 1
0 0 0 0 0
# Interactions n exctype;  IID i j dx dy dz Jxx Jxy Jxz Jyx Jyy Jyz Jzx Jzy Jzz:
4 tensorial
0 0 0 1 0 0 2e-25 0 -2e-25 0 2e-25    0 2e-25 0 2e-25
1 0 0 0 1 0 2e-25 0 0 0 2e-25    -2e-25 0 2e-25 2e-25
2 0 0 -1 0 0 2e-25 0 2e-25 0 2e-25    0 -2e-25 0 2e-25
3 0 0 0 -1 0 2e-25 0 0 0 2e-25    2e-25 0 -2e-25 2e-25

material file:
#---------------------------------------------------
# Number of Materials
#---------------------------------------------------
material:num-materials=1
#---------------------------------------------------
# Material 1 Co
#---------------------------------------------------
material[1]:material-name=TM
material[1]:damping-constant=0.1
material[1]:exchange-matrix[1]=4.585714e-21
material[1]:atomic-spin-moment=1.61 !muB
material[1]:uniaxial-anisotropy-constant=3.73e-24
material[1]:uniaxial-anisotropy-direction = 0,0,1
material[1]:material-element=Fe
material[1]:minimum-height=0.0
material[1]:maximum-height=1.0
material[1]:initial-spin-direction=0,0,1
material[1]:domain-wall-second-magnetisation-vector = 0,0,-1

gabo...@gmail.com

unread,
Aug 24, 2025, 9:31:40 PM (13 days ago) Aug 24
to Vampire Users
Picture of a Néel wall from Figure 1 (a) of [1]. 

neel_wall.png

The domain wall transition from up to down at the sim:domain-wall-position looks like it can be quite abrupt using  sim:program=domain-wall:

spins00000001.png

For the above Povray image file (spins00000001.png), I swapped the dimensions:system-size-x and dimensions:system-size-y in the input file that another user previously provided (below).  To get an rougher output sooner, I reduced the sim:total-time-steps and sim:time-steps-increment values. I had to make some adjustments to the spins.ini and spins.pov for getting the view seen in that image (spins00000001.png).  The commands that were entered into the terminal to produced it are given below:

username@computername:~/domain-wall$ ls -l
total 12
-rw-r--r-- 1 username username  734 Aug 24 11:47 Co.mat
-rw-r--r-- 1 username username  467 Aug 24 11:47 file.ucf
-rw-r--r-- 1 username username 1443 Aug 24 11:47 input
username@computername:~/domain-wall$ grep -e system-size-x -e system-size-y -e total-time-steps -e time-steps-increment input

dimensions:system-size-x = 70.8 !nm
dimensions:system-size-y = 354 !nm
sim:total-time-steps=1500000
sim:time-steps-increment = 10000
username@computername:~/domain-wall$ gedit input
username@computername:~/domain-wall$ grep -e system-size-x -e system-size-y -e total-time-steps -e time-steps-increment input
dimensions:system-size-x = 354 !nm
dimensions:system-size-y = 70.8 !nm
sim:total-time-steps=500
sim:time-steps-increment = 5
username@computername:~/domain-wall$ vampire-serial
                                                _          
                                               (_)        
                    __   ____ _ _ __ ___  _ __  _ _ __ ___
                    \ \ / / _` | '_ ` _ \| '_ \| | '__/ _ \
                     \ V / (_| | | | | | | |_) | | | |  __/
                      \_/ \__,_|_| |_| |_| .__/|_|_|  \___|
                                         | |              
                                         |_|              

                      Version 7.0.0 Aug 24 2025 09:10:33

             Git commit: 525bc27ee44c525aee229570f30f3d4c61d54f66

  Licensed under the GNU Public License(v2). See licence file for details.

  Developers:   Richard F L Evans, Sarah Jenkins, Andrea Meo,
                Daniel Meilak, Andrew Naden, Matthew Ellis,
                Oscar Arbelaez, Sam Morris, Rory Pond, Weijia Fan,
                Phanwadee Chureemart, Pawel Sobieszczyk, Joe Barker,
                Thomas Ostler, Andreas Biternas, Roy W Chantrell,
                Wu Hong-Ye, Razvan Ababei, Sam Westmoreland,
                Milton Persson
 
                Compiler Flags:

  Vampire includes a copy of the qhull library from C.B. Barber and The
  Geometry Center and may be obtained via http from www.qhull.org.

================================================================================
Sun Aug 24 18:25:49 2025
================================================================================
Initialising system variables
100 0 0 0 -1
Creating system
Generating neighbour list..........done!
Copying system data to optimised data structures.
Using generic/normalised form of exchange interaction with 6 total interactions.
Number of atoms generated: 200000
Starting Simulation with Program Domain walls...
...
Monte Carlo statistics:
Total moves: 100000000
5.05998% Accepted
94.94% Rejected
Simulation ended gracefully.
username@computername:~/domain-wall$ ~/vampire/util/vdc/vdc --povray
|------------------------------------------------------------|
|              Vampire Data Converter for v5+                |
|------------------------------------------------------------|
Processing snapshot 00000000
...
Processing snapshot 00000019
username@computername:~/domain-wall$ grep Initial spins.ini
Initial_Frame = 0
username@computername:~/domain-wall$ gedit spins.ini
username@computername:~/domain-wall$ grep Initial spins.ini
Initial_Frame = 1
username@computername:~/domain-wall$ grep -e "declare cam_theta" -e "declare cam_phi" -e "declare cam_radius" -e "sscale =" spins.pov
#declare cam_theta  = 8.29304e-05; // angle from z in degrees
#declare cam_phi    = 11.2658; // angle from x in degrees
#declare cam_radius = 21635.7; // distance from origin
#declare sscale = 2.0;
username@computername:~/domain-wall$ gedit spins.pov
username@computername:~/domain-wall$ grep -e "declare cam_theta" -e "declare cam_phi" -e "declare cam_radius" -e "sscale =" spins.pov
#declare cam_theta  = 75.0; // angle from z in degrees
#declare cam_phi    = 89.9; // angle from x in degrees
#declare cam_radius = 3635.7; // distance from origin
#declare sscale = 25.0;
username@computername:~/domain-wall$ povray spins
username@computername:~/domain-wall$ ls -l spins00000001.png
-rw-rw-r-- 1 username username 307651 Aug 24 18:37 spins00000001.png


Kind Regards,
Gavin
VAMPIRE user
Reply all
Reply to author
Forward
0 new messages