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 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><title>Many-Body Theory in ABINIT</title></head><body bgcolor="#ffffff">
<hr>
<h1>Many-Body Theory in ABINIT</h1>
<hr>
<p>
The aim of this section is to introduce the Green's function formalism, the concept of self-energy
and the set of coupled equations proposed by Hedin whose self-consistent solution, in principle,
gives the exact Green's function of the interacting system.
We mainly focus on the aspects of the theory that are important for understanding the
different steps of the calculation and the role played by the input variables used to control the run.
A much more consistent and rigorous introduction to the physical concept of
Green's function and self-energy can be found in any standard textbook on Many-Body theory, see for example [1,2,3].
</p>
<h5>Copyright (C) 2000-2014 ABINIT group (MG,MS)
<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>Contents of the lesson:</b></h3>
<ul>
<li><a href="theory_mbt.html#green_self_intro">1</a> The Green's function and the self-energy
</li><li><a href="theory_mbt.html#hedins_equations">2</a> Hedin's equations
</li><li><a href="theory_mbt.html#gw_approximation">3</a> The GW approximation
</li><li><a href="theory_mbt.html#perturbative">4</a> Perturbative approach
</li><li><a href="theory_mbt.html#RPA_Fourier_space">5</a> The RPA polarizability in Fourier space
</li><li><a href="theory_mbt.html#oscillator_notes">6</a> Notes on the calculation of oscilaltor matrix elements
</li><li><a href="theory_mbt.html#hilbert_transform">7</a> Hilbert transform method
</li><li><a href="theory_mbt.html#evaluation_gw_sigma">8</a> Evaluation of the GW self-energy
</li><li><a href="theory_mbt.html#contour_deformation">9</a> The contour deformation technique
</li><li><a href="theory_mbt.html#references">10</a> References
</li>
</ul>
<hr>
<h4><a name="green_self_intro"></a></h4>
<h3><b>1. Green's function and self-energy.</b></h3>
<p>
The time-ordered Green's function <i>G</i>(12), also called the propagator,
defines the probability amplitude for the propagation of an added or removed electron in a many-body system.
Since the probability amplitude is simply given by the overlap between the final and the initial state,
<i>G</i>(12) can be expressed as
</p>
<p align="center">
<img src="./theory_mbt/G_def.png">
</p>
where the matrix element is taken in the Heisenberg representation, T is the time-ordering operator
and the creation and annihilation field operators act on the the ground state of the <i>N</i>-electron many-body Hamiltonian
(the conventions used in the equations are explained in the section on
<a href="theory_mbt.html#notations">notation</a>).
The propagator contains only part of the full information carried by
the many-body wave function, but it includes the relevant part
for the study of charged excitations. Also, any single-particle operator
acting on the system can be evaluated once the Green's function is known.
<p>
Useful physical information about the charged excitation energies
of the many-body system can be obtained by expressing the propagator in the so-called Lehmann representation [1-2-3].
To this purpose it is useful to introduce the following notation to denote the
charged excitation energies of the <i>N</i>-electron system[5]:
</p>
<p align="center">
<img src="./theory_mbt/charged_exc_ene.png">
</p>
where <i>E<sub>0</sub><sup>N</sup></i> is the ground state energy of the electron system with <i>N</i>
electrons, and <i>i</i> is the set of quantum numbers labeling the excited states with <i>N</i>1 electrons.
Finally, <i>μ</i> is the chemical potential of the system.
Other important quantities that will be used in the following are
the so-called Lehmann amplitudes defined, in the Schrdinger representation, by
<p align="center">
<img src="./theory_mbt/lehmann_ampl.png">
</p>
The Lehmann representation of the Green's function
<p align="center">
<img src="./theory_mbt/Lehmann.png">
</p>
makes it clear that, in the frequency domain, the time-ordered Green's function
contains the complete excitation spectrum corresponding to excitations of an (<i>N</i>-1)-particle and an (<i>N</i>+1)-particle
system. Hence, locating the poles of the Green's function in the
complex plane provides the information needed to interpret those
processes measured in experiments in which a single electron is
inserted to or removed from the system. The figure below gives a
schematical representation of the location of the poles of the
time-ordered Green's function.
<p align="center">
<img src="./theory_mbt/poles_G.png">
</p>
<p>
Where the ionisation potential is the energy required to remove an electron from
the system, the electron affinity to add an electron, and the chemical potential
is typically taken to be in the middle of the gap. For a metallic system these
energies are all equal to each other, and there is no gap.
</p>
<p>
<!--
The equation of motion technique tries to solve the problem by differentiating the Green's function a number of times.
This approach leads to a series of coupled differential equations involving functions with a progressively increasing number of particles
whose solution has the same complexity as the original Schr\"odinger problem.
The calculation of the fully interacting Green's function can be thus reduced
to the problem of finding the self-energy of the system.
However, at this stage, the question of how G can be calculated remains.
-->
The Dyson equation
</p>
<p align="center">
<img src="./theory_mbt/G_Dyson.png">
</p>
establishes a connection between the fully interacting <i>G</i> and the propagator, <i>G<sub>0</sub></i>,
of an approximate non-interacting system
through a (non-local, non-Hermitian and time dependent) potential called the self-energy, Σ.
Since <i>G<sub>0</sub></i> is supposed to be known exactly, the problem of calculating <i>G</i>(12)
has now been reduced to the calculation of the self-energy.
<p>
The self-energy is not a mere mathematical device used in a roundabout way to obtain <i>G</i> but is has a direct physical meaning.
The knowledge of the self-energy operator, allows one to
describe the quantum-mechanical state of a renormalized electron in the many-body system
by solving the quasiparticle (QP) equation[5]:
</p>
<p align="center">
<img src="./theory_mbt/qp_equation.png">
</p>
<!--
Although the above equation looks similar to a mean-field approach,
it does not constitute a mean-field formulation since the self-energy takes all dynamic many-electron processes into account.
-->
The QP eigenstates so obtained can be used to construct <i>G</i><!--
Unlike the KS approach, the QP equation involves the non Hermitian Sigma and therefore
the eigenvalues are complex-valued.
-->
according to the Lehmann representation. Note that the QP equation
departs from the Kohn Sham equation since the QP eigenvectors and
eigenvalues do have a direct physical meaning: they can be used to
obtain both the charge density of the interacting system and to
describe the properties of charged excitations.
<br>
<br>
<br>
<hr><br>
<h3><a name="hedins_equations"></a></h3>
<h3><b> 2. Hedin's equations.</b></h3>
<p>
In 1965 Hedin[6] showed how to derive a set of coupled integro-differential equations
whose self-consistent solution, in principle, gives the exact self-energy of the system and
therefore the exact <i>G</i>.
<!--
W(12) as fundamental building block.
The dynamically screened interaction generated at position $(1)$ by an electron at $(2)$
is expressed in terms of the bare Coulomb term and the inverse dielectric matrix as
-->
</p>
<p>
The fundamental building blocks employed in the formalism are
the irreducible polarizability:
</p>
<p align="center">
<img src="./theory_mbt/tchi_def.png">
</p>
which describes the linear response of the density to changes in the total effective potential
(the superposition of the external potential plus the internal classical Hartree potential)
and the dynamically screened interaction, <i>W</i>, that is related to the bare Coulomb interaction, <i>v</i>, and
to the inverse dieletric function through:
<p align="center">
<img src="./theory_mbt/W_def.png">
</p>
The dielectric matrix є(12) is related to the irreducible polarizability <i>χ</i>(12) by the following relation:
<p align="center">
<img src="./theory_mbt/e_from_tchi.png">
</p>
<p>
The pentagon sketched in the figure below shows how the various physical quantities are interrelated:
</p>
<p align="center">
<img src="./theory_mbt/hedin_pentagon.png">
</p>
The polarization function renormalises the bare interaction resulting in the screened interaction <i>W</i>(12).
The screened interaction, <i>W</i>(12), the many-body propagator <i>G</i>(12), and the vertex function, Γ(12;3),
which describe the interactions between virtual hole and electron excitations [5],
are the essential ingredients for the determination of Σ(12).
<p>
The iteration starts by setting <i>G</i> = <i>G<sub>0</sub></i>. Then the set of equations should in principle be iterated until self-consistency in all terms is reached.
<br><br><br></p>
<hr><br>
<h3><a name="gw_approximation"></a></h3>
<h3><b> 3. The GW approximation.</b></h3>
<p>The practical solution of Hedin's equations is extremely complicated
as
they are not just numerical relations but contain a functional
derivative in the equation for the vertex.
The direct evaluation of the vertex function is very challenging.
The set of equations can, however, be iterated assuming that only a few
iterations are actually needed to obtain physically meaningful results.
</p>
<p>
A widely used approach to the approximate solution of Hedin's equations is the so-called
<i>GW</i> approximation[6], which consists in approximating the vertex function with a local and instantaneous function:
</p>
<p align="center">
<img src="./theory_mbt/gamma_GW.png">
</p>
This approximated vertex, once inserted in the full set of Hedin's equations, leads to a considerable
simplification in the set of equations:
<p align="center">
<img src="./theory_mbt/gw_pentagon.png">
</p>
<p>
Thanks to the neglect of vertex corrections, the irreducible polarizability <i>χ</i>(12) is now given by
</p>
<p align="center">
<img src="./theory_mbt/RPA_chi.png">
</p>
which, once rewritten in terms of orbitals and energies, reduces to the RPA expression proposed by Adler [7] and Wiser [8].
<p>
In real space, the self-energy reduces to a simple direct product of the dressed electron
propagator, <i>G</i>(12), and the dynamically screened interaction, <i>W</i>(12):
</p>
<p align="center">
<img src="./theory_mbt/gwsigma_rt_domain.png">
</p>
The self-energy, a simple product in the space-time domain, becomes a convolution when expressed in frequency-space:
<p align="center">
<img src="./theory_mbt/self_def.png">
</p>
<p>
<!--dressed
In practice, the electron propagator $G(12)$ is never explicitly known and has to be
approximated with the Green's function, $\Go(12)$, of an appropriate non-interacting system.
-->
</p>
<p>
Ideally, the set of GW equations should still be iterated until self-consistency
in all terms is reached; this is the fully self-consistent GW method (SCGW).
<!--
Hereafter this approach will be denoted with the name $SCGW$.
$SCGW$ is the most satisfactory implementation from a theoretical point of view since it preserves energy, electron
number and total momentum~\cite{Martin1959,Baym1961,Baym1962}.
-->
However SCGW calculations for real systems are still very challenging, and very few have been reported in the literature
<!--
(see for example~\cite{Holm1998,Holm2000,Garcia-Gonzalez2001} for applications to
the homogeneous electron gas and~\cite{Shirley1996,Schone1998,Kutepov2010} for calculations on simple metals and semiconductors).
-->
Moreover, the utility of fully SCGW results are still under debate within the scientific community.
</p>
<p>The problem is that self-consistency typically improves total
energies, but worsens spectral properties
(such as band gaps and optical spectra). Since obtaining the spectral
information is often the main reason for doing such difficult
calculations in the first place, many authors agree that a useful
self-consistent approach would need the inclusion of some kind of
vertex correction during the solution of the equations.
</p>
<p>
For this reason, the most common approach employed in the <i>ab initio</i> community
consists of using the best available approximation for <i>G </i>and <i>W</i> as a starting point
and performing only a single-iteration of the parallelogram (the so-called one-shot <i>GW</i> method, or <i>G<sub>0</sub>W<sub>0</sub></i>).
In this case the self-energy is simply given by:
</p>
<p align="center">
<img src="./theory_mbt/G0W0.png">
</p>
where <i>G<sub>0</sub><sup>KS</sup></i>(12) is the independent-particle propagator of the Kohn-Sham (KS) Hamiltonian,
and the screened interaction is approximated with the RPA calculated with KS energies and wave functions:
<p align="center">
<img src="./theory_mbt/G0G0.png">
</p>
<br>
<br>
<br>
<hr><br>
<h3><a name="perturbative"></a></h3>
<h3><b>4. Perturbative approach.</b></h3>
Despite all the fundamental differences between many-body theory and DFT,
the Kohn-Sham exchange-correlation potential can be seen as a static, local and
Hermitian approximation to the self-energy.
Indeed, in many cases the Kohn-Sham energies already provide a reasonable estimate of the band structure
and are usually in qualitative agreement with experiment.
<p>
This observation suggests that a simple, albeit accurate, solution for the QP energies can be obtained using
first-order perturbation theory, treating the exchange and correlation potential, <i>V<sub>xc</sub></i>,
as a zeroth-order approximation to the non-local and energy dependent
self-energy [11,12]
<!--
<p>
The GW approximation is usually formulated using the KS Green's function as the starting point
and the KS exchange-correlation potential has to be subtracted later from the resulting self-energy.
are only a correction to the Kohn-Sham eigenvalues,
-->
</p>
<p>
Under the assumption that the QP wavefunctions equal the KS orbitals,
we can expand the self-energy operator around <i>ε<sup>KS</sup></i> obtaining a closed expression for <i>ε<sup>QP</sup></i> :
</p>
<p align="center">
<img src="./theory_mbt/qpene_perturbative.png">
</p>
where
<p align="center">
<img src="./theory_mbt/Z_def.png">
</p>
is the so-called renormalization factor. This corresponds to making a
Taylor expansion of the self-energy matrix element around the KS
energy, as depicted below.
<p align="center">
<img src="./theory_mbt/self_energy_taylor.png">
</p>
<br>
<br>
<br>
<hr><br>
<h4><a name="RPA_Fourier_space"></a></h4>
<h4><b>5. The RPA polarizability in Fourier space.</b></h4>
In the reciprocal space and frequency domain (implying a Fourier transform (FT) of
the real space coordinates and time variables), the independent-particle
polarizability assumes the form:
<p align="center">
<img src="./theory_mbt/chi0_sc_tr.png">
</p>
where only the transitions between valence (<i>v</i>) and conduction states (<i>c</i>) contribute
(for simplicity we have assumed a semiconductor with time-reversal invariance,
the conventions used for the Fourier transform are discussed in the <a href="theory_mbt.html#notations">notation</a> section).
<p>
The number of bands used to compute the polarizability is specified by <a href="../input_variables/varbas.html#nband" target="kwimg">nband</a>,
while <a href="../input_variables/vargw.html#zcut" target="kwimg">zcut</a> gives the small complex
shift used to avoid the divergences in the denominators.
The frequency mesh is defined by the set of variables
<a href="../input_variables/vargw.html#nfreqre" target="kwimg">nfreqre</a>,
<a href="../input_variables/vargw.html#nfreqim" target="kwimg">nfreqim</a>,
<a href="../input_variables/vargw.html#freqremax" target="kwimg">freqremax</a>, and
<a href="../input_variables/vargw.html#freqremin" target="kwimg">freqremin</a>
(a number of more exotic grid choices are available through options beginning with
<a href="../input_variables/vargw.html#gw_frqim_inzgrid" target="kwimg">gw_... or cd_...</a>).
</p>
<p>
<i>M</i> is a shorthand notation to denote the matrix element of a plane wave sandwiched
between two wavefunctions (i.e. oscillator matrix elements).
The number of planewaves (PW) used to describe the wavefunctions is determined by
<a href="../input_variables/vargw.html#ecutwfn" target="kwimg">ecutwfn</a>
while the number of <i>G</i>-vectors used to describe the polarizability
(i.e. the number of <i>G</i> vectors in the oscillator matrix elements) is
determined by <a href="../input_variables/vargw.html#ecuteps" target="kwimg">ecuteps</a>.
The oscillators are ubiquitous in the Many-Body part of ABINIT and their
calculation represents one of the most CPU intensive part of the execution.
For this reason we devote section <a href="theory_mbt.html#oscillator_notes">6</a>
to the discussion of some important technical details concerning their computation.
</p>
<p>
In principle, the set of <b>q</b>-points in the screening matrix is given by all
the possible differences between two crystalline momenta of the wavefunctions
stored in the KSS file, so it is controlled by the chosen <b>k</b>-point grid.
The code, however, exploits the invariance of the two-point function under
the action of any symmetry operation of the crystalline space group:
</p>
<p align="center"><img src="./theory_mbt/chi0_symmetry.png">
<br>
</p>
so that only the <b>q</b>-points in the irreducible Brillouin zone (IBZ) have to be calculated explicitly.
<!--
The use of symmetries is switched on/off with
<a href="../input_variables/vargw.html#awtr" target="kwimg">awtr</a> (time-reversal), and
<a href="../input_variables/vargw.html#symchi" target="kwimg">symchi</a> (crystal symmetries).
-->
<p>
In frequency and reciprocal space, the microscopic dieletric function is related to the
irreducible polarizability by the following relation
</p>
<p align="center">
<img src="./theory_mbt/epsilon_vs_tchi.png">
</p>
from which the inverse dielectric function is obtained via matrix inversion.
Following Adler [7,8], the macroscopic dielectric function, є<sub>M</sub><sup>LF</sup>(ω), can be directly related to
the inverse of the microscopic dielectric matrix by means of:
<p align="center">
<img src="./theory_mbt/emacro_lfe.png">
</p>
The optical absorption spectrum -- the quantity one can compare with experiments --
is given by the imaginary part: Im[є<sub>M</sub><sup>LF</sup>(ω)].
<p>
Note that the equation above differs from
</p>
<p align="center">
<img src="./theory_mbt/emacro_nlfe.png">
</p>
due to the so called local-field effects introduced by the presence of the crystalline environment.
These spectra, if calculated, are typically output as ...<b>_LF</b> and ...<b>_NLF</b>
files during the course of a calculation.
<br>
<br>
<br>
<hr><br>
<h3><a name="oscillator_notes"></a></h3>
<h3><b>6. Notes on the calculation of the oscillator matrix elements.</b></h3>
Many body calculations require the evaluation of integrals involving the oscillator matrix elements
<p align="center">
<img src="./theory_mbt/oscillator_longv.png">
</p>
where the <b>k</b>-point belongs to the full Brillouin zone.
<p>
These terms are evaluated by performing a Fast Fourier Transform (FFT) of the real space product of the two wavefunctions
(the second expression in the equation above).
Thanks to the FFT algorithm, the CPU-time requirement scales almost linearly with the the
number of points in the FFT box, moreover the code implements refined algorithms
(for instance zero-padded FFTs, FFTW3 interface) to optimize the computation.
</p>
<p>
There can be a significant speed-up in this component depending on the numerical FFT library used.
If possible, it should always be advantageous to link and use the FFTW3 library in GW calculations
(controlled by setting
<a href="../input_variables/vardev.html#fftalg" target="kwimg">fftalg</a> 312). The performance of
the various FFT libraries for a given type of calculation can be benchmarked with the <b>fftprof</b> utility.
</p>
<p>
For a given set of indeces (<i>b<sub>1</sub></i>, <i>b<sub>2</sub></i>, <b>k</b>, <b>q</b>),
the calculation of the oscillator is done in four different steps:
</p>
<ol>
<li>
The two wavefunctions in the irreducible wedge are FFT transformed from the <b>G</b>-space to the real space representation,
</li><li>
The orbitals are rotated in real space on the FFT mesh to obtain the points <b>k</b> and <b>k-q</b> in the full Brillouin zone.
</li><li>
Computation of the wavefunction product.
</li><li>
FFT transform of the product to obtain <i>M</i>
</li>
</ol>
<p>
Each oscillator thus requires three different FFTs (two transforms to construct
the product, one FFT to get M).
The number of FFTs can be significantly reduced by precomputing and storing in memory
the real space representation of the orbitals at the price of a reasonable increase of
the memory allocated. However, for very memory demanding calculations, the real space orbitals
can be calculated on the fly with an increase in computational time instead. This option
is controlled by the second digit of the input variable
<a href="../input_variables/vargw.html#gwmem" target="kwimg">gwmem</a>.
</p>
<p>
The third term in the equation defining the oscillators makes it clear that the product
of the periodic part of the orbitals has non-zero Fourier components in a sphere
whose radius is 2<i>R<sub>wfn</sub></i> where <i>R<sub>wfn</sub></i> is the radius of
the <b>G</b>-sphere used for the wavefunctions (set by
<a href="../input_variables/vargw.html#ecutwfn" target="kwimg">ecutwfn</a>). To avoid
aliasing errors in the FFT one should therefore use an FFT box that encloses the
sphere with radius 2<i>R<sub>wfn</sub></i>,
but this leads to a significant increase in the computing effort as well as in the
memory requirements. The input variable
<a href="../input_variables/vargw.html#fftgw" target="kwimg">fftgw</a> specifies
how to setup the FFT box for the oscillators and should be used to test how the aliasing
errors affect the final results. The default setting of <b>fftgw 21</b> is safe, a setting
of <b>fftgw 11</b> is fast but can be inaccurate, and a setting of <b>fftgw 31</b> gives
the maximum possible accuracy at a significant computational cost.
<br><br><br></p>
<hr><br>
<h3><a name="hilbert_transform"></a></h3>
<h3><b>7. The Hilbert transform method.</b></h3>
<p>
The computational effort for the evaluation of the RPA polarizability
with the Adler-Wiser expression scales linearly with the number of frequencies computed
(<a href="../input_variables/vargw.html#nfreqre" target="kwimg">nfreqre</a> and
<a href="../input_variables/vargw.html#nfreqim" target="kwimg">nfreqim</a>),
albeit with a large prefactor which increases with the fourth power of the number of atoms.
The main reason for the linear scaling is that the frequency dependence cannot be factorised
out of the sum over transitions, hence a distinct and expensive summation over transitions
has to be performed separately for each frequency.
</p>
<p>
This linear scaling represents a serious problem, especially when many frequencies are wanted, for
example when computing QP corrections within the contour deformation technique described in the <a href="lesson_gw2.html">second lesson</a> of the GW tutorial.
</p>
<p>
This computational bottleneck can be removed, under certain circumstances, by employing an efficient
algorithm proposed in [13] and subsequently revisited in [14], in which only the spectral function
</p>
<p align="center">
<img src="./theory_mbt/sf_chi0.png">
</p>
has to be evaluated in terms of electronic transitions between valence and conduction states.
The Dirac delta function can be approximated either by means of a triangular function centered
at the energy transition following [14] or a gaussian approximant
following [13] (see the related input variables
<a href="../input_variables/vargw.html#spmeth" target="kwimg">spmeth</a>, and
<a href="../input_variables/vargw.html#spbroad" target="kwimg">spbroad</a>).
The spectral function is evaluated on a linear frequency mesh which covers the entire set
of trasition energies included in the calculation.
The number of points in the mesh is given by
<a href="../input_variables/vargw.html#nomegasf" target="kwimg">nomegasf</a>.
<p>
The evaluation of the spectral function is rather efficient thanks to the presence of the
delta-function in the expression above. For example, when
<a href="../input_variables/vargw.html#spmeth" target="kwimg">spmeth</a>=1,
the CPU time required to compute the spectral function on an arbitrarily dense frequency
mesh is just twice that required by a single static computation based on the standard
Adler-Wiser expression.
</p>
<p>
The full polarizability is then efficiently retrieved by means of a less expensive frequency integration (a Hilbert transform):
</p>
<p align="center">
<img src="./theory_mbt/hilbert_transform.png">
</p>
<p>
The price to be paid, however, is that a large table for the spectral function
has to be stored in memory and a Hilbert transform has to be performed for each pair
(<b>G</b><sub>1</sub>, <b>G</b><sub>2</sub>).
Since the computing time required for the transform scales quadratically with the number of
vectors in the polarizability (governed by
<a href="../input_variables/vargw.html#ecuteps" target="kwimg">ecuteps</a>),
the CPU time spent in this part will overcome the computing time of the standard Adler-Wiser
formalism for large <a href="../input_variables/vargw.html#ecuteps" target="kwimg">ecuteps</a>.
A theoretical estimate of the crossover point is hard to give because it depends on many
factors. However, if many frequencies are needed, such as for the evaluation of optical spectra,
or accurate contour deformation integrations, or even mapping full grids in the complex plane,
the Hilbert transform method can be significantly faster, and its use is well worth considering.
<br><br><br></p>
<hr><br>
<h3><a name="evaluation_gw_sigma"></a></h3>
<h3><b>8. Evaluation of the GW self-energy.</b></h3>
<p>
Following the standard approach, we separate the screened interaction into the static bare Coulomb term
and a frequency-dependent contribution according to:
</p>
<p align="center">
<img src="./theory_mbt/W_partition_simple.png">
</p>
where matrix notation is used.
<p>
This particular decomposition of <i>W</i>, once inserted in the convolution defining Σ,
leads to the split of the self-energy into two different contributions (exchange and correlation):
</p>
<p align="center">
<img src="./theory_mbt/self_energy.png">
</p>
<p>
The exchange part is static and turns out to have the same mathematical structure as the Fock operator in Hartree-Fock theory,
albeit constructed with quasiparticle amplitudes
</p>
<p align="center">
<img src="./theory_mbt/self_x.png">
</p>
while the dynamic part Σ<sub>c</sub>(ω) accounts for correlation effects beyond Σ<sub>x</sub>.
<p>It is important to stress that, for computational efficiency, the
code does not compute the full self-energy operator by default.
Only its matrix elements for the states specified by <a href="../input_variables/vargw.html#kptgw" target="kwimg">kptgw</a> and
<a href="../input_variables/vargw.html#bdgw" target="kwimg">bdgw</a>
are computed and used to obtain the QP corrections.
</p>
<p>
When expressed in reciprocal space, the diagonal matrix elements of the exchange part are given by:
</p>
<p align="center">
<img src="./theory_mbt/self_x_mel.png">
</p>
The evaluation of these terms represents a minor fraction of the overall CPU time since only
occupied states are involved. However we should always keep in mind that, due to the long
range of the bare Coulomb interaction, the convergence with respect to the number of plane
waves used in the oscillators <i>M</i>
(<a href="../input_variables/vargw.html#ecutsigx" target="kwimg">ecutsigx</a>) is usually
slow, much slower than the convergence of the correlation part, which is short-ranged. This plane
wave cutoff can be converged independently of others if nescessary, and given a much larger value
in comparison to
<a href="../input_variables/varbas.html#ecut" target="kwimg">ecut</a>,
<a href="../input_variables/vargw.html#ecutwfn" target="kwimg">ecutwfn</a> and
<a href="../input_variables/vargw.html#ecuteps" target="kwimg">ecuteps</a>.
<p>
Another point worth noting is the presence in the expression of the Coulomb
singularity for |<b>q</b>+<b>G</b>| → 0. From a mathematical point of view,
the integral is well-defined since the singularity is integrable
in three-dimensional space once the thermodynamical limit, <i>N</i><sub><b>q</b></sub> → ∞, is reached.
On the other hand, only a finite number of <b>q</b>-points can be used for practical applications,
and a careful numerical treatment is needed to avoid an exceedingly slow convergence with respect to the BZ sampling.
To accelerate the convergence in the number of <b>q</b>-points, the code implements several
techniques proposed in the literature. We refer to the documentation of
<a href="../input_variables/vargw.html#icutcoul" target="kwimg">icutcoul</a> for
a more extensive discussion.
</p>
<p>
The expression for the matrix elements of the correlation part is instead given by:
</p>
<p align="center">
<img src="./theory_mbt/self_c_mel.png">
</p>
<!-- Safari does not recognize the code 𝒥 for capital J -->
where all dynamical effects are now contained in the frequency convolution integral <i>J</i>.
<p>
The explicit expression for <i>J</i> depends on the method used to treat the screened interaction.
The code implements four different plasmon-pole techniques to model the frequency dependence of
<b>W</b> in an efficient but approximate way, alternatively, it is possible to use the more sophisticated
frequency integration of the contour deformation method [15]
for accurate QP calculations (see the related variables
<a href="../input_variables/vargw.html#ppmodel" target="kwimg">ppmodel</a> and
<a href="../input_variables/vargw.html#gwcalctyp" target="kwimg">gwcalctyp</a>).
</p>
<p>
The double sum over <b>G</b>-vectors is performed for all the plane waves contained within
a sphere of energy
<a href="../input_variables/vargw.html#ecuteps" target="kwimg">ecuteps</a>
(it cannot be larger than the value used to generate the SCR file).
For each state, the correlated matrix elements are evaluated on a linear frequency mesh centered
around the initial KS energy and the derivative needed for the renormalization
factor is obtained numerically (see
<a href="../input_variables/vargw.html#nomegasrd" target="kwimg">nomegasrd</a> and
<a href="../input_variables/vargw.html#omegasrdmax" target="kwimg">omegasrdmax</a>).
</p>
<p>
Note that here, in contrast to the exchange term, the sum over the band index <i>n</i> should extend up to
infinity although in practice only a finite number of states
can be used (specified by <a href="../input_variables/varbas.html#nband" target="kwimg">nband</a>).
</p>
<p>
<br><br><br></p>
<hr><br>
<h3><a name="plasmonpole_models"></a></h3>
<h3><b>9 Plasmon-pole models</b></h3>
One of the major computational efforts in self-energy calculations is represented by the calculation
of the frequency dependence of the screened interaction, which is needed for the evaluation of the convolution.
Due to the ragged behavior of <i>G</i>(ω) and <i>W</i>(ω)
along the real axis, numerous real frequencies are in principle
required to converge the results (note that the maximum frequencies
needed are now reported if <a href="../input_variables/varfil.html#prtvol" target="kwimg">prtvol</a> > 9).
On the other hand, since the fine details of <i>W</i>(ω) are integrated over,
it is reasonable to expect that approximate models, able to capture the main physical features of
the screened interaction, should give sufficiently accurate results with a considerably reduction
of computational effort.
This is the basic idea behind the so-called plasmon-pole models in which the frequency dependence
of <i>W</i>(ω) is modelled in terms of analytic expressions depending on coefficients
that are derived from first principles, i.e. without any adjustable external parameters.
<p>
Four different plasmon-pole techniques are available in ABINIT and
the input variable <a href="../input_variables/vargw.html#ppmodel" target="kwimg">ppmodel</a> selects the method to be used.
</p>
<p>
When <a href="../input_variables/vargw.html#ppmodel" target="kwimg">ppmodel</a>=1,2
the frequency dependence of the inverse dielectric function is modeled according to
</p>
<p align="center">
<img src="./theory_mbt/ppmodel_imag.png">
</p>
<p align="center">
<img src="./theory_mbt/ppmodel_real.png">
</p>
The two models differ in the approach used to compute the parameters.
<a href="../input_variables/vargw.html#ppmodel" target="kwimg">ppmodel</a>=1
derives the parameters such that the inverse dielectric matrix is correctly reproduced at
two different explicitly calculated frequencies:
the static limit (ω = 0) and an additional imaginary point located at
<a href="../input_variables/vargw.html#ppmfrq" target="kwimg">ppmfrq</a>. Unless the user overrides
this, the default value is calculated from the average electronic density of the system.
The plasmon-pole parameters of
<a href="../input_variables/vargw.html#ppmodel" target="kwimg">ppmodel</a>=2
are calculated so as to reproduce the static limit exactly and to
fulfill a generalized frequency sum rule relating the imaginary part of the many-body inverse
dielectric matrix to the plasma frequency and the charge density [12]
<p>
For a discussion of the models corresponding to <a href="../input_variables/vargw.html#ppmodel" target="kwimg">ppmodel</a>=3,4 we refer the reader to the original papers cited in the documentation
of the variable.
<br><br><br></p>
<hr><br>
<h3><a name="contour_deformation"></a></h3>
<h3><b>9. Contour deformation technique.</b></h3>
The contour deformation method was proposed in order to avoid having to deal with quantities close
to the real axis as much as possible [15].
The integral over the real frequency axis can be transformed into an integral over the contour
depicted in red in the figure below. The integral over real frequency is traded with an integration
along the imaginary axis plus contributions coming from the poles of the integrand lying inside
the contour:
<p align="center">
<img src="./theory_mbt/contour.png">
</p>
<p align="center">
<img src="./theory_mbt/GW_CD.png">
</p>
In the above equation, the first sum is restricted to the poles lying inside the path
<i>C</i><!-- Safari does not render it correctly.
𝐶.
-->.
<i>W</i><sub>c</sub>(<i>z</i>) represents the frequency dependent part of the screened interaction, whose expression in reciprocal space is given by:
<p align="center">
<img src="./theory_mbt/Wc.png">
</p>
The integration along the imaginary axis is expected to converge quickly with respect to the
number of sampled frequencies since the integrand is typically very smooth.
Only the residues of the integrand have to be evaluated at the complex poles contributed
by the Green's function whose frequency dependence is known.
<br>
<br>
<br>
<hr><br>
<h3><a name="notations"></a></h3>
<h3><b>10. Notation.</b></h3>
The following shorthand notations are employed:
<p align="center">
<img src="./theory_mbt/notation_1.png">
</p>
where <i>v</i>(<b>r</b><sub>1</sub>,<b>r</b><sub>2</sub>) represents the bare Coulomb interaction, and η is a positive infinitesimal.
<p>
The Fourier tranforms for periodic lattice quantities are defined as
</p>
<p align="center">
<img src="./theory_mbt/notation_2.png">
</p>
The volume of the unit cell is denoted with Ω, while <i>V</i> is the
total volume of the crystal simulated employing Born-von Karman periodic boundary condition.
Unless otherwise specified, Hartree atomic units will be used throughout.
<hr>
<h3><p><b><a name="references">References</a>
</b></p></h3>
<ol>
<li><a name="Abrikosov1975">
Abrikosov, Gorkov, and Dzyaloshinskii.
Methods of quantum field theory in statistical physics,
Dover, New York,
(1975)
</a> </li><li><a name="Fetter1971">
Fetter, and Walecka.
Quantum Theory of Many-Particle Systems,
McGraw-Hill, New York,
(1971)
</a> </li><li><a name="Mattuck1992">
R.D Mattuck.
A guide to Feynman diagrams in the many-body problem,
Dover, New York,
(1992)
</a> </li><li><a name="Aulbur2000">
W. G. Aulbur,
L. Jnsson
and J. W. Wilkins,
Solid State Physics <b>54</b>, 1 (2000)
</a></li><li><a name="Onida1995">
G. Onida et al.
Phys. Rev. Lett.
<b>75</b>, 818
(1995)
</a> </li><li><a name="Hedin1965">
L. Hedin
Phys. Rev.
<b>139</b>,
A796, (1965)
</a> </li><li><a name="adler">S. L. Adler, Phys. Rev. <b>126</b>, 413 (1962)</a> </li><li><a name="wiser">N. Wiser, Phys. Rev. <b>129</b>, 72 (1963)</a> </li><li><a name="2009">
A. Kutepov, S. Y. Savrasov and G. Kotliar
Phys. Rev. B
<b>80</b>, 041103(R)
(2009)
</a> </li><li><a name="Kutepov2009">
A. Kutepov, S. Y. Savrasov and G. Kotliar
Phys. Rev. B
<b>80</b>, 041103(R)
(2009)
</a> </li><li><a name="Hybertsen1985">
M.S. Hybertsen, and S.G Louie.
Phys. Rev. Lett.
<b>55</b>,
1418
(1985)
</a></li><li><a name="Hybertsen1986">
M.S. Hybertsen, and S.G Louie.
Phys. Rev. B
<b>34</b>,
5390
(1986)
</a></li><li><a name="Miyake2000">
T. Miyake, and F. Aryasetiawan.
Phys. Rev. B,
<b>61</b>,
7172
(2000)
</a></li><li><a name="Shishkin2006">
M. Shishkin, and G. Kresse.
Phys. Rev. B,
<b>74</b>,
035101
(2006)
</a></li><li><a name="Lebegue2003">
S. Lebegue, B. Arnaud, M. Alouani, and P.E. Bloechl.
Phys. Rev. B,
<b>67</b>,
155208
(2003)
</a></li>
</ol>
<script type="text/javascript" src="list_internal_links.js"> </script>
</body></html>
|