计算化学公社

 找回密码 Forget password
 注册 Register
Views: 146|回复 Reply: 4
打印 Print 上一主题 Last thread 下一主题 Next thread

[VASP] 求助HSE计算BANDS和DOS的具体过程

[复制链接 Copy URL]

3

帖子

0

威望

26

eV
积分
29

Level 2 能力者

我的计算流程:
1.使用PBE泛函进行结构优化
2.用PBE泛函进行自洽计算(ICHARG=2)
3.用HSE泛函进行自洽计算(读取第二步输出的WAVECAR,设置ISTART=1,ICHARG=2)
4.用HSE方法进行非自洽计算(分别算BANDS和DOS)(读取第3步的WAVECAR、CHGCAR,设置ISTART=1、ICHARG=11)

看了很多公众号的计算教程,有的有第3步hse自洽计算,有的没有。
问题:①尝试算了一个文献的材料,PBE自洽计算后直接进行HSE非自洽计算得到的带隙结果和文献是相同的(第2步直接到第4步),加了第3步之后,计算出的带隙结果和文献相差0.17eV左右,所以想问问到底HSE计算BANDS和DOS什么流程才是正确的(网上教程很多不一样)
         ②还看到有的教程第3步设置ICHARG=0,这和设置ICHARG=2哪个更准确呢

651

帖子

1

威望

5304

eV
积分
5975

Level 6 (一方通行)

2#
发表于 Post on 6 day ago | 只看该作者 Only view this author
本帖最后由 北大-陶豫 于 2026-2-10 23:44 编辑

首先,在 VASP 能带计算中,有 3 种 KPOINTS:
(1)Mesh 型,定义一个在布里渊区均匀分布的 k 点网格,一般使用 gamma 或者  Monkhorst-Pack 网格。示例如下:
  1. K-Spacing Value to Generate K-Mesh: 0.150
  2. 0
  3. Gamma
  4.    2   2   2
  5. 0.0  0.0  0.0
复制代码

(2)Line 型,定义若干个线段(一般是我们要算的能带的kpath)和每条线段上的取点数,在线段上面均匀取点。示例如下:
  1. K-Path Generated by VASPKIT.
  2.    5
  3. Line-Mode
  4. Reciprocal
  5.    0.5000000000   0.5000000000   0.5000000000     L              
  6.    0.5000000000   0.2500000000   0.7500000000     W              

  7.    0.5000000000   0.2500000000   0.7500000000     W              
  8.    0.5000000000   0.0000000000   0.5000000000     X              

复制代码

(3)Oneshot 型,可以用 vaspkit 251 生成。这种 KPOINTS 同时包含 Mesh 型和 Line 型的 k 点,其中 Mesh 型的 k 点是有权重的(若晶体对称性较高,n 个对称的 k 点可以合并为一个权重为 n 的 k 点,未合并的 k 点则权重为 1),用于获得正确的自洽结果; Line 型的 k 点是零权重的,用于获得能带上各点的能量。例如,将前两个示例合并为一个 Oneshot 型 KPOINTS 文件(用 vaspkit 251 生成的),结果如下:
  1. 0.150   2   2   2    3  0.150   10    2    5    5           # Parameters to Generate KPOINTS (Do NOT Edit This Line)
  2.     13
  3. Reciprocal lattice
  4.     0.00000000000000    0.00000000000000    0.00000000000000     1
  5.     0.50000000000000    0.00000000000000    0.00000000000000     4
  6.     0.50000000000000    0.50000000000000    0.00000000000000     3
  7.     0.50000000000000    0.50000000000000    0.50000000000000     0
  8.     0.50000000000000    0.43750000000000    0.56250000000000     0
  9.     0.50000000000000    0.37500000000000    0.62500000000000     0
  10.     0.50000000000000    0.31250000000000    0.68750000000000     0
  11.     0.50000000000000    0.25000000000000    0.75000000000000     0
  12.     0.50000000000000    0.25000000000000    0.75000000000000     0
  13.     0.50000000000000    0.18750000000000    0.68750000000000     0
  14.     0.50000000000000    0.12500000000000    0.62500000000000     0
  15.     0.50000000000000    0.06250000000000    0.56250000000000     0
  16.     0.50000000000000    0.00000000000000    0.50000000000000     0
复制代码

对此有任何不明白的可以看官网讲解:https://www.vasp.at/wiki/index.php/KPOINTS

周期性晶体计算的严格结果是需要对整个布里渊区积分的,但实际计算不可能真的取无穷多个点进行严格积分,只能均匀撒点然后用求和代替积分。显然,自洽计算是需要均匀撒点的,Line 型的 KPOINTS 不是均匀撒点,不能用于自洽计算。所以,自洽计算要么用 Mesh 型的 KPOINTS ,直接均匀撒点;要么用 Oneshot 型的 KPOINTS,其中虽然加入了 Line 型的 k 点,但是零权重,因此不会影响结果,只不过会把零权重的 k 点的能级也算出来(我不知道是不是每步 SCF 迭代的时候都会把零权重的 k 点的能级算一遍不过按 VASP 的尿性很可能是这样)。如果使用 Line 型的 KPOINTS,则必须基于自洽完成的电荷密度进行非自洽计算。

这样,“一步法”算能带就可以理解了:使用 Oneshot 型的 KPOINTS,SCF 完成后自然得到了所有零权重的 k 点的能级,这些 k 点都在我们想要求算的 kpath 上,因此得到了能带。“两步法”则是:第一步用 Mesh 型的 KPOINTS 进行自洽计算,获得均匀撒点的电荷密度;第二步,用 Line 型的 KPOINTS 进行计算,需要读取第一步得到的均匀撒点的电荷密度并在整个第二步计算中固定不变(ICHARG=11)。计算过程中,会使用第一步的电荷密度构造 KS potential,解出各 k 点的能级,因此得到能带。有时候称第二步是“非自洽”的,这是因为电荷密度固定不变而不是根据当前波函数计算电荷密度;如果电荷密度不固定不变、而是根据当前波函数计算电荷密度,则成了自洽计算,非均匀撒点的自洽计算结果无意义。“非自洽”得到的 DOS 和单点能也无意义,仅能级有意义。

“一步法”能同时得到能带和 DOS,“两步法”则只能在第一步得到 DOS、第二步得到能带。vaspkit 推荐杂化泛函用“一步法”、纯泛函则“一步法”“两步法”均可,不知为何。(我之前以为杂化泛函无法仅通过电荷密度获得 Kohn-Sham potential,因此必须用“一步法”算能带,无法使用“两步法”;但试了一下发现不是这样)。“一步法”和“两步法”只要使用相同的 Mesh,结果就是严格相同的。有的教程会让你先做“两步法”第一步,用得到的结果作为初猜进行“一步法”计算,这可以降低“一步法”中的计算量。如果用纯泛函收敛的波函数作为初猜进行杂化泛函计算,也可以显著降低杂化泛函的计算量。


关于你的问题,核心在于:非自洽计算必须读取相同等级下的均匀撒点的自洽电荷密度,否则无意义(例如,HSE 非自洽计算读取 PBE 的电荷密度无意义)(好像少数邪修方法会读取其它泛函的电荷密度,微扰mBJ好像就属于这种,我也不太懂,欢迎讨论)。除此之外,任何计算都不必读其它东西就可以自己单独进行,但实际上读了其它东西可能可以加速计算。例如 HSE 计算读取 PBE 波函数作为初猜可以加速收敛,但我不知道读取 PBE 电荷密度是否也可以加速收敛。判断是否能加速计算,最可靠的方法还是自己测试。

以上是个人理解,欢迎批评指正。


现代化学以狄拉克的一句“一切化学问题业已解决”为嚆矢。滥觞于经验主义传统的期望正失去它们的借鉴意义。但面对看似不可达的通往天堂之阶梯,我想循伍德沃德“最好的模型是你底物的对映异构体”的信仰好过过早地振翮。
我们怀揣热忱的灵魂天然被赋予对第一性的追求,不屑于单一坐标的约束,钟情于势能面彼端的芬芳。但

3

帖子

0

威望

26

eV
积分
29

Level 2 能力者

3#
 楼主 Author| 发表于 Post on 5 day ago | 只看该作者 Only view this author
本帖最后由 劈里啪啦学计算 于 2026-2-11 23:20 编辑
北大-陶豫 发表于 2026-2-10 22:13
首先,在 VASP 能带计算中,有 3 种 KPOINTS:
(1)Mesh 型,定义一个在布里渊区均匀分布的 k 点网格,一 ...

讲的太清楚了!!!全网最清楚的解答,太厉害了!
是不是如果使用Oneshot型KPOINTS,计算过程可以是①结构优化②PBE静态自洽计算③HSE计算(读取WAVECAR加速计算   ISTART=1、ICHARG=0),在第③步就可以同时得到能带和DOS(设置ISMEAR=0、SIGMA=0.01)
还有疑问:
1、第③步能够得到DOS,是不是就可以不另外用Mesh型KPOINTS配合ISMEAR=-5再计算HSE泛函下的DOS图了
2、二维材料可不可以直接在第③步HSE计算的INCAR中加入LAECHG、LVHAR、LDIPOL、IDIPOL等参数,用得到的结果进行分析

评分 Rate

参与人数
Participants 1
eV +5 收起 理由
Reason
北大-陶豫 + 5 欢迎讨论

查看全部评分 View all ratings

651

帖子

1

威望

5304

eV
积分
5975

Level 6 (一方通行)

4#
发表于 Post on 4 day ago | 只看该作者 Only view this author
本帖最后由 北大-陶豫 于 2026-2-12 14:35 编辑
劈里啪啦学计算 发表于 2026-2-11 23:08
讲的太清楚了!!!全网最清楚的解答,太厉害了!
是不是如果使用Oneshot型KPOINTS,计算过程可以是①结 ...
如果使用Oneshot型KPOINTS,计算过程可以是①结构优化②PBE静态自洽计算③HSE计算(读取WAVECAR加速计算   ISTART=1、ICHARG=0),在第③步就可以同时得到能带和DOS(设置ISMEAR=0、SIGMA=0.01)



第③步能够得到DOS,是不是就可以不另外用Mesh型KPOINTS配合ISMEAR=-5再计算HSE泛函下的DOS图了

ISMEAR=-5 跟 ISMEAR=0 的结果肯定没法保证一样的(但是 ISMEAR=0 如果带隙远大于 SIGMA 那结果应该很接近 ISMEAR=-5)。
根据官网对 ISMEAR 的介绍,ISMEAR=-5 属于四面体方法,必须用 Gamma-center Mesh 的 KPOINTS,无法兼容 Oneshot 型,所以 Oneshot 型和 Mesh 型得到的 DOS 可能因为 ISMEAR 不同而有区别。

二维材料可不可以直接在第③步HSE计算的INCAR中加入LAECHG、LVHAR、LDIPOL、IDIPOL等参数,用得到的结果进行分析

应该可以,但我不确定,你自己试试



现代化学以狄拉克的一句“一切化学问题业已解决”为嚆矢。滥觞于经验主义传统的期望正失去它们的借鉴意义。但面对看似不可达的通往天堂之阶梯,我想循伍德沃德“最好的模型是你底物的对映异构体”的信仰好过过早地振翮。
我们怀揣热忱的灵魂天然被赋予对第一性的追求,不屑于单一坐标的约束,钟情于势能面彼端的芬芳。但

3

帖子

0

威望

26

eV
积分
29

Level 2 能力者

5#
 楼主 Author| 发表于 Post on 3 day ago | 只看该作者 Only view this author

太感谢了!!!

本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2026-2-16 15:07 , Processed in 0.230592 second(s), 22 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list