Dislocation are microscopic displacements within the regular atom lattice of a crystalline material usually as a result of plastic deformation. Dislocations are described by a Burgers vector describing the direction of the atomic shift and a line vector describing the direction of the displacements within the material. One distinguishes two cases:
Edge Dislocations
Here the directions of the atomic shifts are orthogonal to the direction the displacements spread within the material. In order to define a edge dislocation we proceed as follows
% define a crystal symmetry
cs = crystalSymmetry('432');
% define a burgers vector in crystal coordinates
b = Miller(1,1,0,cs,'uvw')
% define a line vector in crystal coordinates
l = Miller(1,-1,-2,cs,'uvw')
% setup the dislocation system
dS = dislocationSystem(b,l)
b = Miller (432)
u v w
1 1 0
l = Miller (432)
u v w
1 -1 -2
dS = dislocationSystem
symmetry: 432
edge dislocations : 1 x 1
Burgers vector line vector energy
[1 1 0] [1 -1 -2] 1
Screw Dislocations
Screw dislocations are characterized by the fact that Burgers vector and line vector are perpendicular to each other.
% define a burgers vector in crystal coordinates
b = Miller(1,1,0,cs,'uvw')
% define a line vector in crystal coordinates
l = Miller(1,1,0,cs,'uvw')
% setup the dislocation system
dS = dislocationSystem(b,l)
b = Miller (432)
u v w
1 1 0
l = Miller (432)
u v w
1 1 0
dS = dislocationSystem
symmetry: 432
screw dislocations: 1 x 1
Burgers vector energy
[1 1 0] 1
Relation to Slip Systems
Dislocation systems are tightly related to slip systems. Given a set of slip systems the corresponding edge and screw dislocations can be computed by
% dominant slip systems in cubic fcc material
sS = symmetrise(slipSystem.fcc(cs))
% the corresponding edge and screw dislocation
dS = dislocationSystem(sS)
sS = slipSystem (432)
size: 24 x 1
u v w | h k l CRSS
0 1 -1 1 1 1 1
-1 0 1 1 1 1 1
1 -1 0 1 1 1 1
0 -1 1 1 1 1 1
1 0 -1 1 1 1 1
-1 1 0 1 1 1 1
1 -1 0 1 1 -1 1
1 0 1 1 1 -1 1
0 1 1 1 1 -1 1
-1 1 0 1 1 -1 1
-1 0 -1 1 1 -1 1
0 -1 -1 1 1 -1 1
0 1 -1 -1 1 1 1
1 0 1 -1 1 1 1
1 1 0 -1 1 1 1
0 -1 1 -1 1 1 1
-1 0 -1 -1 1 1 1
-1 -1 0 -1 1 1 1
-1 0 1 1 -1 1 1
1 1 0 1 -1 1 1
0 1 1 1 -1 1 1
1 0 -1 1 -1 1 1
-1 -1 0 1 -1 1 1
0 -1 -1 1 -1 1 1
dS = dislocationSystem
symmetry: 432
edge dislocations : 24 x 1
Burgers vector line vector energy
[0 1 -1] [2 -1 -1] 2
[-1 0 1] [-1 2 -1] 2
[1 -1 0] [-1 -1 2] 2
[0 -1 1] [-2 1 1] 2
[1 0 -1] [1 -2 1] 2
[-1 1 0] [1 1 -2] 2
[1 -1 0] [1 1 2] 2
[1 0 1] [-1 2 1] 2
[0 1 1] [-2 1 -1] 2
[-1 1 0] [-1 -1 -2] 2
[-1 0 -1] [1 -2 -1] 2
[0 -1 -1] [2 -1 1] 2
[0 1 -1] [2 1 1] 2
[1 0 1] [-1 -2 1] 2
[1 1 0] [1 -1 2] 2
[0 -1 1] [-2 -1 -1] 2
[-1 0 -1] [1 2 -1] 2
[-1 -1 0] [-1 1 -2] 2
[-1 0 1] [1 2 1] 2
[1 1 0] [1 -1 -2] 2
[0 1 1] [2 1 -1] 2
[1 0 -1] [-1 -2 -1] 2
[-1 -1 0] [-1 1 2] 2
[0 -1 -1] [-2 -1 1] 2
screw dislocations: 6 x 1
Burgers vector energy
[0 1 -1] 1
[0 1 1] 1
[1 0 1] 1
[1 -1 0] 1
[1 1 0] 1
[-1 0 1] 1
A shortcut for the above lines is
dS = dislocationSystem.bcc(cs)
dS = dislocationSystem
symmetry: 432
edge dislocations : 48 x 1
Burgers vector line vector energy
[1 -1 1] [-2 -1 1] 2
[1 1 -1] [2 -1 1] 2
[1 1 -1] [1 -2 -1] 2
[-1 1 1] [1 2 -1] 2
[1 -1 1] [-1 1 2] 2
[-1 1 1] [-1 1 -2] 2
[1 -1 1] [1 2 1] 2
[1 1 1] [-1 2 -1] 2
[1 1 -1] [1 1 2] 2
[1 1 1] [-1 -1 2] 2
[-1 1 1] [2 1 1] 2
[1 1 1] [2 -1 -1] 2
[-1 1 1] [0 1 -1] 2
[1 -1 1] [-1 0 1] 2
[1 1 -1] [1 -1 0] 2
[-1 1 1] [-1 0 -1] 2
[1 -1 1] [-1 -1 0] 2
[1 1 -1] [0 -1 -1] 2
[1 1 -1] [1 0 1] 2
[-1 1 1] [1 1 0] 2
[1 -1 1] [0 1 1] 2
[-1 -1 -1] [0 -1 1] 2
[-1 -1 -1] [1 0 -1] 2
[-1 -1 -1] [-1 1 0] 2
[-1 1 1] [-1 4 -5] 2
[1 -1 1] [-5 -1 4] 2
[1 1 -1] [4 -5 -1] 2
[-1 1 1] [-4 1 -5] 2
[1 -1 1] [-5 -4 1] 2
[1 1 -1] [1 -5 -4] 2
[1 1 -1] [4 1 5] 2
[-1 1 1] [5 4 1] 2
[1 -1 1] [1 5 4] 2
[-1 -1 -1] [-1 -4 5] 2
[-1 -1 -1] [5 -1 -4] 2
[-1 -1 -1] [-4 5 -1] 2
[1 -1 1] [1 -4 -5] 2
[1 1 -1] [-5 1 -4] 2
[-1 1 1] [-4 -5 1] 2
[1 -1 1] [4 -1 -5] 2
[1 1 -1] [-5 4 -1] 2
[-1 1 1] [-1 -5 4] 2
[-1 -1 -1] [-4 -1 5] 2
[-1 -1 -1] [5 -4 -1] 2
[-1 -1 -1] [-1 5 -4] 2
[1 1 -1] [1 4 5] 2
[-1 1 1] [5 1 4] 2
[1 -1 1] [4 5 1] 2
screw dislocations: 4 x 1
Burgers vector energy
[-1 -1 -1] 1
[1 -1 1] 1
[-1 1 1] 1
[1 1 -1] 1
The Dislocation Tensor
As each dislocation corresponds to an deformation of the atom lattice a dislocation can also be described by a deformation matrix. This matrix is the dyadic product between the Burgers vector and the line vector and can be computed by
dS.tensor
ans = dislocationDensityTensor (432)
size: 52 x 1
unit: au
rank: 2 (3 x 3)
Note that the unit of this tensors is the same as the unit used for describing the length of the unit cell, which is in most cases Angstrom (au). For amount of deformation the norm of the Burgers vectors is important
% size of the unit cell
a = norm(cs.aAxis);
% in bcc and fcc the norm of the burgers vector is sqrt(3)/2 * a
[norm(dS(1).b), norm(dS(end).b), sqrt(3)/2 * a]
ans =
0.8660 0.8660 0.8660
The Energy of Dislocations
The energy of each dislocation system can be stored in the property u
. By default this value it set to 1 but should be changed according to the specific model and the specific material.
According to Hull & Bacon the energy U of edge and screw dislocations is given by the formulae
\[ U_{\mathrm{screw}} = \frac{Gb^2}{4\pi} \ln \frac{R}{r_0} \]
\[ U_{\mathrm{edge}} = (1-\nu) U_{\mathrm{screw}} \]
where
-
G
is -
b
is the length of the Burgers vector -
nu
is the Poisson ratio -
R
-
r
In this example we assume
R = r_0 = U = norm(dS.b).^2
nu = 0.3;
% energy of the edge dislocations
dS(dS.isEdge).u = 1;
% energy of the screw dislocations
dS(dS.isScrew).u = 1 - 0.3;
% Question to verybody: what is the best way to set the enegry? I found
% different formulae
%
% E = 1 - poisson ratio
% E = c * G * |b|^2, - G - Schubmodul / Shear Modulus Energy per (unit length)^2