Vous êtes sur la page 1sur 32

Examples Examples of of Defects Defects in in Solids from Solids from

ESPRESSO ESPRESSO
Alessandra Satta Alessandra Satta
SLACS-INFM/CNR SLACS-INFM/CNR
Sardinian LAboratory for Computational Materials Science Sardinian LAboratory for Computational Materials Science
Cagliari, September 2005
Hands-on Tutorial on the Quantum-ESPRESSO Package
Defects in crystal lattices are classified according to
their dimension:
0-dimensional: point defects (vacancies, interstitials)
1-dimensional: dislocations, multiple junctions
2-dimensional: grain boundaries, stacking faults
3-dimensional: precipitates, voids
0D
0D
2 nm
2 nm
1D
1D
2D
2D
3D
3D
Native: Vacancy
Self - Interstitial
Impurity: Substitutional
Interstitial
Native: Vacancy
Self - Interstitial
Impurity: Substitutional
Interstitial
System:
with gap
without gap
System:
with gap
without gap
Inside
Inside
Point Defects Point Defects
vacancy
Self-interstitial impurity
Typical description of a defect structure Typical description of a defect structure
Energy:
Total E Stability, formation, migration, activation
Structure:
Geometry Atomic Configuration
Electronic structure Bands, DOS, Charge Density
Point Defects as a paradigm Point Defects as a paradigm
1. Energy: Stability, formation, migration, activation
A single vacancy first: just a missing atom
Remove one
atom and relax
Initial Guess Final Structure
1. Input: si_b.inp
2. pw.x < si_b.inp > si_b.out
&control
calculation='scf',
restart_mode='from_scratch',
prefix='si_b'
pseudo_dir = '/opt/espresso/pseudo/',
outdir=./pwfiles',
disk_io='high
/
&system
ibrav = 1, nat=8, ntyp= 1, celldm(1) =10.21,
ecutwfc = 18.0
/
&electrons
mixing_beta = 0.7
conv_thr = 1.0d-8
/
ATOMIC_SPECIES
Si 28.086 Si.vbc.UPF
ATOMIC_POSITIONS
Si 0.000 0.000 0.000
Si 0.500 0.500 0.000
Si 0.500 0.000 0.500
Si 0.000 0.500 0.500
Si 0.250 0.250 0.250
Si 0.750 0.750 0.250
Si 0.750 0.250 0.750
Si 0.250 0.750 0.750
K_POINTS {automatic}
4 4 4 0 0 0
1. Input: si_b.inp
2. pw.x < si_b.inp > si_b.out
3. grep ! si_b.out
! total energy = -63.37728748 ryd
4. Input: vacancy
ATOMIC_POSITIONS
Si 0.000 0.000 0.000
Si 0.500 0.500 0.000
Si 0.500 0.000 0.500
Si 0.000 0.500 0.500
Si 0.250 0.250 0.250
Si 0.750 0.750 0.250
Si 0.750 0.250 0.750
Si 0.250 0.750 0.750
ATOMIC_POSITIONS
Si 0.000 0.000 0.000
Si 0.500 0.500 0.000
Si 0.500 0.000 0.500
Si 0.000 0.500 0.500
Si 0.750 0.750 0.250
Si 0.750 0.250 0.750
Si 0.250 0.750 0.750
N N - 1
&control
calculation=relax',
restart_mode='from_scratch',
prefix='si_v'
pseudo_dir = '/opt/espresso/pseudo/',
outdir='./pwfiles',
disk_io='high
/
&system
ibrav = 1, nat=7, ntyp= 1, celldm(1) =10.21,
ecutwfc = 18.0
/
&electrons
mixing_beta = 0.7
conv_thr = 1.0d-8
/
ATOMIC_SPECIES
Si 28.086 Si.vbc.UPF
ATOMIC_POSITIONS
Si 0.000 0.000 0.000
Si 0.500 0.500 0.000
Si 0.500 0.000 0.500
Si 0.000 0.500 0.500
Si 0.750 0.750 0.250
Si 0.750 0.250 0.750
Si 0.250 0.750 0.750
K_POINTS {automatic}
4 4 4 0 0 0
1. Input: si_b.inp
2. pw.x < si_b.inp > si_b.out
3. grep ! si_b.out
4. Input: vacancy
5. pw.x < si_v.inp > si_v.out
6. grep ! si_v.out
! total energy = -55.21468569 ryd unrelaxed
! total energy = -55.21488549 ryd
! total energy = -55.20851601 ryd
! total energy = -55.21524357 ryd
! total energy = -55.21536466 ryd
! total energy = -55.21536471 ryd relaxed
Total force = 0.012467 Total SCF correction = 0.000014
Total force = 0.010535 Total SCF correction = 0.000045
Total force = 0.038545 Total SCF correction = 0.000001
Total force = 0.005252 Total SCF correction = 0.000016
Total force = 0.000012 Total SCF correction = 0.000007
Total force = 0.000130 Total SCF correction = 0.000006
6. grep ! si_v.out
7. grep Total force si_v.out
We now have all the ingredients to calculate the
Energy of Formation of a single vacancy in silicon
!
E
f
= E
tot
N "1;1
[ ]
"
N "1
N
E
tot
N; 0
[ ]
[ -55.21468569 - 7/8 *( -63.37728748 )] Ry =
= 0.24044086 Ry = 3.27 eV
[ -55.21536471 - 7/8 *( -63.37728748 )] Ry =
= 0.23976184 Ry = 3.26 eV
unrelaxed
relaxed
3.17-3.6 3.17-3.6
a a
3.26 (3.27) 3.26 (3.27) Si[V] Si[V]
others others our our E E
f f
( (eV eV ) )
a- M. Probert et al. PRB 67, 075204 (2003),
O. Pankratov, et al. PRB 56, 13172 (1997), and refs. therein
Simulation cell:
too small!
Energy: Total E formation, migration, activation
The vacancy formation functions at P = const: the Gibbs energy G
f
,
the enthalpy H
f
, and the entropy S
f
,

are defined as differences
between
(defective crystal) - (perfect crystal)
G
f
= H
f
T S
f
at P = 0 formation energy and enthalpy are
indistinguishable :
!
H
f
= E
tot
N "1;1; #
[ ]
"
N "1
N
E
tot
N; 0; N#
0
[ ]
The calculation of the migration barrier E
m
requires the knowledge of the saddle point
E
m
Nudged Elastic Band
Migration and Diffusion parameters
Next step to obtain the diffusion
coefficient: migration barrier
Next step to obtain the diffusion
coefficient: migration barrier
(next days!)
back to the structure
Structure:
Geometry : Atom displacements from bulk positions
xcrysden : calculate the distances between the atoms
neighboring the defect: nearest neighbors (NN),
second NN
and compare with : EXAFS, RBS-C, XSW
Structure:
Geometry : Atom displacements from bulk position
Electronic structure : Bands, DOS, Charge Density
We calculate the Density of States and the
electronic charge density in crystalline silicon
with and without defects
&control
calculation='scf',
restart_mode='from_scratch',
prefix='si_b'
pseudo_dir = '/opt/espresso/pseudo/',
outdir='/scratch/si_vacancy/pwfiles',
disk_io='high
/
&system
ibrav = 1, nat=8, ntyp= 1, celldm(1) =10.21,
ecutwfc = 18.0, occupations=tetrahedra
/
&electrons
mixing_beta = 0.7
conv_thr = 1.0d-8
/
ATOMIC_SPECIES
Si 28.086 Si.vbc.UPF
ATOMIC_POSITIONS
Si 0.000 0.000 0.000
Si 0.500 0.500 0.000
Si 0.500 0.000 0.500
Si 0.000 0.500 0.500
Si 0.250 0.250 0.250
Si 0.750 0.750 0.250
Si 0.750 0.250 0.750
Si 0.250 0.750 0.750
K_POINTS {automatic}
4 4 4 0 0 0
&control
calculation=nscf',
restart_mode='from_scratch',
prefix='si_b'
pseudo_dir = '/opt/espresso/pseudo/',
outdir='/scratch/si_vacancy/pwfiles',
disk_io='high
/
&system
ibrav = 1, nat=8, ntyp= 1, celldm(1) =10.21,
ecutwfc = 18.0, occupations=tetrahedra
/
&electrons
mixing_beta = 0.7
conv_thr = 1.0d-8
/
ATOMIC_SPECIES
Si 28.086 Si.vbc.UPF
ATOMIC_POSITIONS
Si 0.000 0.000 0.000
Si 0.500 0.500 0.000
Si 0.500 0.000 0.500
Si 0.000 0.500 0.500
Si 0.250 0.250 0.250
Si 0.750 0.750 0.250
Si 0.750 0.250 0.750
Si 0.250 0.750 0.750
K_POINTS {automatic}
6 6 6 0 0 0
DOS
scf nscf
&inputpp
outdir='./pwfiles/'
prefix='si_b'
fildos=./si_bulk.dos'
/
si_b.dos.inp : the input for DOS calculation in silicon bulk
dos.x < si_b.dos.inp > si_b.dos.out
# E (eV) dos(E) Int dos(E)

-5.709 0.2477E+00 0.1036E-01
-5.699 0.2948E+00 0.1331E-01
-5.689 0.3426E+00 0.1673E-01

6.071 0.2235E+00 0.3199E+02
6.081 0.1834E+00 0.3200E+02
6.091 0.1417E+00 0.3200E+02

The code will print
out the calculated
DOS in si_b.dos
that can be
plotted with
xmgace or gnuplot
E
F
=
The Fermi energy is the
reference value we set
as the top of the
valence band.
along the x-axis:
E = E - E
F
=
E - 6.081 eV
Now the procedure is similar for the crystal
containing the defect
s
sp
p
&control
calculation='scf',
restart_mode='from_scratch',
prefix='si_v'
pseudo_dir = '/opt/espresso/pseudo/',
outdir=./pwfiles',
disk_io='high
/
&system
ibrav = 1, nat=7, ntyp= 1, celldm(1) =10.21,
ecutwfc = 18.0, occupations=tetrahedra
/
&electrons
mixing_beta = 0.7
conv_thr = 1.0d-8
/
ATOMIC_SPECIES
Si 28.086 Si.vbc.UPF
ATOMIC_POSITIONS
Si 0.003081476 0.003081476 0.003081476
Si 0.496918524 0.496918524 0.003081476
Si 0.496918524 0.003081476 0.496918524
Si 0.003081476 0.496918524 0.496918524
Si 0.750000000 0.750000000 0.250000000
Si 0.750000000 0.250000000 0.750000000
Si 0.250000000 0.750000000 0.750000000
K_POINTS {automatic}
4 4 4 0 0 0
&control
calculation=nscf',
restart_mode='from_scratch',
prefix='si_v'
pseudo_dir = '/opt/espresso/pseudo/',
outdir=./pwfiles',
disk_io='high
/
&system
ibrav = 1, nat=7, ntyp= 1, celldm(1) =10.21,
ecutwfc = 18.0, occupations=tetrahedra
/
&electrons
mixing_beta = 0.7
conv_thr = 1.0d-8
/
ATOMIC_SPECIES
Si 28.086 Si.vbc.UPF
ATOMIC_POSITIONS
Si 0.003081476 0.003081476 0.003081476
Si 0.496918524 0.496918524 0.003081476
Si 0.496918524 0.003081476 0.496918524
Si 0.003081476 0.496918524 0.496918524
Si 0.750000000 0.750000000 0.250000000
Si 0.750000000 0.250000000 0.750000000
Si 0.250000000 0.750000000 0.750000000
K_POINTS {automatic}
6 6 6 0 0 0
scf nscf
&inputpp
outdir=./pwfiles/'
prefix='si_v'
fildos=./si_v.dos'
/
si_v.dos.inp : the input for DOS calculation in defective
silicon
dos.x < si_v.dos.inp > si_v.dos.out
si_v.dos:
A new peak in the gap
due to the presence of
the vacancy
Why is the peak
so broad?
Increasing the size of simulation cell
from 8 to 64 lattice sites
to 216
bulk
vacancy
Splitting of the
degeneracy due
to Jahn-Teller
effect
unrelaxed relaxed
unrelaxed relaxed
The electronic charge density
&inputpp
prefix = 'si_b'
outdir=./pwfiles/'
filplot = ./si_b.charge'
plot_num= 0
/
&inputpp
prefix = 'si_b'
outdir=./pwfiles/'
filplot = ./si_b.charge'
plot_num= 0
/
bulk : si_b.pp_rho.inp
bulk : si_b.pp_rho.inp
pp.x < si_b.pp_rho.inp > si_b.pp_rho.out
pp.x < si_b.pp_rho.inp > si_b.pp_rho.out
The bulk first
and the vacancy
&inputpp
prefix = 'si_v'
outdir=./pwfiles/'
filplot = ./si_v.charge'
plot_num= 0
/
&inputpp
prefix = 'si_v'
outdir=./pwfiles/'
filplot = ./si_v.charge'
plot_num= 0
/
vacancy :
si_v.pp_rho.inp
vacancy :
si_v.pp_rho.inp
pp.x < si_v.pp_rho.inp > si_v.pp_rho.out
pp.x < si_v.pp_rho.inp > si_v.pp_rho.out
&inputpp
--------------
/
&plot
nfile = 1
filepp(1) = ./si_b.charge'
weight(1) = 1.0
iflag = 2
output_format = 2
fileout = ' ./si_b.2D.rho.dat'
x0(1) =0.0, x0(2)=0.0, x0(3) = 0.0,
e1(1) =1.0, e1(2)=1.0, e1(3) = 0.0,
e2(1) =0.0, e2(2)=0.0, e2(3) = 1.0,
nx=56, ny=56
/
&inputpp
--------------
/
&plot
nfile = 1
filepp(1) = ./si_b.charge'
weight(1) = 1.0
iflag = 2
output_format = 2
fileout = ' ./si_b.2D.rho.dat'
x0(1) =0.0, x0(2)=0.0, x0(3) = 0.0,
e1(1) =1.0, e1(2)=1.0, e1(3) = 0.0,
e2(1) =0.0, e2(2)=0.0, e2(3) = 1.0,
nx=56, ny=56
/
2-Dimensional bulk : si_b.pp_rho2D.inp
pp.x < si_b.pp_rho2D.inp > si_b.pp_rho2D.out
pp.x < si_b.pp_rho2D.inp > si_b.pp_rho2D.out
./si_b.2D.rho.dat
./si_b.2D.rho.ps
n
0 0.09 7
./si_b.2D.rho.dat
./si_b.2D.rho.ps
n
0 0.09 7
plotrho.x < si_b.plotrho.inp > si_b.plotrho.out
plotrho.x < si_b.plotrho.inp > si_b.plotrho.out
bulk : si_b.plotrho.inp
bulk : si_b.plotrho.inp
[110]
[001]
&inputpp
--------------
/
&plot
nfile = 1
filepp(1) = ./si_v.charge'
weight(1) = 1.0
iflag = 2
output_format = 2
fileout = ' ./si_v.2D.rho.dat'
x0(1) =0.0, x0(2)=0.0, x0(3) = 0.0,
e1(1) =2.0, e1(2)=2.0, e1(3) = 0.0,
e2(1) =0.0, e2(2)=0.0, e2(3) = 1.0,
nx=56, ny=56
/
&inputpp
--------------
/
&plot
nfile = 1
filepp(1) = ./si_v.charge'
weight(1) = 1.0
iflag = 2
output_format = 2
fileout = ' ./si_v.2D.rho.dat'
x0(1) =0.0, x0(2)=0.0, x0(3) = 0.0,
e1(1) =2.0, e1(2)=2.0, e1(3) = 0.0,
e2(1) =0.0, e2(2)=0.0, e2(3) = 1.0,
nx=56, ny=56
/
2-Dimensional vacancy : si_v.pp_rho2D.inp
pp.x < si_v.pp_rho2D.inp > si_v.pp_rho2D.out
pp.x < si_v.pp_rho2D.inp > si_v.pp_rho2D.out
./si_v.2D.rho.dat
./si_v.2D.rho.ps
n
0 0.09 7
./si_v.2D.rho.dat
./si_v.2D.rho.ps
n
0 0.09 7
plotrho.x < si_v.plotrho.inp > si_v.plotrho.out
plotrho.x < si_v.plotrho.inp > si_v.plotrho.out
vacancy : si_v.plotrho.inp
vacancy : si_v.plotrho.inp
[110]
[001]
Increasing the size of the
simulation cell up to 216
lattice sites
Rebonding effect
through pairing of
Si-Si in the [110]
zigzag chain
3-Dimensional bulk : si_b.pp_rho3D.inp
&inputpp
--------------
/
&plot
nfile = 1
filepp(1) = ./si_b.charge'
weight(1) = 1.0
iflag = 3
output_format = 3
fileout = ./si_b.3D_bis.rho.xsf'
x0(1) =0.0, x0(2)=0.0, x0(3) = 0.0,
e1(1) =1.0, e1(2)=1.0, e1(3) = 0.0,
e2(1) =1.0, e2(2)=-1.0, e2(3) = 0.0,
e3(1) =0.0, e3(2)=0.0, e3(3) = 1.0,
nx=56, ny=56, nz=56
/
&inputpp
--------------
/
&plot
nfile = 1
filepp(1) = ./si_b.charge'
weight(1) = 1.0
iflag = 3
output_format = 3
fileout = ./si_b.3D_bis.rho.xsf'
x0(1) =0.0, x0(2)=0.0, x0(3) = 0.0,
e1(1) =1.0, e1(2)=1.0, e1(3) = 0.0,
e2(1) =1.0, e2(2)=-1.0, e2(3) = 0.0,
e3(1) =0.0, e3(2)=0.0, e3(3) = 1.0,
nx=56, ny=56, nz=56
/
pp.x < si_b.pp_rho3D.inp > si_b.pp_rho3D.out
pp.x < si_b.pp_rho3D.inp > si_b.pp_rho3D.out
xcrysden:
File: open si_b.3D_bis.rho.xsf
Tools: Data Grid
xcrysden:
File: open si si_b.3D_ _b.3D_bis bis. .rho rho. .xsf xsf
Tools: Data Grid
Donors and Acceptors
Boron and Arsenic are typical doping species in silicon
1. choose a pseudopotential for the impurities
2. compose the simulation cell
3. impose a volume relaxation
&control
calculation='vc-relax',
restart_mode='from_scratch',
prefix='SiAs'
dt=100.0, tstress = .true. tprnfor = .true.,
pseudo_dir = /opt/espresso/pseudo/',
outdir='/scratch/si_doping/pwfiles',
disk_io='high'
/
&system
ibrav = 1, celldm(1) =10.21, nat=8, ntyp= 2,
ecutwfc = 18.0,
occupations='smearing', smearing='gauss', degauss = 0.0037,
/
&electrons
mixing_beta = 0.7
conv_thr = 1.0d-8
/
&ions
ion_dynamics='damp'
/
&cell
cell_dynamics='damp-w'
/
ATOMIC_SPECIES
Si 28.086 Si.vbc.UPF
As 74.92 As.gon.UPF
.
..
ATOMIC_POSITIONS
Si 0.000 0.000 0.000
Si 0.500 0.500 0.000
Si 0.500 0.000 0.500
Si 0.000 0.500 0.500
As 0.250 0.250 0.250
Si 0.750 0.750 0.250
Si 0.750 0.250 0.750
Si 0.250 0.750 0.750
K_POINTS {automatic}
2 2 2 0 0 0
WARNING:
The total number of
electron is odd!
WARNING:
The total number of
electron is odd!
Ry units
./pw.x < sias.inp> sias.out
unit-cell volume = 1064.3323 (a.u.)^3
new unit-cell volume = 1064.3324 (a.u.)^3
new unit-cell volume = 1064.3328 (a.u.)^3
new unit-cell volume = 1064.3336 (a.u.)^3
new unit-cell volume = 1064.3352 (a.u.)^3
---------------------------------
new unit-cell volume = 1064.3773 (a.u.)^3
new unit-cell volume = 1064.3871 (a.u.)^3
new unit-cell volume = 1064.3973 (a.u.)^3
final unit-cell volume = 1064.3973 (a.u.)^3
unit-cell volume = 1064.3323 (a.u.)^3
new unit-cell volume = 1064.3324 (a.u.)^3
new unit-cell volume = 1064.3328 (a.u.)^3
new unit-cell volume = 1064.3336 (a.u.)^3
new unit-cell volume = 1064.3352 (a.u.)^3
---------------------------------
new unit-cell volume = 1064.3773 (a.u.)^3
new unit-cell volume = 1064.3871 (a.u.)^3
new unit-cell volume = 1064.3973 (a.u.)^3
final unit-cell volume = 1064.3973 (a.u.)^3
Strain calculation:
Strain calculation:
!
=
"a
a
0
=
a
strained
# a
0
a
0
= +2.357 10
#5
grep volume sias.out
grep volume sias.out
Exp.: -0.0019 0.0003
Exp.: -0.0019 0.0003

Vous aimerez peut-être aussi