The Swiss-army knife of atomic simulations

Tutorial: ½[111] Screw Dislocation in Iron

This tutorial explains how to construct a ½[111] screw dislocation in bcc iron, using anisotropic elasticity. It is recommended to be familiar with dislocations and with anisotropic elasticity in order to follow the steps below.

▶ For more information, refer to the corresponding documentation page.

1. Crystallographic orientation of the system

We want to construct a screw dislocation lying along the Z axis, i.e. the crystallographic direction will be Z=[111]. The other two Cartesian directions must be perpendicular to Z, so we choose X=[121] and Y=[101].

If you wish to generate a unit cell with this orientation then:

atomsk --create bcc 2.856 Fe orient [121] [-101] [1-11] xsf

2. Writing elastic tensor into a file

Because we want to use anisotropic elasticity to construct the dislocation, first we must provide the elastic constants of α-Fe to Atomsk. Atomsk can read this type of information from a text file, thanks to the option -properties.

Let us write the full elastic tensor into a text file:


# Full 6x6 elastic tensor for alpha-Fe (GPa)
243.30 145.00 145.00 0.00 0.00 0.00
145.00 243.00 145.00 0.00 0.00 0.00
145.00 145.00 243.00 0.00 0.00 0.00
0.00 0.00 0.00 119.00 0.00 0.00
0.00 0.00 0.00 0.00 119.00 0.00
0.00 0.00 0.00 0.00 0.00 119.00

Alternatively, since α-iron is an orthotropic material, it is possible to use the shorter Voigt notation. The text file then looks like the following (everything that appear after # symbols are comments and can be removed):


# Elastic constants for alpha-Fe (GPa)
elastic Voigt
243.30 243.30 243.30 # C11 C22 C33
145.00 145.00 145.00 # C23 C31 C12
119.00 119.00 119.00 # C44 C55 C66

Now, the problem is that this elastic tensor is that of unoriented α-Fe, i.e. it corresponds to the crystal orientation X=[100], Y=[010], Z=[001]. Here we want to construct a system with a different orientation, which requires to rotate the elastic tensor. With Atomsk, one can simply specify the target crystal orientation, and Atomsk will automatically rotate the elastic tensor to match this orientation:


# Elastic constants for alpha-Fe (GPa)
elastic Voigt
243.30 243.30 243.30 # C11 C22 C33
145.00 145.00 145.00 # C23 C31 C12
119.00 119.00 119.00 # C44 C55 C66

# Actual crystal orientation

3. Generate the system containing a dislocation

atomsk --create bcc 2.856 Fe orient [121] [-101] [1-11] \
-duplicate 20 30 1 \
-prop elastic.txt \
-disloc 0.501*box 0.501*box screw z y 2.47336855321 \

This one-liner generates completely the system with the dislocation in it. Atomsk will first create the unit cell of bcc Fe with the required orientation (thanks to the mode "--create"), then duplicate it to generate a supercell, then read the elastic tensor from the file "elastic.txt", and then introduce the screw dislocation. Because the elastic tensor is provided, the dislocation will be introduced using anisotropic elasticity.

Because the Burgers vector is ½[111], its magnitude is a3/2, that is b=2.47336855321 Å. Note that the value of the Burgers vector has to be very accurate. Atomsk will not make any adjustments, nor try to guess the "best" value of the Burgers vector for you.

The final output file "Fe_dislo.cfg" can be opened with Atomeye. Using the combinations Alt+0, Alt+1, Alt+2, etc. allows to visualize the components of the theoretical stresses σxx, σyy, σzz, etc. that were computed by Atomsk. As an example, the component σzz should look like the following:

Similarly to the screw dislocation in aluminium, it is possible to restore the periodicity of the system along the direction of glide (i.e. along X) by adding a Z component equal to b/2 to the first vector of the box.

4. Further comments

The dislocation as constructed above is not fully relaxed. The theoretical stresses computed by Atomsk, and visualized in Atomeye, are not the real stresses of an actual dislocation. The purpose is to construct a dislocation that is close to its equilibrium state, in order to perform an atomic-scale calculation (either ab initio or with empirical potential).

The simulation setup as constructed above does not allow for 3-D periodic boundary conditions. Introducing a dislocation produces displacements of all atoms, so that the opposite sides of the simulation box do not match anymore. After introducing a dislocation, the system is periodic only along the dislocation line.