fizički odsjek, prorodoslovno-matematički fakultet...

144
1 Fizički odsjek, Prorodoslovno-matematički fakultet Sveučilište u Zagrebu

Upload: others

Post on 14-Feb-2020

14 views

Category:

Documents


1 download

TRANSCRIPT

1

Fizički odsjek, Prorodoslovno-matematički fakultetSveučilište u Zagrebu

Teorija funkcionala gustoće (DFT) kroz primjereuz programski paket QUANTUM ESPRESSO

Ivo Batistić

10. siječnja 2017.

Sadržaj

Sadržaj 2

1 Uvod 51.1 Svrha udžbenika . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.2 Što DFT može izračunati - galerija rezultata . . . . . . . . . . . . . . 51.3 Programi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71.4 Pseudopotencijali . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.5 Ostali programski paketi . . . . . . . . . . . . . . . . . . . . . . . . . 8

2 Ukratko o DFT-u 92.1 Potencijal izmjene i korelacija: Vxc . . . . . . . . . . . . . . . . . . . 10

3 Pseudopotencijali 13

4 Quantum espresso i kako izvoditi račune 17

5 Kristalna struktura 195.1 Kristalne v.s. kartezijeve koordinate . . . . . . . . . . . . . . . . . . . 195.2 Kristalna struktura u QE . . . . . . . . . . . . . . . . . . . . . . . . . 215.3 Kako doći do podataka o strukturi? . . . . . . . . . . . . . . . . . . . 23

6 Samosuglasni (SCF) račun 27

7 Gustoća stanja (DOS) 317.1 Proračun DOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

2

SADRŽAJ 3

8 Elektronska struktura - vrpce (spaghetti) 378.1 Izračun vrpčaste strukture . . . . . . . . . . . . . . . . . . . . . . . . 378.2 Kako definirati putanju u Brillouinovoj zoni . . . . . . . . . . . . . . 39

9 Gustoća naboja/čestica 459.1 3D gustoća . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459.2 2D presijek gustoće čestica . . . . . . . . . . . . . . . . . . . . . . . . 499.3 Kombiniranje više gustoća naboja . . . . . . . . . . . . . . . . . . . . 549.4 Efektivni naboj iona . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

10 Fermijeva površina 6110.1 Procedura za inačicu 5.4 ili više . . . . . . . . . . . . . . . . . . . . . 6110.2 Grafički prikaz Fermijeve površine . . . . . . . . . . . . . . . . . . . . 63

11 Optimizacija kristalne strukture i fononi 6511.1 Optimizacija kristalne strukture . . . . . . . . . . . . . . . . . . . . . 6511.2 Fononska titranja . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6711.3 Elastične konstante, fononska disperzija i gustoća stanja . . . . . . . 7011.4 Naboji na ionima i IR spektar . . . . . . . . . . . . . . . . . . . . . . 75

12 Magnetizam 7712.1 Feromagnetizam u željezu . . . . . . . . . . . . . . . . . . . . . . . . 7712.2 Antiferomatnetizam u NiO . . . . . . . . . . . . . . . . . . . . . . . . 8212.3 Jako korelirani sustavi i GGA/LDA+U . . . . . . . . . . . . . . . . . 8512.4 Primjena LDA/GGA+U u NiO . . . . . . . . . . . . . . . . . . . . . 8712.5 Kako izračunati U . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

13 Wannierove funkcije 9513.1 Instalacija . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9513.2 Procedura izvođenja wannier-programa . . . . . . . . . . . . . . . . . 9713.3 Grafen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9813.4 literatura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

14 NMR, EPR, EFG 10914.1 Uvod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10914.2 Instalacija qe-gipaw paketa . . . . . . . . . . . . . . . . . . . . . . . . 111

A Matrica gustoće za slobodne elektrone 113

B Potencijal izmjene 115B.1 Energija izmjene za slobodne elektrone . . . . . . . . . . . . . . . . . 115B.2 Potencijal izmjene . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

C Korelacijska energija i potencijal 117

D Rješavanje Schrödingerove jednadžbe pomoću ravnih valova 119

4 SADRŽAJ

E Izračun Fermijeve površine za QE inačice < 5.4 121

F Kompajliranje QE 127

G Brzi tečaj linuxa 129G.1 Terminalski programi, naredbe i linux ljuska . . . . . . . . . . . . . . 129G.2 Datotečni sustav . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130G.3 Tipične naredbe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132G.4 Kako izvoditi naredbe . . . . . . . . . . . . . . . . . . . . . . . . . . 133G.5 Održavanje i administriranje debian linuxa . . . . . . . . . . . . . . . 136G.6 Malo zabave s linux komandnom linijom . . . . . . . . . . . . . . . . 137

Bibliografija 141

1. Uvod

1.1 Svrha udžbenika

U današnje vrijeme (2016. god) mnoga teorijska i eksperimentalna istraživanjasadrže rezultate dobivene teorijom funkcionala gustoće, en. density functional theoryili skraćeno DFT.

Udžbenik je namijenjen studentima istraživačkog smjera fizike 4. i 5. godine studija,studentima doktorskog studija fizike kondenzirane tvari, mlađim istraživačima kojise žele upoznati s teorijom funkcionala gustoće, i kako je koristiti.

1.2 Što DFT može izračunati - galerija rezultata

Slika 1.1: Izračun elektronske strukture. Slika 1.2: Izračun elektronske gustoće stanja.

5

6 POGLAVLJE 1. UVOD

Slika 1.3: Proračun kristalne strukture dužina ke-mijskih veza. Slika 1.4: Izračun Fermijeve površine.

Slika 1.5: Izračun fononskih frekvencija. Slika 1.6: Izračun fononske gustoće stanje i termo-dinamičkih svojstava.

1.3. PROGRAMI 7

Slika 1.7: Izračun gustoća stanja za različite spin-ske orjentacije u feromagnetu. Slika 1.8: Izračun preraspodjela naboja zbog iz-

mjene konfiguracije sustava.

1.3 ProgramiPostoji veliki broj programskih paketa za DFT, neki su komercijalni a neki slobodni.Pogledati:

https://en.wikipedia.org/wiki/List_of_quantum_chemistry_and_solid-state_physics_software.

Od tog velikog mnoštva programa, odlučili smo koristiti Quantum espresso pro-gramski paket.

http://www.quantum-espresso.org/[1]

Quantum espresso ima dodatne programe koji se još razvijaju i nisu dio standardnogpaketa. Međutim moguće ih je spustiti na računalo, kompajlirati i koristiti, a nalazese na web-lokaciji:

http://www.qe-forge.org/gf/project/

Za grafički prikaz nekih podataka (kristalna rešeka, fermijeva površina, gustoćanaboja, …) koristit će se program xcryden:

http://www.xcrysden.org/[2]

Quantum espresso i xcryden su programi koji se mogu slobodno spustiti (po potrebikompajlirati) i slobodno koristiti. Postoje linux distribucije (debian npr.) koje većimaju prekompajlirane inačice pa se mogu instalirati kao i ostali linux programi.Za grafički prikaz ostalih podataka, onih koji se sastoje od tablice s listom brojeva,poslužit ćemo se python programom.

8 POGLAVLJE 1. UVOD

1.4 PseudopotencijaliPresudopotencijale potrebne za DFT, instalirat će se u imenik:

/opt/pseudo/

Pseudopotencijale je potrebno prethodno spustiti na lokalni stroj. Naprimjer:Konsole

> cd> wget http://www.quantum-espresso.org/wp-content/uploads/upf_files/upf_files.tar

te ih instalirati (raspakiratit) na navedenu lokaciju kao root-korisnik.

Lokacije za nalaženje pseudopotencijala:

• QE: http://www.quantum-espresso.org/pseudopotentials/• EPFL: http://theossrv1.epfl.ch/Main/Pseudopotentials• GBRV: http://www.physics.rutgers.edu/gbrv/• ONCV: http://fpmd.ucdavis.edu/potentials/• SSSP: http://materialscloud.org/sssp/• ONCV: http://fpmd.ucdavis.edu/qso/potentials/

Ulazne datoteke i skriptovi korištene u ovom dokumentu mogu se naći na

http://grdelin.pmf.unizg.hr/˜ivo/Nastava/Fizika_Cvrstoa_Stanja/QE/

1.5 Ostali programski paketiPostoji mnoštvo programskih paketa koji nadopunjavaju funkcionalnost Quantumespresso-a. Ovdje ćemo spemenuti samo neke:

• Wannierove funkcije - Wannier90: http://www.wannier.org/• Baderova analiza gustoće naboja: http://theory.cm.utexas.edu/henkelman/code/bader/• Teorija mnoštva čestica - YAMBO: http://www.yambo-code.org/• …

2. Ukratko o DFT-u

DF teorija (eng. density functional theory) bazira se na dva rada:

• P. Hohenberg i W. Kohn, Inhomogeneous Electron Gas, Phys.Rev. 136 (1064)B864–B871.[3]

• W. Kohn i L.J. Sham, Self-Consistent Equations Including Exchange and Cor-relation Effects, Phys.Rev. 140 (1965) A1133–A1138.[4]

Prvi rad daje teorijsku osnovu DF teoriji, dok drugi rad daje naputak kako provestiDFT račune.

Hohenberg–Kohn teoremi (1. rad):

1. Za sustav međudjelujućih čestica, vanjski potencijal U u kojem se čestice gi-baju, je do na proizvoljnu konstantu određen jedinstveno iz gustoće čestican(r⃗) u osnovnom stanju.

2. Energija sustava E[n] je funkcional gustoće čestica n(r⃗). Energija osnovnogstanja sustava je globalni minimum ovog funkcionala, a gustoća čestica kojaodgovara globalnom minimumu je gustoća čestica n(r⃗) u osnovnom stanju.

Kohn-Sham naputak (2. rad):

1. Točna gustoća čestica sustava, n(r⃗), može se prikazati kao gustoća česticapomoćnog sustava ne-međudjelujućih čestica.

2. Svaka pomoćna nemeđudjelujuća čestica giba se u nelokalnom Kohn-Shamovompotencijalu, VKS, koji se uobičajeno prikazuje kao zbroj nekoliko doprinosa:

• Vanjski potencijal, U (npr. od jezgri atoma).• Hartreejev potencijal, VH , koji je kulonski potencijal od drugih čestica.• te potencijal izmjene i korelacija, Vxc - koji je općenito nelokalan. Vxc

je najkritičniji dio cijele DF teorije jer se ne zna kako on izgleda. Zaprikaz Vxc u Schrödingerovoj jednadžbi i funkcionalu za energiju koristese razne aproksimacije.

Prema tome, Schrödingerova jednadžba za pomoćne čestice glasi:[− ℏ2

2m∇⃗2 + U(r⃗)+VH(r⃗)

]ψm(r⃗) +

∫dr⃗′ Vxc(r⃗

′, r⃗)ψm(r⃗′) = em ψm(r⃗)

To je 3-dimenzionalna PD jednadžba.

9

10 POGLAVLJE 2. UKRATKO O DFT-U

Gustoću pomoćnih čestica (i točnu gustoću čestica) u osnovnom stanju možemodobiti iz izračunatih valnih funkcija:

n(r⃗) =∑

popunjenastanja

|ψn(r⃗)|2

Kohn-Shamov potencijal u kojem se čestice gibaju ovisi su o gustoći čestica, pa jepotencijale, gustoću i valne funkcije potrebno izračunati samosuglasno.

2.1 Potencijal izmjene i korelacija: VxcUobičajeno je potencijal izmjene i korelacija razložiti na dva doprinosa, potencijalizmjene i na korelacijski potencijal:

Vxc = Vx + Vc

Na isti način se energija izmjene i korelacija (koje se pojavljuju pod volumnimintegralom u funkcionalu energije) mogu rastaviti na dva dijela:

exc = ex + ec

Separacija energije međudjelovanja (bez Harteejeve energije) na energiju iz-mjene i korelacijsku energiju je proizvoljna i stvar je dogovora. Pa se to raditako da je korelacijska energija sadrži sve što nije uzeto u obzir u Hartree-Fockovoj aproksimaciji. Po ovoj definiciji Hatree-Fockova aproksimacija dajetočnu energiju izmjene, pa se često za HFA energiju izmjene koristi i izraztočna energija izmjene(exact exchange).

Hatree-Fockova aproksimacija je numerički zahtjevna/skupa. Radi se o nelokal-nom potencijalu koji ovisi paru vektora položaja u općenito prostorno nehomogenomsustavu.

Stoga se računi nastoje pojednostaviti i skratiti služeći se raznim aproksimacijamaHF točnog potencijala izmjene. Tako postoje:

• Diracov LDA (local density approximation)• GGA (generalized gradient approximation)• meta-GGA potencijal izmjene• hibridni potencijali (mješavina HFA i lokalnih potencijala)• …

2.1. POTENCIJAL IZMJENE I KORELACIJA: Vxc 11

LDAIdeja LDA je da se poznati rezultat za homogeni elektronski plin (jellium model)može primijeniti i na sustav gdje gustoća čestica prostorno varira. Potencijal izmjenese aproksimira izrazom koji je Dirac izračunao za Thomas-Fermijev model atoma:

Vx ≈ V (LDA)x = −cx

e2

8πϵ0n(r⃗)1/3 = −cx [a3B n(r⃗)]1/3 Ry

gdje je:

cx = 2

(3

π

)1/3

Ako je gustoća čestica je konstantna, prosječni je potencijal izmjene jednak pozna-tom izrazu za energiju izmjene u jellium modelu.

V x =

n∫0

dnVx(n)

n∫0

dn 1

=3

4Vx = −3

4cx [a

3B n]

1/3 Ry = −0.916

rsRy

GGAPostoji poopćenje LDA koje uzima u obzir prostornu ovisnost gustoće čestica. Upotencijal izmjene (i u korelacijski potencijal) se dodaju gradijentni članovi. Ovo jepoznato kao GGA (generalized gradient approximation).

• Postoji više inačica GGA.• Ono što se danas smatra najjednostavnijom i najboljom GGA je ona koju se

predložili:J.P. Perdew, K. Burke & M. Ernzerhof, Phys. Rev. Lett. 78 (1996) 1396[5]skraćenica PBE ili GGA-PBE.

U novije doba se koriste i tz. meta-GGA potencijali izmjene koji uzimaju u obziri drugu prostornu derivaciju gustoće čestica, pa tako unose korekciju u kinetičkuenergiju.

Korelacijski dio potencijalaZa korelacijski potencijal koriste se aproksimacije koje se konstruiraju interpolacijomanalitičkih računa (računa smetnje) i prilagodbom numetričkih rezultata, a kojeizlaze iz okvira Hatree-Fockove aproksimacije. Jedan primjer korelacijske energijeje Wignerova formula koja se dobiva interpolacijom između RPA rezultata u granicivelike gustoće i Wignerove rešetke u granici male gustoće. Detalje o korelacijskomdijelu potencijala pogledati u dodatku (C).

3. Pseudopotencijali

Problem gibanja elektrona u atomu moguće je razmatrati u okviru DF teorije: Svakielektron se giba u potencijalu koji stvara jezgra, Hartreejevom potencijalu koji stva-raju drugi elektroni te nelokalnom potencijalu izmjene i korelacija kako su definiraniunutar DFT-a.

Ovako postavljeni problem podrazumijeva nalaženje valnih funkcija svih elektronajednog elementa.

Problem gibanja svih elektrona se nastoji dalje pojednostaviti razmatranjem gi-banja samo valentnih elektrona, tj. elektrona u vanjskoj ljusci. Kohn-Shamovpotencijal koji stvara jezgra s unutrašnjim (core) elektronima supstituira se s efektiv-nim potencijalom, tz. pseudopotencijalom, koji mora zadovoljavati nekoliko uvjeta:

• za udaljenosti izvan područja unutrašnjih elektrona treba vjerno reproducirativalne funkcije kao da je puni Kohn-Shamov potencijal uzet u obzir.

• za udaljenosti unutar područja unutrašnjih elektrona treba davati glatke neo-scilirajuće valne funkcije kako bi se izbjegle numeričke poteškoće.

• reproducirati eksperimentalno izmjerena energijska stanja atoma.

• unutrašnja (core) stanja moraju biti inertna na okruženje u kojem se atomnalazi. (transverabilnost).

Problem pronalaženja pseudopotencijala je višeznačajan, te postoji veći broj raz-ličitih pristupa kao i veći broj različitih aproksimacija koje se koriste. Kao rezul-tat višeznačajanosti problema, postoji veći broj različitih vrsta pseudopotencijala:pseudopotencijali koji čuvaju normu, ultramekani pseudopotencijali, PAW pseudo-potencijali, all electron-pseudopotencijali, relativistički/nerelativistički, oni koji uzi-maju u obzir spin-orbitalno vezanje, ….

Kao što je već naznačeno, pseudopotencijali razlikuju i po vrsti aproksimacije kojase koristi za Kohn-Shamove potencijale.

Pseudopotencijali su najčešće zapisani u tekstualne datoteke kojima imena sadrže in-formaciju koju vrstu aproksimacije koriste za energije izmjene (aproksimacija Kohn-Shamovog potencijala):

ta_lda_v1.uspp.F.UPF -> LDAta_pbe_v1.uspp.F.UPF -> GGA-PBE

Različite inačice pseudopotencijala:

13

14 POGLAVLJE 3. PSEUDOPOTENCIJALI

• Osnovna podjela je: LDA, GGA, meta-GGA …• Druga vrsta podjele:

– psedudopotencijali koji čuvaju normu (norm-conserving)– jako mekani psedudopotencijali (ultrasoft) označeni s ’uspp’.– PAW psedudopotencijali (Projector Augmented Wave)

Ta.rel-pbe-spn-kjpaw_psl.0.2.UPF -> PAW– Relativistički ili nerelativistički

In.rel-pbe-dn-kjpaw_psl.0.2.2.UPF -> PAW & PBE & relativistički

Početak tekstualne datoteke ta_pbe_v1.uspp.F.UPF koja sadrži pseudopotencijalza talij:<PP_INFO>Generated using Vanderbilt code, version 7 3 6Author: kfg Generation date: 13 5 2013Automatically converted from original format

1 The Pseudo was generated with a Scalar-Relativistic Calculation2.00000000000E+00 Local Potential cutoff radius

nl pn l occ Rcut Rcut US E pseu5S 5 0 2.00 0.00000000000 1.40000000000 -5.364792064005P 5 1 6.00 0.00000000000 1.50000000000 -2.895856200005D 5 2 3.00 0.00000000000 1.70000000000 -0.263973498006S 6 0 2.00 0.00000000000 1.40000000000 -0.399964053006P 6 1 0.00 0.00000000000 1.50000000000 -0.10225719600</PP_INFO><PP_HEADER>

0 Version NumberTa ElementUS Ultrasoft pseudopotentialT Nonlinear Core Correction

SLA PW PBE PBE PBE Exchange-Correlation functional13.00000000000 Z valence

-141.16638659700 Total energy0.00000 0.00000 Suggested cutoff for wfc and rho3 Mamox angular momentum component

921 Number of points in mesh5 7 Number of Wavefunctions, Number of Projectors

Wavefunctions nl l occ5S 0 2.005P 1 6.005D 2 3.006S 0 2.006P 1 0.00

</PP_HEADER>

Kao što se iz prikazanog vidi zaglavlje psedupotencijala sadrži potrebne podatke ovrsti psedupotencijala.

Radi se o pseudopotencijalu za talij. Pseudopotencijal je za elektronska stanja/valnefunkcije 5s, 5p, 5d, 6s i 6p. Svi elektroni u kvantnim stanjima niže energije od ovihnavedenih, dakle: 1s, 2s, 2p,…uključujući jezgru čine potencijal u kojem se elektroni5s, 5p, 5d, 6s i 6p gibaju.

Pseudopotencijali uvode razliku između dubokih elektrona (core) koji sudjeluju uizgradnji efektivnog potencijala i vanjskih (valentnih) elektrona koji se gibaju u tom

15

efektivnom potencijalu. U nekim pseudopotencijalima jedan dio dubokih elektronase tretira kao da su vanjski. Takove elektrone nazivamo poluduboki (prijevod?)(en. semicore). U DFT računima oni se tretiraju kao i ostali valentni elektroni.

U DFT proračunima treba konzistentno koristiti samo jednu vrstu psedudo-potencijala za sve atome i ione koji čine kristalnu rešetku ili molekulu.

Postoje programi koji služe za generiranje pseudopotencijala. Njihova uporaba nijeza početnike. Generirani pseudopotencijali zahtijevaju testiranje na velikom brojumolekula i kristalnih struktura prije uporabe na nekom novom nepoznatom materi-jalu. Na internetu se mogu naći već gotovi pseudopotencijali za uobičajene aproksi-macije energije izmjene (LDA, GGA-PBE, …) ali ne i za ostale vrste aproksimacija.

Pseudopotencijali zahtijevaju da odrez na valne brojeve (a koji se rabi u Quantumespresso-u) mora biti veći od neke minimalne vrijednosti. S druge strane, velikavrijednost odreza može značajno produžiti izvođenje programa. Stoga je potrebnonaći optimalnu vrijednost odreza, a koja nije numerički zahtijevna. U tom izborupovoljnog odreza može pomoći skript pw_cutoff (autor: Julen Larrucea) koji semože pronaći na lokaciji:

http://larrucea.eu/tag/pw_cutoff/

Skript izračunava energiju za fiktivni kubični kristal građen od atoma čiji se pseudo-potencijal testira. Kao rezultat grafički prikaže energiju kao funkciju odreza. Akose želi dobiti točan rezultat onda je potrebno izabrati minimalni odrez za koji jeenergija izkonvergirala.

4. Quantum espresso i kako izvoditi račune

Quantum espresso[1] (skraćeno QE) je kolekcija programa za DFT račune. Radi seo većem broju posebnih programa, neki od njih rade DFT račun, dok drugi služe zaanalizu dobivenih podataka, ili za njihov grafički prikaz.

Treba reći da se QE služi ravnim valovima (plane waves ili skraćeno pw) za prikazBlochovih valnih funkcija. Periodički dio Blochove valne funkcije prikazuje se Fouri-jerovim redom po vektorima recipročne rešetke. S obzirom na numeriča ograničenja,Fourijerov red se odreže kod velikih valnih brojeva. Ali uzimanje jako velikih Fouri-jerovih komponenti u Blochovoj valnoj funkciji i onako nema ni fizikalnog smisla.Tako da se rješavanje Schödingerove jednadžbe svodi na određivanje vlastitih vri-jednosti matrice s vlastiti vektorima građenim od Fourijerovih komponenti valnefunkcije.

Programe koji dolaze s QE izvoditi ćemo unutar shell-a ili u konzoli. Primjer izvo-đenja programa:

Konsole> pw.x -in xxxxx.in

gdje je xxxxx.in tekstualna datoteka koja sadrži sve potrebne informacija za izvo-đenje programa koje traži program pw.x

Tijek izvođenja izvođenja programa se ispisuje po ekranu (konzoli), ali može ga sezapisivati u datoteku, npr. xxxxx.out, koja se naknadno može pregledavati.

Izvođenje računa s zapisivanjem u datoteku i ispisivanjem po ekranu:

Konsole> pw.x -in xxxxx.in | tee xxxxx.out

Program se može pokrenuti i bez ispisivanja po ektranu te ga se može staviti da seizvodi u pozadini:

Konsole> pw.x -in xxxxx.in > xxxxx.out &>

To je uobičajena situacija u slučaju dogotrajnih računa (sati, dani, …). A za vrijemeizvođenja programa u konzoli se mogu raditi druge stvari.

17

18 POGLAVLJE 4. QUANTUM ESPRESSO I KAKO IZVODITI RAČUNE

Kada je račun završen, obično je potrebno pokrenuti jedan ili više dodatnih pro-grama koji analiziraju podatke koji nas zanimaju.

Program se može izvoditi u multiprocesorskom/multijezgrenom računalu pomoćuMPI paralalizacije:

Konsole> mpirun -np 4 pw.x -nk 4 -in xxxxx.in >& xxxxx.out

Na navedenom primjeru izvodese 4 paralelna računa po k-točkama razdjeljenim ugrupe kako bi se postiglo četverostruko ubrzanje.

5. Kristalna struktura

5.1 Kristalne v.s. kartezijeve koordinateNa slici je prikazana kristalna struktura kuhinjske soli:

Slika 5.1: Jedinična ćelija kuhonske soli. Jedinični vektori naznačeni su crvenimstrijelicama.

Radi se o fcc (plošno centrirana kubna rešetka) kojoj su jedinični vektori (prikazanicrvenim linijama na slici)

a⃗1 = (0.0, 0.5, 0.5)

a⃗2 = (0.5, 0.0, 0.5)

a⃗3 = (0.5, 0.5, 0.0)

pretpostavljajući da je dužina brida kocke (konstanta rešetke) jednaka 1.Jedinični vektori nisu ortogonalni. Biortogonalna vektore dobivano:

b⃗1 =a⃗2 × a⃗3Vc

= (−1.0, 1.0, 1.0)

b⃗2 =a⃗3 × a⃗1Vc

= (1.0,−1.0, 1.0)

b⃗3 =a⃗1 × a⃗2Vc

= (1.0, 1.0,−1.0)

19

20 POGLAVLJE 5. KRISTALNA STRUKTURA

gdje je:Vc = a⃗1 · (⃗a2 × a⃗3)

volumen jedinične ćelije. Između jediničnih vektora i biortogonalnih vektora vrijedimeđusobna ortogonalnost:

a⃗i · b⃗j = δij

Napomena: Biortogonalni vektori do na faktor 2π su jednaki vektorima recipročnerešetke.

Ako se proizvoljni vektor r⃗ želi prikazati preko jediničnih vektora:

r⃗ = r1 a⃗1 + r2 a⃗2 + r3 a⃗3

tada se koordinate ri u tom prikazu dobivaju kao skalarni produkti vektora s bior-togonalnim vektorima:

ri = r⃗ · b⃗i

Trojka brojeva:[r1, r2, r3]

određuje položaj prikazan preko jediničnih vektora kristalne ćelije. To su tz. kris-talne ili frakcione koordinate vektora. Označavat ćemo ih preko uglatih zagrada,[].

Naprimjer u jediničnoj ćeliji NaCl imamo dva iona koji se nalaze na pozicijama:

r⃗Na = (0.0, 0.0, 0.0)

r⃗Cl = (0.5, 0.0, 0.0)

napisano u Kartezijevim koordinatama. Kartezijeve koodinate ćemo označavati sokruglim zagradama, (). Koordinate tih vektora prikazane preko jediničnih vektorarešetke su:

rNa = [0.0, 0.0, 0.0]

rCl = [−0.5, 0.5, 0.5] → ekvivalentno: [0.5, 0.5, 0.5]

Napomena: Ako koorinate ri povećamo/smanjimo za cijeli broj dobiva se koordi-nata atoma u drugoj jediničnoj ćeliji. Tako da se koordinate biraju da budu:

1.0 > ri ≥ 0.0

Drugačiji izbori su također mogući (Wigner-Seitzova ćelija).

5.2. KRISTALNA STRUKTURA U QE 21

5.2 Kristalna struktura u QE

Kristalna struktura opisana je ovim linijama u ulaznoj (input) datoteci:

QE input: 01-nacl.in

&system........ibrav = 0,celldm(1) = 10.57,nat = 2,ntyp = 2,........

/CELL_PARAMETERS {alat}

0.0 0.5 0.50.5 0.0 0.50.5 0.5 0.0

ATOMIC_POSITIONS {crystal}Na 0.0 0.0 0.0Cl 0.5 0.5 0.5

ATOMIC_SPECIESNa 22.9898 na_pbe_v1.uspp.F.UPFCl 35.453 cl_pbe_v1.2.uspp.F.UPF

Jedinična ćelija se zadaje preko ibrav i celldm(n), parametara, odnosno alterna-tivno, preko sekcije CELL_PARAMETERS.

Parametar ibrav definira vrstu jedinične ćelije (kubična, tetragonska, …), ali ako jeon jednak nuli, tada se jedinični vektori (njihove kartezijeve koordinate) specificirajupreko CELL_PARAMETERS sekcije - kao u gore navedenom primjeru.

Parametar celldm(1) (ili alat) je obavezno navesti jer on definira duljinu jediničnećelije. Sve dužinske jedinice se mjere preko te duljine. Duljina se izražava u Bo-hrovim radijusima (aB = 0.5291772109 Å). Dakle dužina jedinične ćelije u gornjemprimjeru je je: 10.57·0.529 = 5.59 Å.

Alternativni načini definiranja jedinične ćelije:

22 POGLAVLJE 5. KRISTALNA STRUKTURA

Ako je ibrav = 0QE input: 01-nacl.in

&system.....ibrav = 0,celldm(1) = 10.57,

......CELL_PARAMETERS {alat}

0.0 0.5 0.50.5 0.0 0.50.5 0.5 0.0

Ako je ibrav ̸= 0QE input: 01-nacl.in

&system.....ibrav = 2,celldm(1) = 10.57,

......

Detalje treba pogledati na:

http://www.quantum-espresso.org/wp-content/uploads/Doc/INPUT_PW.html

Vrste atoma i njihovi polažaji zadaju se preko parametara nat, ntyp te sekcijaATOMIC_SPECIES i ATOMIC_POSITIONS. Parametar nat kaže da u jediničnoj ćelijipostoje ukupno dva atoma - to je ukupan broj svih atoma u jediničnoj ćeliji. Pa-rametar ntyp govori da postoje dva različita atoma - to je broj različitih atoma. Usekciji ATOMIC_SPECIES se ispisuju imena datoteka koje sadrže pseudopotencijale zasve različite vrste atoma (broj linija je ntyp), a u sekciji ATOMIC_POSITIONS ispisujupozicije svih atoma u kristalnim koordinatama, a broj linija je nat.

Napomena: Važno je prije bilo kojeg DFT računa treba provjeriti kristalnu struk-turu. U tu nam svrhu služi program xcrysden

Konsole> xcrysden --pwi 01-nacl.in

kojem kao parametar dajemo ime datoteke predviđene za DFT račun u QE, nacl.in.

xcrysden daje grafički prikaz kristalne strukture:

5.3. KAKO DOĆI DO PODATAKA O STRUKTURI? 23

Slika 5.2: xcryden program prikazuje jediničnu ćeliju kristala NaCl.

koju je moguće pomoću miša rotirati i promatrati iz različitih pozicija.

5.3 Kako doći do podataka o strukturi?U članku:

Structure refinement of TiSe2 by neutron diffraction,C. Riekel, Journal of Solid State Chemistry, 17 (1976) 389

se nalaze podaci o kristalnoj strukturi TiSe2. U Tablici II

24 POGLAVLJE 5. KRISTALNA STRUKTURA

su podaci o jediničnoj ćeliji. Jedinična ćelija je heksagonska, te su dane vrijednostikonstanti rešetke, a = 3.540 (1) Å i c = 6.008 (3) Å. U tekstu članka se navodi daje prostorna grupa kristalne strukture P3m1 (ili P-3m1 - povlaka iznad broja značiminus!). Taj nam je podatak potreban da bi ustanovili položaje svih atoma unutarjedinične ćelije. Naime u Tablici III:

stoji da titanov se atom nalazi u ishodištu jedinične ćelije, dok za poziciju selenovihatoma je dan samo jedan podatak. A nama su potrebna dva. Položaj drugogatoma pronat ćemo na Bilbao Crystallographic Server-u:

http://www.cryst.ehu.es/.

Potražimo na izborniku: Wyckoff Positions of Space Groups. Pojavit će seizbornik u koji je potrebno upisati broj prostorne grupe. Kako još ne znamo kojembroju odgovara prostorna grupa P3m1 izabrat ćemo web-link choose, te ćemo naponuđenoj tablici pronaći da naša prostorna grupa ima broj: 164. Izaberemo po-nuđeni web-link za tu prostornu grupu. Pojavt će se tablica s mogućim položajimaatoma unutar jedinične ćelije.

5.3. KAKO DOĆI DO PODATAKA O STRUKTURI? 25

Usporedimo ispisane pozicije s podacima u Tablici III. Prepoznajemo da Wyckoffovapozicija a odgovara položaju titana, dok Wyckoffova pozicija d odgovara položajujednod od selenovih atoma. U tablici je navedena pozicija i drugog selenovog atoma,a koje se ne navodi u članku. Također, pozicija d ima multiplicitet 2, što točnoodgovara broju selenovih atoma u jediničnoj ćeliji. Koordinate atoma se navodeu zadnjoj koloni. Radi se o frakcionim koordinatama. Za Wyckoffovu poziciju dz-koordinata nisu točno specificirana. Ona ovisi od kristala do kristala. Zakristal TiSe2 njena je vrijednost eksperimentalno određena u navedenom članku iizspisana u Tablici III, z=0.25504(3). Ukoliko bi radili DFT račune na TiSe2, podaciu datoteci za DFT bi izgledali ovako:

QE input: 01-tise2.in........

&system........ibrav = 0,celldm(1) = 6.69187,nat = 3,ntyp = 2,........

/

CELL_PARAMETERS {alat}1.00000 0.00000 0.00000

-0.50000 0.86603 0.000000.00000 0.00000 1.69718

ATOMIC_POSITIONS {crystal}Ti 0.00000 0.00000 0.00000Se 0.33333 0.66667 0.25504Se 0.66667 0.33333 -0.25504........

Vrijednost kristalne konstante je dana s celldm(1) parametrom izražena u Bohro-vim radijusima. U sekciji CELL_PARAMETERS su dane vrijednosti koordinata transla-cijskih vektora izraženi u jedinicama kristalne konstante a za heksagonsku rešetku.A u sekciji ATOMIC_POSITIONS su položaji atoma u frakcionim koordinatama.

6. Samosuglasni (SCF) račun

Prvi korak u svakom DFTu je izvođenje samosuglasnog računa (SCF). Njegova svrhaje proračun samosuglasne gustoće čestica o kojoj ovise efektivni potencijali uSchödingerovoj jednadžbi.

SCF račun se radi popuću pw.x programa:

Konsole> pw.x -in 01-nacl.in | tee 01-nacl.out

gdje je 01-nacl.in tekstualna datoteka koja sadrži sve potrebne informacija zaizvođenje programa.

Komplenta lista ulazne datoteke je:

QE input: 01-nacl.in

NaCl QE-in&control

calculation = 'scf',restart_mode ='from_scratch',prefix = 'nacl',pseudo_dir = '/opt/pseudo/',outdir = './',

/&system

ibrav = 2,celldm(1) = 10.571,nat = 2,ntyp = 2,nbnd = 10,ecutwfc = 50,ecutrho = 600,

/&electrons

mixing_beta = 0.7conv_thr = 1.0d-10

/

27

28 POGLAVLJE 6. SAMOSUGLASNI (SCF) RAČUN

QE input: 01-nacl.in - NASTAVAK

ATOMIC_SPECIESNa 22.9898 na_pbe_v1.5.uspp.F.UPFCl 35.453 cl_pbe_v1.4.uspp.F.UPF

ATOMIC_POSITIONS {crystal}Na 0.00 0.00 0.00Cl 0.50 0.50 0.50

K_POINTS {automatic}5 5 5 0 0 0

Ulazna datoteka sadrži nekoliko sekcija: &control, &system, &electrons, ATOMIC_SPECIES,ATOMIC_POSITIONS, K_POINTS, …

Objašnjeje pojedinih dijelova ulazne datoteke slijedi u nastavku:

• U sekciji &control specificira se vrsta računa pomoću parametra calculation.U ovom slučaju to je 'scf' proračun. Moguće je raditi i druge vrste računaosim samosuglasnog.

• U sekciji &control pomoću paramtra restart_mode specificira se da se radio računu od početka. Prekinute račun je moguće ponovo pokrenuti, pa u tomslučaju ovaj parametar ima drugu vrijednost ('restart').

• U sekciji &control parametar pseudo_dir specificira imenik u kojem se nalazedatoteke s pseudopotencijalima.

• U sekciji &control parametar outdir specificira mjesto na disku/datotečnomsustavu za ispis valne funkcije.

• U sekciji &control parametar prefix specificira podimenik u kojem zapisujeizračunata gustoća čestica.

• U sekciji &system se specificira kristalna/molekularna struktura.

• U sekciji &system specificiraju se paramteri ecutwfc i ecutrho. Radi seo odrezu na valne brojeve u recipročnom prostoru kojim se aproksimirajuvalne funkcije, gustoće čestica i potencijali. Obično su vrijednosti parame-tara ecutwfc i ecutrho preporučene u datoteci pseudopotencijala. A akonisu, treba ih izabrati dovoljno velikim tako da njihovo dalnje povećanje nemijenja bitno rezultate. Vrijednosti tih parametara su u Ry.

• U sekciji &system specificira se parametar nbnd. On označava broj energijskihstanja (broj vrpci) za koje se rješava Schödingerova jednadžba. Tipično je tobroj svih valentnih elektrona unutar jedinične ćelije podjeljen s 2 te uvećanza određeni iznos. Kod poluvodiča to povećanje može biti nekoliko kvant-nih stanja, a u metalima povećanje treba biti oko 20%. Ukoliko nbnd nijenavedeno automatski se bira njegova minimalna vrijednost tako da u vrpcestanu svi valentni elektroni. Broj valentnih elektrona po atomu je zadan upseudopotencijalu.

29

• U sekciji &electrons se definraju parametri konvergencije SCF računa, tenačin miješanja stare i nove koncentracije čestica u iterativnoj SCF petlji.Tu se dakođer može definirati i numerička procedura koja služi za izračunvalnih funkcija.

• U sekciji K_POINTS se specificiraju valni brojevi za koje će se izračunavati valnefunkcije i energije. Ti valni brojevi čine mrežu u Brillouinovoj zoni. U ovomslučaju radi se o mreži od 5×5×5 = 125 točaka.Zbog simetrije kristalne rešetke neki valni brojevi imaju iste energije kao idrugi valni brojevi. A njihove valne funkcije se mogu rekonstruirati iz valnihfunkcije drugih valnih brojeva operacijama simetrije. Postoji najmanji brojk-točaka iz kojih se sve valna funkcije i energije ostalih k-točaka mogu dobiti.To je tz. ireducibilni skup k-točaka. Proračun valnih funkcija i energija popretpostavci (default) se radi samo za ireducibilni skup k-točaka (dakle, ne zasvih 125).

Detaljnije objašnjenje ovih parametara nalazi se na web-u:

http://www.quantum-espresso.org/wp-content/uploads/Doc/INPUT_PW.html

7. Gustoća stanja (DOS)

7.1 Proračun DOSProračunavamo gustoću stanja srebra. Prva stvar koja se radi je SCF račun:

Konsole> pw.x -in 01-ag-scf.in | tee 01-ag-scf.out

Ulazna dadoteka za SCF:QE input: 01-ag-scf.in

Ag QE-in&control

calculation = 'scf'restart_mode ='from_scratch',prefix = 'ag',pseudo_dir = './',outdir = './',

/&system

ibrav = 2,celldm(1) = 7.82857025311868012,nat = 1,ntyp = 1,nbnd = 13,ecutwfc = 50,ecutrho = 600,occupations = 'smearing',smearing = 'methfessel-paxton',degauss = 0.001,

/&electrons

mixing_beta = 0.7conv_thr = 1.0d-10

/ATOMIC_SPECIES

Ag 107.868 ag_pbe_v1.4.uspp.F.UPFATOMIC_POSITIONS {crystal}

Ag 0.00 0.00 0.00K_POINTS {automatic}

20 20 20 0 0 0

31

32 POGLAVLJE 7. GUSTOĆA STANJA (DOS)

Kod SCF računa u metala potrebno je napraviti integrale po popunjenim kvant-nim stanjima do Fermijeve energije. Izračuni tih integrala mogu raditi numeričkepoteškoće. Ti se problemi prevladvaju zamjenjujući oštru θ (step) funkciju s određe-nom glatkom funkcijom. Postoji nekoliko mogućih odabira te funkcije (među inim iDiracova raspodjela na konačnoj temperaturi). To se postiže sa slijedećim linijama

QE input: 01-ag-scf.in

&system.....occupations = 'smearing',smearing = 'methfessel-paxton',degauss = 0.001,

u ulaznoj datoteci. U ovom slučaju je izabrano izglađivanje kakvo su to predložiliMethfessel i Paxton (Phys.Rev.B 40 (1989) 3616[6]). Ponovo naglasimo da je ovovažno staviti ako se radi o metalima.

Sada prelazimo na izračun gustoće stanja, koji se sastoji od dva koraka:

Konsole> pw.x -in 02-ag-nscf.in > 02-ag-nscf.out> dos.x -in 03-ag-dos.in > 03-ag-dos.out

Ulazna datoteka 02-ag-nscf.in se razlikuje od scf-ulazne datoteke u nekoliko de-talja, tj. kako raditi integraciju u Brillouinovoj (BZ) zoni (Phys.Rev.B 49 (1994)16223[7]):

01-ag-scf.inQE input: 01-ag-scf.in

&controlcalculation = 'scf',

.....&system.....occupations = 'smearing',

smearing = 'methfessel-paxton',degauss = 0.001,......

02-ag-nscf.inQE input: 02-ag-nscf.in

&controlcalculation = 'nscf',.....

&system.....occupations = 'tetrahedra',......

'nscf' račun je rezultate proračuna spremio u datoteke iz kojih je potrebno izčitatigustoću stanja. To se radi u drugom koraku pomoću programa dos.x. Programdos.x također traži ulaznu datoteku, 03-ag-dos.in, čiji je sadržaj:

7.1. PRORAČUN DOS 33

QE input: 03-ag-dos.in

&dosoutdir = './',prefix = 'ag',fildos='Ag-dos.dat',DeltaE=0.1,

/

U njoj se specificira ime datoteke koja će sadržavati podatke o gustoći stanja (linija'fildos') gustoća te razmak između energija za koje se gustoća stanja izračunava.

Kao rezulat se dobiva datoteka (Ag-dos.dat) čiji je početak:

# E (eV) dos(E) Int dos(E)-75.501 0.0000E+00 0.0000E+00-75.401 0.0000E+00 0.0000E+00-75.301 0.0000E+00 0.0000E+00.....6.899 0.0000E+00 0.1139E+026.999 0.0000E+00 0.1139E+027.099 0.0000E+00 0.1139E+027.199 0.0000E+00 0.1139E+027.299 0.0000E+00 0.1139E+027.399 0.0000E+00 0.1139E+027.499 0.0000E+00 0.1139E+027.599 0.0000E+00 0.1139E+027.699 0.0000E+00 0.1139E+027.799 0.0000E+00 0.1139E+02

.....

Prva kolona su energije, druga je kolona gustoća stanja, a treća integrirana gustoćastanja - broj kvantnih stanja do energije u prvoj koloni.

Podaci se mogu grafički prikazati koristeći razne programe. U ovom slučaju služimose python-skriptom plot_dos-QE.py, koja traži podatak o Fermijevoj energiji:

Konsole> grep Fermi 02-ag-nscf.out

the Fermi energy is 16.3568 ev> plot_dos-QE.py -dat Ag-dos.dat -ef 16.3568

• Prva linija traži i ispisuje liniju iz izlazne datoteke koja sadrži riječ ”Fermi”.Pomoću nje dobivamo podatak čemu je Fermijeva energija jednaka.

34 POGLAVLJE 7. GUSTOĆA STANJA (DOS)

• Druga je linija grafički prikaz podataka iz 'Ag-dos.dat' datoteke.

Python-scripti potrebni se podaci zadaju na komandnoj liniji. To su:

• datoteka s podacima (-dat Ag-dos.dat).• te Fermijeva energija(-ef 16.3568).

Kao rezultat dobivamo sliku:

Slika 7.1: Gustoća stanja (DOS) za Ag.

Isti python script može se upotrebiti za prikaz gustoće stanja drugih sustava, pri-mjenom odgovarajućih parametara na komandnoj liniji.

pw.x

calculation = ’scf’

pw.x

calculation = ’nscf’occupations = ’tetrahedra’

dos.x

Slika 7.2: Procedura izračuna gustoće stanja.

Recimo par riječi o metodi izračuna gustoće stanja. Brillouinova zona je već podje-ljena na manje kockice prema mreži valnih brojeva koji se koriste u NSCF računu.

7.1. PRORAČUN DOS 35

Za svaki točkicu (valni broj) poznata je energija. Svaka kockica dijeli se dalje natetraedre, kako je prikazano na slici.

Slika 7.3: Razbijanje (djelić Brillouinove zone) kockice na tetraedre.

Poznavajući iznose energija u vrhovima tetraedra, može se naraviti linearna inter-polacija kako energija ovisi valnom broju unutar tetraedra. Na bazi toga moguće jeizračunati doprinos gustoći stanja tetraedra. Konačni rezultat za gustoću stanja jezbroj doprinosa svih tetraedara, unutar svih kockica u Brillouinovoj zoni. Detaljepogledati u članku:

P.E. Blöchl, O. Jepsen & O. K. Andersen, PRB 49 (1994) 16223[7]Nešto bolja aproksimacija bila bi kvadratična interpolacija,

C.J. Pickard & M.C. Payne, PRB 59 (1999) 4685[8]ili interpolacija još višeg reda.

8. Elektronska struktura - vrpce(spaghetti)

8.1 Izračun vrpčaste strukturePolazimo od SCF računa:

Konsole> pw.x -in 01-ag-scf.in | tee 01-ag-scf.out> pw.x -in 02-ag-bands.in > 02-ag-bands.out> bands.x -in 03-ag-pp-bands.in > 03-ag-pp-bands.out

• Drugi korak je proračun energija uzduž simetrijskih pravaca u Brillouinovojzoni, a koji su definirani u datoteci 02-ag-bands.in

• U trećem koraju se iz izračunatih podataka izvlače vrijednosti i upisuje ih seu datoteku koja se može koristiti za grafički prikaz.

Između datoteka 01-ag-scf.in i 02-ag-bands.in postoje manje razlike:

01-ag-scf.inQE input: 01-ag-scf.in

&controlcalculation = 'scf',.....

K_POINTS {automatic}20 20 20 0 0 0

02-ag-bands.inQE input: 02-ag-bands.in

&controlcalculation = 'bands',.....

K_POINTS {crystal_b}60.500 0.250 -0.250 400.500 0.000 0.000 400.000 0.000 0.000 400.500 0.500 0.000 400.500 0.250 -0.250 400.375 0.000 -0.375 1

Sekcija K_POINTS sadrži listu specijalnih točaka u BZ prikazanih u koordinatamavektora recipročne rešetke To govori oznaka {crystal_b}.

[0.500, 0.250,−0.250] ≡ 0.500 · b⃗1 + 0.250 · b⃗2 − 0.250 · b⃗3

U ovom slučaju radi se o 6 točaka povezanih s 5 linija. Energije su izračunate za40 valnih brojeva (četvrta kolona iza 3 koordinate) uzduž svake linije. Energija je

37

38 POGLAVLJE 8. ELEKTRONSKA STRUKTURA - VRPCE (SPAGHETTI)

ukupno računata za 201 k-točku u BZ. Izračunate vrijednosti su spremljene međuostale podatke u ag podimenik. Naredba 'bands.x' izvlači te podatke i ispisuje ihu tekstualnu datoteku naznačenu s parametrom filband u ulaznoj datoteci:

QE input: 03-ag-pp-bands.in

&bandsprefix = 'ag',filband = 'Ag-bands.dat',

/

Podaci u datoteci Ag-bands.dat mogu se grafički prikazati raznim programima Unašem slučaju za grafički prikaz koristimo python-skriptu ’plot_band-QE.py’.

Konsole> plot_band-QE.py -dat Ag-bands.dat -ef 16.3568

Kao rezultat se dobiva:

Slika 8.1: Vrpčasta struktura Ag.

Alternativno je moguće koristiti 'plotband.x' program koji dolazi s instalacijomQuantum espressa. Program 'plotband.x' traži da mu se potrebni podaci upišuinteraktivno ili kroz ulaznu datoteku:

8.2. KAKO DEFINIRATI PUTANJU U BRILLOUINOVOJ ZONI 39

QE input: 04-ag-plot-bands.in

Ag-bands.dat9.3568 23.3568Ag-bands.xmgrAg-bands.ps16.35681.0 16.3568

1. linija je ime datoteka s podacima2. linija je područje energija koje se prikazuje3. linija je ime mgrace-datoteke sa slikom vrpci4. linija je postscript datoteka sa slikom vrpci5. linija je Fermijeva energija6. linija daje razmak između crtica na slici

Izvođenje 'plotband.x' programa:Konsole> plotband.x < 04-ag-plot-bands.in> ps2pdf Ag-bands.ps

Druga komanda je konverzija postscript slike u pdf sliku.

pw.x

calculation = ’scf’

pw.x

calculation = ’bands’

bands.x

Slika 8.2: Procedura izračuna vrpci.

8.2 Kako definirati putanju u Brillouinovoj zoniZa prikazivanje energija i fononskih frekvencija koriste se putanje u Brillouinovojzoni između specijalnih točaka velike simetrije za promatrani kristal.

40 POGLAVLJE 8. ELEKTRONSKA STRUKTURA - VRPCE (SPAGHETTI)

Za identifikaciju specijalnih točaka može poslužiti Wikipedia:

http://en.wikipedia.org/wiki/Brillouin_zone

ili Bilbao kristalografski server:

http://www.cryst.ehu.es/cryst/get_kvec.html

gdje je potrebno upisati broj prostorne grupe kristala

prostorna grupaTriclinic 1-2

Monoclinic 3-15Orthorhombic 16-74

Tetragonal 75-142Trigonal 143-167

Hexagonal 168-194Cubic 195-230

Za jednostavnu kubičnu, plošno centriranu i volumno centriranu mogu se koristitiredom prostorne grupe 195, 196 i 197.

Svaka posebna točka u BZ ima oznaku po kojoj se može identificirati. Ishodište uBZ je poznato kao Γ-točka.

Kod izračuna elektronskih vrpci u sekciji K_POINTS potrebno je navesti listu valnihbrojeva za koje se izračunavaju valne funkcije. Ta se lista može specificirati na višenačina.

• Automatski načinu ulaznoj datoteci se naznačuje s K_POINTS {automatic} a u liniji iza sesamo specificira gustoća mreže valnih brojeva. Ovo je tipična situacija za SCFračun. Primjer:

QE input: …......K_POINTS {automatic}

15 15 15 0 0 0

• Poluautomatski načinu ulaznoj datoteci se naznačuje s K_POINTS crystal_b a u linijjama iza senavodi broj specijalnih točaka i njihove kristalne/frakcione koodinate - zasvaku točku po jedna linija. U četvortoj koloni iza koordinata se navodi brojtočaka između te točke i slijedeće. Ovo je tipična situacija za proračunavanjeelektronskih špageta. Primjer:

8.2. KAKO DEFINIRATI PUTANJU U BRILLOUINOVOJ ZONI 41

QE input: …......K_POINTS {crystal_b}

60.500 0.250 -0.250 400.500 0.000 0.000 400.000 0.000 0.000 400.500 0.500 0.000 400.500 0.250 -0.250 400.375 0.000 -0.375 1

Druga linija iza K_POINTS kaže da će se duž pravca između [0.50,0.25,-0.25] i[0.50,0.00,0.00] izračunat energije za 40 valnih brojeva. Itd.

• Eksplicitno nabrajanjeu ulaznoj datoteci se naznačuje s K_POINTS. Primjer:

QE input: …......K_POINTS

60.0 0.0 0.0 1.00.1 0.0 0.0 1.00.2 0.0 0.0 1.00.3 0.0 0.0 1.00.4 0.0 0.0 1.00.5 0.0 0.0 1.0

U navedenom primjeru se naznačuje da će se energija izračunavati za 6 valnihbrojeva, ekpicitno nabrojanih na slijedećih 6 linija, a koordinate su dane uKartezijevom sustavu.

Lista specijalnih točaka i/ili lista valnih brojeva može se odrediti i pomoću xcrysdenprograma. Za danu ulaznu datoteku za SCF račun pokrećemo xcrysden program:

42 POGLAVLJE 8. ELEKTRONSKA STRUKTURA - VRPCE (SPAGHETTI)

Slika 8.3: Na menu-u se bira: Tools → k-path Selection.

Na menu-u se bira: Tools → k-path Selection. Otvara se prozor s Brillouinovomzonom za danu krisalnu strukturu. BZ se može rotirati a na površini stranica te nabrodovima i u središtu su točke koje se mogu mišem izabrati ili skinuti s izbora.

Slika 8.4: Novootvoreni prozor s Brillouinovom zonom

8.2. KAKO DEFINIRATI PUTANJU U BRILLOUINOVOJ ZONI 43

Izabrane točke ispisuju se u tablicu sa strane:

Slika 8.5: S mišem na BZ izabiremo točke koje se automatski upisuju u tablicu sastrane.

Izbor točaka i putanje u BZ završavamo pritiskom na gumb OK, nakon čega se po-javljuje prozor gdje je potrebno upisati ukupni broj točaka uzduž izabrane putanje:

Slika 8.6: Upis ukupnog broja točaka uzduž izabrane putanje u BZ.

44 POGLAVLJE 8. ELEKTRONSKA STRUKTURA - VRPCE (SPAGHETTI)

Na kraju se naše izabrane točeke upisuju u datoteku pritiskom na gumb OK. Pojavitće se dijalog u upis imena datoteke.

Slika 8.7: Upis imena datoteke koja sadrži listu valnih brojeva

.

Obavezno izabrati ime koje završava kao .pwscf. Dobivena lista brojeva bit će ukristalnom koodinatama, pa je to potrebno i naznačiti u ulaznoj datoteci:

QE input: …......

K_POINTS {crystal}100

0.0000000000 0.0000000000 0.0000000000 1.00.0000000000 0.0090909091 0.0000000000 1.00.0000000000 0.0181818182 0.0000000000 1.00.0000000000 0.0272727273 0.0000000000 1.00.0000000000 0.0363636364 0.0000000000 1.00.0000000000 0.0454545455 0.0000000000 1.0

......

Dobivena datoteka se može direktno nalijepiti na dno ulazne datoteke u kojoj nemaK_POINTS sekcije.

U slučaju izračuna fononskog spektra pomoću programa matdyn.x također je po-trebno naznačiti valne brojeve eksplicitno, pa se možemo poslužiti ovom istom proce-dudurom pomoću programa xcrysden. Jednino je potrebno prvu liniju, koja sadržiK_POINTS, izbrisati.

9. Gustoća naboja/čestica

9.1 3D gustoća

Polazimo s SCF računom:

Konsole> pw.x -in 01-nacl.in

Za proračun gustoće naboja služimo se pomoćnim programom pp.x koji treba ulaznudatoteku:

QE input: 02-nacl-pp-xsf.in

&inputppprefix = 'nacl'outdir = './.'filplot = 'NaCl.charge'plot_num= 0

/&plot

iflag = 3output_format = 5fileout = 'NaCl-rho.xsf'

/

Izvođenje pp.x programa:

Konsole> pp.x -in 02-nacl-pp-xsf.in | tee 02-nacl-pp-xsf.out

Kao rezultat se dobiva datoteka NaCl-rho.xsf koja sadrži podatke o gustoći čestica.Rezultat se može pregledati pomoću xcrysden programa:

Konsole> xcrysden --xsf NaCl-rho.xsf

Na menu-ju izabrati: Tools → Data Grid

45

46 POGLAVLJE 9. GUSTOĆA NABOJA/ČESTICA

Slika 9.1: Dijalog unutar xcryden programa

Nakon pritiska na gumb OK pojavit će se dodatni prozor:

9.1. 3D GUSTOĆA 47

Slika 9.2: Dijalog unutar xcryden programa

gdje je potrebno specificirati vrijednost gustoće naboja koja se prikazuje, a da jeunutar minimalne i maksimalne vrijednosti. Kao rezultat s slika površine konstant-nog naboja navedene vrijednosti:

48 POGLAVLJE 9. GUSTOĆA NABOJA/ČESTICA

Slika 9.3: Ploha konstantnog naboja u xcryden programu. Kao pozadinska boja jestavljena bijela, te je izabrano da ploha bude prozirna (transparency on)

Detalje o sadržaju ulazne daoteka (02-nacl-pp-xsf.in) za pp.x program pogledatina:

http://www.quantum-espresso.org/wp-content/uploads/Doc/INPUT_PP.html

Ovdje samo kažimo samo da plot_num = 0 znači da se izračunava gustoća naboja,a otput_format = 5 da se podaci trebaju ispisati u format prikladan za xcrysdenprogram u datoteku imena zadanog s fileout parametrom.Na sličan (isti) način se može kreirati tz. cube grafička datoteka (razlika je otput_format= 6, a fileout sadrži ime cube-datoteke) koja se može pregledati bilo s xcryden ilinekim drugim grafičkim preglednikom, npr. VESTA:

http://jp-minerals.org/vesta/en/

9.2. 2D PRESIJEK GUSTOĆE ČESTICA 49

pw.x

calculation = ’scf’

pp.x

Slika 9.4: Procedura izračuna gustoće naboja.

9.2 2D presijek gustoće čestica

Izračunavanje 2D projekcije ili presjeka gustoće čestica prikazat ćemo na primjerisilicija. Silicij ima plošno centriranu kubnu rešetku s dva atoma. Ulazna datotekaza SCF račun je:

50 POGLAVLJE 9. GUSTOĆA NABOJA/ČESTICA

QE input: 01-si-scf.in

Si SCF&control

calculation = 'scf',restart_mode = 'from_scratch',prefix = 'si',pseudo_dir = '/opt/pseudo',outdir = './',

/

&systemibrav = 2,celldm(1) = 10.2,nat = 2,ntyp = 1,ecutwfc = 30.0,ecutrho = 360,

/

&electronsconv_thr = 1.0d-10mixing_beta = 0.7

/

ATOMIC_SPECIESSi 28.086 si_pbe_v1.uspp.F.UPF

ATOMIC_POSITIONSSi 0.00 0.00 0.00Si 0.25 0.25 0.25

K_POINTS {automatic}5 5 5 1 1 1

Nakon SCF računa možemo izračunati gustoću čestica (elektrona) tj. njen 2D pre-sjek. Radi se o presjeku kroz ravninu koja je zadana s tri vektora: radijus vektrortočke na ravnini, te još dva međusobno ortogonalna vektrora koja prolaze kroz rav-ninu. Neka ravnina prolazi kroz ishodište pa je radijus vektor točke:

x⃗0 = (0, 0, 0)

te neka je to xy-ravnina zadana s jediničnim vektrorima duž x i y osi:

e⃗1 = (1, 0, 0) e⃗2 = (0, 1, 0)

Ulazna datoteka za izračunavanje presjeka gustoće čestica:

9.2. 2D PRESIJEK GUSTOĆE ČESTICA 51

QE input: 02-si-pp.in

&inputppprefix = 'si',outdir = './',filplot = 'si.charge',plot_num = 0,

/

&plotnfile = 1,filepp(1)= 'si.charge',iflag = 2,output_format = 2,e1(1)=1.0, e1(2)=0.0, e1(3)=0.0,e2(1)=0.0, e2(2)=1.0, e2(3)=0.0,x0(1)=0.0, x0(2)=0.0, x0(3)=0.0,nx = 80, ny = 80,fileout = 'si.charge001.dat',

/

Provodimo SCF račun i proračun presjeka gustoće:

Konsole> pw.x -in 01-si-scf.in | tee 01-si-scf.out> pp.x -in 02-si-pp.in > 02-si-pp.out

Rezultat će biti zapisan u tekstualnu datoteku si.charge001.dat. Radi se o 80x80realnih brojeva. Ove podatke možemo konvertirati u grafički format pomoću pro-grama plotrho.x. Program plotrho.x se može izvoditi i interaktivno tako da muupisujemo podatke kada ih zatraži. Dakako, svi ti podatci se mogu posložiti u teks-tualnu datoteku iz koje će on to očitati. Kao rezultat se dobiva konturni plot. Ovosu podaci koje plotrho.x traži:

• ime datoteke s podacima

• ime datoteke s grafičkim prikazom

• ako su podaci svi pozitivni, hoće li raditi logaritamski plot

• gornja i donja granica za plotanje, te broj razina.

Grafička izlazna datoteka s konturnim plotom je postscript datoteka, koja se nak-nadno može konvertirati u PDF ili neki drugi grafički format. U ovom našem slučajulista odgovora je:

52 POGLAVLJE 9. GUSTOĆA NABOJA/ČESTICA

QE input: 03-si-plotrho.in

si.charge001.datSi-charge001.psy0.004 0.4 10

Grafička postscript datoteka je Si.charge001.ps, koristimo logaritamsku skalu iz-među 0.004 0.4 s 10 razina.

Slika 9.5: Presjek gustoće čestica u siliciju kroz xy-ravninu.

Konsole> plotrho.x < 03-si-plotrho.in> ps2pdf Si-charge001.ps

Druga komanda, ps2pdf, konvertira dobivenu postscript datoteku u PDF.

2D presjek se može kombinirati s 3D kristalnom strukturom te sve promatrati uxcrysden programu. Pripremimo ulaznu datoteku za post-procesiranje:

9.2. 2D PRESIJEK GUSTOĆE ČESTICA 53

QE input: 04-si-pp.in

&inputpp/&plot

nfile = 1,filepp(1) = 'si.charge',weight(1) = 1.0,iflag = 2,output_format = 3,fileout = 'Si-3d-rho.xsf',x0(1)=0.0, x0(2)=0.0, x0(3)=0.0,e1(1)=-1.0, e1(2)= 1.0, e1(3)= 0.0,e2(1)=-1.0, e2(2)=-1.0, e2(3)= 0.0,e3(1)= 0.0, e3(2)= 0.0, e3(3)= 1.0,nx = 80, ny = 80, nz = 80,

/

Ponovno izračunavanje gustoće naboja nije potrebno pa &inputpp-sekcija ne sadržiništa. Iz već izračunate gustoće čestica, si.charge, izvlačimo podatke i upisujemoih u datoteku prikladnu za xcrysden program. Izvođenje pp.x programa i predledrezultata:

Konsole> pp.x -in 04-si-pp.in > 04-si-pp.out> xcrysden --xsf Si-3d-rho.xsf

Slika 9.6: Presjek gustoće čestica u siliciju kroz xy-ravninu. Dobiveno u xcrysdenprogramu učitavanjem Si-3d-rho.xsf datoteke.

54 POGLAVLJE 9. GUSTOĆA NABOJA/ČESTICA

9.3 Kombiniranje više gustoća nabojaU članku Nature Physics 8 (2012) 131–134 spekulira se o supravodljivosti grafenskogmonoatomskog sloja dopiranog s litijem, adsorbiranim na površini i koji čini pravilnukristalnu strukturu. Radi se o materijalu kemijske formule LiC6, prikazanim na slici:

Slika 9.7: Kristalna struktura LiC6 - grafen s adsorbiranim litijem.

Izračunat ćemo kako se mijenja gustoća čestica zbog prisustva litija na površini.Procedura se sastoji od nekoliko koraka:

• Proračun gustoće za danu strukturu LiC6.

• Proračun gustoće za grafenski sloj. Ugljikovi atomi imaju potpuno isti raspo-red atoma kao i u LiC6.

• Proračun gustoće samo za litijeve atome. Položaji litijevih atoma su potpunoisti kao i u LiC6.

• Kobinirajući izračunate gustoće moguće je izračunati kako adsorbcija, grafon-Li veza, modificiraja gustoću čestica.

Treba napomenuti proračuni gustoće čestica podrazumijevaju SCF račun iz kojegse post-procesiranjem izvlači gustoća naboja.

Datoteka s ulaznim parametrima za SCF račun LiC6 sustava:

9.3. KOMBINIRANJE VIŠE GUSTOĆA NABOJA 55

QE input: 01-lic6-scf.in

&controlcalculation = 'scf',restart_mode = 'from_scratch',prefix = 'lic6',pseudo_dir = '/opt/pseudo',outdir = './',

/

&systemibrav = 0,celldm(1) = 8.05023329064716406174,nbnd = 18,nat = 7,ntyp = 2,ecutwfc = 30,ecutrho = 360,occupations = 'smearing',smearing = 'methfessel-paxton',degauss = 0.01,

/

&electronsmixing_beta = 0.7,conv_thr = 1.0d-10,

/

CELL_PARAMETERS {alat}1.00000000 0.00000000 0.00000000

-0.50000000 0.86602540 0.000000000.00000000 0.00000000 5.00000000

ATOMIC_SPECIESC 12.01078 c_pbe_v1.2.uspp.F.UPFLi 6.941 li_pbe_v1.4.uspp.F.UPF

ATOMIC_POSITIONS {crystal}C 0.166770109 0.166770109 0.500003880C 0.500000000 0.166770109 0.500003880C 0.833229891 0.500000000 0.500003880C 0.833229891 0.833229891 0.500003880C 0.500000000 0.833229891 0.500003880C 0.166770109 0.500000000 0.500003880Li 0.500000000 0.500000000 0.588047290

K_POINTS {automatic}10 10 1 0 0 0

56 POGLAVLJE 9. GUSTOĆA NABOJA/ČESTICA

Nakon SCF računa izračunavamo gustoću čestica:

QE input: 02-lic6-pp.in

&inputPPprefix = 'lic6'outdir = './'filplot = 'lic6.charge'plot_num = 0

/

koja je zapisana u datoteku lic6.charge. Tijek proračuna:

Konsole> pw.x -in 01-lic6-scf.in | tee 01-lic6-scf.out> pp.x -in 02-lic6-pp.in > 02-lic6-pp.out

Ulazne datoteke za SCF proračune grafena i litijevog sloja dobivamo modificirajući01-lic6-scf.in, tako da izbacimo reference na litij ili ugljik, te prilagođavamo brojvrsta atoma (ntyp), ukupni broj atoma (nat), broj vrpci (nbnd), te prefiks (prefix)imena podimenika za spremanje podataka.

Potpuno analogno se naprave izračuni gustoća ćestica. Kao rezultat imamo tri da-toteke: lic6.charge, li.charge i c6.charge. Konačni korak je izračunati razlikuu gustoći izmađu lic6.charge i zbrojenih gustoća li.charge i c6.charge. To sepostiže s post-procesiranjem s ulaznom datotekom 07-lic6-pp-chdiff.in:

QE input: 07-lic6-pp-chdiff.in

&inputpp/&plot

nfile = 3,filepp(1) = 'lic6.charge', weight(1) = 1.0,filepp(2) = 'li.charge', weight(2) = -1.0,filepp(3) = 'c6.charge', weight(3) = -1.0,iflag = 3output_format = 5fileout = 'LiC6-charge_DIFF.xsf'

/

Parametar weight(n) nam govori kako se zbrajaju doprinosi pojednih gustoća.

Konsole> pp.x -in 07-lic6-pp-chdiff.in > 07-lic6-pp-chdiff.out> xcrysden --xsf LiC6-charge_DIFF.xsf

9.4. EFEKTIVNI NABOJ IONA 57

Kao rezultat obrade podataka dobiva se datoteka s 3D prikazom gustoće koja semože pregledavati pomoću xcrysden programa:

Slika 9.8: Preraspodjela naboja zbog stvaranja veze između grafena i litija. Na slicije prikazana površina konstantne gustoće ±0.0025 (crveno/plavo).

9.4 Efektivni naboj ionaU kristalima, čak i onim koji su izolatori i poluvodiči, elektronske valne funkcije sudelokalizirane pa je vrlo teško točno definirati što je naboj nekog iona. U smisludefiniranja naboja iona postoji veći broj metoda/definicija koje davaju slične ali ipakrazličite rezultate za ionske naboje.

Baderova definicijaU Baderovoj definiciji (Richard F.W. Bader, McMaster University, Canada) svakiion je okružen površinom na kojoj je gradijent gustoće naboja jednak nuli. U jed-nodimenzionalnom kristalu (lancu) to bi bile točke minimuma gustoće naboja. Sjedne strane minimuma naboj pripada jednom ionu, a s druge strane drugom ionu.Ova 1d analogija poopćena je na 3d periodični kristal. Da bi se mogla napravitibaderova analiza potrebno je izračunati gustoću naboja. Gustoću naboja smo već

58 POGLAVLJE 9. GUSTOĆA NABOJA/ČESTICA

izračunavali i zapisali je u datoteku xsf-formata prikladnu za xcrysden program.Baderovu analizu možemo napraviti već gotovim programom koji se može spustitis internet-adrese:

http://theory.cm.utexas.edu/henkelman/code/bader/[9, 10, 11, 12]

Ako na navedenoj adresi nema programa za vrstu stroja na kojoj se računa, postojii source-code koji je moguće s kompajlerom prevesti u mašinski.

Navedeni program traži da je gustoća naboja zapisana u tz. cube-formatu. Ta-kava zapis se može producirati na isti način kao što smo producirali xsf -formatza xcrysden program. Prikladna ulazna datoteka za stvaranje gustoće naboja ucube-formatu je:

QE input: nacl-03-pp-cube.in

&inputpp! prefix = 'nacl'! outdir = './.'! filplot = 'NaCl.charge'! plot_num= 0/&plot

iflag = 3output_format = 6fileout = 'NaCl-rho.cube'

/

Razlika od ulazne datoteke za xsf -format je da je output_format jednak 6, te jeime izlazne datoteke drugačije - s nastavkom cube.

Konsole> pp.x -in nacl-pp-cube.in | tee nacl-pp-cube.out

Napomena: I datoteke tipa cube moguće je pregledavati pomoću xcrysden pro-grama.

Sada se možemo poslužiti baderovim programom za analizu:

Konsole> bader nacl-rho.cube

Rezultat izvođenja programa su tri tekstualne datoteke: ACF.dat, AVF.dat, iBCF.dat. Nas zanima samo prva, ACF.dat, čiji je sadržaj:

9.4. EFEKTIVNI NABOJ IONA 59

Konsole> cat ACF.dat

# X Y Z CHARGE MIN DIST ATOMIC VOL------------------------------------------------------------------

1 -10.7700 10.7700 10.7700 8.1358 2.0662 66.98922 -5.3850 5.3850 5.3850 7.8642 3.0515 245.3216

------------------------------------------------------------------VACUUM CHARGE: 0.0000VACUUM VOLUME: 0.0000NUMBER OF ELECTRONS: 16.0000

U koloni CHARGE nalaze se izračunati naboji. Naš prvi ion je natrij koji premadatoteci s pseudopotencijalom ima valenciju 9, tj. daje 9 elektrona po jediničnojćeliji. A naboj koji okružuje natrij je 8.1358, što znači da natriju nedostaje QNa=9-8.1358 = 0.8642 elektrona. Natrijev naboj nije točno +1.0 nego je nešto manji.Na isti način, iz klorovog pseudopotencijala izlazi da je valencija jednaka 7.0. Dakle,u području oko klora se nalazi 0.8642 više elektrona od njegove valencije.

Baderovi naboji Lowdinovi nabojiNa +0.8642 +0.6905Cl -0.8642 -0.6542

Tablica 9.1: Rezultati izračuna ionskih naboja u kristalu NaCl.

Lowdinova definicijaPrema Lowdinovoj definiciji naboj iona je dan prekrivanjem DFT valne funkcije iatomske valne funkcije kada su svi elektroni na ionima od kojih dolaze. Dakle donaboja se izračunom integrala prekrivanja atomske i DFT valne funkcije:

Q = Z −∑

i=popunjena stanja|⟨atomska v.f.|ψ(DFT )

i ⟩|2

Projekciju valne funkcije na atomske valne funkcije može se izračunati pomoćuprograma projwfc.x. Ulazi podaci za program projwfc.x nalaze se u datotecinacl-04-proj.in:

QE input: nacl-04-proj.in

&projwfcprefix = 'nacl',outdir = './',filpdos = 'PDOS/NaCl',

/

Pomoću programa projwfc.x može se izračunati parcijalni DOS, udio atomskih or-bitala u ukupnoj gustoći stanja. Kao atomske orbitale natrija imamo (Napomenavalencija: je 9=2+6+1) 2s, 2p i 3s. Svaka od njih ima svoj udio u ukupnoj gustoći

60 POGLAVLJE 9. GUSTOĆA NABOJA/ČESTICA

stanja, i taj se udio izračunava i ispisuje u 3 posebne datoteke. Atomske orbitaleklora su (valencija je 7=2+5) 3s i 3p. Udio klorovih atomskih orbitala u ukupnojgustoći stanja također se zapisuje u 2 posebne datoteke. Podatke iz datokeka mo-žemo naknadno grafički prikazati, te ćemo datoteke spremiti u posebni imenik PDOSkoji je potrebno prije izvođenja napraviti s mkdir naredbom.

Kreiranje imenaika PDOS i izvođenje programa:Konsole> mkdir pdos> projwfc.x -in nacl-04-proj.in | tee nacl-04-proj.out

Podaci o Lowdinovim nabojima nalaze se na kraju izlazne datoteke nacl-04-proj.out:Konsole> tail -8 nacl-04-proj.out

Lowdin Charges:

Atom # 1: total charge = 8.3095, s = 2.3106,Atom # 1: total charge = 8.3095, p = 5.9989, pz= 1.9996, px= 1.9996, py= 1.9996,

Atom # 2: total charge = 7.6542, s = 1.8915,Atom # 2: total charge = 7.6542, p = 5.7627, pz= 1.9209, px= 1.9209, py= 1.9209,

Spilling Parameter: 0.0023

Lowdinov naboj natrija je 8.3095, što je za 9-8.3095=0.6905 manje od naboja ne-utralnog atoma. U slučaju klora Lowdinov naboj je 7.6542, što je za 0.6542 višeod naboja neutralnog atoma. Uočavamo da naboj natrija nije točno jednak nabojuklora - kao da se je jedan dio naboja izgubio. Taj izgubljeni naboj je delokalizi-rani dio DFT valne funkcije koji nema prekrivanje s lokaliziranim atomskim valnimfunkcijama natrija i klora.

10. Fermijeva površina

Propračun Fermijeve površine u inačici Quantum espressa 5.4 je značajno pojed-nostavljen u odnosu na onaj za inačice prije 5.4. Ovdje će se prikazati procedura zanovu inačicu, dok je procedura za staru inačicu detaljno opisana u Dodatku E.

10.1 Procedura za inačicu 5.4 ili više

Fermijeva površina se izračunava u nekoliko koraka:

• SCF račun

• Izračun Fermijeve površine pomoću fs.x programa

Izračun će se prikazati na primjeru volframa (kemijska oznaka W). Ulazna datotekaza SCF račun:

61

62 POGLAVLJE 10. FERMIJEVA POVRŠINA

QE input: 01-w-scf.in

W QE-in

&controlcalculation = 'scf'restart_mode ='from_scratch',prefix = 'w',pseudo_dir = '/opt/pseudo/',outdir = './',tstress = .true.tprnfor = .true.

/

&systemibrav = 3,celldm(1) = 5.9813611296993968868586,nat = 1,ntyp = 1,nbnd = 13,ecutwfc = 50,ecutrho = 600,occupations = 'smearing',smearing = 'methfessel-paxton',degauss = 0.001,

/

&electronsmixing_beta = 0.7conv_thr = 1.0d-11

/

ATOMIC_SPECIESW 183.84 w_pbe_v1.2.uspp.F.UPF

ATOMIC_POSITIONS {crystal}W 0.0 0.0 0.0

K_POINTS {automatic}20 20 20 0 0 0

dok ulazna datoteka za fs.x ima vrlo jednostavnu strukturu

10.2. GRAFIČKI PRIKAZ FERMIJEVE POVRŠINE 63

QE input: 02-w-fs.in

&fermioutdir='./',prefix='w',

/

Dakle:

Konsole> pw.x -in 01-w-SCF.in | tee 01-w-SCF.out> fs.x -in 02-w-fs.in > 02-w-fs.out

Kao konačni rezultat se dobiva w_fs.bxsf datoteka.

pw.x

calculation = ’scf’

fs.x

Slika 10.1: Procedura izračuna Fermijeve površine za QE inačice ≥ 5.4.

10.2 Grafički prikaz Fermijeve površine

Fermijevu površinu možemo grafički prikazati pomoću xcrysden programa:

Konsole> xcrysden --bxsf w_fs.bxsf

Da se dođe do konačne slike, potrebno je na skočnom prozoru potvrditi Fermijevuenergiju pritiskom na OK.

64 POGLAVLJE 10. FERMIJEVA POVRŠINA

Slika 10.2: Fermijeva površina volframa.

11. Optimizacija kristalne strukture ifononi

11.1 Optimizacija kristalne struktureUnutar QE moguće je izračunati sile na pojedine atome u jediničnoj ćeliji (tprnfor =.true.) te izračunati potreban tlak da bi kristalna rešetka imala konstantu rešetketočno jednaku onoj koja je navedena u ulaznoj datoteci (tstress = .true.). Ovevarijable trebaju se pojaviti u &control-sekciji ulazne SCF datoteke.

U optimalnoj kristalnoj strukturi na bilo kojem tlaku sile na pojedine atome trebajubiti jednake nuli, a potrebni tlak točno jednak onome na kojem se sustav nalazi.

Stoga postoji procedura koja optimizira rešetke tako da sile na atome budu približnojednake nuli (točnost se zadaje ulaznim parametrima) te se mijenja konstanta rešetkedok se tlak ne izjednači s onim koji zahtijevamo da bude.

Ulazna datoteka za optimizaciju rešetke se razlikuje od one SCF račun u nekolikodatalja:

QE input: nacl-01-rx.in

&controlcalculation = 'vc-relax',....etot_conv_thr = 1.0D-5,forc_conv_thr = 1.0D-4,

/&ions

ion_dynamics = 'bfgs',/&cell

cell_dynamics = 'bfgs',press = 0.0D0,press_conv_thr = 0.05D0,

/

QE input: nacl-02-scf.in

&controlcalculation = 'scf',....

/

Za optimizaciju kristalne strukture moguće je koristiti nekoliko različitih vrsta ra-čuna. Ovdje smo se opredjelili samo za jedan od njih zadan s parametrom calculation= 'vc-relax'. Pri tome je potrebno imati još dvije dodatne sekcije, prva &ions-sekcija sadrži parametre koji definiraju kako pomicati ione u jediničnoj ćeliji, a druga&cell-sekcija kako mijenjati dimenzije jednične ćelije.

65

66 POGLAVLJE 11. OPTIMIZACIJA KRISTALNE STRUKTURE I FONONI

Procedura je takva da se radi nizu uzastopnih SCF računa na kraju kojih se izra-čunavaju sile na ione te potrebni tlak. Ako oni ne zadovoljavaju ono što se traži,atomi se pomiču i mijenjaju se dimenzije jedinične ćelije te se započinje novi SCFciklus. Ova se procedura ponavlja sve dok se ne dobije da su svi atomi u ravno-težnom položaju (sila na njih je jednaka nuli), te da je potrebni tlak točno jednakonome traženom.

Procedura optimizacije rešetke za dani tlak:

Konsole> pw.x -in nacl-01-rx.in | tee nacl-01-rx.out

Jedinica za definiranje tlaka u ulaznoj datoteci je kbar.

Treba očekivati da optimizacija rešetke traje 10ak ili više puta duže od one za običniSCF račun.

Za račune u nastavku (SCF i ostale stvari) treba prilagoditi ulazne datoteke premanovoj izračunatoj kristalnoj strukturi. Podatke o optimiziranoj kristalnoj strukturimožemo saznati pregledavajući izlaznu datoteku, npr. pomoću grep komande:

Konsole> grep -A 3 CELL nacl-01-rx.out | tail -4

CELL_PARAMETERS {alat}-0.509431034 0.000000000 0.5094310340.000000000 0.509431034 0.509431034

-0.509431034 0.509431034 -0.000000000

Napomena: Komanda grep -A 3 CELL ... pronalazi linije koje sadrže riječ CELLte ih ispisuje zajedno s još tri linije koje slijede. Komanda tail -4 ispisuje zadnje 4linije iz cijelog ispisa. Dakle, ona ispisuje zadnju inačicu kristalografskih parametarakoji optimiziraju energiju (entalpiju).

Ti se parametri mogu uvrstiti direktno u SCF ulaznu datoteku, ili ih se može prila-goditi. Iz ispisa se vidi da je nova konstanta rešetke:

10.57056524 · 0.5094310340.500000000

= 10.76994796

Novu kristalnu strukturu možemo definirati stavljajući u ulaznu datoteku ibrav=2(plošno centrirana kubna rešetka), te celldm(1)=10.76994796 (nova konstanta re-šetke).

Na isti način saznajemo nove položaje atoma unutar jedinične ćelije:

11.2. FONONSKA TITRANJA 67

Konsole> grep -A 2 ATOMIC nacl-01-rx.out | tail -3

ATOMIC_POSITIONS (crystal)Na -0.000000000 0.000000000 -0.000000000Cl 0.500000000 0.500000000 0.500000000

Iz ispisa se vidi da položaje atoma nije potrebno prilagođavati jer se oni već nalazena pozicijama u kojima je sila jednaka nuli. To općenito nije situacija, pa se novipoložaji atoma trebaju upisati u SCF ulaznu datoteku.Napomena: Ovdje smo prilagodili komandu grep da ispisuje samo dvije dodatnelinije, jer znamo da je broj atoma u jediničnoj ćeliji jednak 2. U skladu s tim smoprilagodili i tail komandu.

11.2 Fononska titranjaOptimizaciju rešetke je važno uraditi prije izračunavanja spektra fononskih pobu-đenja. U suprotnom dobivaju se imaginarne fononske frekvencije koje se ispijuju uizlaznim datoteka kao negativne vrijednosti. Treba biti svjestan da se imaginarnefononske frekvencije mogu pojaviti i u optimizirane kristalne strukture. Takva situ-acija se pojavljuje npr. kod pojave periodičnih deformacija rešetke koje udvajaju ilimultipliciraju osnovnu jediničnu ćeliju.

Za izračunavanje fononskih titranja služimo se programom ph.x. Primjer ulaznedatoteke za ph.x:

QE input: nacl-03-phG.in

&inputphtr2_ph = 1.0d-16,prefix = 'nacl',amass(1)= 22.9898,amass(2)= 35.453,outdir = './',fildyn = 'NaCl.dynG',

/0.0 0.0 0.0

Parametar tr2_ph određuje točnost izračuna fononskih titranja, prefix je ime po-dimenika koje smo koristili i u SCF računu. S parametrima amass(n) definiraju semase iona u atomskim jedinicama. Parametar fildyn definira ime datoteka kojaće sadržavati izračunate frekvencije i pripadnu dinamičku matricu. Zadnja linijasadrži koordinate valnog vektora za koji se izračunavaju frekvencije. U gore nave-denom primjeri to je središte Brillouinove zone, tz. Γ-točka. Valne vektore trebaspecificirati u Kartezijevim koordinatama u jedinicama 2π/a (a konstanta rešetke).

68 POGLAVLJE 11. OPTIMIZACIJA KRISTALNE STRUKTURE I FONONI

Program izvodimo na već prije poznati način:Konsole> ph.x -in nacl-03-phG.in | tee nacl-03-phG.out

U izlaznim datotekama nacl-03-phG.out i NaCl.dynG nalazi se lista izračunatifononskih frekvencija za valni broj q⃗ = (0, 0, 0):

Konsole> grep freq NaCl.dynG

freq ( 1) = -0.187181 [THz] = -6.243692 [cm-1]freq ( 2) = -0.187181 [THz] = -6.243692 [cm-1]freq ( 3) = -0.187181 [THz] = -6.243692 [cm-1]freq ( 4) = 4.535684 [THz] = 151.294142 [cm-1]freq ( 5) = 4.535684 [THz] = 151.294142 [cm-1]freq ( 6) = 4.535684 [THz] = 151.294142 [cm-1]

Vidimo da se dobijaju 3 akustičke frekvencije, koje bi trebale biti jednake nuli,te tri optičke frekvencije na konačnim vrijednostima. Male negativne vrijdnosti,ili male pozitivne vrijednosti za akustičke frekvencije su rezultat male preciznostiračunanja - to se može ignorirati i smatrati ih kao da jesu jednake nuli.

Ovdje se pojavljuje drugi problem, a to je da ne postoji razlika između longitudinal-nog optičkog (LO) i transverzalnog optičkog (TO) titranja. Ta se titranja morajurazlikovati u kristalu kao što je NaCl (ionski/polarni kristali).

Da bi se LO-TO cijepanje moglo izračunati potrebno je prethodno izračunati dielek-tričnu konstantu. To se postiže dodatnim parametrom, epsil=.true. u ulaznojdatoteci za računanje fononskih frekvencija. Naša nova ulazna datoteka izgleda:

QE input: nacl-04-phG.in

&inputphtr2_ph = 1.0d-16,prefix = 'nacl',amass(1)= 22.9898,amass(2)= 35.453,outdir = './',fildyn = 'NaCl.dynG',epsil = .true.,

/0.0 0.0 0.0

Ponovni proračun fononskih frekvencije izračunat će dielektričnu konstantu, te fo-nonske frekvencije koje će imati istu vrijednost kao i u prethodnom računu.

11.2. FONONSKA TITRANJA 69

Da bi se dobila frekvencija LO titranja treba se poslužiti dodatnim programom,dynmat.x, koji će znati iskoristiti podatke o dielektričnoj konstanti. Program dynmat.xtreba ulaznu datoteku:

QE input: nacl-06-dyn.in

&inputfildyn = 'NaCl.dynG',filout = 'NaCl.phon',asr = 'simple',q(1)=0.1, q(2)=0.0, q(3)=0.0,

/

Pri tome je važno izabrati valni broj različiti od nule, jer se radi o nenanalitičkojkorekciji koja je konačna za konačni valni broj. Ako je valni broj točno jednak nuli,korekcija se neće provesti. Korigirane fononske frekvencije bit će zapisane u datoteci'NaCl.phon'. Izvodimo program:

Konsole> dynmat.x -in nacl-06-dyn.in | tee nacl-06-dyn.out

Listu frekvencija možemo saznati pregledavajući izlazne datoteke nacl-06-dyn.outili NaCl.phon:

Konsole> grep freq NaCl.phon

freq ( 1) = -0.000000 [THz] = -0.000002 [cm-1]freq ( 2) = 0.000000 [THz] = 0.000001 [cm-1]freq ( 3) = 0.000000 [THz] = 0.000001 [cm-1]freq ( 4) = 4.541612 [THz] = 151.491882 [cm-1]freq ( 5) = 4.541612 [THz] = 151.491882 [cm-1]freq ( 6) = 7.393798 [THz] = 246.630551 [cm-1]

Vidimo da imamo 2 TO fonona i jedan LO fonon više frekvencije. Dobivene valneduljine longitudinalnog i transverzalnog titranja su:

λLO = 40.55 10−4 cm, λTO = 66.01 10−4 cm

dok su eksperimentalno izmjerene:

λ(exp)LO = 38 10−4 cm, λ

(exp)TO = 61 10−4 cm

na sobnim temperaturama.

Kao rezultat izvođenja dynmat.x programa kreirana je i datoteka NaCl-phon.axsfs pomacima rešetke koji odgovaraju izračunatim fononskim frekvencijama. Pomacise mogu grafički vidjeti u xcrysden programu:

70 POGLAVLJE 11. OPTIMIZACIJA KRISTALNE STRUKTURE I FONONI

Konsole> xcrysden -axsf NaCl-phon.axsf

Nakon pojave početne slike primitivne kristalne rešetke, vizualizacija pomaka setreba aktivirati na tipkovnici s tipkom ’f’ ili menu-ju Display → forces.

Slika 11.1: Pomaci iona za fononska titranja u NaCl-u. Lijeva strana prikazujeakustička titranja, a desna optička.

11.3 Elastične konstante, fononska disperzija igustoća stanja

Fononske frekvencije za konačne valne brojeve moguće je izračunati na isti načinkao i za Γ točku. Na dnu ulazne datoteke treba navesti valni broj. Na taj je načinmoguće izračunati frekvencije za niz valnih brojeva uzduž nekog pravca u BZ koji

11.3. ELASTIČNE KONSTANTE, FONONSKA DISPERZIJA I GUSTOĆASTANJA 71povezuje specijalne simetrijske točke. Rezultat se može grafički prikazati kao što smoprikazivali elektronske vrpce. Proračunavanje fononskih frekvencije je dosta sporijeod proračunavanja elektronskog spektra, pa cijeli taj posao može dosta potrajati.

Postoji alternativni način. Ideja je izračunati frekvencije za konačnu mrežu valnihbrojeva unutar Brillounove zone, a zatim, koristiti te podatke za izračun elastič-nih konstanti između atoma. Poznavajući elastične konstante moguće je izračunatifononske frekvencije jako brzo za veliki broj valnih brojeva.

Ulazna datoteka za proračunavanje frekvencija za mrežu valnih brojeva:

QE input: nacl-03-ph.in

&inputphtr2_ph = 1.0d-16,prefix = 'nacl',outdir = './',amass(1)= 22.9898,amass(2)= 35.453,epsil = .TRUE.,fildyn = 'NaCl.dyn',ldisp=.true.,nq1=3, nq2=3, nq3=3,

/

Umjesto navođenja valnog broja na kraju ulazne datoteke, koristi se parametarldisp=.true. i niz nq1=3, nq2=3, nq3=3 koji definiraju gustoću mreže u BZ.Fononske frekvencije se ne izračunavaju za svih 3×3×3 = 27 valnih brojeva, negosamo za ireducibilni skup. Fononske frekvencije za ostale valne brojeve dobivajuse simetrijskim operacijama. U ovom slučaju fononske se frekvencije izračunavajusamo za 4 valna broja navedena u datoteci NaCl.dyn0.

Napomena: Treba biti oprezan s gustoćom mreže u BZ, jer su proračuni fononskihfrekvencija puno duži od onih elektronskih. Treba kazati da velika gustoća mreže uizolatoru i nije tako jako važna - za razliku od metalnih sustava. Gusta mreža valnihbrojeva omogućuje izračunavanje elastičnih konstanti između udaljenih atoma. Uizolatorima elastične konstante brzo trnu s udaljnošću atoma (ne računajući dugodo-sežne kulonske sile zbog polarizacije rešetke), dok u metalima efektivne sile izmeđuatoma sporije opadaju zbog elektron-fononskog vezanja. U metalima je važno imatidovoljno gustu mrežu valnih brojeva.

Izračunavanje frekvencija:

Konsole> ph.x -in nacl-03-ph.in >& nacl-03-ph.out &

72 POGLAVLJE 11. OPTIMIZACIJA KRISTALNE STRUKTURE I FONONI

Proračun traje višestruko duže od onoga za frekvencije u Γ-točci. Kao rezultat sedobije niz datoteka, s podacima za svaki izračunati valni broj. U našem slučaju radise o 5 datoteka: NaCl.dyn0 sadrži listu valnih brojeva, te NaCl.dyn1, NaCl.dyn2,NaCl.dyn3 i NaCl.dyn4 s frekvencijama i pripadnim dinamičkim matricama. Iztih datoteka izračunavamo elastične konstante između atoma služeći se programomq2r.x.

Ulazna daoteka za program q2r.x:

QE input: nacl-04-q2r.in

&inputfildyn='NaCl.dyn',zasr='simple',flfrc='NaCl333.fc'

/

Izlazna datoteka NaCl333.fc sadržavat će elastične konstante između atoma. Uovom slučaju radi se o elastičnim konstantama između prvih i drugih susjednihatoma. Program se izvodi na već prije poznati način:

Konsole> q2r.x -in nacl-04-q2r.in | tee nacl-04-q2r.out

Za proračunavanje fononskih frekvencija iz poznatih elastičnih konstanti služimo seprogramom matdyn.x. Ulazna datoteka je:

QE input: nacl-05-mat.in

&inputasr='simple',amass(1)= 22.9898,amass(2)= 35.453,flfrc='NaCl333.fc',flfrq='NaCl.freq'q_in_cryst_coord=.true.,

/198

0.0000000000 0.0000000000 0.0000000000 1.00.0000000000 0.0000000000 -0.0185185185 1.00.0000000000 0.0000000000 -0.0370370370 1.00.0000000000 0.0000000000 -0.0555555556 1.0

.....

gdje je na kraju datoteke lista od 198 eksplicitno navedena valna broja za koje seizračunava fononski spektar. Valni brojevi dobiveni su pomoću xcrysden programa.

11.3. ELASTIČNE KONSTANTE, FONONSKA DISPERZIJA I GUSTOĆASTANJA 73Valni brojevi dani su u kristalnim koodinatama pa se u ulaznoj datodeci to nazna-čuje s parametrom q_in_cryst_coord=.true.. To je svakako važno staviti jer suvalni vektori, po pretpostavci dani s kartezijevom koodinatama. Izračun fononskihfrekvencija:

Konsole> matdyn.x -in nacl-05-mat.in | tee nacl-05-mat.out

Kao rezultat se dobiva datoteka NaCl.freq koja sadrži izračunate frekvencije. Pri-loženi python skript može poslužiti grafički prikaz podataka:

Konsole> ./plot_PhonB-QE.py -dat NaCl.freq

Slika 11.2: Fononski spektar kristala NaCl.

Pomoću programa matdyn.x možemo izračunati i gustoću fononskih stanja. Ulaznadatoteka za program je:

74 POGLAVLJE 11. OPTIMIZACIJA KRISTALNE STRUKTURE I FONONI

QE input: nacl-06-dos.in

&inputasr='simple',amass(1)= 22.9898,amass(2)= 35.453,flfrc='NaCl333.fc',dos=.TRUE.,fldos='NaCl-phdos.dat',deltaE=1.d0,nk1=10, nk2=10, nk3=10,

/

Izračun fononske gustoće stanja:

Konsole> matdyn.x -in nacl-06-dos.in | tee nacl-06-dos.out

Gustoća fononski stanja spremljena je u datoteci NaCl-phdos.dat. Radi se dvijekolone, prva kolona su frekvencije u jedinicama cm−1, a druga je gustoća stanja.

QE output: NaCl-phdos.dat

-2.8439E-06 0.0000E+001.0000E+00 8.8536E-072.0000E+00 3.5414E-063.0000E+00 7.9682E-064.0000E+00 1.4166E-055.0000E+00 2.2134E-05

........2.4300E+02 1.7387E-032.4400E+02 1.2691E-032.4500E+02 6.8723E-042.4600E+02 1.0277E-042.4700E+02 0.0000E+00

Podaci se mogu grafički prikazati pomoću priloženog python skripta:

Konsole> ./plot_PhonDos-QE.py -dat NaCl-phdos.dat

11.4. NABOJI NA IONIMA I IR SPEKTAR 75

Slika 11.3: Fononska gustoća stanja za kristal NaCl.

Uočava se da u području frekvencija manjih od 80 cm−1 fononska gustoća stanjaraste kvadratično s frekvencijom što je u skladu se Debyeovim modelom za akustičkatitranja. Ukupna površina koju ima gustoća stanja je jednaka 6, što odgovara 6stupnjava slobode po jediničnoj ćeliji.

11.4 Naboji na ionima i IR spektarDa bi se mogao proračunati infra-crveni spektar nekog materijala potrebno se po-navati oscilatorne jakosti fononskih pobuđenja. U najjedonstavnijim modelima, zaproračun oscilatornih jakosti trebaju se znati ionski naboji.

Bornovi nabojiBornove naboje smo izračunali pomoću programa ph.x kod izračuna fononskih frek-vencija u Γ točci. U ulaznoj datoteci zadali smo da se izračunava također i dielek-trična funkcija, i kao rezultat toga, izračunati su i Bornovi naboji. Bornovi efektivninaboji se dobivaju kao ovisnost inducirane polarizacije po pomaku iona. Bornoviefektivni naboji su u stvari tenzorska veličina, koja ovisi i o smjeru polarizacije i ismjeru pomicanja iona:

Z(Born)ij =

∂Pi

∂uj× Vc

|e|

gdje je Vc volumen jedinične ćelije. Pregledavanje datoteke s izračunatim frekvenci-jama:

76 POGLAVLJE 11. OPTIMIZACIJA KRISTALNE STRUKTURE I FONONI

Konsole> grep -A 10 'Effective Charges' NaCl.dynG

Effective Charges E-U: Z_{alpha}{s,beta}

atom # 11.104945501487 0.000000000000 0.000000000000-0.000000000000 1.104945501487 -0.0000000000000.000000000000 0.000000000000 1.104945501487

atom # 2-1.112567837122 0.000000000000 0.0000000000000.000000000000 -1.112567837122 -0.0000000000000.000000000000 -0.000000000000 -1.112567837122

Baderovi naboji Lowdinovi naboji Bornovi nabojiNa +0.8642 +0.6905 +1.1049Cl -0.8642 -0.6542 -1.1126

Tablica 11.1: Rezultati izračuna ionskih naboja u kristalu NaCl.

12. Magnetizam

DFT se može vrlo jednostavno poopćiti na sustave s magnetskim uređenjem: u funk-cionalu energije gustoću čestica (naboja) treba prikazati kao zbor spinskih gustoća,te dopustiti da spinske gustoće mogu biti različite. Pri tome se vodi računa da ener-gija izmene postoji samo između čestica istog spina: ukupna energija izmene je zbrojenergija izmjena različitih spinskih podsustava. Tako npr. aproksimacija energijeizmjene LDA (local density approximation) postaje local spin density approximationili skrećeno LSDA. Ta se kratica vrlo često koristi umjesto LDA. Dakle, radi se opotpuno istoj aproksimaciji osim što je dopušteno da spinske gustoće čestica mogubiti različite.

Kao posledica separatnih spinskih gustoća čestica, pojavljuju se posebne Schödin-gerove jednadžbe za čestice različitih spinova. Njihovo rješavanje, u najmanju ruku,zahtijeva dvostruko više vremena. A u sustavima u kojima se pojavljuju spiralnamagnetska uređenja (spinovi čestica nisu kolinearni), radi se o vezanim Schödin-gerovim jednadžbama koje se moraju rješavati paralelno i što dodatno produžujepotrebno vrijeme za DFT račune.

12.1 Feromagnetizam u željezuPromotrimo prvo slučaj feromagnetizma u željezu. Ulazna datoteka za SCF računmora imati specificirana (najmanje) dva dodatna parametra:

QE input: fe-05-scf.in

&system....nspin = 2,starting_magnetization(1) = 0.5,....

/

Prvi parametar govori da postoje dvija spinska sustava s potencijalno različitim spin-skim gustoćama, dok drugi parametar unosi unosi inicijalnu razliku između spinskihgustoća. U ovom konkretno slučaju pretpostavlja se da je početni magnetski mo-ment atoma željeza 0.5 µB. Iterativna SCF procedura odredit će konačnu vrijednostmagnetskog momenta.

Jako je važno za DFT magnetskih sustava da se na početku pretpostaviti magnetskouređenje. Ako se na samom početku pretpostavi nemagnetsko stanje, onda SCF

77

78 POGLAVLJE 12. MAGNETIZAM

račun neće dovesti do magnestko uređenog stanja. Sam iznos početne magnetizacijenije bitan, važno je da je on različit od nule.

Naša konačna i kompletna ulazna datoteka za SCF račun:

QE input: fe-05-scf.in

Iron&control

calculation='scf'restart_mode='from_scratch',prefix='fe'pseudo_dir = '/opt/pseudo/',outdir='./',tstress = .true.,tprnfor = .true.,

/&system

ibrav = 3,celldm(1) = 5.36034117878995788,nat= 1,ntyp= 1,nbnd = 20,ecutwfc = 50,ecutrho = 600.0,occupations='smearing',smearing='methfessel-paxton',degauss=0.001,nspin = 2,starting_magnetization(1) = 0.5,

/&electrons

mixing_beta = 0.5conv_thr = 1.0e-10

/ATOMIC_SPECIES

Fe 55.847 fe_pbe_v1.2.uspp.F.UPFATOMIC_POSITIONS

Fe 0.0 0.0 0.0K_POINTS {automatic}

20 20 20 0 0 0

Analizirajući izlazne podatke iz SCF računa, nakon svake SCF iteracije ispisuje se:

• ukupni magnetski moment (total magnetization)• i ukupni absolutni magnetski moment (absolute magnetization)

12.1. FEROMAGNETIZAM U ŽELJEZU 79

Pri tome je ukupni absolutni magnetski moment veći od ukupnog magnetskog mo-menta jer pojedini djelovi jedinične ćelije imaju magnetizaciju suprotnog smjera kojareducira ukupni magnetski moment, ali pozitivno doprinosi ukupnom absolutnommagnetskom momentu.

Konačni magnetski moment dobivamo tako da ispišemo zadnji dobiveni rezultat:Konsole> grep -A 2 'Magnetic moment' fe-05-scf.out | tail -3

Magnetic moment per site:atom: 1 charge: 14.3919 magn: 2.2979 constr: 0.0000

Magnetski moment atoma željeza je 2.2979 µB.

Ako bi smo pošli od nemagnetskog stanja (starting_magnetization(1) = 0.0)kao rezultat SCF računa bi dobili nemagnetsko stanje, unatoč tome da je nspin =2. Možemo usporediti i energije magnetskog i nemagnetskog stnja:

Konsole> egrep '^! *total energy' fe-05-scf.out! total energy = -253.47834748 Ry

u slučaju nemagnetskog stanja ukupna energija je: -253.43618536 Ry. Magnetskostanje je za 0.573404832 eV po jediničnoj ćeliji povoljnije od nemagnetskog za istugeomentriju kristalne rešetke.

Moguće je spekulirati da pod velikim tlakovima neka druga kristalna struktura že-ljeza, ili ista ova, ima nemagnetsko rješenje kao stabilno.

Služeći se već poznatom procedurom za izračun gustoće stanja:

• nscf-račun s occupations='tetrahedra'• te ispis gustoće stanja u datoteku pomoću dos.x

dobivamo datoteku s podacima o gustoći stanja koja ima dvije kolone, jednu zaćestice sa spinom prema gore, a drugu za čestice sa spinom prema dolje:

# E (eV) dosup(E) dosdw(E) Int dos(E)0.000 0.0000E+00 0.0000E+00 0.0000E+000.010 0.0000E+00 0.0000E+00 0.0000E+000.020 0.0000E+00 0.0000E+00 0.0000E+000.030 0.0000E+00 0.0000E+00 0.0000E+00

.....39.970 0.1501E+00 0.1864E+00 0.1795E+0239.980 0.1496E+00 0.1858E+00 0.1795E+0239.990 0.1491E+00 0.1845E+00 0.1795E+0240.000 0.1486E+00 0.1826E+00 0.1796E+02

80 POGLAVLJE 12. MAGNETIZAM

Pomoću priloženog python programa:Konsole> ./plot_dos4spin-QE.py -ef 17.9067 -dat Fe-dos.dat

podaci se mogu grafički prikazati

Slika 12.1: Gustoća stanja željeza. Pozitivne vrijednosti odnose se na spin premagore, a negativne na čestice spina prema dolje.

Izračun gustoće stanja za nemagnetsko stanje željeza daje rezultat prikazan na slici:

Slika 12.2: Gustoća stanja nemagnetskog željeza.

12.1. FEROMAGNETIZAM U ŽELJEZU 81

Oštri vrhovi u obje gustoće stanja odgovaraju slabo hibridiziranim d-stanjima že-ljeza.U izoliranom atomu željeza, prema Hundovim pravilima, dio d-stanja bit će popu-njem samo s elektronima jedne spinske orjedntacije. To je ono što čini atomeželjeza malim magnetima. Hundova pravila impliciraju da je spinska degeneracijed-stanja razbijena, pa tako prazna kvantna stanja jedne spinske orjendacije imajuenergiju veću od Fermijeve, dok ona popunjena koja su druge spinske orjentacijeimaju energiju manju od Fermijeve.Atom željeza u okruženju drugih atoma željeza ima dodatno razbijanje degeneracijed-stanja. Ono dolazo od kristalnog polja. U bcc kristalnoj strukturi, atom željezau centru kocke okružen je s drugim atomima željeza u vrhovima kocke. Tako dapostoje dvije grupe stanja: dxy, dyz i dzx koja su usmjerena prema vrhovima kockei koja će bit jako hibridizirani (široke vrpce) s istim tim stanjima okolnih atoma.Drugu grupu stanja čine slabo hibrodizirane orbitale dx2−y2 i dz2 .1 Zakretni momentkao kvantni broj više nije dobro definiran. Srednja vrijednost operatora zakretnogmomenta je jednaka nuli, a ukupni zakretni moment (J⃗) jednak je ukupnom spinuatoma (S⃗). Unutar slabo hibridiziranih stanja postoji razbijanje spinske degeneracije(1. Hundovo pravilo), pa su ta stanja pretežno popunjena elektronima samo jednevrste spina. Slaba hibridizacija tih stanja odražava se u oštom vrhu u gustoći stanja,koji se za jedno spinsko stanje nalazi ispod Fermijeve razine, a za drugo spinskostanje iznad Fermijeve razine. Ova razlika u spinskoj popunjenosti vrpci znači dasu atomi željeza mali magneti konačnog magnetskog momenta, koji je, kako smoizračunali, jednak približno 2,30 µB.Na slijedećoj slici prikazana je gustoća stanja projicirana na lokalizirane d-orbitale:

Slika 12.3: Gustoća stanja željeza projicirana na atomske lokalizirane d-orbitale-

1U stvari, pažljiva analiza pokazuje da se te orbitale hibridiziraju sa sp3 orbitalama činećiposebnu grupu od 6 stanja.

82 POGLAVLJE 12. MAGNETIZAM

Ovakvu projiciranu gustoću stanja po atomskim orbitalama možemo izračunati po-moću programa projwfc.x koji treba ulaznu datoteku:

QE input: fe-07-proj.in

&projwfcprefix = 'fe',outdir = './',filpdos = 'PDOS/Fe',degauss = 0.01,DeltaE = 0.02,

/

Program se izvodi nakon SCF računa:

Konsole> pw.x -in fe-05-scf.in | tee fe-05-scf.out> mkdir PDOS> projwfc.x -in fe-07-proj.in | tee fe-07-proj.out

Nakon SCF računa stvaramo imenik PDOS koji će sadržavati niz datoteka u kojimaće se nalaziti gustoća stanja projicirana na atomske orbitale različitog zakretnog iglavnog kvantnog broja. Pomoću pyton-skripta, plot_pdos-3d-QE.py crtamo pro-jekcije gustoće stanja po d-orbitalama različitog magnetskog momenta.

Konsole> grep Fermi fe-05-scf.out

the Fermi energy is 17.9112 ev> ./plot_pdos-3d-QE.py -ef 17.9112

Skript čita i crta podatke iz datoteke PDOS/Fe.pdos_atm#1(Fe)_wfc#3(d).

Iz radoznalosti, možemo provjeriti postoji li magnetsko stanje u srebru, ako se pret-postavi inicijalno magnetsko stanje. Lako je provjeriti da će SCF račun inicijalnumagnetizaciju reducirat će na nulu. Zaključujemo da u srebru nema feromagnetizma.

12.2 Antiferomatnetizam u NiONiO ima kristalnu strukturu istovjetnu kuhunjskoj soli.

12.2. ANTIFEROMATNETIZAM U NIO 83

Slika 12.4: Kristalna i magnetska struktura NiO.

Niklovi ioni imaju magnetski moment koji čine atiferomagnetsku rešetku, kako jeprikazano na slici. Duž glavne dijagonale kocke smjenjuju se slojevi niklovih atomas jednom magnetskim momentom i suprotnim magnetskim momentom.

Budući da u sustavu postoji dvije vrste niklovih iona, kod opisa kristalne struk-turre sustava njih je potrebno tretirati kao različite vrste atoma koji imaju istipseudopotencijal. U ulaznoj datoteci za svaku vrstu niklovih iona pretpostavljase različita inicijalna magnetizacije, starting_magnetization = ±0.5. Kompletnaulazna datoteka za SCF račun je:

84 POGLAVLJE 12. MAGNETIZAM

QE input: nio-scf.in

NiO&control

calculation = 'scf',restart_mode = 'from_scratch',prefix = 'nio_af',pseudo_dir = '/opt/pseudo/',outdir = './',tstress = .true.,tprnfor = .true.,verbosity = 'high',

/&system

ibrav = 0,celldm(1) = 7.88015794,nat = 4,ntyp = 3,nbnd = 30,ecutwfc = 50.0,ecutrho = 600,occupations = 'smearing',smearing = 'methfessel-paxton',degauss = 0.001,nspin = 2,starting_magnetization(2)= +0.5,starting_magnetization(3)= -0.5,

/&electrons

mixing_beta = 0.7conv_thr = 1.0d-10

/CELL_PARAMETERS

0.5 0.5 1.00.5 1.0 0.51.0 0.5 0.5

ATOMIC_SPECIESO 15.9994 o_pbe_v1.2.uspp.F.UPFNi1 58.6934 ni_pbe_v1.2.uspp.F.UPFNi2 58.6934 ni_pbe_v1.2.uspp.F.UPF

ATOMIC_POSITIONS {crystal}O 0.25 0.25 0.25O 0.75 0.75 0.75Ni1 0.00 0.00 0.00Ni2 0.50 0.50 0.50

K_POINTS {automatic}8 8 8 0 0 0

12.3. JAKO KORELIRANI SUSTAVI I GGA/LDA+U 85

Nakon završenog SCF-računa, konačni iznos magnetskog momenta dobivamo po-moću komande grep:

Konsole> grep -A 4 'Magnetic moment' nio-01-scf.out | tail -4

atom: 1 charge: 5.6611 magn: 0.0000 constr: 0.0000atom: 2 charge: 5.6611 magn: 0.0000 constr: 0.0000atom: 3 charge: 15.6780 magn: 1.3370 constr: 0.0000atom: 4 charge: 15.6780 magn: -1.3370 constr: 0.0000

Dakle magnetski moment niklovog iona je 1,3370 µB.

Proračun gustoće stanja:

Slika 12.5: Gustoća stanja NiO

pokazuje da postoji procijep nešto manji od 1 eV (točnije: 0,840).

Eksperimentalni podaci na NiO pokazuju da je procijep između 3 i 4 eV, značajnoveći od onoga što se dobiva u GGA aproksimaciji.

12.3 Jako korelirani sustavi i GGA/LDA+UVeć je prije spomenuto da točan funkcional energije u DFT-u nije poznat, tako da serade aproksimacije poput LDA ili GGA. U većini materijala LDA/GGA reproduciradobro izmjerene vrijednosti fizikalnih veličina. Međutim, postoje klase materijalagdje LDA ili GGA potpuno zakazuju. To se tipično sustavi koji imaju procijep na

86 POGLAVLJE 12. MAGNETIZAM

Fermijevom nivou: poluvodiči/izolatori. Poluvodiči i izolatori se mogu podijeliti nadvije skupine:

• poluvodiče u kojima je procijep rezultat periodičkog potencijala kristalne re-šetke (band insulators), te

• jako korelirane sustave u koji je procijep nastao zbog odbijanja među elektro-nima (Mott/charge-transfer insulators).

U slučaju prve skupine poluvodiča/izolatora DFT ima dobro razrađeni odgovor i re-cept za navedeni problem. Problem nastaje zbog toga što kulonsko međudjelovanjenije dobro zasjenjeno u sustavima s procijepom. Njegovo zasjenjenje se dobiva uvišim redovima računa smetnje (RPA) koji su zanemareni u LDA/GGA. Procedurakojom se uzima u obzir zasjenjenje i njegov utjecaj na vlastitu energiju elektronskihpobuđenja poznata je kao GW aproksimacija (GWA). U GWA zanemaruje se renor-malizacija verteksa, a kulonsko međudjelovanje je renormalizirano samo kroz RPA.GWA je računalno zahtijevna i s njom ćemo se tek kasnije baviti.

Sustavi u kojima je procijep rezultat jakih korelacija (elektronskog odbijanja) pred-stavljaju služeniji problem. Ovdje ćemo razmotriti jednan od mogućih pristupa -poznat kao LDA+U ili GGA+U.

Anisimov, Zaanen, & Andersen, PRB 44 (1991) 943[13]Anisimov et al., PRB 48 (1993) 16929[14]

Liechtenstein, Anisimov, and Zaanen, PRB 52 (1994) R5467[15]Prvi korak u ovom pristupu je se LDA/GGA funkcional energije se nadogradi do-datnim članom koji ima formu Hubbardovog odbojnog međudjelovanja između elek-trona različitog spina.

ELDA/GGA → ELDA/GGA +∑I

UI

2

∑m,σ ̸=m′,σ′

nIσm nIσ′

m′ −UI

2nI (nI − 1)︸ ︷︷ ︸

Dio označen zvjezdicom (⋆) je već uključen u funkcional energije pa ga je potrebnoisključiti, kako dodavanjem novih članova ne bi došlo do njihovog dvostrukog ura-čunavanja (double counting).

Iako funkcional energije u DFTu nije poznat, ipak poznata su mnoga njegova svoj-stva. Jedno od tih svojstava je da njegova varijacija nije kontnuirana funkcija gustoćečestica. Najniža energija (srednja vrijednost) kao funkcija broja čestica ima skokoveu derivaciji za cjelobrojne vrijednosti broja čestica.

J.P. Perdew et al., PRL 49 (1982) 1691[16]S LDA/GGA+U funkcionalom moguće je reproducirati ovu skokovitost u deriva-ciji. Naime Hubbardovo međudjelovanje preferira cjelobrojno popunjenje orbitala,a destimulira da su orbitale različitog spina djelomično popunjene.

Ova se aproksimacija primjenjuje samo na d- i f -obitale koje srećemo u prijelaznimelemenatima, elementima rijetkih zemalja, odnosno lantanidima i aktinidima. Me-đudjelovanje se modelira s jednim (U) ili dva (U , J) parametra za cjelokupnu d- ilif -ljusku.

12.4. PRIMJENA LDA/GGA+U U NIO 87

Postoji još jedno dodatno pojednostavljenje: produkt operatora popunjenja kvantnogstanja zamjenjuje se produktom srednjih vrijednosti. To je svojevrsna aproksimacijasrednjeg polja. Kao alternativa ovom pojednostavljenju postoji LDA+DMFT pristupu kojem se Hubbardovo međudjelovanje tretira unutar teorije dinamičkog srednjegpolja (Dynamical Mean-Field Theory ili DMFT).

Lichtenstein, Katsnelson & Kotliar, PRL 87 (2001) 067205[17]Georges et al., RMP 68 (1996) 13[18]

Ovo pojednostavljeno tretiranje Hubbardovog člana je implementirano u QE, a naLDA+DMFT-tretmanu se još radi.

12.4 Primjena LDA/GGA+U u NiODa bi se uzelo u obzir Hubbardovo odbijanje, potrebno se datoteku s ulaznim para-metrima nadopuniti u &system-sekciji na ovaj način:

QE input: nio-scf.in - dodatak

&system......

nspin = 2,starting_magnetization(2)= +0.5,starting_magnetization(3)= -0.5,lda_plus_u = .TRUE.,Hubbard_U(2) = 4.6,Hubbard_U(3) = 4.6,

Pomoću linije lda_plus_u = …definiramo da će se koristiti LDA/GGA+U aproksi-macija, dok slijedeće dvije linije zadaju vrijednost Hubbardovog odbijanja u jedini-cama eV, za 2. i 3. vrstu atoma (Ni). Ako nije eksplicitno navedeno, Hubbardovoodbijanje se pretpostavlja da je jednako nuli. Dakle, nije ga potrebno navesti za 1.vrstu atoma, tj. kisikove ione/atome.

Nakon SCF računa, dobiva se izlazna datoteka iz koje možemo izčitati niz parame-tara, npr. magnetski moment:

Konsole> grep -A 4 'Magnetic moment' nio-01-scf.out | tail -4

atom: 1 charge: 5.7090 magn: 0.0000 constr: 0.0000atom: 2 charge: 5.7090 magn: 0.0000 constr: 0.0000atom: 3 charge: 15.6370 magn: 1.6048 constr: 0.0000atom: 4 charge: 15.6369 magn: -1.6048 constr: 0.0000

Na isti, već opisano način može se izračunati gustoća stanja, s tima da i nscf -ulaznadatoteka ima isti dodatak kao i scf -datoteka. Konačni rezultat, prikazan je na slici

88 POGLAVLJE 12. MAGNETIZAM

Slika 12.6: Gustoća stanja NiO s U=4.6 eV. Procijep je 2.580 eV.

a iz datoteke u kojoj su podaci o gustoći stanja može se ustanoviti da je procijep uenergiji oko 2,58 eV. To je još uvijek niže od eksperimentalno izmjerene vrijednosti,ali i puno bolje od rezultata kojeg smo prije dobili. Bolje slaganje s eksperimentalnoizmjerenim procijepom postiže se kombinacijom GGA+U i GWA.

Sawatzky & Allen, PRL 53 (1984) 2339[19]Aryasetiawan & Gunnarsson PRL 74 (1995) 3221[20]

Na slijedećoj slici su projecirane gustoće stanja na lokalizirana niklova d-stanja izkoje se može vidjeti kako konačni U utječe na gustoću stanja i lokalizirana atomskastanja.

-7.0 -5.0 -3.0 -1.0 EF +1.0 +3.0energy (eV)

1.0

0.5

0.0

0.5

1.0

PDOS

Partial DOS for Ni - d states3dx2 − y2

3dz2

3dzy

3dxy

3dzx

-7.0 -5.0 -3.0 -1.0 EF +1.0 +3.0energy (eV)

1.0

0.5

0.0

0.5

1.0

PDOS

Partial DOS for NiO - d states3dx2 − y2

3dz2

3dzy

3dxy

3dzx

Slika 12.7: Gustoća stanja projecirana na d-stanja nikla za U= 4.6 eV (lijevo) i zaU= 0.0 eV (desno).

Hubbardovo međudjelovanje mijenja poredak lokaliziranih d-orbitala.

12.5. KAKO IZRAČUNATI U 89

12.5 Kako izračunati UMožemo se pitati zašto je Hubbardovo međudjelovanje izabrano da bude 4.6 eV. Jel’U slobodni parametar u ab initio računu? Postoji razrađena procedura izračunavrijednosti Hubbardovog U . Procedura je računalno zahtijevna i ovdje je možemosamo djelomično i približno provesti.

Procedura se sastoji u tome da se u sustav uvede nečistoća koja koja je potpunoidentična nesmetanom atomu/ionu osim što ima energije atomskih stanja pomaknuteza neki mali parametar α u odnosu na originalni atom/ion.

δVnečistoća = α∑m

|dm⟩⟨dm|

Promatra se odziv, kako se gustoća čestica mijenja u odnosu na taj mali parametar.Fizikalna pozadina i detaljna procedura opisane su u radu:

M. Cococcioni & S. Gironcoli, PRB 71 (2005) 035105[21]B. Himmetoglu, R.M. Wentzcovitch & M. Cococcioni, PRB 84 (2011) 115108[22]

Točni račun nije moguće provesti jer je nemoguće numerički riješiti problem nečistoćeu beskonačno velikom sustavu. Ono što se radi umjesto toga je da se koristi što većasuperćelija u kojoj je jedan atom/ion izabran da bude nečistoća. Moguće je napravitiseriju proračuna s različitim dimenzijama superćelije, te pratiti kako se rezultatmijenja s povećavanjem broja atoma. Ekstrapolirajući zadnji dobiveni rezultat nabeskonačno veliku jediničnu ćeliju trebalo bi dati traženi odgovor.

Kako raspolažemo s ograničenim računalnim resursima, ovdje ćemo napraviti naj-jednostavniju moguću aproksimaciju, te jedan od dva niklova iona proglasi nečisto-ćom. Tako dobiveni rezultat neće dati pravu vrijednost za U -a, ali se može smatratinjegovom prvom aproksimacijom.

Proceduru ćemo podijeliti u nekoliko koraka:

1. SCF račun u kojom su parametri α svi jednaki nuli.2. Niz SCF računa u kojima je α različit od nule.3. Analiza izlaznih podataka i proračun U -a.

QE input: nio-scf.in

&control......

verbosity = 'high',&system

......lda_plus_u = .TRUE.,Hubbard_U(2) = 4.6,Hubbard_U(3) = 4.6,Hubbard_alpha(2) = 0.00,Hubbard_alpha(3) = 0.00,

90 POGLAVLJE 12. MAGNETIZAM

Dakle ulaznu datoteku nadopunili smo s još dva parametra, Hubbard_alpha, kojesmo u početnom SCF računu izabrali da su jednaki nuli. SCF račun radimo takoda izlazni podaci se zapisuju u datoteku:

Konsole> pw.x -in nio-01-scf.in > nio-01-scf.out> grep 'ethr =' nio-01-scf.out | tail -1

ethr = 4.96E-12, avg # of iterations = 1.8

Iz izlazne datoteke treba izdvojiti parametar ethr iz zadnjeg iteracijskog koraka.To se postiže grep naredbom kako je gore naznačeno. Njegova vrijednost, 4.96E-12,će se koristiti u drugom koraku u SCF računima gdje je Hubbard_alpha različit odnule.

Slijedeći korak su SCF računi za više različitih vrijednosti parametra Hubbard_alpha.Kopirajmo cijeli imenik sa SCF računom u novi imenik gdje će se račun provesti:

Konsole> cd ..> cp -R scf 0.05> cd 0.05

Ovdje smo pretpostavili da smo SCF račun radili u imeniku scf. Taj smo imenikkopirali u novi imenik pod imenom ”0.05”. U tom novom imeniku editiramo ulaznudatoteku te mijenjamo vrijednost parametra Hubbard_alpha u 0.05. Nova ulaznadatoteka u &system-sekciji izgleda ovako:

QE input: nio-scf.in

&system......

lda_plus_u = .TRUE.,Hubbard_U(2) = 4.6,Hubbard_U(3) = 4.6,Hubbard_alpha(2) = 0.00,Hubbard_alpha(3) = 0.05,

Naša nečistoća je 3. vrsta atoma u jediničnoj ćeliji - ondje gdje je Hubbard_alpharazličit od nule. Međutim, datoteku s ulaznim parametrima treba dodatno nadopu-niti u &electrons-sekciji:

12.5. KAKO IZRAČUNATI U 91

QE input: nio-scf.in - dodatne izmjene.....&electrons

mixing_beta = 0.7conv_thr = 1.0d-10startingwfc = 'file',startingpot = 'file',diago_thr_init = 4.96E-12,

/.....

U &electrons-sekciji dodali smo 3 nove linije. Prva dodana linija, startingwfc= ..., nam govori da se početna valna funkcija treba učitati iz datoteke, koju smoprethodno stvorili kopiranjem cijelog sadržaja SCF-imenika. Druga dodatna linija,startingpot ..., kaže isto za potencijal u kojem se elektroni gibaju. Na trećoj dodat-noj liniji zadali smo vrijednost parametru diago_thr_init tako da ona bude točnojednaka vrijednost ethr parametra koju smo prethodno odredili s grep naredbom.

S ovako pripremljenom datotekom s ulaznim parametrima izvodimo SCF račun, takoda se izlazni podaci zapisuju u datoteku:

Konsole> pw.x -in nio-01-scf.in > nio-01-scf.out> grep 'Tr' nio-01-scf.out | head -4atom 3 Tr[ns(na)] (up, down, total) = 4.98675 3.44648 8.43323atom 4 Tr[ns(na)] (up, down, total) = 3.44648 4.98675 8.43323atom 3 Tr[ns(na)] (up, down, total) = 4.98705 3.44678 8.43383atom 4 Tr[ns(na)] (up, down, total) = 3.44012 4.98651 8.42663> grep 'Tr' nio-01-scf.out | tail -2atom 3 Tr[ns(na)] (up, down, total) = 4.98693 3.44624 8.43317atom 4 Tr[ns(na)] (up, down, total) = 3.44179 4.98687 8.42865

Iz izlazne datoteke trebaju nam 6 podatka - broj čestica na atomima/ionima 3. i 4.vrste (Ni i Ni-nečistoća). Radi se o zadnjem podatku na linijama koje sadrže izrazTr.

Na kraju prve dvije linije koje slijede iza head naredbe nalaze se 8.43323 i 8.43323 - tosu srednji broj čestica na niklovim ionima kada je Hubbard_alpha=0. Druge/zadnjedvije linije iza head naredbe sadrže srednji broj čestica nakon 1. iteraciskog ko-raka, to su 8.43383 i 8.42663. Na linijama koje slijede iza tail naredbe nalazi sebrojevi čestica nakon zadnjeg iteraciskog koraka, to su 8.43317 i 8.42865.NAPOMENA: Ako bi naša super ćelija (koja to nije) sadržavala veći broj atoma sHubbardovim odbijanjem, trebao bi nam broj čestica na svakom od njih - u 1. itera-cijskom koraku i u zadnjem iteraciskom koraku, te u slučaju kada je Hubbard_alpha=0.

Ono što nas zapravo zanima je kako srednji broj čestica ovisi o parametru Hubbard_alpha

92 POGLAVLJE 12. MAGNETIZAM

- tj. njihova derivacija. Te derivacije predstavlju linearni odgovor sustava na uve-denu smatnju.

Iz navedenih podataka se vidi da je:(∂n3

∂α

)0

≈ 8.43383− 8.43323

0.05= +0.0120(

∂n4

∂α

)0

≈ 8.42663− 8.43323

0.05= −0.1320

za odgovor sustava u prvom iteracijskom ciklusu, a(∂n3

∂α

)≈ 8.43317− 8.43323

0.05= −0.0012(

∂n4

∂α

)≈ 8.42865− 8.43323

0.05= −0.0916

u zadnjem iteracijskom ciklusu. Napomenimo da je 4. atom u stvari atom 3. vrstekoji predstavlja nećistoću u sustavu. Najveće promjene u srednjem broju se događajubaš na njemu, a poremećaji u broju čestica opadaju kako se udaljavamo od nečistoće.To je ono što bi se vidjelo kada bi imali superćeliju s velikim brojem atoma.

Treba kazati da se ove numeričke detivacije mogu točnije izračunati ako bi ra-čun ponovili za nekoliko različitih pozitivnih i negativnih vrijednosti parametraHubbard_alpha.

Funkcija linearnog odgovora na smetnju možemo definirati kao:(δn3

δn4

)= χ

(α3

α4

)gdje je δni promjena broja čestica na i-tom atomu zbog postojanja smetnje (αj ̸= 0)na j-tom atomu. χ je matrica. Postoje dvije vrste odgovora, onaj koji se pojavljujeu 1. iteracijskom koraku, naša oznaka χ0, te onaj koji se dobiva nakon zadnjegiteracijskog koraka oznake χ.

Ono što smo dosada izračunali je:

χ0 =

(. . . +0.0120. . . −0.1320

)χ =

(. . . −0.0012. . . −0.0916

)Mjesta označena točkicama treba tek izračunati, pretpostavljajući da je onaj druginiklov atom smetnja. U stvari račun nije potrebno ponovo raditi, jer se te vrijednostimogu pogoditi iz simetrije problema. Dakle, konačni rezultat je:

χ0 =

(−0.1320 +0.0120+0.0120 −0.1320

)χ =

(−0.0916 −0.0012−0.0012 −0.0916

)Hubbardovo odbijanje dano je s razlikom dijagonalnih elemenata inverznih funkcijaodgovora:

Ui = (χ−10 − χ−1)ii

12.5. KAKO IZRAČUNATI U 93

Dakle, inverzi funkcija odgovora su:

χ−10 =

1

0.01728000

(−0.1320 −0.0120−0.0120 −0.1320

)χ−1 =

1

0.00838912

(−0.0916 +0.0012+0.0012 +0.0916

)pa je:

U3 = U4 = U = −7.6388 + 10.9189 = 3.28

u jedinicama eV.

To nije vrijednost U -a koju smo pretpostavili da vrijedi i od koje smo krenuli (4.6eV). Dobiveni rezultat je funkcija početne (pretpostavljene) vrijednosti U s kojom seprovodi račun. Kompletni proračun U -a treba provesti za nekoliko račitih vrijednostipočetnog U -a, te pronaći ovisnost dobivenog U -a kao funkciju početnog.

Uizracunati = f(Upretpostavljeni)

Prava vrijednost U -a je ona koja je samosuglasna, koja je, naravno, rješenje jed-nadžbe:

U = f(U)

Ovdje navedimo samo konačni rezultat za nepoznatu funkciju f(U):

f(U) ≈ 6.73999− 0.747692 · U

pa je samosuglasna vrijednost:U ≈ 3.86 eV

Za detalje o samosuglasnom proračunavanju U -a pogledati:H.J. Kulik at al., Phys.Rev.Lett 97 (2006) 103001. [23]

Ponovo se pitamo zašto smo u računima za U koristili 4.6 eV, a ne ovu izračunatu.Vrijednost U ovisi od dimenziji superćelije koja se koristi u izračunu. Dobivenirezultat je 1. aproksimacija za malu superćeliju. Trebalo bi provesti račune zasuperćelije većih dimenzija, te izračunati U kao ekstrapolaciju na beskonačni sustav.Ovom procedurom dobili bi je U jednak 4.6 eV.

13. Wannierove funkcije

13.1 InstalacijaDa bi se mogle izračunati Wannierove funkcije potrebno je instalirati skupinu pro-grama koji nisu dio paketa Quantum espresso. Ovdje ćemo se poslužiti programskimpaketom Wannier90:

http://www.wannier.org/[24]

Instalacija se sastoji od nekoliko koraka:

• instalacija gfortran kompajlera (compiler) i make programa (kao root koris-nik):

• također je potrebno instalirati biblioteke za linearnu algebru (ako već nisu) ibiblioteku za razvoj programa za izvođenje na klasteru ili multiprocesorskomračunalu.

Konsole# apt-get install gfortran make# apt-get install liblapack-dev libblas-dev libopenmpi-dev

• Spuštanje na disk potrebnog programa i raspakiranje arhive, te pripreme zakompajliranje (kao obični korisnik):

Konsole> cd> wget http://www.wannier.org/code/wannier90-2.0.1.tar.gz> tar xfz wannier90-2.0.1.tar.gz> cd wannier90-2.0.1> nano make.sys

U trenutku ovog pisanja zadnja inačica programa je ’2.0.1’. Prilagoditi gornjelinije prema trenutnoj zadnjoj inačici.

• U imeniku wannier-programa potrebno se stvoriti datoteku make.sys koja sa-drži potrebne informacije o kompajleru i računalnim bibliotekama. Pomoćunano tekst editora/uređivaća teksta u datoteku make.sys upisati slijedeće li-nije:

95

96 POGLAVLJE 13. WANNIEROVE FUNKCIJE

make.sys

F90 = gfortran

FCOPTS = -O3LDOPTS =LIBS = -llapack -lblas

Ako je na sustavu/računalu instalirano okruženje za paralelno izvođenje pro-grama i njihov razvoj, datoteka make.sys može imati dodatne linije za građe-nje programa koji se mogu paralelno izvoditi:

make.sys

F90 = gfortranCOMMS = mpiMPIF90 = mpif90

FCOPTS = -O3LDOPTS =LIBS = -llapack -lblas

• Kompajliranje programa

Konsole> make all

• Kao root-korisnik instalirati programe da budu dostupni za korištenje:

Konsole# cd ......../wannier90-2.0.1# cp postw90.x wannier90.x utility/kmesh.pl /usr/local/bin/

Točkice zamijeniti s točnom putanjom do imenika.

• Čišćenje:

Konsole> cd ..> rm -fR wannier90-2.0.1

13.2. PROCEDURA IZVOĐENJA WANNIER-PROGRAMA 97

13.2 Procedura izvođenja wannier-programaProgrami (wannier90.x i postw90.x) nisu DFT programi. Oni nisu supstitucija zaQuantum espresso. Treba ih smatrati pomoćnim programima za izračunavanje fizi-kalnih svojstava sustava iz wannierovih valnih funkcija i koje se naslanjaju postojećiDFT proračun.U Quantum espresso-u valne funkcije su prikazane preko ravnih valova, Wannierovefunkcije treba smatrati kao novu bazu za prikaz valnih funkcija i hamiltonijana. Pritome se nastoji dobiti ortogonalni skup funkcija koje su, što je više moguće, prostornolokalizirane. U bazi lokaliziranih valnih funkcija često je moguće izračunati stvarijednostavnije i brže nego u bazi delokaliziranih stanja (ravnih valova i Blochovihstanja).

A.A. Mostofi et.al., Comp.Phys.Comm. 178 (2008) 0010A.A. Mostofi at al., Comp.Phys.Comm. 185 (2014) 2309 [24]

Procedura proračunavanja:

• SCF i NSCF DFT račun pomoću Quantum espresso-a:

Konsole> pw.x -in data-scf.in > data-scf.out> pw.x -in data-nscf.in > data-nscf.out

Ovdje se smatra da je naš sustav opisan u ulaznoj datoteci data-scf.in.Datoteka data-nscf.in je u svemu identična datoteci data-scf.in osim uvrsti računa i u još nekoliko detalja (sekcija K_POINTS).

• inicijalizacija datoteka potrebnih programu pw2wannier90.x.

Konsole> wannier90.x -pp data

data je prvi dio imena datoteke data.win. Datoteke tipa .win sadrže svepotrebne podatke za proračun wannierovih funkcije. Ti podaci moraju bitisuglasni s ulaznim podacima za DFT račun.

• Proračun matričnih elemenata:Konsole> pw2wannier90.x -in data-pw2w90.in > data-pw2w90.out

Program pw2wannier90.x je dio Quantum espresso paketa. To je pomoćniprogram koji omogućuje da se izvuku potrebni podatci iz QE podataka.

• Izračun wannierovih funkcija

Konsole> wannier90.x wandata

98 POGLAVLJE 13. WANNIEROVE FUNKCIJE

Ovi je konačni korak za proračun wannierovih funkcija. Nakon njega mo-guće je datoteku wandata.win dodatno prilagoditi za proračun niza fizikalnihsvojstava iz wannierovih funkcija.

Konsole> nano wandata.win> wannier90.x wandata

iliKonsole> nano wandata.win> postw90.x wandata

Proceduru ćemo demonstrirati na primjeru grafena.

13.3 GrafenProvodimo SCF račun za grafen koristeći ove podatke:

QE input: 01-gr-scf.in (1. dio)

&controlcalculation = 'scf',restart_mode = 'from_scratch',prefix = 'grph',pseudo_dir = '/opt/pseudo',outdir = './',verbosity = 'high',

/&system

ibrav = 0,celldm(1) = 4.64872626643005248635, ! 0.246/a_Bnbnd = 16,nat = 2,ntyp = 1,ecutwfc = 60,ecutrho = 700,occupations = 'smearing',smearing = 'methfessel-paxton',degauss = 0.01,

/&electrons

mixing_beta = 0.7,conv_thr = 1.0d-10,

/

13.3. GRAFEN 99

QE input: 01-gr-scf.in (2. dio)

CELL_PARAMETERS {alat}1.00000000 0.00000000 0.00000000

-0.50000000 0.86602540 0.000000000.66666667 0.33333333 7.00000000

ATOMIC_SPECIESC 12.01078 c_pbe_v1.2.uspp.F.UPF

ATOMIC_POSITIONS {crystal}C 0.000000000 0.000000000 0.000000000C 0.333333333 0.666666667 0.000000000

K_POINTS {automatic}14 14 2 0 0 0

U jediničnoj ćeliji nalaze se dva atoma ugljika. Pretpostavili smo da je razmakizmeđu ravnina jako velik, tako da je sustav elektronski dvodimenzionalan. Ipakravnine su pomaknute jedna u odnosu na drugu. Takav pomak je energijski povoljnijiod nepomaknutih ravnina. Mreža valnih brojeva za koju se radi SCF je 14×14×2bez pomaka.

Veoma je važno poznavati vrpčastu strukturu materijala za koji se računaju wanni-erove funkcije. Kao konačni rezultat se dobiva:

Slika 13.1: Vrpčasta struktura grafena. Na slici se energije računaju u odnosu naFermijevu energiju (siva linija).

100 POGLAVLJE 13. WANNIEROVE FUNKCIJE

Tri najniže vrpce su sp2-hibridizirane vezujuće orbitale (σ-orbitale) između uglji-kovih atoma u ravnini. One daju jačinu vezama između atoma. Vrpce koje, pakpresjecaju Fermijevu energiju su nastale hibridiziranjem pz orbitala (π-orbitala).Drugi korak u proračunu wannierovih orbitala je NSCF račun. U njemu se koristimreža valnih brojeva 7×7×1. Ulazna datoteka SCF i NSCF račun razlikuju se uovome:

QE input: 01-gr-scf.in

&controlcalculation = 'scf',.....

&system.....

/.....K_POINTS {automatic}

14 14 2 0 0 0

QE input: 02-gr-nscf.in

&controlcalculation = 'nscf',.....

&system.....nosym = .true.,

/.....K_POINTS {crystal}49

0.00000000 0.00000000 0.00000000 2.040816e-020.00000000 0.14285714 0.00000000 2.040816e-020.00000000 0.28571429 0.00000000 2.040816e-020.00000000 0.42857143 0.00000000 2.040816e-02

....

U NSCF računu je važno izbjeći korištenje simetrije rešetke, tj. izračunati valnefunkcije i energije za sve tražene valne vektore. Zato &system-sekciji se specificira:

nosym = .true.,

Lista valnih brojeva za koje se računaju valne funkcije i energije se nalazi u sekcijiK_POINTS. Ta se lista valnih brojeva može dobiti služeći se pomoćnim programom(perl skriptom) kmesh.pl, kojeg smo instalirati kod Wannier90 instalacije. U našemslučaju, kada je mreža valnih brojeva 8×8×2, koristimo ga tako da njegov ispisuhvatimo u neku datoteku:

Konsole> kmesh.pl 7 7 1 > nscf.add

Dobivenu datoteku treba priljepiti, ili ubaciti u NSCF ulaznu datoteku.

Npr. to se može napraviti ovako:Konsole> cp 01-gr-scf.in 02-gr-nscf.in> kmesh.pl 7 7 1 > nscf.add> cat nscf.add >> 02-gr-nscf.in> nano 02-gr-nscf.in

13.3. GRAFEN 101

Editiranjem datoteke 02-gr-nscf.in ubaciti liniju nosym = .true.,, promijeniti'scf' u 'nscf', te prilagoditi dio zadaje valne brojeve.

Istu ovu mrežu valnih brojeva potrebno je navesti u graphene.win datoteci. Listavalnih brojeva u formatu prikladnom za win-datoteke može se također dobiti služećise skriptom kmesh.pl na ovaj način:

Konsole> kmesh.pl 7 7 1 wan > win.add

Listu treba ubaciti između ključnih riječi 'begin kpoints' i 'end kpoints', aspecifikacija mreže definira se s linijom:

mp_grid = 7 7 1

Ovdje navodimo primjer win datoteke za grafen:

QE input: graphene.win (1.dio)

iprint = 5 ! nivo ispisa u izlaznoj (wout) datoteci

! ============================================ Systemnum_bands = 16

begin unit_cell_cartbohr

4.64872627 0.00000000 0.00000000-2.32436313 4.02591504 0.000000003.09915086 1.54957541 32.54108389

end unit_cell_cart

begin atoms_fracC1 0.000000000 0.000000000 0.000000000C2 0.333333333 0.666666667 0.000000000

end atoms_frac! ============================================ Wannier params.num_iter = 200

num_wann = 5

!dis_win_max = 10.5!dis_win_min = -21.0

dis_froz_max = 1.2!dis_froz_min = -21.0dis_num_iter = 300! dis_mix_ratio = 1.0 ! 1.0 = no mixing

102 POGLAVLJE 13. WANNIEROVE FUNKCIJE

U prvom dijelu graphene.win datoteke definiraju se parametri sustava, kristalnarešetka, položaji atoma, broj elektronskih vrpci kako je to navedeno u ulaznoj NSCFdatoteci s nbnd parametrom. Može se navesti i Fermijeva energija koja je dobivenaDFT računom.

QE input: graphene.win (2.dio)

.......................................... >>> Nastavak <<<<guiding_centres = true

begin projectionsf=0.166666667,0.833333333,0.0: s # 1/6,5/6f=0.166666667,0.333333333,0.0: sf=0.666666667,0.833333333,0.0: sC1: pzC2: pz

end projections! ======================================== Calc. Phys.! restart = plot......

! ======================================== Wave vec.mp_grid = 7 7 1

begin kpoints0.00000000 0.00000000 0.000000000.00000000 0.14285714 0.00000000

.....

.....0.85714286 0.71428571 0.000000000.85714286 0.85714286 0.00000000

end kpoints

Drugi dio se odnosi na proračun wanni-erovih funkcija. U DFT računu imamonbnd Blochovih valnih funkcija. Mnogeod tih funcija imaju energijski spektardaleko Fermijeve energije pa ih se možesmatrati suvišnim. Ono što se želi je dase što sa što manjim brojem valnih funk-cija to bolje opiše elektronski spektar.

Fizikalno zanimljivi dio spektra (na gornjoj slici vrpčaste strukture grafena) nalazise ispod crne crtkane linije koja odgovara vrijednosti energije 1.2 eV, a nalazi seoko 2.5 eV iznad Fermijeve energije (siva linija).

Ovo čini potpuni skup podataka u ulaznoj datoteci potreban za izračun wannierovihlokaliziranih orbitala.

13.3. GRAFEN 103

Osim ovih podataka postoji i treći dio ulazne datoteke, područje između ’Calc.Phys.’i ’Wave vec.’, u kojem se izlistavaju parametri za proračun raznih fizikalnih veličina.Pojedine dijelove ovog trećeg dijela ćemo naknadno izlistavati.

Treći korak u izračunu wannierovih finkcija je, pripremno pozivanje wannier90.xprograma, te izvoz potrebnih podataka iz QE:

Konsole> wannier90.x -pp graphene> pw2wannier90.x -in 04-gr-pw2wan.in > 04-gr-pw2wan.out

Kao rezultat izvođenja prve komande dobiva se datoteka graphene.nnkp. Izvozpodataka iz QE radi se s programom pw2wannier90.x koji treba slijedeću ulaznudatoteku:

QE input: 04-gr-pw2wan.in

&inputppoutdir = './'prefix = 'grph'seedname = 'graphene'spin_component = 'none'write_mmn = .true.write_amn = .true.write_unk = .true.

/

Kao rezultat se dobivaju datoteke graphene.amn i graphene.mmn te niz (49) UNK000...datoteka. Zadnji korak je stvarni izračun maksimalno lokaliziranih funkcija:

Konsole> wannier90.x graphene

U datoteci graphene.wout se može pronaći konačni rezultat u pronalaženju lokali-ziranih funkcija. U našem slučaju broj Wannierovih orbitala je 5, pa stoga:

Konsole> grep -A 5 'Final State' graphene.woutFinal StateWF centre and spread 1 ( -0.615000, 1.775352, 0.000001 ) 0.60255385WF centre and spread 2 ( 0.000000, 0.710141, 0.000001 ) 0.60255262WF centre and spread 3 ( 0.615000, 1.775352, 0.000002 ) 0.60256531WF centre and spread 4 ( -0.000036, -0.000032, 0.001179 ) 0.96413571WF centre and spread 5 ( 0.000036, 1.420314, -0.001185 ) 0.96413494

Zadnja kolona je prostorna raširenost Wannierovih obitala u jedinicama Å2. Tribroja u zagradama ispred su koordinate centar orbitale.

104 POGLAVLJE 13. WANNIEROVE FUNKCIJE

Sada je moguće izračunavati razne fizikalne veličine u bazi lokaliziranih Wannierovihfunkcija.

Wannierove funkcije u grafenuModificiramo graphene.win datoteku. Odkomentiramo restart liniju, što znači danije potrebno ponovo računati Wannierove maksimalno lokalizirane funkcije - jersu već izračunate. Ono što treba raditi su odkomentirane linije koje su naznačene uovom dijelu graphene.win datoteke:

QE input: graphene.win (3.dio)

! ======================================== Calc. Phys.restart = plot

..........

! === 2 ===wannier_plot = truewannier_plot_supercell = 3wannier_plot_format = xcrysden! wannier_plot_format = cubewannier_plot_list = 1-5wannier_plot_mode = crystal! =========

..........

! ======================================== Wave vec.

Pokreće se wannier90.x program:

Konsole> wannier90.x graphene

i kao rezultat se dobivaju datoteke: graphene_000*.xsf koje prikazuju Wannierovevalne funkcije u xcrysden-formatu. Može ih se pogledati na već prije pokazani način:

Konsole> xcrysden --xsf graphene_00001.xsf

Izabrati: Tools -> Data Gridte pritisnuti OK-gumb. Na panou koji se je pojavio izabrati vrijednost funkcije čijaće izo-površina biti prikazana.

13.3. GRAFEN 105

Slika 13.2: Wannierove funkcije za orbitale 1,4 i 5 redom s lijeva na desno, vrijednostfunkcije na izo-površini je ±2.

Orbitale 4 i 5 su pz na različitim atomima u jediničnoj ćeliji, dok su 1-3 orbitale nasredištima veza između uglikovih atoma i koje daju čvrstinu kristalnoj rešetci.

TB Hamiltonijan grafenaHamiltonijan prikazan u bazi Wannierovih orbitala dobiva se ako se datoteka graphene.winmodificira ovako:

QE input: graphene.win (3.dio)

! ======================================== Calc. Phys.restart = plot

..........

! === 2 ===! wannier_plot = true! wannier_plot_supercell = 3! wannier_plot_format = xcrysden! wannier_plot_format = cube! wannier_plot_list = 1-5! wannier_plot_mode = crystal! =========

! === 1 ===hr_plot = true! =========

..........

! ======================================== Wave vec.

106 POGLAVLJE 13. WANNIEROVE FUNKCIJE

Izračun Wannierovih orbitala u xcrysden-formatu smo zakomentirali. To je odra-đeni posao. U nastavku je linija koja zahtijeva izračun hamiltonijana. Pokreće sewannier90.x program:

Konsole> wannier90.x graphene

i kao rezultat se dobiva datoteka graphene_hr.dat s matričnim elementima hamil-tonijana. Ona sadrži 7 kolona:

• prve 3 kolone su relativni indeksi između susjednih jediničnih ćelija (i,j k )• slijedeće dvije kolone su indeksi wannijerovih orbitala (α i β),• a zadnje dvije kolone su realni i imaginarni dio matričnog elementa.

Dakle Hamiltonijan je:

H =∑n,m,p

[ ∑i,j,k,α,β

ti,j,k;α,βC†n+i,m+j,p+k;αCn,m,p;β + h.c.

]

pri čemu je vrijednost ti,j,k;α,β dana u zadnje dvije kolone

Za prikaz energijskog spektra koji se dobiva iz izračunatih matričnih elemenata ugraphene_hr.dat, može nam poslužiti skript plot_band-W90.py:

Konsole> plot_band-W90.py -i graphene -hex

Slika 13.3: Na desnoj strani su vrpce izračunate s QE, dok na lijevoj strani je spektarizračunat u reduciranoj bazi Wannierovih orbitala.

Moguće se je ograničiti i na samo pz orbitale. U datoteci graphene_hr.dat tražimolinije koje sadrže matrične elemente za 4 i/ili 5 orbitalu. Matrični elementi unuarsame jedinične ćelije se dobivaju:

13.3. GRAFEN 107

Konsole> grep -E " 0 0 0 [45] [45]" graphene_hr.dat

0 0 0 4 4 -1.699556 -0.0000000 0 0 5 4 -2.923177 0.0000000 0 0 4 5 -2.923177 -0.0000000 0 0 5 5 -1.699564 -0.000000

on-site energija orbitala je -1.699556, dok je amplituda preskakanja -2.923177. Ima-ginarni dijelovi su očekivano jednaki nuli. Na isti se način mogu naći matričnielementi između susjednih ćelija:

Konsole> grep -E " 0 1 0 [45] [45]" graphene_hr.dat

0 1 0 4 4 0.225121 -0.0000000 1 0 5 4 -2.923189 0.0000000 1 0 4 5 0.020687 -0.0000000 1 0 5 5 0.225122 -0.000000

> grep -E " 0 -1 0 [45] [45]" graphene_hr.dat0 -1 0 4 4 0.225121 0.0000000 -1 0 5 4 0.020687 0.0000000 -1 0 4 5 -2.923189 -0.0000000 -1 0 5 5 0.225122 0.000000

> grep -E " 1 1 0 [45] [45]" graphene_hr.dat1 1 0 4 4 0.225192 -0.0000001 1 0 5 4 -2.923067 0.0000001 1 0 4 5 0.020535 -0.0000001 1 0 5 5 0.225193 0.000000

> grep -E " -1 -1 0 [45] [45]" graphene_hr.dat-1 -1 0 4 4 0.225192 0.000000-1 -1 0 5 4 0.020535 0.000000-1 -1 0 4 5 -2.923067 -0.000000-1 -1 0 5 5 0.225193 -0.000000

Služeći se Wannierovim orbiralama može se izračunati:

• struktura vrpci• gustoća stanja• Wannierove orbitale• optički spektri• Fermi površina• transportna svojstva u okviru BTE• itd.

108 POGLAVLJE 13. WANNIEROVE FUNKCIJE

Pri tome treba imati u vidu da su rezultati limitirani reduciranom bazom valnihfunkcija. Vrijednosti gustoće stanja i optičkih spektara nisu dobri za energije ioptičke prijelaze daleko od Fermijeve energije.

13.4 literaturaOpća teorija Wannierovih funkcija:

G.H. Wannier, Phys.Rev. 52 (1937) 191[25]G.H. Wannier, Rev. Mod. Phys. 34 (1962) 645 [26]

Teorija maksimalno lokaliziranih Wannierovih funkcija:N. Marzari & D. Vanderbilt, Phys.Rev.B 56 (1997) 12847[27]

I. Souza, N. Marzari & D. Vanderbilt, Phys.Rev.B 65 (2001) 035109 [28]N. Marzari et.al., Rev. Mod. Phys. 84 (2012) 1419 [29]

Programski paket wannier90:A.A. Mostofi at al., Comp.Phys.Comm. 185 (2014) 2309 [24]

14. NMR, EPR, EFG

14.1 UvodAko se sustav izloži vanjskom magnetskom polju, dolazi do njegove magnetizacijeproporcionalne primjenjenom polju. Faktor proporcionalnosti je magnetska sus-cptibilnost, χ. Fizikalno, inducirana magnetizacija dolazi od električnih struja ispinova koji se prilagođavaju magnetskom polju. Unutar materijala, čestice (spi-novi i električni naboji) osjećaju vanjsko magnetsko polje i dodatno lokalno poljekoje dolazi od okruženja u kojem se čestice nalaze. Dodatno polje proporcionalno jevanjskom:

B(ind)i = −

∑j

σijB(ext)j

a σij se naziva tenzor zasjenjenja (shielding tensor). Obično se izmjereni podaci otenzoru zasjenjenja uspoređuju s referentnim podacima za materijal s kojim se sveuspoređuje. Razlika između ta dva tenzora naziva se tenzor kemijskog pomaka:

δij = −(σij − σ(ref)ij )

NMR je moćna eksperimentalna tehnika koja može pratiti promjene magnetskogpolja zbog efekta zasjenjenja na jezgrama atoma. Primjenom statičkog magnetskogpolja dolazi do cijepanja degeneriranih magnetskih stanja jezgre - ako jezgra imakonačni magnetski (i zakretni) moment. Popunjenost kvantnih stanja u termodina-mičkoj ravnoteži dana je Boltzmannovom raspodjelom. Između rascjepljenih ener-gijskih stanja mogu se izazvati prijelazi primjenom promjenjivog EM polja određenefrekvencije. Frekvencija za rezonantne prijelaze (razlika energija rascijepljenih sta-nja) proporcionalna je ukupnom lokalnom magnetskom polju, zbroju induciranogB

(ind)i i vanjskog magnetskog polja B(ext)

j . Napomenimo da zasjenjenje magnetskogpolja u izolatorima dolazi u potpunosti od induciranih struja, dok se spinski dopinospojavljuje samo u metalima (posrestvom Fermijevog kontaktnog člana) i poznat jekao Knightov pomak (Knight shift). Teorija pojedinih doprinosa može se naći ureferenci:

R.J. Yates and C.J. Pickard,[30]

Postoji razlika u rezonantnoj frekvenciji za mjerenje na usamljenom/izoliranomatomu ili atomu u molekuli/tekućini/krutom tijelu. Pomak u frekvenciji rezonancijedolazi od induciranog dodatnog magnetskog polja,

Rezonantna frekvencija nije oštra linija u spektru. Magnetska kvantna stanja imajukonačno vrijeme života zbog međudjelovanja jezgre s okolišem. Pobuđeno stanjenastalo rezonantnim prijelazom nije stabilno: postoje spontani prijelazi koji vode

109

110 POGLAVLJE 14. NMR, EPR, EFG

uspostavljanju termodinamičke ravnoteže. Vremenska dinamika ovog procesa opi-sana je Blochovom jednadžbom za srednju vrijednost magnetizacije jezgri atoma.

F. Bloch, Phys.Rev. 70 (1946) 460-473.[31]Na širinu i oblik rezonantne linije utječu i različite vrste okoliša u kojem se atominalaze. Profil linije je dan statističkom raspodjelom (distribucijom) različitih okoliša,tj. lokalnih magnetskih polja, u kojima se atomi/jezre nalaze.

Tom širenju doprinosi i posredno i neposredno međudjelovanje nuklearnih spinova,što je opisano s tz.

↔J tenzorom:

HKL =ℏγKγL2π

µ⃗K ·↔J KL · µ⃗L

γK i γL su žiromagnetski faktori jezgara.

Međutim, ne postoji širinje linije zbog termalnog gibanja/fononskog titranja rešetke.Fononsko titranje je puno brže od vremenske skale NMRa, opisane Blochovom jed-nadžbom. Jezgre osjećaju vremenski usrednjeno magnetsko polje što dovodi dosužavanja linija (motional narrowing).

Efekt sužavanja linija zbog kretanja koristi se u MAS NMRu (MAS=magic an-gle spinning) gdje se nastoji dobiti oštre rezonantne linije na uzorku koji se rotiravelikom brzinom i pod određenim kutom u odnosu na magnetsko polje. Time se eli-minira širenje linija zbog dipolarnog anizotropnog vezanja nuklearnih spinova. Ovaje tehnika posebno važna u fizici čvrstog stanja gdje su efekti širenja linija (među-djelovanja nuklearnih spinova) značajni. Inače široke linije postaju jedna ili višeoštrih linija.

Do sada smo smatrali da unutrašnji elektroni atoma su kemijski inertni, te da neutječu na svojstva sustava. Međutim, magnetsko polje inducira struje i u dubokimelektronskim stanjima, tako da i oni sudjeluju u stvaranju lokalnog magnetskogpolja. Radi se o dijamagnestkom doprinosu opisanim s Lambovom formulom:

σij = δij ·µ0e

2

4πm

∫d3r

n(r⃗)

r

Također, duboki (s) se elektroni magnetski kontaktno vežu s jezgrom. Elektronskavalna funkcija u DFTu s običnim pseudopotencijaloma nije dobro prikazana u po-dručju oko jezgre. NMR spektri ne mogu se pouzdano izračunati služeći se običnimpseudopotencijalima, prikladnim za valentne elektrone. DFT proračuni NMRa zah-tijevaju korištenje posebnih pseudopotencijala. tz. PAW-pseudopotencijale (Projec-tor Augmented Wave). Pomoću tih pseudopotencijala može se rekonstruirati valnafunkcija svih elektrona u području jezgre. PAW-pseudopotencijali se mogu spustitis ovih web-lokacija:

• D. Ceresoli-jev web: https://sites.google.com/site/dceresoli/pseudopotentials• IMPMC CNRS: http://www-ext.impmc.upmc.fr/ software/gipaw/pseudopotentials.html• SSSP: http://materialscloud.org/sssp/• QE: http://www.quantum-espresso.org/pseudopotentials/

14.2. INSTALACIJA QE-GIPAW PAKETA 111

Više o PAW pseudopotencijalima:P.E. Blöchl, Phys.Rev.B 50 (1994) 17953.[32]

G. Kresse & D. Joubert Phys.Rev.B 59 (1999) 1758.[33]Komplementarna vrsta mjerenja je NQR, u kojem asimetrična nuklearna jezgras kvadropolnim električnim momentom, u prisustvu gradijenta elektročnog polja(EFG) ima rascijepljena energijska stanja. Između tih stanja se mogu induciratirezonantni prijelazi promjenjivim EM poljem. Ovoj vrsti mjerenja nije potrebnostatičko magnetsko polje, (NQR ili EFG ili zero field NMR).

Rezonantni prijelazi između rascijepljenih magnetskih stanja mogu se raditi i naelektronima. Rezonantne frekvencije su za 103 veće od onih u NMRu, zbog malemase elektrona, tj. njegovog puno većeg magnetskog momenta. Ovu vrstu mjenjenazovemo ESR (ili EPR). Pomoću nje možemo detektirati atome/ione na kojima jeelektron lokaliziran. Naime elektronski spin se veže/međudjeluje sa spinom jezgre,što dovodi do hiperfinog cijepanja elektronskih spinskih stanja. Također, mjerenjemse može odrediti promjena Landéovog g-faktora. U stvari, radi se o efektu zasjenjenjalokalnog magnetskog polja, sličnog onome koji postoji za nuklearne jezgre, a koje seprikazuje kao renormalizacija g-faktora (ili g-tenzora). ESR Hamiltinijan:

HESR =α

2S⃗ · ↔g · B⃗ +

∑1

S⃗ ·↔Ai · I⃗i

gdje su α konstanta fine strukture, ↔g žiromagnetski tenzor i

↔Ai je tenzor/konstanta

fine strukture koja opisije vazanje elektronskog spina s nuklearnim.

14.2 Instalacija qe-gipaw paketaZa izračunavanje NMR, ESR/EPR, NQR/EFG, …spektara potrebno je instaliratiprogram koji još nije dio standardne Quantum espresso distribucije. Ovdje sukratke upute oko instalacije. Pretpostavlamo da su programi potrebi za kompaj-liranje, gfortran i make, već instalirani. Ako nisu, onda root-korisnik treba ihinstalirati:

Konsole# apt-get install gfortran make libscalapack-mpi-dev libopenblas-dev

Programe ćemo kompajlirati kao običan korisnik. Programski paket koji trebamoje gipaw. Kratica gipaw dolazi od gauge including projected augmented wave. Ne-govo kompajliranje zahtijeva prethodno kompajliranje Quantum espresso-a. Ovoje kratka procedura:

112 POGLAVLJE 14. NMR, EPR, EFG

Konsole> cd> mkdir QE-build> cd QE-build> wget http://qe-forge.org/gf/download/frsrelease/211/968/espresso-5.4.0.tar.gz> wget http://www.qe-forge.org/gf/download/frsrelease/210/952/qe-gipaw-5.4.tar.gz> tar xfz espresso-5.4.0.tar.gz> cd espresso-5.4.0/> tar xfz ../qe-gipaw-5.4.tar.gz> ./configure BLAS_LIBS="-lopenblas" LAPACK_LIBS=" "\

SCALAPACK_LIBS="-lscalapack-openmpi -lblacs-openmpi -lblacsF77init-openmpi"> make all> make gipaw

Napomena: Putanje za wget treba prilagoditi prema trenutnim inačicama.Sam proces kompajliranja može potrajati.

Kao rezultat se dobiva gipaw.x program koji je potrebno kao root-korisnik instaliratiu imenik dostupan za uporabu svim korisnicima.

Konsole# cp bin/gipaw.x /usr/local/bin/ # kao root ili> mkdir -p ~/bin/ && cp bin/gipaw.x ~/bin/ # alternativno

Alternativno, program se može samo instalirati u korisnički ˜/bin/ imenik.

Opcionalno čišćenje:Konsole> cd> rm -fR QE-build

A. Matrica gustoće za slobodne elektrone

Matrica gustoće za čestice s jednom vrstom spina:

ρ(r⃗, r⃗′) =∑n

ψ⋆n(r⃗

′)ψn(r⃗) =

∫dk⃗

(2π)3eı(r⃗−r⃗′)·⃗k

=1

(2π)2

kF∫0

dk k2+1∫

−1

dz eıRkz =1

2π2R

kF∫0

dk k sinRk [gdje je: R = |r⃗ − r⃗′|]

=1

2π2R3[sin(kFR)− (kFR) cos(kFR)] =

3

2n · sin(kFR)− (kFR) cos(kFR)

(kFR)3

gdje je Fermijev valni vektor, kF , povezan s gustoćom čestica:

kF =(3π2n

)1/3=

(6π2n↑

)1/3

Slika A.1: Matrice gustoće ρ(kFR) za slobodne elekktrone kao funkcija udaljenostiR = |r⃗ − r⃗′|.

Matrica gustoće je prostorno trnuća funkcija s maksimumom na R = 0. Područjelokaliziranosti funkcije je nekoliko inverznih Fermijevih valnih brojeva.

113

B. Potencijal izmjene

B.1 Energija izmjene za slobodne elektroneEnergija izmjene samo za elektrone jedne vrste spina:

E(↑)x = − e2

8πϵ0

∫dr⃗′dr⃗

ρ(r⃗, r⃗′)2

|r⃗ − r⃗′|= − e2

8πϵ0

∫dr⃗′dr⃗

ρ(|r⃗ − r⃗′|)2

|r⃗ − r⃗′|Uvodimo nove koordinate:

s⃗ = 0.5 · (r⃗ + r⃗′)

R⃗ = (r⃗ − r⃗′)

Dvostruki integral u izrazu za energiju izmjene postaje:∫dr⃗′dr⃗ →

∫ds⃗ dR⃗

pa je:E(↑)

x =

∫ds⃗ e(↑)x (s⃗)

Za slobodne elektrone, homogeni sustav, e(↑)x je prostorno neovisna veličina. Ov-dje prostornu ovisnost samo formalno zadržavamo. Prema tome, gustoća energijeizmjene je:

e(↑)x (s⃗) = − e2

8πϵ0

∫dR⃗

ρ(R)2

R

= − e2

2ϵ0

1

(2π2)2

∞∫0

dR R2 (sin(kFR)− (kFR) cos(kFR))2R7

= − e2

2ϵ0

k4F(2π2)2

∞∫0

dx(sinx− x cosx)2

x5︸ ︷︷ ︸=1

4

= − e2

8πϵ0

k4F4π3

= − e2

8πϵ0

(6π2)4/3

4π3n↑(s⃗)

4/3 = − e2

8πϵ0aB

3

2

(6

π

)1/3

n↑ [a3Bn↑(s⃗)]

1/3

Ukupna energija izmjene, prikazana preko ukupne gustoće čestica:

e(↑)x (s⃗) + e(↓)x (s⃗) = −3

2

(3

π

)1/3

n(s⃗) [a3Bn(s⃗)]1/3 Ry

= n(s⃗)

[−3

2

(3

π

)1/3(3

)1/31

rs

]Ry = n(s⃗)

[−0.916330587

rs

]Ry

115

116 DODATAK B. POTENCIJAL IZMJENE

gdje su:

n(s⃗) = n↑(s⃗) + n↓(s⃗)

3r3s

[a3Bn

]= 1

Ry =e2

8πϵ0 aB= 13.6 eV

n ukupna gustoća čestica, a rs prosječna udaljenost između čestica izražena u Bo-hrovim radijusima (aB).

Energija izmjene:

Ex = E(↑)x + E(↓)

x =

∫ds⃗ n(s⃗)

[−3

2

(3

π

)1/3

[a3Bn(s⃗)]1/3

]︸ ︷︷ ︸

ex(n(s⃗))

Ry

B.2 Potencijal izmjenePotencijal izmjene, koji ulazi u efektivnu Schrödingerovu jednadžbu dobiva se vari-ranjem energije izmjene po koncentraciji čestica:

Vx(r⃗) =δ

δn(r⃗)Ex =

d

dn(r⃗)ex(n(r⃗))

= − 2

(3

π

)1/3

︸ ︷︷ ︸=cx

[a3Bn(s⃗)]1/3 Ry

C. Korelacijska energija i potencijal

Postoji veliki broj različitih aproksimacija za prosječnu korelacijsku energiju čestice:

• E.P. Wigner, Trans. Faraday Soc. 34, (1938) 678[34]:

ec = − 0.44

rs + 7.8

• M. Gell-Mann i K.A. Brueckner, Phys.Rev. 106 (1957) 364[35]:

ec = −0.048 + 0.0311 ln rs

• P. Nozieres i D. Pines, Phys.Rev. 111 (1958) 442[36]:

ec = −0.115 + 0.0311 · ln rs

• P. Vashishta i K.S. Singwi, Phys.Rev.B 6 (1972) 875[37]:

ec = −0.112 + 0.0335 · ln rs −0.027

0.1 + rs

• R.G. Gordon i Y.S. Kim, J.Chem.Phys. 56 (1959) 3122[38]:

ec = −0.12312 + 0.03796 · ln rs

• J.P. Perdew i A. Zunger, Phys.Rev.B 23 (1981) 5048[39]:

ec = − 0.1423

1.0 + 1.0529 ·√rs + 0.334 · rs

Energije su izražene u Ry.

Korelacijski dio Kohn-Shamovog potencijala dobiva se variranjem ukupne energijepo koncentraciji:

Vc(n(r⃗)) = ec(n(r⃗)) + n(r⃗) · ∂ec(n(r⃗))∂n(r⃗)

Napomena: U GGA i meta-GGA treba još dodati i gradijentne članove.

117

D. Rješavanje Schrödingerove jednadžbepomoću ravnih valova

Schrödingerova jednadžba:[− ℏ2

2m∇⃗2 + U(r⃗) + VH(r⃗)

]ψ(r⃗) +

∫dr⃗′ Vxc(r⃗

′, r⃗)ψ(r⃗′) = e · ψ(r⃗)

Potencijal koji stvaraju ioni je periodičan:

U(r⃗ + T⃗ ) = U(r⃗)

gdje jeT⃗ = k · a⃗1 + l · a⃗2 +m · a⃗3 (k, l,m = 0,±1,±2, . . . )

translacijski vektor rešetke. Riješenja su Bochove valne funkcije:

ψ(r⃗) = eı⃗k·r⃗ · uk⃗(r⃗)

koje su dane kao ravni valovi pomoženi s periodičkom funkcijom:

uk⃗(r⃗ + T⃗ ) = uk⃗(r⃗)

Zbog periodičnosti, periodički potencijal i periodički dio valne funkcije može se ra-zviti u Fourijerov red:

U(r⃗) =∑G⃗

UG⃗ eıG⃗·r⃗

uk⃗(r⃗) =∑G⃗

uk⃗;G⃗ eıG⃗·r⃗

gdje je:G⃗ = k · b⃗1 + l · b⃗2 +m · b⃗3 (k, l,m = 0,±1,±2, . . . )

vektor recipročne rešetke. Vrijedi:

a⃗i · b⃗j = 2πδij

Razvijanjem riješenje i potencijala u Fourijerov red, rješavanje Schrödingerove jed-nadžbe svodi se traženje vlastitih vektrora i vlastitih vrijednosti beskonačne matrice:

ℏ2

2m(k⃗ + G⃗)2 uk⃗;G⃗ +

∑G⃗′

VG⃗−G⃗′ uk⃗;G⃗′ = e · uk⃗;G⃗

119

120DODATAK D. RJEŠAVANJE SCHRÖDINGEROVE JEDNADŽBE POMOĆU

RAVNIH VALOVAVlastiti vektori su izgrađeni od Fourijerovih komponenti periodičnog dijela valnefunkcije:

uk⃗ =

...uk⃗;G⃗1

uk⃗;G⃗2

uk⃗;G⃗3...

Beskonačnu matricu aproksimiramo s konačnom po principu da se zadrže samo oniretci i stupci u kojima su dijagonalni matrični elementi manji od energije odreza(energy cutoff ):

ℏ2

2mG⃗2 < Ewfc

U QE, veličina Ewfc je dana s ecutwfc.

E. Izračun Fermijeve površine za QEinačice < 5.4

Fermijeva površina se izračunava u nekoliko koraka:

• SCF račun• Izračun liste valnih brojeva u BZ za koje je potrebno izračunati energije.• Izračun energija za navedenu listu valnih brojeva• Proračun Fermijeve površine i upis podataka u datoteku prikladnu za xcrysden

program.

Proračun će se demonstrirati na primjeru wolframa.

Kako raditi SCF već znamo, stoga pređimo odmah na 2. korak.

2. korakU drugom koraku služimo se programom kvecs_FS.x za izračunavanje liste valnihbrojeva za koje se računaju energije. Izlazna lista valnih brojeva bit će u datotecikvecs_w. Za generiranje te datoteke trebamo ulaznu datoteku za kvecs_FS.x:

QE input: kvecs_FS.in

1.000000 0.000000 1.000000-1.000000 1.000000 0.0000000.000000 -1.000000 1.000000

15 15 15 0 0 0w

Prve tri linije su kartezijeve koordinate vektora recipročne rešetke. Te se koordinatemogu izvući iz izlazne datoteka SCF računa pomoću komande grep:

Konsole> grep 'b(1)' 01-w-scf.out | cut -c 24-54> grep 'b(2)' 01-w-scf.out | cut -c 24-54> grep 'b(3)' 01-w-scf.out | cut -c 24-54

Pretpostavili smo da je ime izlazne datoteke za SCF račun 01-w-scf.out. Četvrtalinija je mreža valnih brojeva u BZ za koje želimo računati energije. Dakle radi se o15×15×15 valnih brojeva. Peta linija je dio imena datoteke koja sadrži izračunatevalne brojkeve datoteke koja sadrži izračunate valne brojeve. U ovom slučaju radise o slovu ’w’, a datoteka će se zvati kvecs_w. Izvođenje programa:

121

122 DODATAK E. IZRAČUN FERMIJEVE POVRŠINE ZA QE INAČICE < 5.4

Konsole> kvecs_FS.x < kvecs_FS.in > kvecs_FS.out

Kao rezultat dobivamo datoteku kvecs_w:

QE input: kvecs_w - POČETAk

40960.000000 0.000000 0.000000 1.000.000000 -0.066667 0.066667 1.000.000000 -0.133333 0.133333 1.000.000000 -0.200000 0.200000 1.000.000000 -0.266667 0.266667 1.000.000000 -0.333333 0.333333 1.000.000000 -0.400000 0.400000 1.000.000000 -0.466667 0.466667 1.00.....

3. korakZa izračunavanje energija za danu listu brojeva služimo se pw.x programom. Ulaznudatoteka je vrlo slična SCF ulaznoj datoteci.

Konsole> cp 01-w-scf.in 03-w-bands_FS.in> nano 03-w-bands_FS.in # editiramo 03-w-bands_FS.in datoteku

Razlike između 01-w-scf.in i 03-w-bands_FS.in:01-w-scf.in

QE input: 01-w-scf.in

&controlcalculation = 'scf'.....

K_POINTS {automatic}15 15 15 0 0 0

03-w-bands_FS.inQE input: 03-w-bands_FS.in

&controlcalculation = 'bands'verbosity='high',.....

K_POINTS

Iza početka sekcije K_POINTS treba sve izbrisati, u sekciji &control promijeniti vrsteračuna u 'bands' te dodati liniju verbosity='high',.

Na dobivenu datoteku 03-w-bands_FS.in nalijepit ćemo sadržaj kvecs_w datoteke:

Konsole> cat kvecs_w >> 03-w-bands_FS.in

Sada datoteka 03-w-bands_FS.in sadrži listu valnih brojeva potrebnih za izračunenergija:

123

Konsole> pw.x -in 03-w-bands_FS.in > 03-w-bands_FS.out &

Rezultat izvođenja važno je spremiti u datoteku 03-w-bands_FS.out jer će to služitikao ulazna datoteka u slijedećem koraku. Napomenim da proračun može potrajatiprilično dugo, jer se energije izračunavaju za sve navedene k-točke. Što je veći brojtih točaka to će i Fermijeva površina biti bolja.

2. i 3. korak je moguće povezati pomoću bash-shell skripta koji automatizira dioposla. Procedura je slijedeća:

• Neka je SCF je urađen. Izlazna datoteka je 01-w-scf.out.• iz SCF ulazne datoteke (01-w-scf.in) konstruiramo 03-w-bands_FS.in da-

toteku u kojoj je sve iza linije K_POINTS izbrisano.• Pokrenemo ovaj bash-shell skript:

Bash shell: 02-w-kvec.sh

#!/bin/bash

b1=`grep 'b(1)' 01-w-scf.out | cut -c 24-54`b2=`grep 'b(2)' 01-w-scf.out | cut -c 24-54`b3=`grep 'b(3)' 01-w-scf.out | cut -c 24-54`

cat > kvecs_FS.in <<EOF$b1$b2$b315 15 15 0 0 0

wEOF

kvecs_FS.x < kvecs_FS.in > kvecs_FS.outcat kvecs_w >> 03-w-bands_FS.in

• Pokretanje/izvođenje skripta:

Konsole> ./02-w-kvec.sh

• Pokrene se proračunavanje energija

4. korakZa rekonstrukciju Fermijeve površine i generiranje xcrysden-datoteke služimo se

124 DODATAK E. IZRAČUN FERMIJEVE POVRŠINE ZA QE INAČICE < 5.4

programom bands_FS.x. Program bands_FS.x treba dvije ulazne datoteke. Prvaulazna datoteka je izlazna datoteka iz prethodnog koraka 03-w-bands_FS.out, paćemo tu izlaznu datoteku prikladno kopirati kao ulaznu datoteku za bands_FS.x:

Konsole> cp 03-w-bands_FS.out bands_FS.in

Datoteke 03-w-bands_FS.out i bands_FS.in su identične po sadržaju. Drugaulazna datoteka mora se zvati input_FS te ima slijedeći sadržaj:

QE input: input_FS

6 1022.6106W15 15 15 0 0 01.000000 0.000000 1.000000

-1.000000 1.000000 0.0000000.000000 -1.000000 1.000000

Prva linija su indeksi prve i zadnje vrpce za koje želimo imati Fermijevu površinu.Ti se indeksi mogu približno odrediti iz izračunatih energija i vrijednosti Fermijeveenergije. Druga linija je vrijednost Fermijeve energije. Nju možemo odrediti pomoćugrep komande iz izlazne SCF datoteke:

Konsole> grep 'Fermi' 01-w-scf.out | cut -c 29-36

Treća linija je oznaka sustava koja se upisuje u xcrysden-datoteku s Fermijevompovršinom. Četvrta linija je ponovo mreža valnih brojeva za koju smo izračunavalienergije. Zadnje tri linije su kartezijeve koordinate vektora recipročne rešetke.

Generirane datoteke s Fermijevom površinom postižemo:

Konsole> bands_FS.x < bands_FS.in > bands_FS.out> mv Bands_FS.bxsf w_fs.bxsf

Zadnja linija je preimenovanje datoteke koja sadrži podatke o Fermijevoj površini.

4. korak se također može automatizirati pomoću scripta:

125

Bash shell: 04-w-bands_FS.sh

#!/bin/bash

n1=6n2=10

cp 03-w-bands_FS.out bands_FS.in

b1=`grep 'b(1)' 01-w-scf.out | cut -c 24-54`b2=`grep 'b(2)' 01-w-scf.out | cut -c 24-54`b3=`grep 'b(3)' 01-w-scf.out | cut -c 24-54`ef=`grep 'Fermi' 01-w-scf.out | cut -c 29-36`

cat > input_FS <<EOF$n1 $n2$efW15 15 15 0 0 0

$b1$b2$b3EOF

bands_FS.x < bands_FS.in > bands_FS.out

mv Bands_FS.bxsf w_fs.bxsf

Pokrene se script:

Konsole> ./04-w-bands_FS.sh

i kao končni rezultat se dobiva w_fs.bxsf datoteka s Fermijevom površinom.

Naputak: Kako odrediti indekse vrpci za izračun Fermijeve površine

Prvo treba znati koja je vrijednost Fermijeve energije:

Konsole> grep Fermi 01-w-scf.out

the Fermi energy is 22.6106 ev

Zatim pogledamo listu energija za valni broj (0,0,0), tj. Γ-točku:

126 DODATAK E. IZRAČUN FERMIJEVE POVRŠINE ZA QE INAČICE < 5.4

Konsole> grep -A 10 'End of band' 03-w-bands_FS.out

End of band structure calculation

k = 0.0000 0.0000 0.0000 ( 627 PWs) bands (ev):

-51.5283 -15.0937 -15.0937 -15.0937 13.0244 21.4334 21.4334 21.433424.9214 24.9214 37.1702 37.1702 37.1702

k = 0.0000-0.0667 0.0667 ( 635 PWs) bands (ev):

-51.5226 -15.1540 -15.1125 -15.0941 13.2394 21.3032 21.4035 21.641924.7163 24.9235 37.3516 37.5325 37.6923

Vidimo da za svaki valni broj postoji 13 energija (13 vrpci) te da se Fermijevaenergija nalazi u području između 6. (21.4334 eV) i 10. (24.9214 eV). Stoga teindekse iskoristimo za konstrukciju input_FS ulazne datoteke. Radi se o prvoj linijiu toj datoteci.

pw.x

calculation = ’scf’

kvecs_FS.x

pw.x

calculation = ’bands’

bands_FS.x

Slika E.1: Procedura izračuna Fermijeve površine za QE inačice < 5.4.

F. Kompajliranje QE

Pretpostavlja se da su programi za kompajliranje (gfortran i make), već instalirani.Ukoliko nisu, kao root-korisnik treba ih instalirati:

Konsole# apt-get install gfortran make libscalapack-mpi-dev libopenblas-dev libelpa-dev

Na web adresi Quantum espresso, http://www.quantum-espresso.org, treba lociratiprogramski paket u izvornom obliku (source code). Za 6.0 inačicu to je:

http://www.qe-forge.org/gf/download/frsrelease/224/1044/qe-6.0.tar.gz

Ovo je kratka procedura (izvodi je obični korisnik!):Konsole> cd> mkdir QE-build> cd QE-build> wget http://www.qe-forge.org/gf/download/frsrelease/224/1044/qe-6.0.tar.gz> tar xfz qe-6.0.tar.gz> cd qe-6.0/> ./configure BLAS_LIBS="-lopenblas" LAPACK_LIBS=" " \

SCALAPACK_LIBS="-lscalapack-openmpi -lblacs-openmpi -lblacsF77init-openmpi"\--with-elpa-lib="-lelpa" --with-elpa-include="-I/usr/include/elpa/modules/"

> make all> make epw

Kao rezultat uspješnog kompajliranja u bin imeniku će se pojaviti komande kojemožemo rabiti u izvođenju DFT-a. Njih treba preseliti na jedno od standardnihmjesta gdje se naredbe nalaze, npr. korisnički bin-imenik:

Konsole> cp bin/* ~/bin/

127

G. Brzi tečaj linuxa

G.1 Terminalski programi, naredbe i linux ljuskaRadno okruženje za numeričke simulacije bit će grafičko, pa tako i dobivene rezul-tate nastojat ćemo prikazati grafički. Ipak naredbe za izvođenje pokretat ćemo skomandne linije unutar terminala kao što je Konsole u KDEa ili Gnome terminalu GNOMe radnom okolišu.

Slika G.1: Konsola i GNOME terminal za izdavanje naredbi putem komandnelinije.

Unutar terminala upisujemo naredbu/komandu, tipično ime datoteke koja sadržistrojne instrukcije operacijskom sustavu, ili ime tekstualne datoteke koja je skriptprogram, napisan u jednom skriptom jeziku (python, perl, php, bash, awk, …).

Ako nije jasno što se izvodi, skript ili strojni jezik, to se može ustanoviti s komandomfile:

Konsole> file `which ls`/bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=a0823e17cafbe5b2296346216445566840fdfd88, stripped>> file `which dropbox`/usr/bin/dropbox: Python script, ASCII text executable, with very long lines

129

130 DODATAK G. BRZI TEČAJ LINUXA

U navedenom primjeru izveli smo, u stvari, dvije naredbe:Konsole> which dropbox/usr/bin/dropbox> file /usr/bin/dropbox/usr/bin/dropbox: Python script, ASCII text executable, with very long lines

Naredba which locira naredbu u datotečnom sustavu i ispiše punu putanju do na-redbe, jer naredba file treba kao argument punu putanju do datoteke koju želimoidentificirati - što ona predstavlja.

Naredbe se mogu međusobno kombinirati tako da rezultat izvođenja jedne naredbebude supstituiran kao argument druge. Da bi to postigli poslužili smo se nakošenimjednostrukim navodnim znakovima koji se tipično nalaze na tipki za brojku 7.Treba razlikovati nakošeni i uspravni jednostruki navodni znak!

Na isti način možemo identificirati i datoteke koje nisu naredbe, nego su podacitekstualni ili binarni. Ipak u tim slučajevima nije moguće koristiti which naredbuza lociranje (nalaženje pune putanje do) željene datoteke.

Grafički programi Konsole u KDEa ili Gnome terminal su u stvari programikoji izvode shell-naredbu u grafičkom okruženju. Shell-naredba prima tekstualnonapisane naredbe koje potom izvodi. Kada govorimo o shell-naredbi, treba reći dapostoji veći broj različitih shell-naredbi, a koja se shell-naredba izvodi je običnostvar osobnog izbora korisnika (za poznavaoce). Za one koji nisu poznavaoci, koristise predefinirana (default) shell-naredba, koja je tipično bash-ljuska.

Konsole> which bash/bin/bash> file /bin/bash/bin/bash: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dyna....

G.2 Datotečni sustavNaredbe i obični podaci podaci organizirani su na disku u imenicima (directory) iimenicima unutar imenika na rekurzivni način. Na vrhu svih imenika (ili na dnu svih- zavisno kako se drvo promatra) jest tz. korjenski (root) imenik, za koji koristimooznaku (ime) kosu crtu (slash):

/

Korjenski imenik ima niz podimenika i datoteka:

G.2. DATOTEČNI SUSTAV 131

Konsole> ls /bin/ dev/ initrd.img@ lost+found/ opt/ run/ sys/ var/boot/ etc/ lib/ media/ proc/ sbin/ tmp/ vmlinuz@cxassoc/ home/ lib64/ mnt/ root/ srv/ usr/

Svaki od tih podimenika ima svoj niz pod-podimenika i/ili datoteka:Konsole> ls /var/backups/ games/ local/ log/ opt/ spool/ www/cache/ lib/ lock@ mail/ run@ tmp/> file /var/spool//var/spool/: directory> file /vmlinuz/vmlinuz: symbolic link to boot/vmlinuz-3.16.0-4-amd64

Tipični položaj u datotečnom drvu gdje se večina linux naredbi nalazi je imenik:

/usr/bin/

Konsole> which pw.x/usr/bin/pw.x

Iz navedenih primjera se vidi da naredba ls izlistava sadržaj nekog imenika! Nemojteje koristiti za izlist imenika ’/usr/bin/’ jer se tamo nalaze tisuće datoteka, pa biizlistavanje moglo potrajati.

U datotečnom drvu postoji posebno mjesto (imenik) gdje se nalaze datoteke i imenicikorisnika. Tipično to je imenik:

/home/

U imeniku ’/home/’ nalaze se podimenici pojedinik korisnika u kojima obični ko-risnik može držati svoje podatke i/ili naredbe. Tako npr. podaci korisnika s koris-ničkim imenim ’mrkva’ nalaza se u podimeniku ’/home/mrkva/’, a podaci korisnika’kapula’ u podimeniku ’/home/kapula/’. S naredbom:

Konsole> ls /home/

može se ustanoviti koji korisnici postoje i koja su njihova korisnička imena.

132 DODATAK G. BRZI TEČAJ LINUXA

Puna putanja (path) do neke datoteke počine od korjenskog imenka, iza kojegslijedi ime podimenika, zatim ime podimenika unutar podimenika, i tako sve rekur-zivno do imena podimenika koji sadrži datoteku i samog imena datoteke na kraju:

/opt/pseudo/Al.pz-n-rrkjus_psl.0.1.UPF

Imena podimenika i imena datoteka razdvojena su kosim crtama. U gore navedenomprimjeru u korjenskom imeniku postoji podimenik ’opt’, a taj podimenik ima pod-podimenik ’pseudo’, te u tom pod-podimeniku se nalazi datoteka imena ’Al.pz-n-rrkjus_psl.0.1.UPF’.

Kod izvođenja komandi u ljusci postoji tz. radni imenik. Za pristup datotekamau radnom imeniku NIJE potrebno navoditi punu putanju do datoteka, samo njenoime. Za datoteke izvan radnog imenika, treba koristiti ili punu putanju, ili tz.relativnu putanju. Skraćeno ime radnog imenika točka s kosom crtom:

./

Relativna putanja se specificira relativno u odnosu na radni imenik. Relativni pu-tanja do nadređenog imenika su dvije točke s kosom crtom:

../

Puna putanja radnog imenika može se saznati s komandom pwd:Konsole> pwd/home/kupus

Da bi saznali što se nalazi u imeniku korisnika ’mrkva’ možemo saznati služeći sepunom putanjom ili relativnom putanjom:

Konsole> ls /home/mrkvabin/ Dokumenti/ Javno/ Preuzimanja/ Radna površina/ Videozapisi/> ls ~mrkva/bin/ Dokumenti/ Javno/ Preuzimanja/ Radna površina/ Videozapisi/

G.3 Tipične naredbe• ls - izlistavanje sadržaja imenika• pwd - koji je radni imenik• cd - promjena radnog imenika• file - koja je vrste datoteke• which - koja je puna putanja to naredbe

G.4. KAKO IZVODITI NAREDBE 133

• cp - kopiranje datoteke ili imenika• rm - brisanje datoteke i/ili imenika• mkdir - kreiranje imenika• mv - preimenovanje datoteke i/ili imenika• cat - ispis po ekranu cijelog sadržaja neke tekstualne datoteke• less - slično naredbi cat - ali ispisuje samo dio sadržaja koji stane u ekran.

S tipkama strelica može se pregledati cijela datoteka. S tipom ’q’ se prekidaizvođenje naredbe.

• head - ispisuje prvih par linija tekstualne datoteke• tail - ispisuje nekoliko zadnjih linija tekstualne datoteke• grep - pretražuje tekstualnu datoteku i ispisuje linije koje sadrže određeni niz

znakova (string)• vi - moćni uređivač (editor) tekstualnih datoteka - nije za neiskusne korisnike.• emacs - moćni uređivač (editor) tekstualnih datoteka - nije za neiskusne ko-

risnike.• nano - uređivač tekstualnih datoteka• kate - grafički uređivač tekstualnih datoteka• passwd - promjena šifre korisnika• tee - krade ispis izvođenja naredbe po ekranu te ga• chmod - promjena svojstava datoteke ispisuje i po ektranu i u datoteku.

G.4 Kako izvoditi naredbeNaredbe izvodimo tako da napišeno ime naredbe te pritisnemo tipku ENTER.

Konsole> lsbin/ Dokumenti/

Neke (većina) naredbi imaju mogućnost specificirana opcija koje im mijenjaju načinizvođenja ili ispisa rezultata.

Konsole> ls -ldrwxr-xr-x 2 mrkva mrkva 4096 Svi 24 17:17 bin/drwxr-xr-x 2 mrkva mrkva 4096 Svi 15 16:48 Dokumenti/

Vidimo da za izdavanje naredbi treba pisati tekst - što može biti zamorno i sporo,a i često se pogriješi.

134 DODATAK G. BRZI TEČAJ LINUXA

Da bi se olakšalo upisivanje naredbi možemo se poslužiti:

• s tekstom već prije izdanih naredbi koji se može prepraviti• ili mehanizmom automatskog završavanja/kompletiranja naredbi.

Do prije izvedenih naredbi može se doci s tipkom ’strijelica gore’. Ta se tipka možeupotrijebiti više puta da bi se došlo do još prije izvedenih naredbi. Služeći se stre-licama lijevo ili desno može se popraviti tekst, ili promijeniti parametri naredbe, tena kraju s tipkom ENTER izvesti naredbu.

Koristeći tipku TAB moguće je automatski dovršiti pisanje komande koje su samodjelomično utipkane. Komandu treba napisati do tog novoa da postoji samo jed-noznačni način na koji se komanda može dovršiti. Ako to nije slučaj pritisak natipku TAB će izlistati sve moguće dovršetke upisa komande, pa je onda potrebnoupisati samo jedno ili nekoliko slova dok se ne postigne jednoznačnost kompletiranjakomande.

Komande koje se izvode mogu po ektranu ispisivati rezultate koje bi željeli u ne-kom kasnijem trenutku pažljivo pregledati. Umjseto ispisa po ekranu možemo ispisnaredbe preusmjeriti u neku datoteku:

Konsole> ls /usr/bin/ > sadrzaj_usr_bin.txt

S znakom ’>’ ispis izvršenja naredbe ls odlazi u datoteku ’sadrzaj_usr_bin.txt’.Ako izvođenje naredbe dugo traje (satima, danima, …), moguće je naredbu pustitida se izvršava u pozadini, a mi se u međuvremenu možemo posvetiti nekim drugimposlovima. To se postiže a znakom ’&’ na kraju:

Konsole> ph.x -in nacl-ph.in > nacl-ph.out &

Ponekad je želja, da se ispis izvođenja naredbe upisuje u datoteku, ali u isti mah biželjeli pratiti što se događa. To se može postići služeći se naredbom tee:

Konsole> ph.x -in nacl-ph.in | tee nacl-ph.out

Sav ispis izvođenja naredbe ph.x bit će ukraden s naredbom tee, a ona će te podatkeistovremeno upisivati u datoteku ’nacl-ph.out’ i po ektranu.

Znak ’|’ (vertikalna crta) preusmjerava tok (proticanje) izlaznih podataka jednogprograma u ulazne podatke drugog programa. Npr. želimo li saznati koliko linijaima datoteka ’nacl-ph.out’, to možemo postići na više načina:

G.4. KAKO IZVODITI NAREDBE 135

Konsole> cat nacl-ph.out | wc -l

ili jednostavnije:

Konsole> wc -l nacl-ph.out

Naredba wc broji ili linije (wc -l) ili znakove (wc -c) u nekoj tekstualnoj datoteci.Koliko ima različitih naredbi u imeniku ’/usr/bin/’:

Konsole> ls /usr/bin/ | wc -l3741

Nizovi naredbi koji se izvode jadna za drugom mogu se zapisati u jednu datotekua koja se zatim može promovirati u skript-program. Ovaj mali skript može izvoditiviše puta prema potrebi. Umjesto da se ponovo zadaju nizovi naredbi, sve što jepotrebno je upisati ime skript-datoteke gdje su naredbe zapisane. Evo jednog malogskript programa koji ispisuje kartezijeve komponente vektora recipročne rešetke izizlazne datoteke programa pw.x:

Bash shell: test_skript.sh

#!/bin/bash

if [ $# -eq 0 ]then

echo "nema izlazne datoteke"else

grep 'b(1)' $1 | cut -c 24-54grep 'b(2)' $1 | cut -c 24-54grep 'b(3)' $1 | cut -c 24-54

fi

Da bi ga napravili poslužimo se nano editorom:

Konsole> nano test_skript.sh

U datoteku upišeno gore navedene naredbe te je spremimo. Da bi skript funkcioniraokao pravi izvršni program potrebno mu je dati svojstvo izvršnosti, što se postiže schmod naredbom:

136 DODATAK G. BRZI TEČAJ LINUXA

Konsole> chmod +x test_skript.sh

Mali program spreman je na uporabu:Konsole> ./test_skript.shnema izlazne datoteke> ./test_skript.sh nacl.out-1.000000 -1.000000 1.0000001.000000 1.000000 1.000000

-1.000000 1.000000 -1.000000

Napomena: Prva linija skripta sadrži informaciju za operacijski sustav koja će senaredba pokrenuti da bi se komande u skriptu izvršile. Ako bi umjesto ’/bin/bash’pisalo ’/usr/bin/python’ dobili bi pogrešku jer naredbe u sktriptu nisu napisane uprogramskom jeziku ’python’. Ova prva linija ujedno govori naredbi file o kakvojse vrsti datoteke radi:

Konsole> file test_skript.shtest_skript.sh: Bourne-Again shell script, ASCII text executable

U skriptu se koristi ’$#’ koji predstavlja broj argumenata s kojima se izvodi skript.Ako nema argumenata (parametara) onda se izvršava prvi dio if-konstrukcije, a akopostoji jedan argument onda je on sadržan u varijabli ’$1’. Dakle, ’$1’ se supsti-tuira s imenom datoteke na koju primjenjujemo grep naredbe i koja je dana kaoparametar/argument skriptu

Korisnik koji ima skripte i/ili programe koje namjerava često koristiti može ih spre-miti na posebno mijesto gdje će uvijek biti dostupni za uporabu:

Konsole> mkdir ~/bin/> mv test_skript.sh ~/bin/

Tilda, ,̃ je skraćena putanja za vlastiti home imenik. U home-imeniku ne naprav-ljem podimenik ’bin’ i u njemo spremamo vlastiti programe ili skriptove koje čestokoristimo. Tako smo našu skriptu preselili na tu lokaciju u datotečnom sustavu.

G.5 Održavanje i administriranje debian linuxaZa održavanje i administriranje debian linuxa treba nam naredbi. Ali njih je po-trebno napraviti kao root-korisnik koji je po pretpostavci administrator sustava.Da si se posalo root-korisnik treba znati šifru, koja se upisuje kada se uputi takavzahtijev:

G.6. MALO ZABAVE S LINUX KOMANDNOM LINIJOM 137

Konsole> su - rootPassword:

Prva naredbaKonsole# apt-get updateHit http://ftp.hr.debian.org jessie-updates InReleaseHit http://ftp.hr.debian.org jessie InRelease......

je prikupljanje informacija s interneta postoje li sigurnosne nadogradnje na opera-cijski sustav. Ako takve nadogradnje postoje, onda je sustav potrebno nadograditi,što se postiže s naredbom:

Konsole# apt-get upgrade

Ponekad je potrebno instalirati neke dodatne programe koji nisu bili instaliranikod instalacije operacijskog sustava. Instalacija programa Quantum espress- ixcrysden-a:

Konsole# apt-get install quantum-espresso xcrysden

Možemo si instalirati i još četiti dodatna paketa koja ćemo koristiti u slijedećojsekciji:

Konsole# apt-get install fortune-mod cowsay lolcat sl

S narednom exit prestajemo biti administrator sustava i ponovo smo obični korisnik:Konsole# exit>

G.6 Malo zabave s linux komandnom linijomNapravimo pogrešku, pa umjesto naredbe ls izvršimo naredbu sl

Konsole> sl

138 DODATAK G. BRZI TEČAJ LINUXA

Kao rezultat dobivamo vlakić preko ektrana:

Probajte rezultat izvršenja naredbe fortune proslijediti naredbi cowsay:Konsole> fortune | cowsay_____________________________________

/ I am more bored than you could ever \\ possibly be. Go back to work. /-------------------------------------

\ ^__^\ (oo)\_______

(__)\ )\/\||----w ||| ||

Ponoviti naredbu nekoliko puta (sa strijelicom prema gore). A zašto ne bi sve toproslijedili naredbi lolcat:

Konsole> fortune | cowsay | lolcat

pa se rezultat dobije bojama:

G.6. MALO ZABAVE S LINUX KOMANDNOM LINIJOM 139

Bibliografija

[1] Paolo Giannozzi i dr. “QUANTUM ESPRESSO: a modular and open-sourcesoftware project for quantum simulations of materials”. Journal of Physics:Condensed Matter 21.39 (2009), 395502 (19pp). url: http://www.quantum-espresso.org.

[2] Anton Kokalj. “Computer graphics and graphical user interfaces as tools in si-mulations of matter at the atomic scale”. Computational Materials Science 28.2(2003). Proceedings of the Symposium on Software Development for Processand Materials Design, str. 155–168. issn: 0927-0256. doi: http://dx.doi.org/10.1016/S0927-0256(03)00104-6. url: http://www.sciencedirect.com/science/article/pii/S0927025603001046.

[3] P. Hohenberg i W. Kohn. “Inhomogeneous Electron Gas”. Phys. Rev. 136 (3Bstudeni 1964), B864–B871. doi: 10.1103/PhysRev.136.B864. url: http://link.aps.org/doi/10.1103/PhysRev.136.B864.

[4] W. Kohn i L. J. Sham. “Self-Consistent Equations Including Exchange andCorrelation Effects”. Phys. Rev. 140 (4A studeni 1965), A1133–A1138. doi:10.1103/PhysRev.140.A1133. url: http://link.aps.org/doi/10.1103/PhysRev.140.A1133.

[5] John P. Perdew, Kieron Burke i Matthias Ernzerhof. “Generalized Gradi-ent Approximation Made Simple”. Phys. Rev. Lett. 77 (18 listopad 1996),str. 3865–3868. doi: 10.1103/PhysRevLett.77.3865. url: http://link.aps.org/doi/10.1103/PhysRevLett.77.3865.

[6] M. Methfessel i A. T. Paxton. “High-precision sampling for Brillouin-zoneintegration in metals”. Phys. Rev. B 40 (6 kolovoz 1989), str. 3616–3621. doi:10.1103/PhysRevB.40.3616. url: http://link.aps.org/doi/10.1103/PhysRevB.40.3616.

[7] Peter E. Blöchl, O. Jepsen i O. K. Andersen. “Improved tetrahedron methodfor Brillouin-zone integrations”. Phys. Rev. B 49.23 (lipanj 1994), str. 16223–16233. doi: 10.1103/PhysRevB.49.16223.

[8] C. J. Pickard i M. C. Payne. “Extrapolative approaches to Brillouin-zoneintegration”. Phys. Rev. B 59 (7 veljača 1999), str. 4685–4693. doi: 10.1103/PhysRevB.59.4685. url: http://link.aps.org/doi/10.1103/PhysRevB.59.4685.

[9] Min Yu i Dallas R. Trinkle. “Accurate and efficient algorithm for Bader chargeintegration”. The Journal of Chemical Physics 134.6, 064111 (2011). doi:http://dx.doi.org/10.1063/1.3553716. url: http://scitation.aip.org/content/aip/journal/jcp/134/6/10.1063/1.3553716.

141

142 BIBLIOGRAFIJA

[10] Graeme Henkelman, Andri Arnaldsson i Hannes Jónsson. “A fast and ro-bust algorithm for Bader decomposition of charge density”. ComputationalMaterials Science 36.3 (2006), str. 354–360. issn: 0927-0256. doi: http://dx.doi.org/10.1016/j.commatsci.2005.04.010. url: http://www.sciencedirect.com/science/article/pii/S0927025605001849.

[11] Edward Sanville i dr. “Improved grid-based algorithm for Bader charge allo-cation”. Journal of Computational Chemistry 28.5 (2007), str. 899–908. issn:1096-987X. doi: 10.1002/jcc.20575. url: http://dx.doi.org/10.1002/jcc.20575.

[12] W Tang, E Sanville i G Henkelman. “A grid-based Bader analysis algorithmwithout lattice bias”. Journal of Physics: Condensed Matter 21.8 (2009), str. 084204.url: http://stacks.iop.org/0953-8984/21/i=8/a=084204.

[13] Vladimir I. Anisimov, Jan Zaanen i Ole K. Andersen. “Band theory and Mottinsulators: Hubbard U instead of Stoner I”. Phys. Rev. B 44.3 (srpanj 1991),str. 943–954. doi: 10.1103/PhysRevB.44.943.

[14] V. I. Anisimov i dr. “Density-functional theory and NiO photoemission spec-tra”. Phys. Rev. B 48.23 (prosinac 1993), str. 16929–16934. doi: 10.1103/PhysRevB.48.16929.

[15] A. I. Liechtenstein, V. I. Anisimov i J. Zaanen. “Density-functional theory andstrong interactions: Orbital ordering in Mott-Hubbard insulators”. Phys. Rev.B 52.8 (kolovoz 1995), R5467–R5470. doi: 10.1103/PhysRevB.52.R5467.

[16] John P. Perdew i dr. “Density-Functional Theory for Fractional Particle Num-ber: Derivative Discontinuities of the Energy”. Phys. Rev. Lett. 49.23 (prosinac1982), str. 1691–1694. doi: 10.1103/PhysRevLett.49.1691.

[17] A. I. Lichtenstein, M. I. Katsnelson i G. Kotliar. “Finite-Temperature Magne-tism of Transition Metals: An ab initio Dynamical Mean-Field Theory”. Phys.Rev. Lett. 87.6 (srpanj 2001), str. 067205. doi: 10.1103/PhysRevLett.87.067205.

[18] Antoine Georges i dr. “Dynamical mean-field theory of strongly correlatedfermion systems and the limit of infinite dimensions”. Rev. Mod. Phys. 68 (1siječanj 1996), str. 13–125. doi: 10.1103/RevModPhys.68.13. url: http://link.aps.org/doi/10.1103/RevModPhys.68.13.

[19] G. A. Sawatzky i J. W. Allen. “Magnitude and Origin of the Band Gap inNiO”. Phys. Rev. Lett. 53.24 (prosinac 1984), str. 2339–2342. doi: 10.1103/PhysRevLett.53.2339.

[20] F. Aryasetiawan i O. Gunnarsson. “Electronic Structure of NiO in the GWApproximation”. Phys. Rev. Lett. 74 (16 travanj 1995), str. 3221–3224. doi:10.1103/PhysRevLett.74.3221. url: http://link.aps.org/doi/10.1103/PhysRevLett.74.3221.

BIBLIOGRAFIJA 143

[21] Matteo Cococcioni i Stefano de Gironcoli. “Linear response approach to thecalculation of the effective interaction parameters in the LDA method”. Phys.Rev. B 71 (3 siječanj 2005), str. 035105. doi: 10.1103/PhysRevB.71.035105.url: http://link.aps.org/doi/10.1103/PhysRevB.71.035105.

[22] Burak Himmetoglu, Renata M. Wentzcovitch i Matteo Cococcioni. “First-principles study of electronic and structural properties of CuO”. Phys. Rev. B84 (11 rujan 2011), str. 115108. doi: 10.1103/PhysRevB.84.115108. url:http://link.aps.org/doi/10.1103/PhysRevB.84.115108.

[23] Heather J. Kulik i dr. “Density Functional Theory in Transition-Metal Che-mistry: A Self-Consistent Hubbard U Approach”. Phys. Rev. Lett. 97.10 (rujan2006), str. 103001. doi: 10.1103/PhysRevLett.97.103001.

[24] Arash A. Mostofi i dr. “An updated version of wannier90: A tool for obtainingmaximally-localised Wannier functions”. Computer Physics Communications185.8 (2014), str. 2309–2310. issn: 0010-4655. doi: http://dx.doi.org/10.1016/j.cpc.2014.05.003. url: http://www.sciencedirect.com/science/article/pii/S001046551400157X.

[25] Gregory H. Wannier. “The Structure of Electronic Excitation Levels in Insu-lating Crystals”. Phys. Rev. 52 (3 kolovoz 1937), str. 191–197. doi: 10.1103/PhysRev.52.191. url: http://link.aps.org/doi/10.1103/PhysRev.52.191.

[26] Gregory H. Wannier. “Dynamics of Band Electrons in Electric and Magne-tic Fields”. Rev. Mod. Phys. 34 (4 listopad 1962), str. 645–655. doi: 10 .1103/RevModPhys.34.645. url: http://link.aps.org/doi/10.1103/RevModPhys.34.645.

[27] Nicola Marzari i David Vanderbilt. “Maximally localized generalized Wannierfunctions for composite energy bands”. Phys. Rev. B 56.20 (studeni 1997),str. 12847–12865. doi: 10.1103/PhysRevB.56.12847.

[28] Ivo Souza, Nicola Marzari i David Vanderbilt. “Maximally localized Wannierfunctions for entangled energy bands”. Phys. Rev. B 65.3 (prosinac 2001),str. 035109. doi: 10.1103/PhysRevB.65.035109.

[29] Nicola Marzari i dr. “Maximally localized Wannier functions: Theory and ap-plications”. Rev. Mod. Phys. 84 (4 listopad 2012), str. 1419–1475. doi: 10.1103/RevModPhys.84.1419. url: http://link.aps.org/doi/10.1103/RevModPhys.84.1419.

[30] “Computations of Magnetic Resonance Parameters for Crystalline Systems:Principles”. eMagRes. John Wiley & Sons, Ltd, 2007. isbn: 9780470034590.doi: 10.1002/9780470034590.emrstm1009. url: http://dx.doi.org/10.1002/9780470034590.emrstm1009.

[31] F. Bloch. “Nuclear Induction”. Phys. Rev. 70 (7-8 listopad 1946), str. 460–474.doi: 10.1103/PhysRev.70.460. url: http://link.aps.org/doi/10.1103/PhysRev.70.460.

144 BIBLIOGRAFIJA

[32] P. E. Blöchl. “Projector augmented-wave method”. Phys. Rev. B 50.24 (prosi-nac 1994), str. 17953–17979. doi: 10.1103/PhysRevB.50.17953.

[33] G. Kresse i D. Joubert. “From ultrasoft pseudopotentials to the projectoraugmented-wave method”. Phys. Rev. B 59.3 (siječanj 1999), str. 1758–1775.doi: 10.1103/PhysRevB.59.1758.

[34] E. Wigner. “Effects of the electron interaction on the energy levels of elec-trons in metals”. Trans. Faraday Soc. 34 (1938), str. 678–685. doi: 10.1039/TF9383400678. url: http://dx.doi.org/10.1039/TF9383400678.

[35] Murray Gell-Mann i Keith A. Brueckner. “Correlation Energy of an ElectronGas at High Density”. Phys. Rev. 106 (2 travanj 1957), str. 364–368. doi:10.1103/PhysRev.106.364. url: http://link.aps.org/doi/10.1103/PhysRev.106.364.

[36] P. Nozières i D. Pines. “Correlation Energy of a Free Electron Gas”. Phys.Rev. 111 (2 srpanj 1958), str. 442–454. doi: 10.1103/PhysRev.111.442. url:http://link.aps.org/doi/10.1103/PhysRev.111.442.

[37] P. Vashishta i K. S. Singwi. “Electron Correlations at Metallic Densities. V”.Phys. Rev. B 6 (3 kolovoz 1972), str. 875–887. doi: 10.1103/PhysRevB.6.875.url: http://link.aps.org/doi/10.1103/PhysRevB.6.875.

[38] Roy G. Gordon i Yung Sik Kim. “Theory for the Forces between Closed‐ShellAtoms and Molecules”. The Journal of Chemical Physics 56.6 (1972), str. 3122–3133. doi: http : / / dx . doi . org / 10 . 1063 / 1 . 1677649. url: http : / /scitation . aip . org / content / aip / journal / jcp / 56 / 6 / 10 . 1063 / 1 .1677649.

[39] J. P. Perdew i Alex Zunger. “Self-interaction correction to density-functionalapproximations for many-electron systems”. Phys. Rev. B 23 (10 svibanj 1981),str. 5048–5079. doi: 10.1103/PhysRevB.23.5048. url: http://link.aps.org/doi/10.1103/PhysRevB.23.5048.