本教程介绍基于VASP的 的完整 BSE 计算流程:以单层 MoSe2为例,从基态自洽场出发,经 GW 准粒子修正至 BSE 激子求解,最终通过VaspBandUnfolding的 bseplot 功能实现倒空间与实空间激子可视化。涵盖 INCAR 参数详解、关键文件生成逻辑及常见报错处理,适用于二维材料激子效应的入门级研究。 VaspBandUnfolding软件安装 下载链接 https://github.com/QijingZheng/VaspBandUnfolding/tree/master 安装依赖 pip install -r requirements.txt # optional pip install -r requirements-optional.txt 解压后安装 git clone https://github.com/QijingZheng/VaspBandUnfolding cd VaspBandUnfolding pip install . 或直接安装 pip install git+https://github.com/QijingZheng/VaspBandUnfolding 结构文件准备,POSCAR如下 Mo Se 1.00000000000000 3.3199999999999998 0.0000000000000000 0.0000000000000000 -1.6599999999999999 2.8752043405643399 0.0000000000000000 0.0000000000000000 0.0000000000000000 20.0000000000000000 Mo Se 1 2 Direct 0.6666666666666643 0.3333333333333357 0.5000000000000000 0.3333333333333357 0.6666666666666643 0.4164573917861947 0.3333333333333357 0.6666666666666643 0.5835426082138053 通过VASPKIT生成模版INCAR 图片 图片 默认INCAR,生成WEVACAR和CHGCAR,也可用来读取NBANDS Global Parameters ISTART = 1 (Read existing wavefunction, if there) ISPIN = 1 (Non-Spin polarised DFT) # ICHARG = 11 (Non-self-consistent: GGA/LDA band structures) LREAL = .FALSE. (Projection operators: automatic) # ENCUT = 400 (Cut-off energy for plane wave basis set, in eV) # PREC = Accurate (Precision level: Normal or Accurate, set Accurate when perform structure lattice relaxation calculation) LWAVE = .TRUE. (Write WAVECAR ornot) LCHARG = .TRUE. (Write CHGCAR ornot) ADDGRID= .TRUE. (Increase grid, helps GGA convergence) LASPH = .TRUE. (Give more accurate total energies and band structure calculations) PREC = Accurate (Accurate strictly avoids any aliasing or wrap around errors) # LVTOT = .TRUE. (Write total electrostatic potential into LOCPOT ornot) # LVHAR = .TRUE. (Write ionic + Hartree electrostatic potential into LOCPOT ornot) # NELECT = (No. of electrons: charged cells, be careful) # LPLANE = .TRUE. (Real space distribution, supercells) # NWRITE = 2 (Medium-level output) # KPAR = 2 (Divides k-grid into separate groups) # NGXF = 300 (FFT grid mesh density for nice charge/potential plots) # NGYF = 300 (FFT grid mesh density for nice charge/potential plots) # NGZF = 300 (FFT grid mesh density for nice charge/potential plots) Electronic Relaxation ISMEAR = 0 SIGMA = 0.05 EDIFF = 1E-08 step2可跳过,step3即GW过程 Electronic Relaxation ISMEAR = 0 SIGMA = 0.05 EDIFF = 1E-08 GW Calculation including LWANNIER90 TAG ALGO = GW0 LSPECTRAL = .TRUE. NOMEGA = 60 NEDOS = 2000 NELM = 1 (1-G0W0, 4-GW0) NBANDS = (Take the same number of bands in the previous step) # LWANNIER90 =.TRUE. (Switches on the interface between VASP and WANNIER90) ALGO = GW0 指定执行 G0W0 计算(单次 GW 修正,不自洽更新 QP 能量)。 VASP 6.3+ 建议改用 ALGO = EVGW0,功能相同。 NELM = 1 GW 迭代步数。 LSPECTRAL = .TRUE. 使用全频域的 谱函数法 计算 GW 自能。 NOMEGA:频率网格点数。用于计算屏蔽库仑相互作用 W(ω) 的复频率积分。只在 GW 步骤必需,BSE 步骤保留此值以读取前一步的 WFULL 文件。 step4 Electronic Relaxation ISMEAR = 0 SIGMA = 0.05 EDIFF = 1E-08 BSE Calculation ALGO = BSE NBANDSO = 4 NBANDSV = 4 ALGO: BSE Bethe-Salpeter 方程求解器。进入 VASP 的 BSE 模块,求解电子-空穴对的本征值问题。 NBANDSO:BSE 活性价带数。4 = 包含最高 4 个价带参与激子形成。 NBANDSV:BSE 活性导带数。4 = 包含最低 4 个导带参与激子形成。 准备好KPOINTS和POTCAR K-Spacing Value to Generate K-Mesh: 0.040 0 Gamma 12 12 1 0.0 0.0 0.0 在默认INCAR中添加 NBANDS = 144 LOPTICS = .TRUE. ISYM = 0 NBANDS可先不加,或根据以往自洽OUTCAR中查找然后取2-5倍,完成计算后即可获得LOCPOT WAVEDER 和WAVECAR 等文件, 然后将INCAR.step3复制为INCAR,并加入 ISYM = 0 NBANDS = 144 然后运行GW计算,这一步会比较耗时, 图片 完成计算后,生成W.tmp和 WFULL.tmp文件,供BSE流程读取 图片 此时将INCAR.step4复制为INCAR,并加入 NOMEGA = 60 ANTIRES = 0 LHARTREE = .TRUE. LADDER = .TRUE. LTRIPLET = .FALSE. LORBIT = 11 OMEGAMAX = 6 NBSEEIG=10 ISYM = 0 NBANDS = 144 LHARTREE: 包含 Hartree/exchange 项。这是电子-空穴交换相互作用(排斥项),源于 Pauli 不相容原理。 LADDER:包含直接相互作用(ladder 图)。这是屏蔽库仑吸引项,导致激子束缚。 ANTIRES:反共振项处理。0 = 仅保留共振项忽略反共振项,简化计算。 LTRIPLET:三重态激子开关。.FALSE. = 只计算单重态(singlet)。 OMEGAMAX:求解激子能量的上限, eV。 NBSEEIG:输出到 BSEFATBAND 的激子本征态数。10 = 前 10 个激子。没有这个参数 VASP 不写 BSEFATBAND。 然后继续执行VASP计算 图片 图片 图片 完成计算最后可生成BSEFATBAND文件, 使用bseplot 命令绘制第一布里渊区里的投影 bseplot bz --input BSEFATBAND --poscar POSCAR --exciton 1 图片 绘制实空间 bseplot realspace \ > --bsefatband BSEFATBAND \ > --wavecar WAVECAR \ > --poscar POSCAR \ > --exciton 1 \ > --hole 0.5,0.5,0.5 \ > --supercell '12 12 1' 图片 生成文件如下, 图片 使用VESTA打开 图片