M04 Computing Vacancy Formation Energy: Difference between revisions

From Micro and Nano Mechanics Group
Jump to navigation Jump to search
(New page: <H1 ALIGN="CENTER"><FONT SIZE="-1">Manual 04 for MD++ </FONT> <BR> Creating a Vacancy, Relaxing The Imperfect Structure <br>and Calculating Vacancy Formation Energy</H1> <DIV> <P ALIGN="...)
 
Line 11: Line 11:


== Making a Vacancy ==
== Making a Vacancy ==
In manual M02, we learned how to create a perfect crystal using MD++. However,
most crystal structures are hardly perfect in natural environmet. It is
common to have various kinds of defects such as point, line, planar and volume
defects. Sometimes, we intend to introduce certain kinds of defects to study the
property of interest.

Vacancy is one of the frequently encountered point defects in solids and can be
considered as a missing atom from the otherwise perfect crystal. In this manual, we will learn
how to create a vacancy inside of the perfect crystal and how to calculate the
vacancy formation energy of the bulk material. Let’s run the following example
script by typing

$ bin/fs gpp scripts/movacancy.script
<pre>
# -*-shell-script-*-
setnolog
setoverwrite
dirname = runs/movacancy # specify run directory

#--------------------------------------------
# Read in potential file
potfile = ~/Codes/MD++/potentials/mo_pot readpot

#--------------------------------------------
#Create Perfect Lattice Configuration
crystalstructure = body-centered-cubic latticeconst = 3.1472 #(A)
latticesize = [ 1 0 0 5
0 1 0 5
0 0 1 5]
makecrystal finalcnfile = perf.cn writecn
eval # evaluate the potential of perfect crystal
#--------------------------------------------
# Create Vacancy
input = [ 1 # number of atoms to be fixed
0] # index of an atom to be fixed
fixatoms_by_ID # fix a set of atoms by their indices
removefixedatoms # remove fixed atoms
finalcnfile = movac.cn writecn
eval # evaluate the vacancy-formed crystal
#---------------------------------------------
# Plot Configuration
atomradius = 1.0 bondradius = 0.3 bondlength = 0
atomcolor = blue highlightcolor = purple backgroundcolor = gray
bondcolor = red fixatomcolor = yellow
plotfreq = 10 win_width = 600 win_height = 600
plot_atom_info = 3
color00 = "orange" color01 = "purple" color02 = "green"
color03 = "magenta" color04 = "cyan" color05 = "purple"
color06 = "gray80" color07 = "white"
plot_color_windows = [ 2 # number of color windows
-10 -6.8 6 # color06 = gray80
-6.7 -6.0 0 # color00 = orange
]
rotateangles = [ 0 0 0 1 ]
openwin alloccolors rotate saverot plot
sleep quit
</pre>

The script above shows how to create a vacancy from the perfect BCC Mo
crystal. First, a 5×5×5 perfect cubic crystal of Mo is created with all the simulation box
edges aligned along <100> directions. Then an atom of ID 0 is fixed by

input = [ 1 # number of atoms to be fixed
0 ] # index of an atom to be fixed
fixatoms by ID

and will be removed by the command '''removefixedatoms''' in the script.
Suppose, if you want to remove two atoms of indices 3 and 8, you can do so by

input = [ 2 # number of atoms to be fixed
3 8 ] # index of atoms to be fixed
fixatoms_by_ID # fix a set of atoms by their index
removefixedatoms # remove fixed atoms

At this moment, you may wonder how we know which atom has which index.
If you click an atom in the visualization window with the left button of the
mouse, it gives the index number and energy of the clicked atom.<ref> This is the case when '''plot_atom_info = 3''' is specified in the script file. If '''plot_atom_info = 1''', the index number and the reduced coordinate of the clicked atom will be given. If '''plot_atom_info = 2''', the index number of the clicked atom and its real coordinate (in &Aring;) will be displayed.</ref>
In the visualization window, you will see the atoms near the vacant site have different color
than the others. In the script file, two color windows are set by the variable
'''plot_color_windows''' according to the potential energy of the individual atom. The atoms
whose energies are between -10 and -6.8 (eV) are shown in gray and the atoms
whose energies lie between -6.7 and -6.0 (eV) are shown in orange. It shows
that the atoms near the vacancy have higher energy than the rest. Click the
atoms and you will see the potential energy of each atom. If you also compare
the potential energy of the perfect structure and the vacancy-formed structure,
you will know which structure has higher energy.

''Q.1'' If a single atom, whose index is other than 0, is removed from the same perfect structure,
do you still expect the final state has the same amount of
energy? Explain the reason.


== Relaxation ==
== Relaxation ==

Revision as of 00:03, 28 November 2007

Manual 04 for MD++
Creating a Vacancy, Relaxing The Imperfect Structure
and Calculating Vacancy Formation Energy

Keonwook Kang and Wei Cai

Nov 27 , 2007



Making a Vacancy

In manual M02, we learned how to create a perfect crystal using MD++. However, most crystal structures are hardly perfect in natural environmet. It is common to have various kinds of defects such as point, line, planar and volume defects. Sometimes, we intend to introduce certain kinds of defects to study the property of interest.

Vacancy is one of the frequently encountered point defects in solids and can be considered as a missing atom from the otherwise perfect crystal. In this manual, we will learn how to create a vacancy inside of the perfect crystal and how to calculate the vacancy formation energy of the bulk material. Let’s run the following example script by typing

$ bin/fs gpp scripts/movacancy.script
# -*-shell-script-*-
setnolog
setoverwrite
dirname = runs/movacancy # specify run directory

#--------------------------------------------
# Read in potential file
potfile = ~/Codes/MD++/potentials/mo_pot readpot

#--------------------------------------------
#Create Perfect Lattice Configuration
crystalstructure = body-centered-cubic latticeconst = 3.1472 #(A)
latticesize = [ 1 0 0 5
                0 1 0 5
                0 0 1 5]
makecrystal finalcnfile = perf.cn writecn
eval # evaluate the potential of perfect crystal
#--------------------------------------------
# Create Vacancy
input = [ 1      # number of atoms to be fixed
          0]     # index of an atom to be fixed
fixatoms_by_ID   # fix a set of atoms by their indices
removefixedatoms # remove fixed atoms
finalcnfile = movac.cn writecn
eval # evaluate the vacancy-formed crystal
#---------------------------------------------
# Plot Configuration
atomradius = 1.0 bondradius = 0.3 bondlength = 0
atomcolor = blue highlightcolor = purple backgroundcolor = gray
bondcolor = red   fixatomcolor = yellow
plotfreq = 10 win_width = 600    win_height = 600
plot_atom_info = 3
color00 = "orange" color01 = "purple" color02 = "green"
color03 = "magenta" color04 = "cyan"   color05 = "purple"
color06 = "gray80" color07 = "white"
plot_color_windows = [ 2             # number of color windows
                      -10  -6.8   6  # color06 = gray80
                      -6.7 -6.0   0  # color00 = orange
                     ]
rotateangles = [ 0 0 0 1 ]
openwin alloccolors rotate saverot plot
sleep quit

The script above shows how to create a vacancy from the perfect BCC Mo crystal. First, a 5×5×5 perfect cubic crystal of Mo is created with all the simulation box edges aligned along <100> directions. Then an atom of ID 0 is fixed by

   input = [ 1         # number of atoms to be fixed
             0 ]       # index of an atom to be fixed
   fixatoms by ID

and will be removed by the command removefixedatoms in the script. Suppose, if you want to remove two atoms of indices 3 and 8, you can do so by

input = [ 2            #  number of atoms to be fixed
          3 8 ]        #  index of atoms to be fixed
fixatoms_by_ID         #  fix a set of atoms by their index
removefixedatoms       # remove fixed atoms

At this moment, you may wonder how we know which atom has which index. If you click an atom in the visualization window with the left button of the mouse, it gives the index number and energy of the clicked atom.[1] In the visualization window, you will see the atoms near the vacant site have different color than the others. In the script file, two color windows are set by the variable plot_color_windows according to the potential energy of the individual atom. The atoms whose energies are between -10 and -6.8 (eV) are shown in gray and the atoms whose energies lie between -6.7 and -6.0 (eV) are shown in orange. It shows that the atoms near the vacancy have higher energy than the rest. Click the atoms and you will see the potential energy of each atom. If you also compare the potential energy of the perfect structure and the vacancy-formed structure, you will know which structure has higher energy.

Q.1 If a single atom, whose index is other than 0, is removed from the same perfect structure, do you still expect the final state has the same amount of energy? Explain the reason.

Relaxation

Vacancy Formation Energy

Notes

  1. This is the case when plot_atom_info = 3 is specified in the script file. If plot_atom_info = 1, the index number and the reduced coordinate of the clicked atom will be given. If plot_atom_info = 2, the index number of the clicked atom and its real coordinate (in Å) will be displayed.