Ⅰ. 构造Wannier函数通常要仔细调节以下三大参数:
1. 总能带数Num_bands,你需要有足够多的DFT能带数,以至于能够覆盖住你所需要研究的能带以及覆盖你投影子具有投影成分的能带。
2. 投影子projector。选择投影子之前,请彻底做一次能带成分分析,也就是画Fatband图。请确认费米面附件的轨道成分,把这些轨道作为投影子。
3. 解纠缠窗口和Frozen窗口,参考说明书,多试!
Ⅱ. 质量判断:
1. 最初的判断就是对比DFT的能带和Wannier函数插值后的能带。看看会不会相等,如果你看到了一些曲折的条纹,那么说明你的Wannier函数不够局域。
2. 建议一开始不做最局域化计算,也就是说设置num_iter=0。检查*.wout文件中Wannier函数的spread。如果Spread太大,比如超过了两个晶格常数。就说明你构造过程中的三大参数没有选好,请好好调节三大参数。
a,改变投影子,有时候增加投影子可以使得轨道更加局域;很多人构造wannier函数的时候把corelevel也加进来,这个实在不是很有必要。
b,增大解纠缠的能量空间也会有帮助,有时候你需要关注的投影子在你设置的解纠缠能量空间之外有投影成分,这时候就需要增大解纠缠空间;如果解纠缠空间过于大,也不利于wannier函数的构造。
c,慎重调节Frozen窗口,一定要确保这个窗口内除了有投影子的成分外,没有其它轨道的成分。
3. 对称性粗略判断,可以通过观察Wannier函数的Spread,粗略地判断轨道是否简并。这个对非磁soc体系比较重要,如果你发现自旋上轨道和自旋下轨道的spread不同,那么就表明你构造的Wannier函数没有时间反演对称性。因此在时间反演的k点没有简并,同时计算出来的Z2拓扑数也会是错的。
Ⅲ. Tips:
1. 增加kmesh。增加kmesh的意义在于可以得到更远距离的hopping,对于金属体系比较重要。
2. 不要轻易使用num_iter,一旦使用了它,你就没法控制Wannier函数会怎么演化了。
3. 对于同一个原子,尽量不要设置两个相同角量子数但是不同主量子数的轨道,比如1s和2s同时。对于金刚石这种三维结构,使用sp3轨道,对于平面的那种,使用sp2轨道。
4. 能不能覆盖住所有的能带你需要做能带成分分析,也就是分析能带轨道波函数的投影。对于vasp,在计算能带的INCAR中添加LORBIT=11,分析fat-band。这一步最重要,能帮你确定你所需要设置的能量窗口。
5. dis_froz_min的设置有时候也可以设置小点,这样可以包括更多的能带,以至于收敛更快。但是还是要使用前面所说的原则。
6. 建议一开始设置num_iter=0,看看你构造的Wannier函数的spread怎么样。如果spread太大,那就调节这些参数,使得这个spread减小。如果你实在没辙了,那就使用num_iter吧。举个Bi2Se3的例子,从wannier90.wout中截取出来的(只要搜索"FinalState"就可以找到)。
解释一下数据,括号内的是center,最后一列是spread,也就是WF的展宽。
FinalState
WFcentre and spread 1 (-0.000040, -1.194745, 6.638646 ) 3.00135581
WFcentre and spread 2 ( 0.000038, -1.196699, 6.640059 ) 3.05024704
WFcentre and spread 3 (-0.000032, -1.192363, 6.640243 ) 3.03256302
WFcentre and spread 4 (-0.000086, -3.583414, 2.908040 ) 3.00131291
WFcentre and spread 5 ( 0.000047, -3.581457, 2.906587 ) 3.05019607
WFcentre and spread 6 (-0.000033, -3.585864, 2.906443 ) 3.03267256
WFcentre and spread 7 (-0.000001, 1.194527, 4.773338 ) 2.09798868
WFcentre and spread 8 ( 0.000003, 1.194538, 4.773336 ) 2.05011802
WFcentre and spread 9 (-0.000037, 1.194536, 4.773327 ) 2.04466361
WFcentre and spread 10 ( 0.000006, -1.194384, 1.130261) 2.00572846
WFcentre and spread 11 (-0.000018, -1.216986, 1.140267) 1.96783297
WFcentre and spread 12 ( 0.000007, -1.172216, 1.140684 ) 1.95999088
WFcentre and spread 13 ( 0.000011, -3.583770, 8.416406 ) 2.00573957
WFcentre and spread 14 (-0.000002, -3.561169, 8.406398 ) 1.96786947
WFcentre and spread 15 (-0.000007, -3.605960, 8.405979 ) 1.95994538
WFcentre and spread 16 ( 0.000086, -1.194737, 6.638626) 3.00130962
WFcentre and spread 17 (-0.000047, -1.196693, 6.640080) 3.05019277
WFcentre and spread 18 ( 0.000033, -1.192286, 6.640223 ) 3.03266922
WFcentre and spread 19 ( 0.000040, -3.583406, 2.908021 ) 3.00135911
WFcentre and spread 20 (-0.000038, -3.581452, 2.906608 ) 3.05025038
WFcentre and spread 21 ( 0.000032, -3.585788, 2.906424 ) 3.03256640
WFcentre and spread 22 ( 0.000001, 1.194548, 4.773330 ) 2.09798869
WFcentre and spread 23 (-0.000003, 1.194537, 4.773332 ) 2.05011802
WFcentre and spread 24 ( 0.000037, 1.194539, 4.773340 ) 2.04466360
WFcentre and spread 25 (-0.000011, -1.194381, 1.130260 ) 2.00573073
WFcentre and spread 26 ( 0.000002, -1.216981, 1.140268 ) 1.96786075
WFcentre and spread 27 ( 0.000007, -1.172191, 1.140687 ) 1.95993647
WFcentre and spread 28 (-0.000006, -3.583766, 8.416405 ) 2.00573730
WFcentre and spread 29 ( 0.000018, -3.561165, 8.406400 ) 1.96784170
WFcentre and spread 30 (-0.000007, -3.605935, 8.405982 ) 1.95999981
Sumof centres and spreads (0.000000,-50.170584,143.200000) 72.45644902
①首先看center,看看你的center是不是束缚在原子本身的位置上。这点可以和原子坐标做对比。原子坐标也可以在wannier90.wout中找到。在构造的Wannier函数中,可以发现Wannier函数还是很好的坐落在原子位置上。如果你的Wannier函数能够很好的坐落在原子位置上,那么也能反应出你的Wannier函数的对称性很好。
Site Fractional Coordinate Cartesian Coordinate (Ang)
|Bi 1 0.39900 0.39900 0.69700 | 0.00000 -1.19454 6.65403
||Bi 2 0.60100 0.60100 0.30300 | 0.00000 -3.58361 2.89264
||Se 1 -0.00000 -0.00000 0.50000 | 0.00000 1.19454 4.77333
||Se 2 0.20600 0.20600 0.11800 | 0.00000 -1.19454 1.12651
||Se 3 0.79400 0.79400 0.88200 | 0.00000 -3.58361 8.42016