Skip to content

MD simulation of dislocation motion

Author: Xiangkai Chen


Purpose and Objectives

Learning Goals

This tutorial demonstrates how to perform molecular dynamics (MD) simulations to study dislocation motion in oxides materials. By completing this tutorial, you will learn: 1. How to create dislocation structures in crystal lattices 2. Energy minimization techniques for dislocation configurations 3. Equilibrium MD simulations for relaxed dislocation structures 4. Shear deformation simulations to observe dislocation motion 5. Analysis of stress-strain response

Prerequisites

  1. Basic knowledge of molecular dynamics
  2. Familiarity with LAMMPS packages
  3. Understanding of oxides defects and dislocation theory
  4. Basic Linux command line experience

Dislocation Structure Generation

Theoretical Background

Dislocations are line defects in crystals that enable plastic deformation. We'll create an edge dislocation in a SrTiO3 iron crystal using the following approach: Crystal orientation: X=[110], Y=[001], Z=[1-10] Dislocation line along Y-direction Burgers vector: b = -a/2[110]

LAMMPS Input Script for Dislocation Creation

# 初始化设置
units        metal
boundary     p p p
atom_style   atomic
dimension    3

# 输入STO-dislocation模型
read_data       conf.lmp

### ATOMS/IONS PROPERTIES
pair_style      deepmd SPTO.pb
pair_coeff      * *

# 删除原子以创建刃型位错
region       delete_region1 block X/2 X/2+5.507 INF INF Y/2 INF
delete_atoms region delete_region1

# 输出弛豫后的原子构型
write_data   dislocation_relaxed.data

Energy Minimization

### PROGRAM PARAMETERS
units           metal

### DEFINE AND CREATE SIMULATION BOX
atom_style      atomic
##Boundary conditions (p=periodic,f=fixed)
boundary        p p p

#variable            Temp equal 300             # desired temperature
variable        tstp equal 0.001            # timestep
variable        tdamp equal 100*${tstp}     # damping parameters # 
variable        pdamp equal 1000*${tstp}    # for NPT ensemble   #
variable        dump_every equal 100       
#variable       equi_step equal 10000

# 输入STO-dislocation模型
read_data       conf.lmp

#change_box   all triclinic
mass            1 24.305000
mass            2 15.999000

### ATOMS/IONS PROPERTIES
pair_style      deepmd SPTO.pb
pair_coeff      * *

#--------------------------------------------- Minimization ---------------------------------------
thermo          10
timestep        ${tstp}
dump            1 all custom 10 STO-mini.lmp id type element x y z
dump_modify     1 sort id element Sr Pb Ti O
min_style       cg
minimize        1e-15 1e-15 10000 10000

Equilibrum

### LAMMPS input file
### SrTiO3 - Thomas potential

### PROGRAM PARAMETERS
units           metal

### DEFINE AND CREATE SIMULATION BOX
atom_style      atomic
##Boundary conditions (p=periodic,f=fixed)
boundary        p p p

variable        Temp equal 300                  # desired temperature
variable        tstp equal 0.001            # timestep
variable        tdamp equal 100*${tstp}     # damping parameters #
variable        pdamp equal 1000*${tstp}    # for NPT ensemble   #
variable        dump_every equal 100
variable        equi_step equal 50000

# 输入STO-dislocation模型
read_data       conf.lmp

#change_box   all triclinic
mass            1 87.620000
mass            2 207.200000
mass            3 47.867000
mass            4 15.999000

### ATOMS/IONS PROPERTIES
pair_style      deepmd SPTO.pb
pair_coeff      * *

#------------------------------------------ equilibrium -------------------------------
# 计算单原子应力
#模拟变量设置
variable        initTemp equal 300.0
variable        timestep equal 0.001
#variable            shear_speed equal 0.1
variable        relax_step  equal 50000
#variable            shear_step  equal 10000

#compute        s all stress/atom NULL
#compute        p all reduce sum c_s[1] c_s[2] c_s[3]
#variable       Press equal -(c_p[1]+c_p[2]+c_p[3])/(3*vol)
thermo          10
#thermo_style   custom step temp etotal press v_Press

#速度初始化 (弛豫)
velocity        all create ${initTemp} 12345 dist gaussian units box
fix             1 all npt temp ${initTemp} ${initTemp} 0.1 iso 0.0 0.0 1
thermo          100
dump            1 all custom 100 STO-relax.lmp id type element x y z
dump_modify     1 sort id element Sr Pb Ti O
run             ${relax_step}

Shear

### LAMMPS input file
### SrTiO3 - Thomas potential

### PROGRAM PARAMETERS
units           metal

### DEFINE AND CREATE SIMULATION BOX
atom_style      atomic
##Boundary conditions (p=periodic,f=fixed)
boundary        p p p

# 输入STO-dislocation模型
read_data       conf.lmp

#change_box   all triclinic
mass            1 87.620000
mass            2 207.200000
mass            3 47.867000
mass            4 15.999000

### ATOMS/IONS PROPERTIES
pair_style      deepmd SPTO.pb
pair_coeff      * *

#------------------------------------------ shear ----------------------------
#模拟变量设置
variable        temp equal 300
variable        timestep equal 0.001
variable        shear_speed equal 1
variable        shear_step  equal 100000

#compute        s all stress/atom NULL
#compute        p all reduce sum c_s[1] c_s[2] c_s[3]
#variable       Press equal -(c_p[1]+c_p[2]+c_p[3])/(3*vol)

#分组
region          box block INF INF INF INF INF INF units box
group           box region box
region          upper block INF INF INF INF 170 INF units box
region          lower block INF INF INF INF INF 40 units box
group           lower region lower
group           upper region upper

group           boundary union upper lower
group           mobile subtract box boundary

change_box      all boundary p p f
#剪切:固定lower; mobile使用nvt系综; upper使用fix move加载
timestep        ${timestep}
thermo          10
thermo_style    custom step temp etotal press pe
dump            1 all custom 10 2shear.xyz id type element x y z
dump_modify     1 sort id element Sr Pb Ti O
velocity        lower set 0.0 0.0 0.0
fix             1 lower setforce 0 0 0
fix             2 mobile nvt temp ${temp} ${temp} 0.1
fix             3 upper move linear ${shear_speed} 0 0 units box
run             ${shear_step}

Post-processing and Analysis

Using OVITO software to visualize the atomic structure containing dislocations, the obtained dislocation configuration is shown in the figure below. This visualization clearly reveals the characteristic features of the dislocation line, including its core structure, surrounding strain fields, and the distortion of crystal planes around the defect. The analysis further enables the identification of quantification of local atomic displacements, providing crucial insights into the defect's influence on material properties and deformation behavior.

alt text