EMTO leture

The EMTO Method Fundamentals, Implementation and Demonstration

by Prof. Levente Vitos

Basic About How to Run EMTO Code

exe

function

bmdl

Calculates the Madelung potentials

kstr

Computes the energy dependent slope matrix in real space.

shape

Computes the so called shape function, which transforms any integral over the unit cell into an integral over a sphere surrounding the unit cell.

kgrn_cpa

Solves the actual self-consistent Kohn-Sham equations And calculate the Full charge density

kfcd_cpa

Evaluate the total energy functional from the full charge density generated by kgrn

Running dependence of EMTO subprograms

../_images/001.svg

Commands to run the code looks like:

exe < input

exercise/00

tree 00
00
├── bmdl
│   └── fcc.dat
├── kfcd
│   └── cu.dat
├── kgrn
│   └── cu.dat
├── kstr
│   └── fcc.dat
└── shape
    └── fcc.dat

6 directories, 5 files
  • please try to run these “dat” file as input for each “exe” inside its folder. for example:

    cd 00/bmdl
    bmdl < fcc.dat
    

    there will be errors, so what should we do ?

Caution

EMTO input files have very strict format, an extra space may cause some problems.

KSTR

The input file (kstr/fcc.dat)
 1KSTR      HP......=N                               22 Jan 08
 2JOBNAM...=fcc        MSGL.=  0 MODE...=B STORE..=Y HIGH...=Y
 3DIR001=smx/
 4DIR006=./
 5Slope matrices, fcc (spdf), (kappa*w)^2= 0.0
 6NL.....= 4 NLH...=11 NLW...= 9 NDER..= 6 ITRANS= 3 NPRN..= 0
 7(K*W)^2..=  0.000000 DMAX....=    1.7000 RWATS...=      0.10
 8NQ3...=  1 LAT...= 2 IPRIM.= 0 NGHBP.=13 NQR2..= 0
 9A........= 1.0000000 B.......= 1.0000000 C.......= 1.0000000
10BSX......= 0.5000000 BSY.....= 0.5000000 BSZ.....= 0.0000000
11BSX......= 0.0000000 BSY.....= 0.5000000 BSZ.....= 0.5000000
12BSX......= 0.5000000 BSY.....= 0.0000000 BSZ.....= 0.5000000
13QX(IQ)...= 0.0000000 QY......= 0.0000000 QZ......= 0.0000000
14a/w(IQ)..= 0.70 0.70 0.70 0.70
15LAMDA....=    2.5000 AMAX....=    4.5000 BMAX....=    4.5000

A part of the input file of kstr describes the lattice informations:

  • Total number of sites is set by NQ3.

  • The symmetry is set by LAT, more in the online manual.

  • The lattice parameters are renormalized to the length of first lattice vector A (A=1).

  • Cartesian Coordinates are used for sites/”atom” with QX,QY,QZ.

Commands for run the kstr:

kstr < fcc.dat

Or add time in front to have a feeling about the how much time each code consumes:

time kstr < fcc.dat
  • DIR006=./ and JOBNAM...=fcc: a file fcc.prn will be generated in the current directory.

  • DIR001=smx: “slop matrix” will save to smx/fcc.tfh.

  • MSGL.=  0 could silence the screen printing.

BMDL

The input file (bmdl/fcc.dat)
 1BMDL      HP......=N                               22 Jan 08
 2JOBNAM...=fcc        MSGL.=  1 NPRN.=  0
 3DIR001=mdl/
 4DIR006=
 5Madelung potential for fcc bulk
 6NL.....= 7
 7LAMDA....=      2.50 AMAX....=      4.50 BMAX....=      4.50
 8NQ....=  1 LAT...= 2 IPRIM.= 0 NQR2..= 0
 9A........= 1.0000000 B.......= 1.0000000 C.......= 1.0000000
10BSX......= 0.5000000 BSY.....= 0.5000000 BSZ.....= 0.0000000
11BSX......= 0.0000000 BSY.....= 0.5000000 BSZ.....= 0.5000000
12BSX......= 0.5000000 BSY.....= 0.0000000 BSZ.....= 0.5000000
13QX(IQ)...= 0.0000000 QY......= 0.0000000 QZ......= 0.0000000

The Lattice information must be consistent with kstr, and the output files will be ./fcc.prn and mdl/fcc.mdl

SHAPE

The input file (shape/fcc.dat) for bmdl contains similar lattice information as kstr:

The input file (shape/fcc.dat)
1SHAPE     HP......=N                             22 Jan 08
2JOBNAM...=fcc        MSGL.=  0
3FOR001=../kstr/smx/fcc.tfh
4DIR002=shp/
5DIR006=./
6Lmax..= 30 NSR..=129 NFI..= 11
7NPRN..=  0 IVEF.=  3

FOR001=../kstr/smx/fcc.tfh shows shape will need the “slop matrix” from the result of kstr. The output will be shp/fcc.shp.

Hint

kstr,bmdl and shape only contains lattice information with a reduced unit, They could be reused for any system which present with same lattice setup.

KGRN

 1KGRN                                               13 Oct 12
 2JOBNAM=cu 
 3STRT..=  A MSGL.=  0 EXPAN.= S FCD..=  Y FUNC..= SCA
 4FOR001=../kstr/smx/fcc.tfh
 5FOR001=../kstr/smx/fcc30.tfh
 6DIR002=pot/
 7DIR003=pot/
 8FOR004=../bmdl/mdl/fcc.mdl
 9DIR006=
10DIR009=pot/
11DIR010=chd/
12DIR011=/tmp/
13Self-consistent KKR calculation for fcc Cu
14Band: 10 lines
15NITER.= 50 NLIN.= 31 NPRN.=  0 NCPA.=  7 NT...=  1 MNTA.=  1
16MODE..= 3D FRC..=  N DOS..=  N OPS..=  N AFM..=  P CRT..=  M
17Lmaxh.=  8 Lmaxt=  4 NFI..= 31 FIXG.=  2 SHF..=  0 SOFC.=  N
18KMSH...= G IBZ..=  2 NKX..=  0 NKY..= 13 NKZ..=  0 FBZ..=  N
19KMSH2..= G IBZ2.=  1 NKX2.=  4 NKY2.=  0 NKZ2.= 51
20ZMSH...= C NZ1..= 16 NZ2..=  8 NZ3..=  8 NRES.=  4 NZD.=1500
21DEPTH..=  1.000 IMAGZ.=  0.020 EPS...=  0.200 ELIM..= -1.000
22AMIX...=  0.100 EFMIX.=  1.000 VMTZ..=  0.000 MMOM..=  0.000
23TOLE...= 1.d-07 TOLEF.= 1.d-07 TOLCPA= 1.d-06 TFERMI=  500.0 (K)
24SWS......=2.686842   NSWS.=  1 DSWS..=   0.05 ALPCPA= 0.6020
25Setup: 2 + NQ*NS lines
26EFGS...=  0.000 HX....=  0.100 NX...=  5 NZ0..=  6 STMP..= N
27Symb   IQ IT ITA NZ  CONC   Sm(s)  S(ws) WS(wst) QTR SPLT Fix
28Cu      1  1  1  29  1.000  1.000  1.000  1.000  0.0  0.0  N
29Atom:  4 lines + NT*NTA*6 lines
30IEX...=  4 NP..= 251 NES..= 15 NITER=100 IWAT.=  0 NPRNA=  0
31VMIX.....=  0.300000 RWAT....=  3.500000 RMAX....= 20.000000
32DX.......=  0.030000 DR1.....=  0.002000 TEST....=  1.00E-12
33TESTE....=  1.00E-12 TESTY...=  1.00E-12 TESTV...=  1.00E-12
34Cu
35Iz=  29 Norb= 10 Ion=  0 Config= 3d10_4s1
36n      1  2  2  2  3  3  3  3  3  4
37Kappa -1 -1  1 -2 -1  1 -2  2 -3 -1
38Occup  2  2  2  4  2  2  4  4  6  1
39Valen  0  0  0  0  0  0  0  1  1  1
  • need chd\ and pot\ to be exist.

  • JOBNAM=cu will decide the output files start with cu: cu.prn, chd/cu.chd, pot/cu.pot …

  • FOR001=../kstr/smx/fcc.tfh and FOR004=../bmdl/mdl/fcc.mdl.

  • IBZ..=  2 should consistent with LAT=2 in kstr and bmdl for fcc.

  • NITER.= 50, TOLE...= 1.d-07 TOLEF.= 1.d-07,
    check with egrep "erre|Converged|NOS|finished" cu.prn.

  • AMIX...=  0.100 mixing factor for new charge.

  • SWS......=2.686842: The average Wigner-Seitz radius (bohr) to scale the lattice.

    Note

    e.g bcc lattice parameters (a) to SWS (\(\omega\)):

    \[2\times \frac{4\pi}{3} \omega^3 = a^3\]

    units:

    • length: Bohr, 1 Bhor = 0.529177249 Angstrom

    • energy: Rydberg, 1 Ry = 13.605703976 eV

\[N(\epsilon_F)=\frac{1}{2\pi i}\oint_{\epsilon_F} G(z)~dz\]
../_images/contour_dos.svg