This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | |||
smeagol [2012/12/04 11:49] prokop |
smeagol [2012/12/04 15:59] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Equilibriom Kpoins ====== | ||
- | melo by to fungovat, skousel jsem 1D H chain, H111 bulk, a Si100 bulk, vsude to fungovalo pro vice k-bodu. | ||
- | |||
- | Chyba vznikala pri jednom k-bodu, protoze se v tom pripade pouzivala na inverovani GF lapack subrutina pro symetricke matice | ||
- | Predelal sem to aby se vzdy pouzivala subrutina pro obecne matice | ||
- | |||
- | Voltage se aplykuje v diag_k_NET_eq.f90 na diagonalu hamiltonianu. | ||
- | |||
- | == DEV NOTES == | ||
- | |||
- | v Smeagolu neni zadne jine misto (if statement) ktere by zalezelo na poctu k-bodu. Nepouziva se tam ani nikde jinde symetricky solver (krome invert.f ktera se ale podle vseho nepouziva vubec). | ||
- | |||
- | ====== Nonequlibrim Khon-Sham ====== | ||
- | |||
- | Aktualne to vypada ze to konverguje alespon pro H-Chain pri nulovem napeti | ||
- | |||
- | nefungje pro non-zero VBias. Musis se poresit nejak jinak. Melo by se nastavovat VBias vstupujici do smeaglu, nikoli ho umele pricitat k hamiltonianu jako se to deje v Fir2smeagol_eq v diag_k_NET_eq.f90 | ||
- | |||
- | === To Do === | ||
- | * spocitat Au_1D_chain, Au_bulk, Graphene BULK, SiBULK | ||
- | * vykreslit electorstatic potential | ||
- | * podivat se na Delta, sigma (imaginarni cast).... jsou dve, kde je ktera, zjistit jejich vliv na konvergenci, a na "spike" v proudu | ||
- | |||
- | === Problemy === | ||
- | * Au1D nekonverguje pro vyzsi napeti (> 0.2 eV), prodlouzeni screening regionu nepomaha. Normalne KS-SCF taky konverguje blbe, ale pomuze zvysit tempfe=1000. to ale ve smeaglu nejde. | ||
- | * zda se mi ze to nenacita/neuklada sprave denmat.dat. protoze kdyz spustim smeagol znovu, jen s trochu pozmenenym napetim, tak je dost velika sigma=1E-1. => __Podivat se jak se nacita a uklada s denmat.__ | ||
- | * Je lepsi pouzivat fermi level ze smeagol-SCF nez z LEADu. S Ef z LEADu to nekonverguje vubec. Mozna by si mel smeagol __urcit fermi-level sam pomoci integrace__????? | ||
- | * FIXME denmat se ve smeaglu nacita/uklada spatne, :-( kdyz spustim 2x beh programu (1x uz zkonvergovany) je stejne v prvnim kromu sigma=1E-1 | ||
- | |||
- | === Kosmeticke vady === | ||
- | * Jednotkova konvecne je chaoticka, nektere veci se konvertuji do Hratree untis uvnitr smeagol (HL0,HR0 unvitr negf() ) jine uvnitr fireball (V_bias) | ||
- | * celkove je kod chaoticky - rozstrkany po ruznych subrutinach fireballu a podadresarich (GRID, LOOPS, MODULES, SOLVESH_DIAG, UTILS, SM_INTERFACE, SM_NETRANSPORT ) | ||
- | |||
- | === FAQ === | ||
- | * denmat.dat se nacita. Vypise to "Read denmat.dat". deje se to v initbasics.f90 -> initdenmat.f90 | ||
- | * "tempfe" ovlivnuje "Tf" ktera se pouziva v negfk.F a selfenergy.F/CHARGEBIAS_EQ, prenasobi se kB=6.33363D-6 [Ry/K] | ||
- | * denmat se ve smeaglu nacita/uklada spatne | ||
- | |||
- | |||
- | ====== Zmene soubory od puvodniho fireballu ====== | ||
- | |||
- | |||
- | New files: | ||
- | /SM_INTERFACE/read_LRE.f90 read electrode rho, H, S matrices for each k (if ismeagol = 1) | ||
- | /UTIL/writeout_H2Sm.f90 write out electrode rho, H, S matrices (if iwrtHSrho = 1) from "bulk" calculation for "smeagol" calculation | ||
- | /SOLVESH_DIAG/kspace_NET.f90 solve in each k-point using smeagol | ||
- | /SOLVESH_DIAG/diag_k_NET.f90 allcocate and read ELECTRODE files, call read_LRE, call kspace_NET | ||
- | /SOLVESH_DIAG/get_Sp12k.f90 get S matrix^(1/2) for lowdin transform from smeagol density | ||
- | /LOOPS/main_loop_NET.f90 just call scf_loop_NET | ||
- | /LOOPS/scf_loop_NET.f90 | ||
- | /MODULES/smeagol.f90 definition of all smeagol global variables | ||
- | |||
- | Modified files: | ||
- | /MODULES/options.f90 integer ismeagol | ||
- | /MODULES/outputs.f90 integer iwrtHSrho | ||
- | /INITIALIZERS/initbasics.f90 call readbias, allocate_bias (if ismeagol = 1) | ||
- | /LOOPS/main_loop.f90 | ||
- | /READFILES/readparam.f90 | ||
- | /UTIL/postscf.f90 |