Hi,
what kind of material are you try to model? fcc, bcc, sc?
The process is straightforward by sometimes is difficult to create all the exchange manually so I have made these 2 scripts in matlab that generate all the exchange up to the 5th neighbor for bcc and up to the 4th for fcc. Just change the the exchange variable and it will create the file for you. If you use different materials (I was only studying pure Co, Fe, Ni), you need to change the number in the 5th column of line 9-12 of the fcc file or 9-10 of the bcc file for the different materials.
In general:
1) the first 3 numbers after unit cell size gives you the dimension of your unit cell in Armstrong
2) the 3 lines of unit cell vector of the lattice (you can use the bravais lattice representation for the fcc and bcc cells, but I personally find easier to keep track of the exchange in the file using the Cartesian axis x,y,z and use 4 atoms for fcc and 2 atoms for bcc)
3) When you create the atoms, the first line tells you how many atoms are present in the unit cell and the subsequent lines gives you information about the atom index, the normalized coordinates inside the unit cell (column 2-4) the material of the atom (column 5), and lc and hc that are in many cases just 0
4) For the interaction you need to specify the total number of interactions and the type (the type defines the dimensions of the exchange J that can be a scalar, a vector, or a tensor)
5) when you define the exchange
a) first column is the global index of the exchange
b) second column is the i index of the atom
c) third column is the j index of the atom
d) 4-6 defines the translation of element j with respect to his position on the unit cell
e) defines the exchange value in Joule
Note about (d): let say I have 2 atoms
0 0.00000000 0.00000000 0.00000000 0 0 0
1 0.50000000 0.50000000 0.00000000 0 0 0
Let us represent the atom i=0 with a 'x' and the atom j=1 with a 'o'. I want to write all the exchange in a plane between i->j
2 0
o o
x
o o
3 1
0 0 1 0 0 0 1.649401e-21 # exchange between i and j at (0.5,0.5,0.0)
1 0 1 0 -1 0 1.649401e-21 # exchange between i and j at (0.5,0.5-1.0,0.0) -> (0.5,-0.5,0.0)
2 0 1 -1 0 0 1.649401e-21 # exchange between i and j at (0.5-1.0,0.5,0.0) -> (-0.5,0.5,0.0)
3 0 1 -1 -1 0 1.649401e-21
# exchange between i and j at (0.5-1.0,0.5-1.0,0.0) -> (-0.5,-0.5,0.0)
Hi,Can Anyone tell how to generate unit cell file with exchange interaction list?