欢迎光临散文网 会员登陆 & 注册

精度与成本平衡之道——K点收敛性测试

2021-01-20 09:48 作者:迈高科技  | 我要投稿

参数选取的问题是阻拦初学者入门理论模拟计算的最大难题,MatCloud+已经极大地简化了计算的操作,所以只要掌握了参数如何设置就可以方便地进行计算。基于此因,本公众号开设了《精度与成本平衡之道》这一专题文章,通过实例将不同参数对计算的影响直观而清晰地展现出来,本文旨在让初学者更轻易地了解计算的参数选取规则,做到心中有“数”。

      

后续我们将推出更多的测试内容,也欢迎大家在评论区提问或指正,届时我们也会根据提问内容做专题讲解。


《平衡之道——K点收敛性测试》


指定第一布里渊区K点采样最简单的方法就是自动撒点,根据VASP官网给定的经验公式 (注:VASP 是商业软件,用户要自带版权,下同),可以快速得到三个方向的K点,公式如下

其中,Ni (i = 1,2,3)代表三个方向的K点比值,ai (i = 1,2,3)代表三个方向的晶格常数。


对上述公式作一个简单的变换,可以得到:

此时,Ni (i = 1,2,3)均为正整数时即可看做三个方向K点的取值。


晶格常数ai (i = 1,2,3)可以通过MatCloud+平台给出,因此选定N1值后便可以得到N2/N3的值,也就是三个方向的K点。


对于非金属体系,建议aiNi至少从10开始取值;由于金属体系K点通常较大,建议aiNi从20开始测试,较少的K点将得到不稳定的能量,本文从较小的aiNi开始测试是为了让用户更直观地感受上述结论。


话不多说,直接上测试结果:


我们分别计算了H2O、石墨烯和Li三种物质在不同aiNi取值下的能量和时间消耗。表中的能量(eV)为静态计算得到的体系总能量;平均原子能量(eV/atom)=总能量/总原子数;相对能量(eV/atom)为当前K点与上一步K点的平均原子能量差值;时间(s)为计算结果文件OUTCAR中的cpu time。



结合图表内容可以发现,对于H2O/石墨烯/Li,当aiNi分别为14/20/30,即K点分别为3×3×2/8×8×3/10×10×5时,相应测试的平均原子能量收敛曲线变得平缓且相对能量收敛至为0.01 eV,此时的结构已经相对稳定。


另外,从图中可以注意到,当aiNi值继续增加,即K点继续增加,平均原子能量变化已经可以忽略不计,但是计算所消耗时间却以指数倍增加。


所以选择一个合适的K点在保证计算精度的同时还可以大幅度节约计算资源。


如果计算体系较大,通常使用其单胞进行收敛性测试,测试得到的K点等比例缩小后便可应用到大体系中。例如将CuO单胞扩胞为2×2×2的超胞后,删除一个氧原子形成氧缺陷体系,如果用这个体系进行收敛性测试,计算成本消耗较大,所以选择用CuO单胞来代替超胞进行测试。测试得到合适的K点(例如:6×8×10)后,将每个方向的K点缩小1/2(3×4×5)即可用于氧缺陷体系的后续计算。


K点测试,你学会了吗?更多内容可从微信公众号查看。


精度与成本平衡之道——K点收敛性测试的评论 (共 条)

分享到微博请遵守国家法律