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 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><title>Tutorial spin</title></head><body style="background-color: rgb(255, 255, 255);">
<hr>
<h1>ABINIT, spin lesson of the tutorial: </h1>
<h2>Properties related to spin: spin polarized calculations and
spin-orbit coupling. </h2>
<hr>
<p>This lesson aims at showing how to get the following physical
properties:
</p>
<ul>
<li>the total magnetisation of a ferromagnetic material<br>
</li>
<li>the magnetisation of an antiferromagnetic material<br>
</li>
<li>analyse the total density of states per spin direction <br>
</li>
<li>analyse the density of states per atom and per spin direction<br>
</li>
<li>look at the effect of spin-orbit coupling for a non magnetic
system<br>
</li>
<li>non-collinear magnetism <span style="font-style: italic;">(not yet)</span> </li>
<li>spin-orbit coupling and magnetocristalline anisotropy <span style="font-style: italic;">(not
yet)</span> </li>
</ul>
You will learn to use of features of ABINIT which deal with spin.<br>
<p>This lesson should take about 1.5 hour.
</p>
<h5>Copyright (C) 2005-2014 ABINIT group (GZ, MT)
<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 spin lesson</b></h3>
<ul>
<li><a href="lesson_spin.html#gz1">1</a> <b>A ferromagnetic
material: the bcc Fe</b></li>
<li><a href="lesson_spin.html#gz2">2</a> <b>An antiferromagnetic
example: fcc Fe</b></li>
<li><a href="lesson_spin.html#gz3">3</a> <b>Another look at fcc Fe</b>
</li>
<li><a href="lesson_spin.html#gz4">4</a> <b>A ferrimagnetic example
(</b>Mn<sub>4</sub>N<b>)</b><small style="font-style: italic;">(not yet)</small> </li>
<li><a href="lesson_spin.html#gz5">5</a> <b>The spin-orbit coupling</b>
</li>
<li><a href="lesson_spin.html#gz6">6</a> <b>Rotation of the
magnetization and Spin-orbit </b><small style="font-style: italic;">(not yet)</small></li><span style="font-weight: bold;"><br>
<br>
</span>
</ul>
<hr>
<p><a name="gz1"></a><big><b>1. A ferromagnetic material: the <span style="font-style: italic;">bcc</span> Fe</b></big> </p>
<p>
<i><br>
</i></p>
<p><i>Before beginning, you might consider to work in a different
subdirectory as
for the other lessons. Why not "Work_spin" (<small>so ~abinit/tests/tutorial/Input/Work_spin</small>) ? </i> <br>
</p>
<p>The file <span style="color: rgb(51, 102, 255);">~abinit/tests/tutorial/Input/tspin_x.files</span> lists the file names and root
names. You can copy it in the <span style="font-style: italic;">Work_spin</span> directory (and change it, when
needed, as
usual). <br>
You can also copy the file <span style="color: rgb(51, 102, 255);">~abinit/tests/tutorial/Input/tspin_1.in</span> in <span style="font-style: italic;">Work_spin</span>. This
is your input file. You can run the calculation, then you should edit
the input file, and read it carefully.
<br>Because
we are going to perform magnetic calculations, there a two new types of
variables:<br>
</p>
<ul>
<li><a href="../input_variables/varbas.html#nsppol" target="kwimg"><span style="text-decoration: underline;">nsppol</span></a><br>
</li>
<li><a href="../input_variables/vargs.html#spinat" target="kwimg"><span style="text-decoration: underline;">spinat</span></a><br>
</li>
</ul>
Please, read their description in the help file.
<br>
You will work at fixed <a href="../input_variables/varbas.html#ecut" target="kwimg">ecut</a>
(=18Ha) and k-point grid, defined by <a href="../input_variables/varbas.html#ngkpt" target="kwimg">ngkpt</a>
(the 4x4x4 Monkhorst-Pack grid). It is implicit that in "real life",
you should do a convergence test with
respect to both convergence parameters. <br>
This takes about 12 seconds on a modern PC (one needs a sufficiently large cut-off
to exhibit magnetic effects).<br>
We will compare the output with and without
magnetisation. (Hence, there are two datasets in the run)<br>
We now look at the output file.<br>
In the magnetic case, the electronic density is split in two parts, the
"Spin-up" and the "Spin-down" parts to which correspond different
Kohn-Sham potentials and different sets of eigenvalues whose occupation
are given by the Fermi-Dirac function (without the ubiquitous factor 2)<br>
<br>
For the first k-point, we get for instance:<br>
(no magnetization)<br>
<span style="font-family: monospace;">
occ 2.00000 1.99989
1.99989 1.22915 1.22915
0.28676 0.00000 0.00000</span><br>
(magnetic case)<br>
<span style="font-family: monospace;">
occ 1.00000 0.99999
0.99999 0.98396 0.98396
0.69467 0.00000 0.00000 (spin-up)<br>
1.00000 0.99730 0.99730
0.00898 0.00898 0.00224
0.00000 0.00000 (spin-down)<br>
<br>
</span>We note that the occupation are very different for up and down
spins, which means that the eigenvalues are shifted which is in turn
due to
a shift of the exchange-correlation potential, and therefore of the
effective potential. You can indeed have a look at the output file to
compare spin-up and down eigenvalues:<br><span style="font-family: monospace;"><br>
</span>
<div style="margin-left: 40px;"><span style="font-family: monospace;">-0.48411
-0.38615 -0.38615 -0.30587 -0.30587
-0.27293 0.33747 0.33747 (up, kpt#1)</span><br>
<span style="font-family: monospace;">
-0.46638 -0.32383 -0.32383 -0.21767
-0.21767 -0.20371 0.36261 0.36261 (dn,
kpt#1)</span><br>
</div>
<br>
The magnetization density (in unit of mu_B - Bohr's magneton) is the difference between
the up and down densities. The magnetization density, divided by the total
density is noted "zeta". This quantity "zeta" can vary between -1 and 1. It is
everywhere zero in the non-magnetic case. In the magnetic case, we can
read for instance its minimal and maximal values in the output file:<br>
<br>
<span style="font-family: monospace;">Min spin pol zeta= -4.8326E-02 at
reduced coord. 0.7222 0.5000 0.2222<br>
next min= -4.8326E-02 at reduced coord.
0.5000 0.7222 0.2222<br>
Max spin pol zeta= 5.7306E-01 at reduced coord.
0.0000 0.8889 0.8889<br>
next max= 5.7306E-01 at reduced
coord. 0.8889 0.0000 0.8889</span><br><br>
The total magnetization, its integral on the unit cell, is
now in the magnetic case:<br>
<br>
<span style="font-family: monospace;">Magnetisation (Bohr
magneton)= 1.96743487E+00<br>
Total spin up = 4.98371743E+00 Total spin down
= 3.01628257E+00<br>
<br>
</span>We observe that the total density (up+down) yields 8.000 as
expected.<br>
<br>
The magnetization density is not the only changed quantity. The
energy is changed too, and we get:<br>
<br>
<span style="font-family: monospace;"> etotal1
-2.4661707269E+01</span><span style="font-family: monospace;">
(no magnetisation)</span><br>
<span style="font-family: monospace;"> etotal2
-2.4670792869E+01 </span><span style="font-family: monospace;">(with
magnetisation)</span><br>
<br>
The energy of the magnetized system is the lowest and therefore
energetically favoured, as expected since <span style="font-style: italic;">bcc</span> iron is a ferromagnet.<br>
Finally, one notes also that the stress tensor is affected by the
magnetization. This would also be true for the forces for a less symmetric material.<br>
<br>
It is interesting to consider in more details the distribution of
eigenvalues for each direction of magnetization, which is best done by
looking at the respective densities of state.<br>
To this end we have set
<a href="../input_variables/varfil.html#prtdos" target="kwimg">prtdos</a>= 1
in the input file, in order to obtain the density
of states corresponding to spin-up and spin-down electrons (as soon as
<a href="../input_variables/varbas.html#nsppol" target="kwimg">nsppol</a>=2). <br>
The values of the DOS are in the files <span style="color: rgb(51, 102, 255);">tspin_1o_DS1_DOS</span> and
<span style="color: rgb(51, 102, 255);">tspin_1o_DS2_DOS</span> for the magnetic and non magnetic case respectively. We
can extract the values for use in a plotting software.<br>
Traditionally, in order to enhance visibility, one affects with a
negative sign the DOS of minority electrons. If we compare
the <a href="lesson_spin/bccfe_mag_dos2.jpg" target="img">DOS of
the magnetized</a> system and the <a href="lesson_spin/bccfe_nonmag_dos2.jpg" target="img">non
magnetized</a> system, we observe that the up and down DOS have
been
"shifted" with respect each other.<br>
The integrated density of states yields the number
of electrons for each spin direction and
we see the magnetization
which arises from the fact that there are more up than down electrons
at the Fermi level.<br>
<br>
That the magnetization points upwards is fortuitous,
and we can get it pointing downwards by changing the sign of the initial <a href="../input_variables/vargs.html#spinat" target="kwimg">spinat</a>.
<br>
Indeed, in the absence of spin-orbit coupling, there is no relation
between the direction of magnetization and the cristal axes.<br>
If we start with a <a href="../input_variables/vargs.html#spinat" target="kwimg">spinat</a>
of 0, the magnetisation
remains 0. <a href="../input_variables/vargs.html#spinat" target="kwimg">spinat</a> gives
indeed a way to initially break the spin symmetry.<br>
<br>
<br>
<br>
<hr>
<p><big><a name="gz2"></a><b>2. An antiferromagnetic example: <span style="font-style: italic;">fcc</span> Fe</b></big></p>
<h3> </h3>
<span style="font-style: italic;">
Well sort of.... </span><br>
<br>
Actually, <span style="font-style: italic;">fcc</span> Fe, displays many complicated structures, in particular
spin spirals. A spiral is characterized by a direction along an axis,
an angle of the magnetization with respect to this axis and a step
after which a rotation is complete.<br>
A very simple particular case is when the angle is 90, the axis is
<100> and the step is the
unit cell side, spin directions are alternating in every two planes
perpendicular to the <100> axis ("spiral stairway")<br>
For instance, if the atom at [x,y,0] possesses
an
"up" magnetization, the atom at [x,y,1/2] would possess a down
magnetization etc...<br>
To describe such a structure, we merely need two atoms, [0,0,0] and
[1/2,0,1/2] and a unit cell comprising those two atoms.<br>
Also, each atom will be given opposite magnetization with the help of
the variable <a href="../input_variables/vargs.html#spinat" target="kwimg">spinat</a>.<br>
<br>
You can copy the file <span style="color: rgb(51, 102, 255);">~abinit/tests/tutorial/Input/tspin_2.in</span> in <span style="font-style: italic;">Work_spin</span>.
This is your input file. Modify accordingly the <span style="color: rgb(51, 102, 255);">tspin_x.files</span> file.
You can run the calculation, then you should edit the <span style="color: rgb(51, 102, 255);">tspin_2.in</span> file,
and briefly
look at the two changes with respect to the file
<span style="color: rgb(51, 102, 255);">tspin_1.in</span>: the change of unit cell basis vectors <a href="../input_variables/varbas.html#rprim" target="kwimg">rprim</a>,
the new <a href="../input_variables/vargs.html#spinat" target="kwimg">spinat</a>.
<br><br>
Note also we use now <a href="../input_variables/varbas.html#nsppol" target="kwimg">nsppol</a>=1 and <a href="../input_variables/vargs.html#nspden" target="kwimg">nspden</a>=2: this combination
of values is only valid when performing an antiferromagnetic
calculation (<span style="font-style: italic;">nspden=2</span> means that we have 2 independent components for the charge density while <span style="font-style: italic;">nsppol=1</span> means that we have 1 independent component for the wave-functions).<br>
In that case, ABINIT uses the so-called Shubnikov symmetries, to perform calculations twice faster
than with <a href="../input_variables/varbas.html#nsppol" target="kwimg">nsppol</a>=2 and <a href="../input_variables/vargs.html#nspden" target="kwimg">nspden</a>=2.
The symmetry of the
crystal is not the full fcc symmetry anymore since the symmetry must
now preserve the magnetization of each atom. ABINIT is
nevertheless able to detect such symmetry belonging to the
Shubnikov groups and correctly detects that the cell is
primitive,
which would not be the case if we had the same value of
<a href="../input_variables/vargs.html#spinat" target="kwimg">spinat</a> on each
atom.<br><br>
If we now run again the calculation, this total computation time is
approximately 30 seconds on a recent CPU.<br>
If we look at the eigenvalues and occupations, they are again affected
by a factor 2, which results from the
symmetry considerations alluded to above, and not from the "usual"
spin degeneracy : the potential for spin-up is equal to the potential
for spin-down, shifted by the antiferromagnetic translation vector. Eigenenergies
are identical for spin-up and spin-down, but wavefunctions are shifted
one with respect to the other.<br>
<br>
<span style="font-family: monospace;">kpt# 1, nband= 16,
wtk= 0.05556, kpt= 0.0833 0.0833 0.1250
(reduced coord)<br>
-0.60539 -0.47491 -0.42613 -0.39022
-0.35973 -0.34377 -0.28893 -0.28827<br>
-0.25318 -0.24042 -0.22944
-0.14218 0.20264 0.26203
0.26641 0.62158<br>
occupation numbers for kpt# 1<br>
2.00000 2.00000
2.00000 1.99997 1.99945
1.99728 1.50517 1.48016<br>
0.15706 0.04649
0.01576 0.00000 0.00000
0.00000 0.00000 0.00000<br>
<br>
</span><span style="font-family: monospace;"><br>
<br>
</span>How do we know we have a magnetic order?<br>
The density of state used for <span style="font-style: italic;">bcc</span> Fe will not be useful
since the net
magnetization is
zero and we have as many up and down electrons.<br>
Though, the magnetization is reflected in the existence of an up
and down electronic density whose sum is the total density and whose
difference yields the net magnetization density at each
point in real space.<br><br>
In particular, the integral of the magnetization around each atom will give an
indication of the magnetic moment carried by this particular atom. A first
estimation can be obtained inside abinit using the
<a href="../input_variables/vargs.html#prtdensph">prtdensph</a>
input variable, which gives the integrated density and magnetization in
spheres around each atom. <br>
Edit <span style="color: rgb(51, 102, 255);">tspin_2.in</span> file and activate
<a href="../input_variables/vargs.html#prtdensph">prtdensph</a> flag (set it to <span style="font-weight: bold;">1</span>). Run ABINIT again and open the new output file (should be <span style="color: rgb(51, 102, 255);">tspin2.outA</span>).<br>
<br>
You can read:<br>
<span style="font-family: monospace;">Integrated total density in atomic spheres:</span><br style="font-family: monospace;">
<span style="font-family: monospace;"> -------------------------------------------</span><br style="font-family: monospace;">
<span style="font-family: monospace;"> Atom Sphere
radius Integrated_up_density Integrated_dn_density
Total(up+dn) Diff(up-dn)</span><br style="font-family: monospace;">
<span style="font-family: monospace;">
1
2.00000
3.33981100
2.97899445 6.31880545 0.36081655</span><br style="font-family: monospace;">
<span style="font-family: monospace;">
2
2.00000
2.97476546
3.33556020 6.31032565 -0.36079474</span><br style="font-family: monospace;">
<span style="font-family: monospace;"> Note: Diff(up-dn) can be considered as a rough approximation of a local magnetic moment.</span><br style="font-family: monospace;">
<br>
and obtain a rough estimation of the magnetic moment of each atom
(strongly dependent on the radius used to project the charge density):<br>
<div style="margin-left: 40px;"><span style="font-weight: bold; font-family: monospace;">
magnetization of atom 1= 0.36081</span><br style="font-weight: bold; font-family: monospace;">
<span style="font-weight: bold; font-family: monospace;">
magnetization of atom 2=-0.37079</span><br style="font-weight: bold; font-family: monospace;">
</div>
<br>
But here we want more precise results...<br>
To perform the integration, we will use the utility <span style="font-weight: bold;">cut3d</span> which yields
an interpolation of the magnetization at any point in space. <span style="font-weight: bold;">cut3d</span> is one of the executables of the ABINIT package and should be installed together with abinit.<br>
As of now <span style="font-weight: bold;">cut3d</span> is interactive, we will use it through a very
primitive script (written in <span style="font-style: italic;">Python</span>) to perform a rough estimate of the
magnetization on each atom.<br>
You can have a look at the <span style="color: rgb(51, 102, 255);">~abinit/doc/tutorial/lesson_spin/magnetization.py</span> program,
and note (or believe) that
it does
perform an
integration of magnetization on a cube of side acell/2 around
each atom; if applicable, you might consider to adjust the value of
"CUT3D" string in the <span style="font-style: italic;">Python</span> script.<br>
<br>
Copy it in your <span style="font-style: italic;">Work_spin</span> directory.
If you run the program, by typing "<span style="color: rgb(51, 102, 255);">python</span> <span style="color: rgb(51, 102, 255);">magnetization.py</span>" , you will see the
result:<br>
<div style="margin-left: 40px;"><span style="font-weight: bold; font-family: monospace;">
magnetization of atom 1= 0.38212</span><br style="font-weight: bold; font-family: monospace;">
<span style="font-weight: bold; font-family: monospace;">
magnetization of atom 2=-0.38203</span><br style="font-weight: bold; font-family: monospace;">
</div>
<br>
which shows that the magnetization of each atom are actually opposite.
<br>With the next input file <span style="color: rgb(51, 102, 255);">tspin_3.in</span>, we will consider this same problem, but in a
different way, and note, for future record that the total energy is:
<span style="font-family: monospace;">Etotal=-4.92489586027187E+01</span><br>
<br>
<br>
<br>
<hr>
<p><a name="gz3"></a><big><b>3. Another look at <span style="font-style: italic;">fcc</span> Fe</b></big></p>
<h3> </h3>
Instead of treating <span style="font-style: italic;">fcc</span> Fe directly as an antiferromagnetic material,
we will not make any hypotheses on its magnetic structure, and run the calculation like the one for <span style="font-style: italic;">fcc</span>
Fe, anticipating only that the two spin directions are going to be different.<br>
We will not even assume
that the initial spins are of the same magnitude.<br><br>
You can copy the file <span style="color: rgb(51, 102, 255);">~abinit/tests/tutorial/Input/tspin_3.in</span> in <span style="font-style: italic;">Work_spin</span>.
This is your input file. You can modify the file <span style="color: rgb(51, 102, 255);">tspin_x.files</span> and
immediately start running the calculation. Then, you should edit it.
Note the values of
<a href="../input_variables/vargs.html#spinat" target="kwimg">spinat</a>. In this job,
we wish again to characterize the magnetic structure.<br>
We are not going to use zeta as in the preceding calculation, but we
will here use another feature of abinit: atom and angular
momentum
projected densities of state.<br>
These are densities of state weighted by the projection of the
wave functions on angular momentum channels (that is spherical
harmonics) centered on each atom of the system. <br>
Note that theses DOS are computed with the thetrahedron method,
which is rather time consuming and produces less smooth DOS than the smearing method. The time is
strongly dependent on the number of kpoints and we use here only a
reduced set.<br>
(This will take about 1.5 minutes on a modern computer)<br><br>
To specify this calculation we need new variables, in addition to
<a href="../input_variables/varfil.html#prtdos" target="kwimg">prtdos</a> set now to 3 :<br>
<ul>
<li><a href="../input_variables/vargs.html#natsph" target="kwimg">natsph</a></li>
<li><a href="../input_variables/vargs.html#iatsph" target="kwimg">iatsph</a></li>
<li><a href="../input_variables/vargs.html#ratsph" target="kwimg">ratsph<br>
</a></li>
</ul>
<br>
This will specify the atoms around which the calculation will be
performed, and the radius of the sphere. <br>
We specifically select a new dataset for each atom, a non
self-consistent calculation being run to generate the projected density of states.<br>
First, we note that the value of the energy is:<big><span style="font-family: monospace;"> <small>Etotal=-4.92489557316370E+01</small></span></big>, which shows that we have attained
presumably the same state as above.<br>
<br>
The density of states will be in the files <span style="color: rgb(51, 102, 255);">tspin_3o_DS2_DOS_AT0001</span> for
the first atom, and <span style="color: rgb(51, 102, 255);">tspin_3o_DS3_DOS_AT0002</span> for the second atom.<br>
We can extract the density of d states, which carries most of the
magnetic
moment and whose integral up to the Fermi level will yield an
estimate of the magnetization on each atom. We note the Fermi level (recalled in the file <span style="color: rgb(51, 102, 255);">tspin_3o_DS1_DOS</span>):<br>
<span style="font-family: monospace;"><br><span style="font-weight: bold;">
Fermi energy
: -0.28270392</span></span><br><br>
If we have a look at the
integrated site projected density of states,
we can compute the total moment on each atom. To this end, one can
open the file <span style="color: rgb(51, 102, 255);">tspin_3o_DS3_DOS_AT0002</span>, which contains information pertaining to
atom 2. This file is self-documented, and describes on each line, for
spin up and spin down:<br>
<span style="font-family: monospace;"># energy(Ha)
l=0 l=1
l=2 l=3
l=4 (integral=>) l=0
l=1 l=2
l=3 l=4</span><br>
<br>
If we look for the lines containing an energy of
"-0.28250", we find <br>
<span style="font-family: monospace;"><br><span style="font-weight: bold;">up</span>
-0.28250 0.8026 2.6082
23.3966 0.7727
0.1687 0.30
0.34 <span style="color: rgb(204, 0, 0);">3.42</span> 0.04 0.01<br>
<span style="font-weight: bold;">dn</span> -0.28250
0.3381 1.8716 24.0456 0.3104
0.1116 0.30
0.33 <span style="color: rgb(204, 0, 0);">2.74</span> 0.04 0.01<br>
</span><span style="font-family: monospace;"><br>
</span><br>
There are apparently changes in the densities of states for all the
channels, but besides the <span style="font-style: italic;">d</span>-channels, these are indeed fluctuations.
This is confirmed by looking at the integrated density of states which
is different only for the d-channel. The difference between up and down
is <span style="font-weight: bold;">0.68</span>, in rough agreement (regarding our very rude methods of
integration) with the preceeding calculation. Using a calculation with
the same number of k points for the projected DOS, we can <a href="lesson_spin/energy_diff_fccfe.jpg" target="img">plot</a> the
up-down integrated dos difference for the <span style="font-style: italic;">d</span>-channel. Note that there is some scatter
in this graph, due to the finite number of digits (2 decimal places) of the
integrated dos given in the file <span style="color: rgb(51, 102, 255);">tspin_3o_DS3_DOS_AT0002</span>.<br>
<br>
If we now look at the up and down DOS for each atom, we can see that
the corner atom and the face atom possess opposite magnetizations,
which roughly cancel each other. The density of states computed with
the tetrahedron method is not as smooth as by the smearing
method, and a running average allows for a better view.<br>
<br>
<br>
<br>
<hr>
<p><a name="gz4"></a><big><b>4. A ferrimagnetic example </b><span style="font-style: italic;">(not yet)</span></big></p>
<h3 style="font-weight: normal; font-style: italic;">
</h3>
Some materials can display a particular form of ferromagnetism, which
also can be viewed as non
compensated antiferromagnetism, called ferrimagnetism.<br>
Some atoms possess up spin and other possess down spin, but the
total spin magnetization is non zero.<br>
This happens generally for system with different type of atoms, and
sometimes in
rather complicated structures such as the magnetite. <br>
<br>
<br>
<br>
<hr>
<p><a name="gz5"></a><big><b>5. The spin-orbit coupling</b></big></p>
<h3> </h3>
<h3><small><span style="font-weight: normal;">For heavy atoms a
relativistic description of the electronic structure becomes necessary,
and this can be accomplished through the relativistic LDA
approximation.</span></small></h3><br>
<h3><span style="font-weight: normal; text-decoration: underline;">5.1 Norm-conserving pseudo-potentials</span><br>
</h3>
<h3><small><span style="font-weight: normal;">For atoms, the Dirac equation is solved and the <span style="font-style: italic;">2(2l+1)</span>
<span style="font-style: italic;">l</span>-channel degeneracy is lifted according to the eigenvalues of the <span style="font-weight: bold;">L+S </span>operator (<span style="font-style: italic;">l+1/2</span> and <span style="font-style: italic;">l-1/2</span> of
degeneracy <span style="font-style: italic;">2l+2</span> and <span style="font-style: italic;">2l</span>). After pseudization, the associated wave
functions can be recovered by adding to usual pseudo-potential
projectors a spin-orbit term of the generic form
<span style="font-weight: bold;">v(r).|l,s>L.S<l,s|</span>. Not all potentials include this additional
term, but it turns out that it is the case for all the HGH type
pseudopotentials.</span></small></h3>
<h3><small><span style="font-weight: normal;">In a plane wave calculation, the wavefunctions will be
two components spinors, that is will have a spin-up and a spin-down
component but these components will be coupled. This mean the size of
the Hamiltonian matrix is quadrupled.</span></small></h3>
<h3><small><span style="font-weight: normal;">We will consider here a heavier
atom than Iron: <span style="font-style: italic;">Tantalum</span>.<span style="font-weight: bold;"></span><br>
You will have to change the "<span style="font-style: italic;">files</span>" file
accordingly, as we here have used the potential: <span style="color: rgb(51, 102, 255);">73ta.hghsc</span>.
It is a HGH pseudopotential, with semicore states.
Replace the last line of the <span style="color: rgb(51, 102, 255);">tspin_x.files</span> by
</span></small></h3>
<h3><small><small><span style="font-weight: normal;"><pre>../../../Psps_for_tests/73ta.hghsc<br></pre></span></small></small></h3>
<small><span style="font-weight: normal;"><big>
You can copy the file <span style="color: rgb(51, 102, 255);">~abinit/tests/tutorial/Input/tspin_5.in</span> in <span style="font-style: italic;">Work_spin</span>.
Change accordingly the file names in <span style="color: rgb(51, 102, 255);">tspin_x.files</span>, then run the
calculation. It takes about 20 secs on a recent computer.
</big></span></small><big><br>
</big>
The input file contains one new variable:<br>
<ul><li><a href="../input_variables/vargs.html#nspinor" target="kwimg">nspinor</a></li>
</ul>Have a look at it. You should also look at<span style="text-decoration: underline;"> </span><a href="../input_variables/vargs.html#so_psp" target="kwimg">so_psp</a>; it is not used here, meaning that the SO information is directly read from the pseudopotential file.<br>
<br>
In this run, we check that we recover the splitting of the atomic
level by performing a calculation in a big box.
Two calculations are launched with and without spin-orbit. <br><br>
We can easily follow the symmetry of the different levels of the non
spin orbit calculation:<br>
<span style="font-family: monospace;">kpt# 1, nband= 26,
wtk= 1.00000, kpt= 0.0000 0.0000 0.0000
(reduced coord)<br>
-2.44772 <br>
-1.46448 -1.46448 -1.46448 <br>
-0.17051 <br>
-0.10859 -0.10859 -0.10859 -0.10746 -0.10746<br>
<br>
</span>That is, the symmetry: <span style="font-style: italic;">s, p, s, d</span><br><br>
After application of the spin-orbit coupling, we now have to consider
twice as many levels:<br>
<span style="font-family: monospace;">kpt# 1, nband=
26, wtk= 1.00000, kpt= 0.0000 0.0000 0.0000
(reduced coord)<br>
-2.43309 -2.43309 <br>
-1.67343 -1.67343 -1.35515 -1.35515
-1.35515 -1.35515</span><span style="font-family: monospace;"> <br>
-0.16816 -0.16816 <br>
-0.11662 -0.11662 -0.11662 -0.11662
-0.09254 -0.09254</span><span style="font-family: monospace;">
-0.09152 -0.09152 -0.09152 -0.09152 <br>
<br>
</span>The levels are not
perfectly degenerate, due to the finite size of the simulation box. We
can nevetheless compute the splitting of the levels, and we obtain, for
e.g. the <span style="font-style: italic;">p</span>-channel: <span style="font-family: monospace;">1.67343-1.35515=<span style="font-weight: bold;">0.31828
Ha</span><br>
</span><br>
If we now consider the <a href="http://physics.nist.gov/PhysRefData/DFTdata/Tables/73Ta.html" target="img">NIST
table</a> of atomic data, we obtain :<br>
<div style="margin-left: 40px;"><span style="font-family: monospace;">5p splitting, table:
1.681344-1.359740=0.321604 Ha</span><span style="font-family: monospace;"></span><br>
<span style="font-family: monospace;">
5d splitting, table: .153395-.131684=0.021711 Ha</span><br>
<span style="font-family: monospace;"></span></div>
<span style="font-family: monospace;">
<br>
</span>We obtain a reasonable agreement. <br>
A more converged (and more expensive calculation) would yield:<br>
<div style="margin-left: 40px;"><span style="font-family: monospace;">5p splitting, abinit: </span><span style="font-family: monospace;">1.64582-1.32141=0.32441 Ha</span><br>
<span style="font-family: monospace;">
</span><span style="font-family: monospace;">5d splitting,
abinit: </span><span style="font-family: monospace;">.09084-.11180=0.02096
Ha</span><br>
<span style="font-family: monospace;"></span></div>
<span style="font-family: monospace;">
<br>
<br>
<br style="font-family: monospace;">
</span>
<h3><span style="font-weight: normal; text-decoration: underline;">5.2 Projector Augmented-Wave</span></h3>
Within the Projector Augmented-Wave method, the usual (pseudo-)Hamiltonian can be expressed as:<br>
<br>
<div style="margin-left: 80px;"><span style="font-weight: bold; color: black;">H = Kin + V_eff + Σ D_ij </span><span style="position: relative; top: -5pt; left: 6pt; font-weight: bold; color: black;"></span><span style="font-weight: bold; color: black;"> |</span><span style="position: relative; top: -5pt; left: 6pt; font-weight: bold; color: black;">~</span><span style="font-weight: bold; color: black;">p</span><sub style="font-weight: bold; color: black;">i </sub><span style="font-weight: bold; color: black;">>
<</span><span style="position: relative; top: -5pt; left: 6pt; font-weight: bold; color: black;">~</span><span style="font-weight: bold; color: black;">p</span><sub style="font-weight: bold; color: black;">j </sub><span style="font-weight: bold; color: black;"> |</span><span style="font-weight: bold; color: rgb(204, 0, 0);"></span>
</div>
<span style="font-style: italic;"></span><br>
If the two following conditions are satisfied:<span style="font-family: sans-serif;"><br>
</span>
<div style="margin-left: 40px;">(1) the<span style="position: relative; top: -8pt; left: 8pt;"></span><span style="position: relative; top: -5pt; left: 6pt;"> </span>local PAW basis is complete enough ;
<br>
(2) the electronic density is mainly
contained in the PAW augmentation regions,
<br>
</div>
<span style="font-family: sans-serif;"><br></span>
it can be showed that a very good approximation of the PAW Hamiltonian -- including spin-orbit coupling -- is:<br>
<span style="font-family: sans-serif;"><br>
</span>
<div style="margin-left: 80px;"><span style="font-weight: bold; color: black;">H ~ Kin + V_eff + Σ (D_ij+D^SO_ij) </span><span style="position: relative; top: -5pt; left: 6pt; font-weight: bold; color: black;"></span><span style="font-weight: bold; color: black;"> |</span><span style="position: relative; top: -5pt; left: 6pt; font-weight: bold; color: black;">~</span><span style="font-weight: bold; color: black;">p</span><sub style="font-weight: bold; color: black;">i </sub><span style="font-weight: bold; color: black;">>
<</span><span style="position: relative; top: -5pt; left: 6pt; font-weight: bold; color: black;">~</span><span style="font-weight: bold; color: black;">p</span><sub style="font-weight: bold; color: black;">j </sub><span style="font-weight: bold; color: black;"> |</span><span style="font-weight: bold; color: rgb(204, 0, 0);"></span>
</div>
<span style="font-style: italic;"></span><br>
where <span style="font-weight: bold;">D^SO_ij</span> is the projection of the <span style="font-weight: bold;">(L.S)</span> operator into the PAW augmentation regions.<br>
As an immediate consequence , we thus have the possibility to use the standard <span style="position: relative; top: -5pt; left: 6pt; font-weight: bold; color: black;">~</span><span style="font-weight: bold; color: black;">p</span><sub style="font-weight: bold; color: black;">i </sub><span style="font-weight: bold; color: black;"></span> PAW
projectors; in other words, it is possible to use the standard PAW
datasets (pseudopotentials) to perform calculations including
spin-orbit coupling.<br>
But, of course, it is still necessary to express the wave-functions as <span style="font-weight: normal;">two components spinors (spin-up and a spin-down
components).<br>
Let's have a look at the following keyword:<br>
</span>
<ul>
<li><a href="../input_variables/varpaw.html#pawspnorb" target="kwimg">pawspnorb</a></li>
</ul>
It automatically activates the spin-orbit coupling within PAW (forcing <a href="../input_variables/vargs.html#nspinor" target="kwimg">nspinor</a>=2).<br>
<br>
Now the practice:<br>
We consider here <span style="font-style: italic;">Bismuth</span>.<br>
You will have to change the "<span style="font-style: italic;">files</span>" file
accordingly, as we here have used the potential: <span style="color: rgb(51, 102, 255);">83bi.paw</span>.
It is a PAW dataset with <span style="font-style: italic;">5d</span>, <span style="font-style: italic;">6s</span> and <span style="font-style: italic;">6p</span> electrons in valence.<br>
Replace the last line of the <span style="color: rgb(51, 102, 255);">tspin_x.files</span> by
<h3><small><span style="font-weight: normal;"><pre>../../../Psps_for_tests/83bi.paw<br></pre>
You can copy the file <span style="color: rgb(51, 102, 255);">~abinit/tests/tutorial/Input/tspin_6.in</span> in <span style="font-style: italic;">Work_spin</span> (one <span style="font-style: italic;">Bismuth</span> atom in a large cell). Change accordingly the file names in <span style="color: rgb(51, 102, 255);">tspin_x.files</span>,
then run the
calculation. It takes about 10 secs on a recent computer. Two datasets
are executed: the first one without spin-orbit coupling, the second
one using<small><span style="font-weight: bold;"> </span> </small></span><a style="font-weight: normal;" href="../input_variables/varpaw.html#pawspnorb" target="kwimg">pawspnorb</a><span style="font-weight: normal;">=1.</span></small><br>
</h3>
The results (eigenvalues) are:<br>
<span style="font-family: monospace;">Eigenvalues (hartree) for nkpt= 1 k points:</span><br style="font-family: monospace;">
<span style="font-family: monospace;"> kpt# 1, nband= 24, wtk= 1.00000, kpt= 0.0000 0.0000 0.0000 (reduced coord)</span><span style="font-family: monospace;"><br>
<span style="font-weight: bold;">5d</span> -0.93353 -0.93353 -0.93353 -0.93353 -0.82304 -0.82304 -0.82304 -0.82304</span><span style="font-family: monospace;"> -0.82291 -0.82291<br>
<span style="font-weight: bold;">6s</span> -0.42972 -0.42972<br>
<span style="font-weight: bold;">6p</span> -0.11089 -0.11089 -0.03810 -0.03810 </span><span style="font-family: monospace;">-0.03810 -0.03810</span><br style="font-family: monospace;">
<br>
Again, the levels are not
perfectly degenerate, due to the finite size of the simulation box.<br>
We
can compute the splitting of the levels, and we obtain:<br style="font-style: italic;">
<div style="margin-left: 40px;"><span style="font-style: italic;">5d</span>-channel: <span style="font-family: monospace;">0.93353-0.82304=<span style="font-weight: bold;">0.11048
Ha</span></span><br style="font-style: italic;">
<span style="font-family: monospace;"></span><span style="font-style: italic;">6p</span>-channel: <span style="font-family: monospace;">0.11089-0.03810=<span style="font-weight: bold;">0.07289
Ha</span></span><br style="font-weight: bold;">
<span style="font-family: monospace; font-weight: bold;"></span></div>
<span style="font-family: monospace; font-weight: bold;">
</span><br>
If we now consider the <a href="http://physics.nist.gov/PhysRefData/DFTdata/Tables/83Bi.html" target="img">NIST
table</a> of atomic data, we obtain :<br>
<div style="margin-left: 40px;"><span style="font-style: italic;">5d</span>-channel: <span style="font-family: monospace;">1.063136-0.952668=0.11047
Ha</span><br style="font-style: italic;">
<span style="font-family: monospace;"></span><span style="font-style: italic;">6p</span>-channel: <span style="font-family: monospace;">0.228107-0.156444=0.07166
Ha</span><br>
<span style="font-family: monospace;"></span></div>
<br>
Aperfect agreement even with a small simulation cell and very small values of plane-wave cut-offs...<br>
<br>
<br>
<span style="font-family: sans-serif;"><br>
</span>
<hr>
<p><big><a name="gz6"></a><b>6. Rotation of the magnetization and Spin-orbit </b><span style="font-style: italic;">(not yet)</span></big></p>
<h3>
</h3>
The most spectacular manifestation of the spin-orbit coupling is the
energy associated with a rotation of the magntisation with respect with
the cristal axis. It is at the origin of the magneto cristalline
anisotropy of paramount technological importance.<br>
<hr>
<br>
<p>This ABINIT tutorial is now finished... <br>
</p>
<p><small><span style="font-style: italic;"><br>
</span></small></p>
<p><small><span style="font-style: italic;">
GZ would like to thank B. Siberchicot for useful comments.</span></small><br>
</p>
<script type="text/javascript" src="list_internal_links.js"> </script>
</body></html>
|