1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389
|
<html>
<head>
<title>Tutorial DFT+U</title>
</head>
<body bgcolor="#ffffff">
<hr>
<h1>ABINIT, tutorial on DFT+U :</h1>
<h2>The projected density of states of NiO </h2>
<hr>
<p>This lesson aims at showing how to perform
a DFT+U calculation using Abinit.</p>
<p>You will learn what is a DFT+U calculation
and what are the main input variables controlling this type of calculation.</p>
<p>It is supposed that you already know how to
do PAW calculations using ABINIT. Please follow the two lessons
on PAW in ABINIT
(<a href="lesson_paw1.html">PAW1</a>,
<a href="lesson_paw2.html">PAW2</a>),
if this is not the case.</p>
<p>This lesson should take about 1 hour to
complete.</p>
<h5>Copyright (C) 2008-2014 ABINIT group (SPesant,MCote,XG,BAmadon)
<br> This file is distributed under the terms of the GNU General Public License, see
~abinit/COPYING or <a href="http://www.gnu.org/copyleft/gpl.txt">
http://www.gnu.org/copyleft/gpl.txt </a>.
<br> For the initials of contributors, see ~abinit/doc/developers/contributors.txt .
</h5>
<script type="text/javascript" src="list_internal_links.js"> </script>
<h3><b>Content of the DFT+U lesson</b></h3>
<ul>
<li><a href="#0">0.</a> Short summary of the DFT+U method
<li><a href="#1">1.</a> Ground state calculation of NiO using LDA
<li><a href="#2">2.</a> Ground state calculation of NiO using
DFT+U with the FLL double-counting method.
<li><a href="#3">3.</a> Initialization of the density matrix in
DFT+U for the NiO crystal
<li><a href="#4">4.</a> Ground state calculation of NiO using
DFT+U with the AMF double-counting method.
<li><a href="#5">5.</a> Projected density of states in DFT+U
</ul>
<hr>
<h3><b><a name="0">0.</a> Short summary
of the DFT+U method</b></h3>
<p>The standard Local Density Approximation
(LDA), where the exchange and correlation energy is fit to homogenous
electron gas results, is a functional that works well for a vast number of compounds.
But, for some crystals, the interactions between electrons are so important that
they cannot be represented by the LDA alone. Generally, these highly correlated
materials contain rare-earth metals or transition metals, which have partially
filled d or f bands and thus localized electrons. </p>
<p>The LDA tends to delocalize electrons over
the crystal, and each electron feels an average of the Coulombic potential. For
highly correlated materials, the large Coulombic repulsion between localized
electrons might not be well represented by a functional such as the LDA. A way
to avoid this problem is to add a Hubbard-like, localised term, to the LDA density functional.
This approach is known as LDA+U (actually DFT+U). In the actual implementation,
we separate localized d or f electrons, on which
the Hubbard term will act, from the delocalized ones (s and p electrons). The latter are correctly described by
the usual LDA calculation. In order to avoid the double counting of the correlation
part for localized electrons (already included in the LDA, although in an average manner),
another term - called the double-counting correction - is subtracted from
the Hamiltonian.</p>
<p>In Abinit, two double-counting corrections
are currently implemented :</p>
<p>-The Full localized limit (FLL) (see A.
Lichtenstein et al PRB 52, 5467 (1995))</p>
<p>-The Around Mean Field (AMF) (see M. T. Czyzyk
and G. A. Sawatzky PRB 49, 14211 (1994))</p>
<p>For some systems, the result might depend on the choice of the
double-counting method. However, the two
methods generally give similar results. </p>
<hr>
<h3><b><a name="1">1.</a>
Ground state
calculation of NiO using LDA</b></h3>
<p>You might create a subdirectory of the
~abinit/tests/tutorial directory, and use it for the tutorial. In what follows,
the names of files will be mentioned as if you were in this subdirectory</p>
<p><i>Copy the files ../Input/tldau_1.in and
../Input/tldau_1.files in your Work directory and run</i></p>
<p>This run should take less than 30 seconds on a PC 3 GHz.
It calculates the LDA ground state of the NiO crystal.
A low cutoff and a small number of k-points are used in order to speed up the
calculation.
During this time you can take a look at the input file.
<p>
The NiO crystallizes in the rocksalt structure, with one Ni and one O atom in the
primitive cell (the crystallographic primitive cell). However,
NiO is known to exhibit an antiferromagnetic ordering at low temperature
(along the <111> direction).
From the electronic point of view, the true unit cell has two Ni and two O atoms :
the local magnetic moment around the first Ni atom will have a sign opposite
to the one of the other Ni atom.
<p> You should take some time to examine the values used for the input variables
<a href="../input_variables/varbas.html#xred" target="kwimg">xred</a>,
<a href="../input_variables/varbas.html#rprim" target="kwimg">rprim</a> (note the last line !),
<a href="../input_variables/varbas.html#typat" target="kwimg">typat</a>,
<a href="../input_variables/vargs.html#spinat" target="kwimg">spinat</a>,
<a href="../input_variables/varbas.html#nsppol" target="kwimg">nsppol</a>, and
<a href="../input_variables/vargs.html#nspden" target="kwimg">nspden</a>,
that define this antiferromagnetic ordering along the <111> direction (of a conventional cubic cell).
</p>
<p>If you take a look at the output file
(tldau_1.out), you can see the integrated total density in the PAW spheres
(see the
<a href="lesson_paw1.html">PAW1</a> and
<a href="lesson_paw2.html">PAW2</a>
tutorials on PAW formalism). This value roughly estimate the magnetic moment of
NiO :</p>
<pre>
Integrated total density in atomic spheres:
-------------------------------------------
Atom Sphere radius Integrated_up_density Integrated_dn_density Total(up+dn) Diff(up-dn)
1 2.30000 9.05536980 7.85243738 16.90780718 1.20293241
2 2.30000 7.85243738 9.05536980 16.90780718 -1.20293241
3 1.21105 1.82716080 1.82716080 3.65432159 -0.00000000
4 1.21105 1.82716080 1.82716080 3.65432159 0.00000000
Note: Diff(up-dn) can be considered as a rough approximation of a local magnetic moment.
</pre>
<p>The atoms in the output file, are listed as in the
<a href="../input_variables/varbas.html#typat" target="kwimg">typat</a>
variable (the first two are nickel atoms and the last two are oxygen atoms). The
results indicate that spins are located in each nickel atom of the doubled
primitive cell. Fortunately, the LDA succeeds to give an antiferromagnetic
ground state for the NiO. But the result does not agree with the experimental
data.
The magnetic moment (the
difference between up and down spin on the nickel atom) range around 1.6-1.9
according to experiments (A. K. Cheetham and D. A. O. Hope, Phys. Rev. B. 27,
6964 (1983), H. A. Alperin, J. Phys. Soc. Jpn. 17, 12 (1962), W. Neubeck et
al., J. Appl. Phys. 85, 4847 (1999), G. A. Sawatzky and J. W. Allen, Phys. Rev.
Lett. 53, 2339 (1984) and S. Hufner et al., Solid State Comm. 52, 793 (1984)
). Also, as the Fermi level is at 0.22347 Ha,
one can see that the band gap obtained between the last occupied (0.20672 Ha, at k point 2) and the first unoccupied
band (0.23642 Ha, at kpoint 3) is approximately 0.8 eV which is lower than the measured value of 4.0-4.3
eV (This value could be modified using well-converged parameters but would still
be much lower than what is expected).</p>
<p>Making abstraction of the effect of insufficiently
convergence parameters, the reason for the discrepancy between the DFT-LDA data and
the experiments is first the fact the DFT is a theory for the ground state and second,
the lack of correlation of the LDA. Alone, the homogenous
electron gas cannot correctly represent the interactions among d electrons of the
Ni atom. That is why we want to improve our functional, and be able
to manage the strong correlation in NiO.</p>
<hr>
<h3><b><a name="2">2.</a>
Ground state
calculation of NiO using DFT+U with the FLL double-counting</b></h3>
<p>As seen previously, the LDA does not gives
good results for the magnetization and band gap compared to experiments.</p>
<p>At this stage, we will try to improve the
correspondence between calculation and experimental data. First, we will use the
DFT(LDA)+U with the Full localized limit (FLL) double-counting method.</p>
<p>FLL and AMF double-counting expressions are given in the papers
listed above, and use the adequate number of electrons for each spin. For the Hubbard term, the rotationally
invariant interaction is used.</p>
<p>It is important to notice that in order to use LDA+U
in Abinit, you must employ PAW pseudopotentials. </p>
<p><i>You should run abinit on the input file
tldau_2.in. This calculation takes less than 30 seconds on a PC 3.0 GHz </i></p>
<p>During the calculation, you can take a look
at the input file. Some variable describing the LDA+U parameters have been
added to the previous file. All other parameters were kept constant from the
preceeding calculation. First, you must set the variable <a
href="../input_variables/varpaw.html#usepawu" target="kwimg">usepawu</a>
to one (for the FLL method) and two (for the AMT method) in order to enable the LDA+U
calculation. Then, with <a
href="../input_variables/varpaw.html#lpawu" target="kwimg">lpawu</a>,
you give for each atomic species (<a
href="../input_variables/varbas.html#znucl" target="kwimg">znucl</a>)
the values of angular momentum (l) for which the LDA+U correction will be
applied. The choices are 2 for d-orbitals and 3 for f-orbitals. You cannot
treat s and p orbitals with LDA+U in the present version of ABINIT. Also, if
you do not want to apply LDA+U correction on a species, you can set the
variable to -1. For the case of
NiO, we put <a
href="../input_variables/varpaw.html#lpawu" target="kwimg">lpawu</a>
to 2 for Ni and -1 for O. </p>
<p>Finally, as described in the article cited
above for FLL and AMF, we must define the screened Coulomb interaction between
electrons that are treated in LDA+U, with the help of the variable <a
href="../input_variables/varpaw.html#upawu" target="kwimg">upawu</a>,
and the screened exchange interaction, with <a
href="../input_variables/varpaw.html#jpawu" target="kwimg">jpawu</a>.
Note that you can choose the energy unit by indicating at the end of the line
the unit abbreviation (e.g. eV or Ha). For NiO, we will use variables that are
generally accepted for this type of compound: </p>
<p><a
href="../input_variables/varpaw.html#upawu" target="kwimg">upawu</a>
= 8.0 eV</p>
<p><a
href="../input_variables/varpaw.html#jpawu" target="kwimg">jpawu</a>
= 0.8 eV (10 % of U)</p>
<p>You can take a look at the result of
the calculation. The magnetic moment is now :</p>
<pre>
Integrated total density in atomic spheres:
-------------------------------------------
Atom Sphere radius Integrated_up_density Integrated_dn_density Total(up+dn) Diff(up-dn)
1 2.30000 9.28514439 7.53721910 16.82236349 1.74792528
2 2.30000 7.53721910 9.28514439 16.82236349 -1.74792528
3 1.21105 1.84896670 1.84896670 3.69793339 0.00000000
4 1.21105 1.84896670 1.84896670 3.69793339 0.00000000
Note: Diff(up-dn) can be considered as a rough approximation of a local magnetic moment.
</pre>
<p>NiO is found antiferromagnetic, with a moment that is in reasonable agreement with experimental results. Moreover,
the system is a large gap insulator with about 5.0 eV band gap (the 24th band at k point 3 has an eigenenergy
of 0.15896 Ha, much lower than the eigenenergy of the 25th band at k point 1, namely 0.24296 Ha).
This number is very approximative, since the very rough sampling of k points is not really appropriate to
evaluate a band gap, still one obtains the right physics.</p>
<p>A word of caution is in order here. It is NOT the case that one obtain systematically a good result with the LDA+U method
at the first trial. Indeed, due to the nature of the modification of the energy functional, the landscape
of this energy functional might present numerous local minima.</p>
<p>Unlike LDA+U, for the simple LDA (without U), in the non-spin-polarized case,
there is usually only one minimum, that is the global minimum. So, if it converges, the self-consistency algorithm always
find the same solution, namely, the global minimum. This is already not true in the case of spin-polarized calculations
(where there might be several stable solutions of the SCF cycles, like ferromagnetic and ferromagnetic),
but usually, there are not many local minima, and the use of the
<a href="../input_variables/vargs.html#spinat" target="kwimg">spinat</a> input variables allows one to adequately select
the global physical characteristics of the sought solution.</p>
<p>By contrast, with the U, the <a href="../input_variables/vargs.html#spinat" target="kwimg">spinat</a> input variable
is too primitive, and one needs to be able to initialize a spin-density matrix on each atomic site where a U is present,
in order to guide the SCF algorithm.</p>
<p>The fact that <a href="../input_variables/vargs.html#spinat" target="kwimg">spinat</a> works
for NiO comes from the relative simplicity of this system.
<hr>
<h3><b><a name="3">3.</a>
Initialization of the density matrix in LDA+U for the NiO crystal</b></h3>
<p><i>You should begin by running the
tldau_3.in file before continuing.</i></p>
<p>In order to help the LDA+U find the ground state,
you can define the initial density matrix for correlated orbitals with
<a
href="../input_variables/varpaw.html#dmatpawu" target="kwimg">dmatpawu</a>.
To enable this feature, <a
href="../input_variables/varpaw.html#usedmatpu" target="kwimg">usedmatu</a>
must be set to a non-zero value (default is 0). When positive, the density
matrix is kept to the <a
href="../input_variables/varpaw.html#dmatpawu" target="kwimg">dmatpawu</a>
value for the <a
href="../input_variables/varpaw.html#usedmatpu" target="kwimg">usedmatpu</a>
value steps. For our calculation(tldau_3.in) , <a
href="../input_variables/varpaw.html#usedmatpu" target="kwimg">usedmatpu</a>
is 5, thus the spin-density matrix is kept constant for 5 SCF steps.</p>
<p>In the log file (not the usual output file), you might find
for each step, the calculated density matrix, followed by the imposed density matrix. After
the first 5 SCF steps, the initial density matrix is no longer imposed.
Here is a section of the log file, in which the imposed occupation matrices are echoed :</p>
<pre>
-------------------------------------------------------------------------
Occupation matrix for correlated orbitals is kept constant
and equal to initial one !
----------------------------------------------------------
== Atom 1 == Imposed occupation matrix for spin 1 ==
0.90036 0.00000 -0.00003 0.00000 0.00000
0.00000 0.90036 -0.00001 0.00000 0.00002
-0.00003 -0.00001 0.91309 -0.00001 0.00000
0.00000 0.00000 -0.00001 0.90036 -0.00002
0.00000 0.00002 0.00000 -0.00002 0.91309
== Atom 1 == Imposed occupation matrix for spin 2 ==
0.89677 -0.00001 0.00011 -0.00001 0.00000
-0.00001 0.89677 0.00006 0.00001 -0.00010
0.00011 0.00006 0.11580 0.00006 0.00000
-0.00001 0.00001 0.00006 0.89677 0.00010
0.00000 -0.00010 0.00000 0.00010 0.11580
== Atom 2 == Imposed occupation matrix for spin 1 ==
0.89677 -0.00001 0.00011 -0.00001 0.00000
-0.00001 0.89677 0.00006 0.00001 -0.00010
0.00011 0.00006 0.11580 0.00006 0.00000
-0.00001 0.00001 0.00006 0.89677 0.00010
0.00000 -0.00010 0.00000 0.00010 0.11580
== Atom 2 == Imposed occupation matrix for spin 2 ==
0.90036 0.00000 -0.00003 0.00000 0.00000
0.00000 0.90036 -0.00001 0.00000 0.00002
-0.00003 -0.00001 0.91309 -0.00001 0.00000
0.00000 0.00000 -0.00001 0.90036 -0.00002
0.00000 0.00002 0.00000 -0.00002 0.91309
</pre>
<p> Generally, the LDA+U functional meets the problem of multiple local minima, much more than the
usual LDA or GGA functionals. One often gets trapped in a local minimum. Trying different starting
points might be important...
<hr>
<h3><b><a name="4">4.</a>
Ground state
calculation of NiO using LDA+U with the AMF double-counting method.</b></h3>
<p>Now we will use the other implementation
for the double-counting term in LDA+U (in Abinit), known as AMF. As the FLL method, this method uses the number
of electrons for each spin independently and
the complete interactions U(m1,m2,m3,m4) and J(m1,m2,m3,m4). </p>
<p>As in the preceding run, we will start with
a fixed density matrix for d orbitals. You might now start your calculation, with the tldau_4.in
and tldau_4.files, or skip the calculation, and rely
on the reference file provided in the ~abinit/tests/tutorial/Refs directory.
Examine the tldau_4.in file. The only difference in the input file
compared to tldau_3.in is the value of <a
href="../input_variables/varpaw.html#usepawu" target="kwimg">usepawu</a>
= 2. We obtain a band gap of 4.3 eV. The value of the band gap with AMF and FLL is different. However,
we have to remember that these results are not well converged. By contrast, the magnetization,</p>
<pre>
Atom Sphere radius Integrated_up_density Integrated_dn_density Total(up+dn) Diff(up-dn)
1 2.30000 9.24026835 7.56013140 16.80039975 1.68013694
2 2.30000 7.56013140 9.24026835 16.80039975 -1.68013694
3 1.21105 1.84683993 1.84683993 3.69367986 -0.00000000
4 1.21105 1.84683993 1.84683993 3.69367986 0.00000000
Note: Diff(up-dn) can be considered as a rough approximation of a local magnetic moment.
</pre>
<p>is very similar to the LDA+U FLL. In
fact, this system is not very complex. But for other systems, the difference
can be more important. FLL is designed to work well for crystal with diagonal
occupation matrix with 0 or 1 for each spin. The AMF should be used when
orbital occupations are near the average occupancies.</p>
<hr>
<h3><b><a name="5">5.</a>
Projected density of states in LDA+U </b></h3>
<p>
Using prtdos 3, you can now compute the projected d and f density of states.
For more information about projected density of states, for more details see the
<a href="lesson_paw1.html">PAW1</a> tutorial.
</p>
</div>
<script type="text/javascript" src="list_internal_links.js"> </script>
</body>
</html>
|