[Wien] fold2bloch: problem with K - path in hexagonal lattice
Rubel, Oleg
rubelo at mcmaster.ca
Thu Nov 26 21:22:13 CET 2020
Dear Weronika,
You suspected the fold.m script, but it worked fine. Your original coordinates
M = (1/2, 0, 0)
K = (1/3, 1/3, 0)
transform (with fold 2x2x2) into
M -> G(0, 0, 0)
K -> K'(-1/3, 2/3, 0)
as per the illustration you sent. Then fold.m (and also fold2Bloch) wraps up coordinate into a range [-0.5, +0.5], i.e., K'(-1/3,2/3,0) -> K'(-1/3,-1/3,0). The wrapping is applied to _all_ coordinates in the path (not just start and end), which results in the following case.klist_band
1 0 0 0 1 1.00
2 -1 2 0 57 1.00
3 -2 4 0 57 1.00
4 -1 2 0 19 1.00
5 -4 8 0 57 1.00
6 -5 10 0 57 1.00
7 -2 4 0 19 1.00
8 -7 14 0 57 1.00
9 -8 16 0 57 1.00
10 -3 6 0 19 1.00
11 -10 20 0 57 1.00
12 -11 22 0 57 1.00
13 -4 8 0 19 1.00
14 -13 26 0 57 1.00
15 -14 28 0 57 1.00
16 -5 -9 0 19 1.00
17 -16 -25 0 57 1.00
18 -17 -23 0 57 1.00
19 -6 -7 0 19 1.00
20 -1 -1 0 3 1.00
END
The problem was in the plotting script (see GitHub for the updated version fold2Bloch-Wien2k/Utils/ubs_dots.m). The reason you had "gaps" in the plot has to do with rounding:
1/3 = 0.333333 + err
The original ubs_dots.m script had a tolerable deviation from a path set = eps (machine precision), which is too small to work in all cases. It fails, for coordinates such as (1/3, 1/3) since it is stored in case.f2b file as (0.333333, 0.333333, 0).
Now the script contains a new variable
roundOffErrK = 0.000001,
which is used to find the tolerable deviation from a desired path for an unfolded k point to be accepted and included in the plot.
As a test, I run hexagonal GaN supercell (2x2x2) and got folded (M-K) and unfolded band structures. (The Fermi energy was set at E_F=0 instead of a proper value, which puts it within the conductions band.) Band structures can be downloaded from this link (valid for 7 days):
https://wetransfer.com/downloads/609acabafc6a4d164a42701a84c0f86520201126200032/fb4badbb14116381c0391f963f367c6820201126200117/ccfa0c
Note that the folded (M-K) band structure has nothing in common with the unfolded one, since no point on the (M-K) path in the supercell unfolds to (M-K) path of the primitive cell.
Thank you for reporting a problem!
Best regards
Oleg
P.S. The ubs_dots_w2k_octave.m script is not updated yet
--
Oleg Rubel (PhD, PEng)
Department of Materials Science and Engineering
McMaster University
JHE 359, 1280 Main Street West, Hamilton, Ontario L8S 4L8, Canada
Email: rubelo at mcmaster.ca
Tel: +1-905-525-9140, ext. 24094
Web: http://olegrubel.mcmaster
More information about the Wien
mailing list