计算化学公社

标题: 我在用qe计算DFPT时发现不支持dft-d3,有什么比较好的办法可以解决这个问题? [打印本页]

作者
Author:
hanjiaxin    时间: 2025-6-21 10:52
标题: 我在用qe计算DFPT时发现不支持dft-d3,有什么比较好的办法可以解决这个问题?
请问下大家我在用qe计算DFPT时发现不支持dft-d3,有什么比较好的办法可以解决这个问题吗

作者
Author:
Freeman    时间: 2025-6-21 13:37
本帖最后由 Freeman 于 2025-6-21 17:12 编辑

要回答你的问题,首先要知道你做DFPT的目的是什么。

我先假设你要算能量关于原子坐标的二阶导。如果你用了D3,这个量就有两个地方的贡献:一个是电子结构贡献的,需要计算DFPT;另一个是几何结构贡献的,需要计算D3。DFPT是计算密度关于某个微扰(最常见的就是原子坐标)的导数,而D3只和分子几何结构有关。两个量是独立的。正常程序应该是这样做的:1、做个DFPT,算出密度关于原子坐标的一阶导;2、将DFPT的结果代入公式,算出电子结构变化对能量关于原子坐标二阶导的贡献;3、调用D3程序库,根据当前的原子坐标算出D3的贡献;4、两个方面加起来,打印给你。至于你说QE不支持同时做DFPT和D3,你其实可以先不加D3,让QE只算电子结构的贡献,然后用别的程序或方法算出D3的贡献,最后两者加起来就OK了。

如果你要算的不是能量关于原子坐标的二阶导,而是其他的跟几何结构无关的量,那么D3的贡献必然为零。直接删掉D3关键词即可。

作者
Author:
hanjiaxin    时间: 2025-6-22 01:06
Freeman 发表于 2025-6-21 13:37
要回答你的问题,首先要知道你做DFPT的目的是什么。

我先假设你要算能量关于原子坐标的二阶导。如果你用 ...

好的老师,我主要最近在用qe计算二维双层的MoS2的声子谱,发现在Γ点处会出现虚频,考虑到可能是结构上的问题,设置参数精度测试后影响不是很大,然后想可能是未加入dft-d3的校正(因为之前用vasp计算声子谱时是加入过ivdw=11),测试之后发现在优化时加入该参数对于晶格常数是有影响的,同时也能改善虚频,但由于只能在优化时加入该参数,而后续使用ph.x不支持dft-d3,所以才提出该问题。
作者
Author:
Freeman    时间: 2025-6-22 12:27
本帖最后由 Freeman 于 2025-6-22 12:28 编辑
hanjiaxin 发表于 2025-6-22 01:06
好的老师,我主要最近在用qe计算二维双层的MoS2的声子谱,发现在Γ点处会出现虚频,考虑到可能是结构上的 ...

有虚频说明没优化到极小点,不是加不加D3的问题。试试将原子沿着虚频的振动方向挪动一点,再优化。QE可能不方便做这个吧。你可能需要写个脚本,将振动向量乘0.001,加到原有的坐标上。




欢迎光临 计算化学公社 (http://bbs.keinsci.com/) Powered by Discuz! X3.3