二维异质结,尤其是旋转二维异质结是近年来十分热门的研究方向,接下来我们演示如何应用VASPKIT 1.20及之后版本中的轨道投影能带反折叠功能计算二维异质结的电子结构性质。为了便于比较,我们重复了Matsushita等人关于MoS2/graphene二维异质结能带计算的计算结果[ Physical Review Materials, 2(1), 010801],该模型由4×4 MoS2和5×5 graphene单层所构成。
第一步,我们采用vaspkit-400建立MoS2和graphene超胞,建议在两个不同的文件夹中操作;
准备好包含MoS2原胞结构信息的POSCAR文件,vi TRANSMAT.in,然后输入
Read transformation matrix from the TRANSMAT.in file if it exists.
4 0 0 # must be three integers
0 4 0 # must be three integers
0 0 1 # must be three integer
运行vaspkit-400命令得到4×4 MoS2超胞。
准备好包含graphene原胞结构信息的POSCAR文件,vi TRANSMAT.in,然后输入
Read transformation matrix from the TRANSMAT.in file if it exists.
5 0 0 # must be three integers
0 5 0 # must be three integers
0 0 1 # must be three integer
运行vaspkit-400命令得到5×5 graphene超胞。
第二步,建立异质结(第一届VASPKIT 并行杯异质结建模一等奖作品分享)并进行结构优化,结果如下图所示:
第三步,建立BZ_graphene和BZ_MoS2文件夹,分别拷贝POTCAR、INCAR和POSCAR (异质结)及TRANSMAT.in文件到两个文件夹中。注意两个文件夹中的TRANSMAT.in不同,分别对应于生成4×4 MoS2和5×5 graphene超胞的变换矩阵,然后分别运行vaspkit-281命令生成用于能带反折叠计算的KPOINTS;注意INCAR中必须设置LORBIT = 10/11以及LWAVE = .TRUE.两个参数,NBANDS取值尽可能大一些,比如是总价电子数的一倍。
Global Parameters
ISTART = 1
LREAL = .FALSE.
PREC = Normal
LWAVE = .TRUE.
LCHARG = F
ADDGRID= .TRUE.
NBANDS= 432
Electronic Relaxation
ISMEAR = 0
SIGMA = 0.05
NELM = 60
NELMIN = 6
EDIFF = 1E-07
IVDW = 10
LORBIT = 11
第四步,因为BZ_graphene和BZ_MoS2文件夹中的TRANSMAT.in不相同,产生的KPOINTS也会不同,因此需要执行两vasp计算;
第五步:计算完成后,在BZ_graphene和BZ_MoS2文件夹中分别执行vaspkit-284命令,分别得到每种元素能带反折叠后的轨道投影能带;
上图是能带反折叠到石墨烯布里渊区的轨道投影能带图,显然石墨烯反折叠投影能带符合的很好,但是MoS2的反折叠投影能带贡献并不合理,部分原因是由于在石墨烯布里渊区反折叠后的K点并不沿着MoS2能带路径。接下来再把超胞能带反折叠到MoS2布里渊区,得到:
这时发现MoS2的能带是合理的,但是石墨烯的能带不真实,原因类似。显然,通过调用vaspkit软件执行轨道投影能带反折叠后,我们可以剔除掉不真实的反折叠能带贡献,只保留合理的部分,因此最终的结果如下图所示,我们的结果也与文献Phys. Rev. Materials. 2 010801中的计算结果符合的很好。
以上图均采用免费软件matplotlib和VESTA实现。最后,还是那句话,如果您使用VASPKIT,请记得引用,鼓励国产软件发展。
Wang, V.; Xu, N.; Liu, J.-C.; Tang, G.; Geng, W. T. VASPKIT: A Pre- and Post-Processing Program for VASP code, arXiv:1908.08269v4 (2019), https://arxiv.org/abs/1908.08269v4 [Online & Updating]
欢迎关注VASPKIT Bilibili主页视频,采用vaspkit+vasp对二维材料三维能带进行高通量计算:
https://www.bilibili.com/video/BV1Pa4y1Y7mj
附录:目前所有支持能带反折叠的软件汇总
1) https://sourceforge.net/projects/vaspkit/#opennewwindow
2) https://github.com/mxchen-2020/kproj
3) https://github.com/band-unfolding/bandup
4) https://github.com/romerogroup/pyprocar
5) https://github.com/QijingZheng/VaspBandUnfolding
本文暂时没有评论,来添加一个吧(●'◡'●)