-
Molecular Dynamics and Density Functional Theory
What do we need?
• An account in “pemfc” cluster:
Host name: pemfc.chem.sfu.ca
I will take care of that. This can be usually a common account
for all of you but
please at the beginning of your work every group makes its own
directory.
• pemfc cluster is a linux based cluster, therefore you
should
know some linux commands. I will give you a list of important
linux commands later.
• The following packages:
1. “putty.exe” a open shell program for SSH under the
windows.
With that you can connect to pemfc cluster and run the
programs/commands
of the cluster.2. “psftp.exe” a open shell program for ftp to
transfer your files from your
computer to the pemfc cluster and vise versa.
you can download them from the following address (they are
free):
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
3. “rasmol” it is a graphic interface packege in which you can
see the position of the atoms in your system
you can download it from the following address:
http://www.bernstein-plus-sons.com/software/rasmol/
(please download the latest version under the windows
-
The aim of this project
We want to calculate the first or possibility both of the
following items:
• Hydrogen or CO adsorption energy.
• Molecular dynamics simulation of a hydrogen atom or a CO
molecule
adsorbed on a Pd slab.
Hydrogen and CO adsorption energies
In order to calculate the CO adsorption energy on a Pd slab we
have
to do:
1. Calculate the total energy of a Pd slab. The total energy
means all interaction energies between all the Pd-Pd atoms. We
call it EslabNote that each atom has proton + electrons and the
electrons can interact with each other (What is the sign of the
total energy?) Fig.1 shows a
slab of Pd(111) with 4 layers of Pd.
Fig.1 shows a slab of Pd(111) with 4 layers of Pd.
When we say Pd(111) that means a Pd bulk
which is cut along the surface (111). We have
infinite number of Pd atoms along x and y
direction (in the picture it shows only part of that)
2. We have to calculate the total energy of a CO molecule in a
gas phase (in the vacuum
and in the absence of everything). It is called ECO.
3. We have to calculate the total energy of a slab of Pd when CO
molecule is
adsorbed on that (Eslab+CO). That means the interaction of all
Pd atoms with each other
including CO molecule. Fig.2 shows a picture of the Pd slab when
CO is adsorbed on top of it.
Fig.2 CO adsorption on Pd(111) slab. The
total energy contains all the interactions
including the interaction with CO.
-
Hence the CO adsorption energy Eads (or CO-Pd binding energy)
can be obtained by:
Eads= Eslab+CO – Eslab - ECO
Now the question is how we can calculate the total energy of for
example
a slab of Pd?
Ab-initio total energy calculation of a system of nucleons and
electrons
Fig.3 System of nucleons (red) and
electrons (gray). The nucleons
consider as classical particles
while electrons consider as
quantum particles
When we say ab-initio calculation this means calculations in
which we need no
experimental data for that as an input, i.e. atomic radius,
binding energies, ionization
energies....
In order to calculate the total energy of a system of nucleons
and electrons (see Fig.3
for example) we have to consider two facts:
1. In principal electrons and nucleons are very small therefore
we have to consider them
as quantum particles. When we say quantum particles that means
that at
time t=t0 we can not say exactly where they are and what energy
they have.We have to consider them as a wave packet or
wavefunction.
Since in our case nucleons are Pd and they are much bigger
compare to electrons we
approximately consider the nucleons as classical particles.
Electrons -> quantum particles -> Wavefunction ->
Charge density n(r) -> Schrödinger eq.
Nucleons -> classical particles -> Point charge ->
Newton law
2. “Born-Oppenheimer approximation: is based on smallness of the
electron mass as
compared to the nuclear mass. Within this approximation when we
want to solve
the Schrödinger Eq. for electrons the nuclei are regarded as a
fixed charges.
-
where Ψ
is the total wave function of the system and
HΨ
= E Ψ
H = T + Ve-e + Vext
is the Hamiltonian. Ve-e is electron-electron coulomb
interaction and it is given by:
Fig. 4 The electronic charge
density n(r) of a system of electrons.
The charge density is larger in
the darker region. Vext is a source
of an external potential i.e. a proton.
∫ −=−
'rr
'dr)'r(n]n[V ee
xy
z
n(r’)r’
r
r-r’
Charge density of electrons n(r)
Vext
Vext
Vext
Vext
Schrödinger equation for system of electrons
Suppose that we would like to calculate the total energy of a
system.
First we have to calculate the Schrödinger equation for
electrons and then
determine the total energy of electrons Eel and then calculate
the energy of the ions EionThe total energy will be given by: Etot
= Eel + Eion
∑= −
=N
1i i
ext|Rr|
z]n[V
xy
z
zRi
r
r-Ri
T is the kinetic energy operator of the interacting system. The
bad news is that
there no analytical form for T and Ψ
therefore there is no solution for
Schrödinger equation.
and Vext is the interaction with an external potential. In our
case the external
potential is just electron-proton interaction:
Ri is the position of ions.
-
Based on the DFT and these two theories the many body problem of
fully
interacting particles in an external potential Vext (or
potential from the protons) is
simply replaced by a system of non-interacting particles in a
effective potential Veff giving the same ground state charge
density.
H = T + Ve-e+ Vext Hs= Ts + Veff
Interacting particles (electrons) Non interacting particles
Veff = Ve-e + Vext + Vxc
where Hs is the Hamiltonian of a non interacting system and Ts
is now the
kinetic operator of a non-interacting system with N particles
which can be
easily given by:
2
2N
1i
2
sdr
d
m2T ∑
=
−= h
The effective potential Veff is:
It has one extra term which contains all the energy contribution
which were not
taking into account in the transition from the interacting
system to the non-interacting system. Vxc is called
exchange-correlation potential which introduce
quantum mechanical many-body electronic effects into the model
and a portion
of the kinetic energy which is needed to correct Ts to obtain
the true kinetic operator
of a real system T.
Density Functional Theory (DFT)
Theory1: External potential is a unique functional of the
density n(r). That means
if we have a system of electrons, the ground state density
n0(r)
corresponding to an external potential (like the potential from
the protons) Vext can not be reproduced using any other potential
V’ext.
This theory was introduced in 1964 by Hohenberg and Kohn*. It is
based on two
mathematical theories:
* W. Kohn and L. J. Sham. Phys. Rev., 140: A1133, 1995
* P. Hohenberg, W. Kohn. Phys. Rev., 136: B864, 1964
Theory 2: The correct ground state density n0(r) minimizes the
total energy
functional.
DFT
-
The exchange-correlation potential can be expressed as:
dn
]n[dE]n[V xcxc =
where Exc[n] is the exchange-corralation energy.
The above DFT is formally exact, but as such it is unless in
practical applications
because all the difficulties related to the exchange correlation
energy are still unsolved.
To proceed further it is necessary to find an approximation for
the exchange correlation energy. The most common approach is the
Local Density Approximation LDA which
describes quite well a large number of systems and has been
successfully applied to
some ab-initio calculations. Within this approximation the
exchange correlation energy
is given by:
dr)r(n)n(]n[E xcxc ∫ ε=
where ε xc(n) is the energy of a homogeneous electron gas and it
is known. Thereforethe Exc[n] and hence Vxc[n] are all known.
This approximation has been shown capable of dealing on the same
ground with atoms, molecules, clusters, surfaces and interfaces
which have been successfully reproduced. Nevertheless, besides
these successes there are also some drawbacks of the approximation.
For instance, the cohesive energies of solids are systematically
overestimates, while lattice constants are systematically
underestimated Errors in the structural properties are usually
small for crystals with covalent or metallic bonds, but it is well
known that the hydrogen bond cannot be described accurately within
LDA In the field of metals, the ground state structure of
crystalline iron is predicted to be paramagnetic fcc, instead of a
ferromagnetic bcc. Various approximations have been introduced in
the course of the years to improve LDA. The generalized gradient
approximation(GGA) is one of those approximations which is more or
less commonly accepted to be an improvement over LDA. Another
approach to obtain a more accurate results is to construct a
functional which depends not only on charge density n(r) but also
on the magnitude of the gradient of the charge density . This
approach is called Generalized Gradient Approximation GGA.
|)n(| n∇
The choice of the functional form for the GGA is not unique and
many differentfunctional have been proposed. Among the many types
of functional, in this workwe used Perdew-Wang* 1991 functional
(PW91).
John P. Perdew and et.al, phys., Rev. B, 46:6671, 1992
-
Implementation
What we have done so far was to express the effective potential
Veff in terms of Ve-e[n],
Vext[n] and Vxc[n]:
Veff[n] = Ve-e[n] + Vext[n] + Vxc[n]
In order to calculate to total energy of the system of electrons
we need to solve
the following Schrödinger equation.
HsΨ
= EelΨ →
(Ts + Ve-e[n] + Vext[n] + Vxc[n]) Ψ
= EelΨ
Since the particles in our system does not interact with each
other the total wave
function can be written as the super position of the one
particle wave function andtherefore the above equation can be given
as a set of single-particle equations known
as one-particle Kohn-Sham equations.
(Ts + Ve-e[n] + Vext[n] + Vxc[n]) φ i = ε i φ i , i=1,….,Nwhere
N in the total number of particles in the system, therefore we need
to solve
N times of this equation. Note that in order to solve this
equation we need to knowthe charge density of the system n(r). But
on the other hand the charge density
of the system is given by:
∑=
ϕ=N
1i
2i ||)r(n
which depends on φ i. The effective potential depends on the
density, the density depends on Kohn-Sham orbitals (φ i) and
Kohn-Sham orbitals depends on the effective potential!!
This set of equations form a loop which has to be solved self
consistently since the
Hamiltonian is a functional fo wavefunctions and
wavefunctions
themselves are the solution of the Hamiltonian: One starts i.e.
with the approximate density, constructs the effective potential
and solve the Kohn-Sham equation to obtain
the orbitals which are then used to calculate the new density
and new effective
potential and new orbitals etc. This procedure is continued
until the density, orbitals
and hence total energy of electrons no longer change from
previous interaction.
The result of solving the above self consistent equation are the
total
energy of the electrons:
∑ε=i
ielE
and Kohn-Sham orbitals φ i and charge density n(r) (see
flowchart 1)
-
Trial charge density n(r)
Set up Hamiltonian
H=Ts+Ve-e+Vext+Vxc
calculate the wavefunctions
and the total energy E from
one-particle Shrodinger Eq.
∑=
ϕ=N
1i
2newi ||)r(n
E,newiϕ
newiϕ
5i
newi 10||
−
-
Basis set-Plane wave
In this section we are going to briefly explain how we can solve
the Kohn-Sham equation
and obtain the wavefunctions and energies. If we multiply both
sides of the Kohn-Sham
Eq.? by φ *i(r) and take an integral from both sides we
gets:
)r.ikexp(.C)r(1k
k,ii ∑∞
=
=ϕ
One way to solve the Kohn-Sham equation is to expand the
wavefunction φ i in a plane wave basis set. Using plane wave as a
basis set has some advantages and some disadvantage. The advantage
of using the plane wave is that it which help us to simplify the
above Kohn-Sham equation.
( ) dr)r()r(dr)r(]n[V]n[V]n[V)r(dr).r(dr
d).r(
m2i
*iiixcextee
*ii2
2*i
2
∫∫∫ ϕϕε=ϕ++ϕ+ϕϕ−
−h
where mathematically the sum is over a infinite number of plane
wave but of course in practice we see that it already converges for
a large number of plane wave. By substituting this equation into
the above Shrodinger equation and using thefollowing mathematical
principal:
( ) ( ) 'kkdrr'ikexp.rikexp δ=⋅⋅∫
We end up with a matrix with Nmax x Nmax elements where Nmax is
the number ofthe plane waves.
Nmax depends very much to the size of your system. i.e. number
of atoms in your system and also the elements you use. it can be as
big as 1e+5 number of plane waves. In order to get φ i and ε i from
the matrix we need to diagonal it which of course needs a powerful
computer or even several computers working as parallel.
Reminding: When φ i and ε i are calculated in the next iteration
a new charge density should be constructed and again a new matrix
should be diagonalized. Usually 10-30 iterations in needed to get
the total energy of the system self consistently.
-
Total energy of the system
The total energy of the system will be then the sum over the
total energy of electrons
and protons:
Etot = Eel + Eion
where Eion is just the culomb interaction between ions
∑≠ −
=ji,j,i
2ji
2
ion|RR|
ZE
where Ri and Rj are the position of the ions.
After we calculated the total energy we can then calculate the
force on each ion in thesystem
i
toti
dR
dEF =
Now if you want to perform a geometry optimization the ions will
move along the force
Fi in the next ionic interactions until we approach to a
situation where there is no
significant force on any ions. In this case you have found the
relaxed position for ions. In this point the total energy of the
last ionic interaction is what you need for
calculating the adsorption energy. Note the you have two types
of loop (iteration):
inner loop or electronic iteraction and outer loop or ionic
iteration. See flowchart 2.
What is the difference between Molecular dynamics and geometry
optimization?
When you perform the geometry optimization in every ionic
iteration the initial velocity
of ions are zero and therefore when you move the ions along the
forces you always go
along the more minimum energy and finally you get to global
minimum energy. It is like moving a spring toward to its
equilibrium position very slowly, so in equilibrium point (or
global
minimum energy) there is no force on ions and since you have to
initial velocity you
stop there. When you perfome a molecular dynamics in every ionic
iteration
you consider the initial velocity V0≠0 for the ions and
therefore when you move the ion along
the force you will approach to the minimum energy (or
equilibrum) but you will pass this pointin the next iterations due
to having initial velocity (it is like a pendulum where the
solid
oscillate around its minimum
-
Trial charge density n(r)
Set up Hamiltonian
H=Ts+Ve-e+Vext+Vxc
calculate the wavefunctions
and the total energy E from
one-particle Shrodinger Eq.
∑=
ϕ=N
1i
2newi ||)r(n
E,newiϕ
newiϕ
5i
newi 10||
−
-
Geometry optimization
Fion Fion
Next ionic
iteration
Next ionic
iteration
In each iteration the initial velocity is zero (T=0K)
-
Molecular dynamics
Fion FionNext ionic
iteration i=2
Next ionic
iteration i=3
In each iteration the initial velocity is not zero. It is
calculated accordingto the temperature of the system
First configuration
Fion FionFion
i=4i=5i=6
-
Problem with Kohn-Sham equations:
The one-particle Kohn-Sham equations can be solved for an
isolated
system with maximum few hundred number of particles. In a
crystal or a slab however we are dealing with a order of 1023
number of atoms. Simulating
such an amount of particles is a impossible task. Therefore a
simplification needs
to be done. If the system is fully periodic a appropriate choice
would be to
use periodic boundary conditions. This can be done by using
the
definition of a Bravais lattice.
-
Bravais lattices:
A Bravais lattice is a fundamental concept in the description of
any crystalline solid,
which specifies the periodic array in which the repeated units
of crystal are arranged. A Bravais lattice is an infinite array of
discrete points with an arrangement and
orientation that appears exactly the same on all Bravais lattice
points. It consist
of all points with position R of the form:
R = n1 a1 + n2 a2 + n3 a3
where a1, a2 and a3 are any three vectors not all in the same
plane and n1, n2 and n3 are all integer values. Therefore if there
is an atom or a specific electronic structure at position r the
same atom or structure is repeated along threebasis vectors a1,2,3
(see Fig1 for two dimension). The calculation saving
comes since only the atoms and electrons inside the unit
cell
of the calculation - called super-cell and shown in the Fig 1
with thick solid
lines - needs to be explicitly considered.
Fig 1. replication of super-cell c along x, y and z
direction.
Thre are 6 atoms of type 1 and four atoms of type 2 exist in the
super cell.
-
The super cell and the Bravais lattice vectors a1 and a2 in Fig.
2 are as following:
a1
a2
x
y
a
a1 = a i = (1 0 0) aa2 = a j = (0 1 0) a
There are two atoms in the super cell. The position
of these two atoms are (000) and (½ ½ 0). Note thatwe still
consider a two dimension Bravais lattice
therefore the position of atoms along
z-direction are zero.
a1a2
x
y
Primitive unit cell: is a super cell in which contains only one
atom. The Bravais lattice of a primitive super cell (or unit cell)
of fig. 2 is given by:
Fig. 2
( ) ( )( )( )
+=+= j
2
2i
2
2a4545a oo sincosa1
( ) ( )( )( )
+−=+−= j
2
2i
2
2a4545a2
oo sincosa
Fig.3
-
Now with that overview we are going to three-dimension Bravais
lattice. Lets assume
we have fcc structure which is cut along surface(100)..
First layer (a3=0)
a1
a2
a3
a1
a2
(0 0 0)
(½ ½ ½ )
If we consider the following Bravais
lattice vectors:
a1 = a i
a2 = a j (Equation. A)
a3 = a k
then the position of the atoms
in the first layer (where a3=0)will be:
Atom 1: (0 0 0)
Atom 2: ( ½ ½ ½ )
Fig.4
And according to Fig.4 the position of the atoms in second layer
(where a3= ½ ) will be:
Atom1: ( ½ 0 ½ )
Atom2: (0 ½ ½ ) Second layer (a3= ½ a)
(0 ½ ½ )
(½ 0 ½ )
-
And since we have indicated a3 = a j therefore the 3rd layer
(where a3 = a)
is the same as first layer (where a3 = 0). This is in agreement
with Fig.4.
Exercise 1: Consider the same surface (100) and try to indicate
the position of
the atoms and Bravais lattice vectors for a primitive unit cell.
This result will bevery useful for your project.
Exercise 2: Do the same as exercise 1 for surface (110).
Exersice 3: Try to specify the Bravais lattice vectors for a
primitive unit cell of
a (111) surface.
By considering the Barvais lattice vectors equation A we will
have a big problem.
The problem is that they do not represent any surface. They just
show a fcc bulk(see Fig.5)! However in order to show a surface we
should be able to break the
symmetry along the z axes! How can we do that?
Top-view
a1
a3a2
Side view
1st layer (blue)
2nd layer (red)
+∞
-∞
a3
Fig. 5