Table of Contents
Atomistix ToolKit can model the electronic properties of closed and open quantum systems based on density-functional theory (DFT) using numerical basis sets.
The key parameter in the self-consistent loop is the density matrix. For open systems, the density matrix is calculated using non-equilibrium Green's functions, while for closed or periodic systems it is calculated by diagonalizing the Kohn-Sham Hamiltonian. The Density Matrix defines the electron density, and the electron density sets up an effective potential, i.e. the Hartree and exchange-correlation potential. From the effective potential, we can obtain the Kohn-Sham Hamiltonian.
In the section called “Background information”, we describe the mathematical formalism behind the ATK-DFT Model.
|
|
Note |
|---|---|
|
To use DFT models in ATK it is necessary to have the |
The LCAOCalculator provides a description of the electronic structure using Density Functional Theory and norm-conserving pseudopotentials. The method is based on an expansion of the wave functions in numerical orbitals with compact support. In this section we will describe some of the the mathematical formalism behind ATK-DFT, which closely follows the implementation of Soler et al. [19].
In DFT, the electronic structure of the system is described in terms of the one-electron Kohn-Sham Hamiltonian
In this equation the first term describes the kinetic energy of the electron. The
second term describes an effective potential energy of the electron moving in the
mean field from the other electrons, where the other electrons are described in
terms of the total electron density
.
The electron density is described in detail in the section called “Electron density” and the effective potential in the section called “Effective potential”
We will now find the one-electron eigenstates of the Kohn-Sham Hamiltonian by solving the one-electron Schrödinger equation
To solve this differential equation we expand the wave functions in a set of basis functions
and this modifies the differential equation into a matrix
equation for determining
The Hamiltonian matrix,
and overlap matrix
are given by 3D integrals over the basis functions.
The occupied eigenstates defines the electron density of the system
where
is the Fermi function,
the Fermi energy, and
the electron
temperature.
The density is conveniently represented in terms of the density matrix
where the density matrix is given by basis set expansion coefficients
|
|
Note |
|---|---|
|
For open systems (DeviceConfiguration), the density matrix is calculated using non-equilibrium Greens functions The NEGF formalism in ATK |
It is often convenient to compare the electron density with a superposition of
atom based densities,
, where
is the position of atom
,
is called the electron difference density and is calculated with the ElectronDifferenceDensity keyword .
The Effective potential has 3 contributions:
The two first terms are due to interactions with the other electrons (represented
through the electron density). The first term,
, is the
Hartree potential due to the mean-field electrostatic interaction, and the second
term,
, is the exchange-correlation potential caused by the
quantum mechanical nature of the electrons.
represents any other electrostatic interactions in the
system. It can be separated into contributions from the ions potentials
(represented by norm-conserving pseudo-potentials), and the electrostatic
interaction with an external electrostatic field.
The external potential is given by the pseudo-potentials and an external electrostatic field. Such a field may arise from the inclusion of metallic gates
The pseudo potential has two contributions,
where the first part is a local interaction and the last part is a non-local interaction
|
|
Note |
|---|---|
|
Due to the non-local part of the pseudo-potential, the range of the Hamiltonian is longer than twice the interaction range of the basis functions. |
The
is the electrostatic potential from the external
gates calculated with zero electron density. This term is calculated with the
MultigridSolver and included in the ElectrostaticDifferencePotential.
From the electron density, we can calculate the classical electrostatic potential, the so-called Hartree potential. The calculation of the Hartree potential is described in detail in the section called “The Hartree Potential”.
In DFT, the quantum mechanical effect of the other electrons are included through the exchange-correlation energy. There exists a number of different approximations for the exchange-correlation energy and in ATK we support an extensive list of different approximations for calculating the exchange-correlation energy, see the section called “Exchange-correlation energy”
The exchange-correlation potential is the functional derivative of the exchange-correlation energy, and is a mean-field quantum mechanical interaction potential between the electrons
In DFT, the total energy is a functional of the electron density
and given by
where
is the kinetic energy of the Kohn-Sham orbitals,
is the exchange-correlation energy,
is the Hartree energy and
is the interaction energy with the pseudo potential ions and other electrostatic external potentials.
The total energy is calculated with the class TotalEnergy .
The forces are calculated by differentiating the total energy with respect to the ionic coordinate of atom
at position
ATK uses norm-conserving pseudopotentials and is shipped with a database of pseudopotentials for the entire periodic table. This database is under review and will be updated to provide more accurate, general purpose pseudopotentials.
Through the use of the keyword NormConservingPseudoPotential it is possible to specify your own pseudo potential.
ATK uses the unified pseudo potential format (upf) defined
by the PWSCF consortium. From their website, it is possible to download tools that
can convert several different pseudo-potential formats into a
upf file.
The electronic structure is expanded in a basis of local atomic orbitals (LCAO's)
where
is a spherical harmonic and
is a radial function with compact support (i.e. exactly
zero outside a confinement radius).
ATK has 3 different types of basis functions:
The basis orbitals has a number of parameters that determines the shape of the orbitals. It is possible to assemble the basis orbitals into your own basis set through the use of the BasisSet keyword.
ATK comes with a number of pre-build basis sets for each element. The basis sets types are listed below. The basis sets are ordered with increasing number of basis orbitals. Basis sets with more orbitals are more accurate, at the expense of increasing the computational time.
One ConfinedOrbital for each occupied valence orbital in the atom.
One ConfinedOrbital and one AnalyticalSplit for each occupied valence orbital in the atom.
One ConfinedOrbital for each occupied valence orbital in the atom, and one PolarizationOrbital for the first unoccupied shell in the atom.
One ConfinedOrbital and one AnalyticalSplit for each occupied valence orbital in the atom. One PolarizationOrbital for the first unoccupied shell in the atom.
One ConfinedOrbital and one AnalyticalSplit for each occupied valence orbital in the atom. One PolarizationOrbital and one AnalyticalSplit for the first unoccupied shell in the atom.
The standard basis orbitals can be inspected with VNL. Open the Custom Analyzer tool
.
and select
Analyzers
→
Basis Set Explorer
.
Figure 2:
DoubleZetaPolarized basis set for Silicon. The angular momentum,
of the basis orbitals are evident from the asymptotic behaviour
at the origo. Thus the 3s basis-orbitals are
red and dark-green with values 0.18 and
0.32 at origo. The 3p basis-orbitals are
black and blue, and increase linearly
around origo. The 4d basis-orbital is
turquise and increases quadratically around origo. Note, that
the basis orbitals are Gram-Schmidt
orthogonalized.
The ATK package use the libxc library for providing a large set of Exchange correlation functionals. For each functional it is possible to add a mean field Hubbard correction, as described in the section called “XC+U mean-field Hubbard term”
The main family of Exchange-Correlation functionals supported in ATK are Local Density Approximations(LDA) and Generalized Gradient Approximations (GGA). Each functional comes in two variants, a non-polarized and a spin-polarized version. By selecting the variant, the user will determine whatever the calculation will be spin polarized or non-polarized.
In LDA the exchange-correlation functional is taken as a function of the local density
where
is the exchange-correlation energy
density of a homogeneous electron gas with density
.
It is possible to calculate the exact exchange energy for the homogeneous electron gas, the so-called Dirac-Bloch exchange energy, which is used for all LDA functionals. The correlation energy cannot be calculated exactly, however, and a number of different approximations exists. Most of them give almost identical results; the most commonly used variant is the parametrization by Perdew and Zunger, available through the keywords LDA.PZ and LSDA.PZ.
For a list of the parametrizations for the LDA correlation available in ATK see the documentation of the ExchangeCorrelation class.
The Generalized Gradient Approximations (GGA) denotes local exchange-correlation functionals, where the functional depends on both the local value and the local gradient of the density
For a list of the GGA exchange-correlation functionals available in ATK see the documentation of the ExchangeCorrelation class.
Meta-GGA is a higher-level approximation to GGA which can provide a much more accurate description of the band gap of semiconductors compared to LDA and GGA. In fact, the results are often comparable to methods with a significantly higher complexity level (and associated computational cost) like GW.
A noteworthy detail about the meta-GGA exchange potential is that it can usually not be written as a derivative of an exchange functional. Therefore, meta-GGA is not recommended for geometry optimizations; for that, one should use standard GGA.
Moreover, although the method can give very accurate band gaps for semiconductors and insulators, meta-GGA typically performs rather poorly for metals. Therefore, for systems involving both metals and semiconductors/insulators, it is better to use the Hubbard U model within LDA or GGA, with the U parameters for the semiconductor elements fitted against meta-GGA results.
For a list of the meta-GGA exchange parametrizations available in ATK see the documentation of the ExchangeCorrelation class.
The local approximations to the exchange-correlation energy has a number of short comings, where the most important are
Self interaction, an electron interacts with itself and this prevents electrons from localizing.
Poor approximation for excited states, band gaps are often too low.
The mean field Hubbard correction, popularly called LDA+U or XC+U, is a semi-empirical correction which tries to improve on these deficiencies of the local exchange-correlation functionals.
In the XC+U an additional energy term,
is added to the Exchange-Correlation energy [26]. In this equation
is the projection onto an atomic shell and
is the
“Hubbard U” for that shell. The
energy term is zero for a fully
occupied or un-occupied shell, while positive for a fractional occupied shell.
The energy is thereby lowered if states become fully occupied. This may happen if the energy levels move away from the Fermi Level, i.e. increasing the band gap, or if the broadening of the states is decreased, i.e. the electrons are localized. Thus, the Hubbard U improves on the deficiencies of the local exchange-correlation functional listed above.
The value of
is often used as an empirical parameter which is varied
in order to improve the comparison between DFT and experimental data. However, it
has also been suggested that the value of U is obtained by minimizing the total
energy of the system [26].
Some caution must be taken when using the XC+U correction, since for large U values the electron density may have several local minima where some of them are unphysical, and it is often necessary to select an anisotropic initial electron state to reach the correct local minimum.
The XC+U implementation in ATK comes in two variants, a standard local orbital formulation, socalled onsite representation, and the dual representation introduced by Han et al. [27]. The difference between the two implementations is in the definition of the local occupation matrix.
In the onsite representation the local occupation matrix is given by
where
is the density matrix,
and
a spin index.
In the dual representation the local occupation matrix is given by
where
is the overlap matrix.
The onsite representation correspond to projecting into a local orbital, and since the local orbitals are non-orthogonal there are no sum rules for the occupation matrix.
In the dual representation the occupation matrix has the form of a Mulliken Population, and this form has the advantage that sum rules apply, i.e. the trace of the occupation matrix sum up to the total number of electrons.
The dual representation corresponds to projecting into orthogonalized orbitals. Such orbitals may have weights also on neighboring centers, and it is our experience that this non-locality in some cases can result in non physical results. The default in ATK is therefore to use the onsite representation.
The Hubbard U approximation in the onsite representation may be selected through the keywords, LDAU.XCTYPE, LSDAU.XCTYPE, GGAU.XCTYP, SGGAU.XCTYPE.
The LSDAU.PZ keyword is an abbreviation of the ExchangeCorrelation keyword ExchangeCorrelation, and the specification
exchange_correlation = LSDAU.PZ
is identical to
exchange_correlation = ExchangeCorrelation(
exchange=DiracBloch,
correlation=PerdewZunger,
hubbard_term=Onsite,
number_of_spins=2,
)
Use this form with the keyword hubbard_term=Dual to select
the dual representation.
The value of the U term is specified through the basis set
basis_set = [LDABasis.Nickel_SingleZeta(hubbard_u=[4.6, 0.0]*eV,
filling_method = Anisotropic)]
which will give a single-zeta basis set for Nickel, consisting of a 3d and a 4s
orbital, where the 3d orbital has a U=4.6 eV. The 3d orbitals are filled
anisotropic, i.e, there are 1 electron in m=-2,-1,0,1 leaving m=2 empty. (The
alternative is SphericalSymmetric which adds 4/5 electron
in each orbital.)